@smarterplan/ngx-smarterplan-core 0.4.39 → 0.4.41
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/esm2020/lib/services/matterport.service.mjs +4 -1
- package/esm2020/lib/services/viewer.service.mjs +3 -3
- package/esm2020/lib/types.service.mjs +2 -1
- package/fesm2015/smarterplan-ngx-smarterplan-core.mjs +8 -2
- package/fesm2015/smarterplan-ngx-smarterplan-core.mjs.map +1 -1
- package/fesm2020/smarterplan-ngx-smarterplan-core.mjs +6 -2
- package/fesm2020/smarterplan-ngx-smarterplan-core.mjs.map +1 -1
- package/lib/services/matterport.service.d.ts +1 -0
- package/lib/services/viewer.service.d.ts +1 -1
- package/lib/types.service.d.ts +2 -1
- package/package.json +1 -1
|
@@ -290,11 +290,11 @@ export class ViewerService {
|
|
|
290
290
|
}
|
|
291
291
|
}
|
|
292
292
|
}
|
|
293
|
-
async
|
|
293
|
+
async updateHtmlTagForPoiWithObject(poi, object) {
|
|
294
294
|
if (this.checkMode("Matterport")) {
|
|
295
295
|
const tagData = this.matterportService.getTagFromElementId(poi.elementID);
|
|
296
296
|
if (tagData.tag) {
|
|
297
|
-
await this.matterportService.
|
|
297
|
+
await this.matterportService.updateInjectedHtmlForTagID(tagData.tag, object, poi.type);
|
|
298
298
|
}
|
|
299
299
|
}
|
|
300
300
|
}
|
|
@@ -358,4 +358,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
|
|
|
358
358
|
providedIn: "root",
|
|
359
359
|
}]
|
|
360
360
|
}], ctorParameters: function () { return [{ type: i1.PoiService }, { type: i2.MatterportService }]; } });
|
|
361
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc21hcnRlcnBsYW4tY29yZS9zcmMvbGliL3NlcnZpY2VzL3ZpZXdlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHFDQUFxQztBQUNyQyw4QkFBOEI7QUFDOUIseUNBQXlDO0FBQ3pDLDJDQUEyQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHL0IsT0FBTyxFQUFxQixrQkFBa0IsRUFBRSxPQUFPLEVBQXVDLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7O0FBS2pJLE1BQU0sT0FBTyxhQUFhO0lBNkN0QixZQUNZLFVBQXNCLEVBQ3RCLGlCQUFvQztRQURwQyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUE5Q3hDLGVBQVUsR0FBVyxZQUFZLENBQUM7UUFNbkMsZUFBVSxHQUtaLElBQUksT0FBTyxFQUFFLENBQUM7UUFFWixpQkFBWSxHQUFxQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBRS9DLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFakIsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFNdEIsa0JBQWEsR0FBRztZQUNuQixTQUFTLEVBQUU7Z0JBQ1AsSUFBSSxFQUFFLEtBQUs7Z0JBQ1gsTUFBTSxFQUFFLGNBQWM7Z0JBQ3RCLElBQUksS0FBSyxDQUFDO2dCQUNWLElBQUksS0FBSyxDQUFDO2FBQ2I7WUFDRCxTQUFTLEVBQUU7Z0JBQ1AsSUFBSSxFQUFFLEtBQUs7YUFDZDtZQUNELE1BQU0sRUFBRTtnQkFDSixJQUFJLEVBQUUsS0FBSztnQkFDWCxNQUFNLEVBQUUsV0FBVztnQkFDbkIsSUFBSSxLQUFLLENBQUM7Z0JBQ1YsSUFBSSxLQUFLLENB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LENBQUM7d0JBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO3dCQUNyQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQzt3QkFDeEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7cUJBQzlCO2dCQUNMLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztnQkFDZCxPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQzthQUM1QjtZQUNELE9BQU8sT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzVCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELHFCQUFxQixDQUFDLGVBQXlCO1FBQzNDLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUM5QixJQUFJLENBQUMsaUJBQWlCLENBQUMscUJBQXFCLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDakU7SUFDTCxDQUFDOzswR0F2YlEsYUFBYTs4R0FBYixhQUFhLGNBRlYsTUFBTTsyRkFFVCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLWF3YWl0LWluLWxvb3AgKi9cclxuLyogZXNsaW50LWRpc2FibGUgY2FtZWxjYXNlICovXHJcbi8qIGVzbGludC1kaXNhYmxlIG5vLXVuZGVyc2NvcmUtZGFuZ2xlICovXHJcbi8qIGVzbGludC1kaXNhYmxlIGNsYXNzLW1ldGhvZHMtdXNlLXRoaXMgKi9cclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBNYXR0ZXJwb3J0U2VydmljZSB9IGZyb20gXCIuL21hdHRlcnBvcnQuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBCYXNlVGFnU2VydmljZSB9IGZyb20gXCIuL3RhZy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IERiT2JqZWN0VHlwZSwgUE9JLCBWaWV3ZXJJbnRlcmFjdGlvbnMsIFBvaVR5cGUsIENvbW1lbnQsIEVxdWlwbWVudCwgVGlja2V0LCBGZWF0dXJlLCBTcE1vZHVsZSB9IGZyb20gXCIuLi90eXBlcy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFBvaVNlcnZpY2UgfSBmcm9tIFwiLi9tb2RlbHMvcG9pLnNlcnZpY2VcIjtcclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogXCJyb290XCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBWaWV3ZXJTZXJ2aWNlIHtcclxuICAgIHByaXZhdGUgdmlld2VyTW9kZTogc3RyaW5nID0gXCJNYXR0ZXJwb3J0XCI7XHJcblxyXG4gICAgcHVibGljIGN1cnJlbnRNb2RlbDNEOiBzdHJpbmc7XHJcblxyXG4gICAgcHJpdmF0ZSB0b3VyVXJsOiBzdHJpbmc7XHJcblxyXG4gICAgcHVibGljIHZpZXdlcklzT246IFN1YmplY3Q8e1xyXG4gICAgICAgIHNwYWNlSUQ6IHN0cmluZyB8IG51bGw7XHJcbiAgICAgICAgbW9kZWwzRDogc3RyaW5nIHwgbnVsbDtcclxuICAgICAgICBzd2VlcDogc3RyaW5nIHwgbnVsbDtcclxuICAgICAgICByb3RhdGlvbjogeyB4OiBudW1iZXI7IHk6IG51bWJlcjsgfSB8IG51bGw7XHJcbiAgICB9PiA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gICAgcHVibGljIGRhdGFJc0xvYWRlZDogU3ViamVjdDxib29sZWFuPiA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gICAgcHVibGljIGlzTG9hZGVkID0gZmFsc2U7XHJcblxyXG4gICAgcHVibGljIHNob3dpbmdWaWV3ZXIgPSBmYWxzZTtcclxuXHJcbiAgICBwdWJsaWMgc3dlZXBUb01vdmU6IHN0cmluZyB8IG51bGw7XHJcblxyXG4gICAgcHVibGljIHJvdGF0aW9uVG9Nb3ZlOiB7IHg6IG51bWJlcjsgeTogbnVtYmVyOyB9IHwgbnVsbDtcclxuXHJcbiAgICBwdWJsaWMgdG9vbGJveFN0YXRlcyA9IHtcclxuICAgICAgICBkb2xsaG91c2U6IHtcclxuICAgICAgICAgICAgc3RhdDogZmFsc2UsXHJcbiAgICAgICAgICAgIGljb25JZDogXCJ1aS1kb2xsaG91c2VcIixcclxuICAgICAgICAgICAgc2hvdygpIHsgfSxcclxuICAgICAgICAgICAgaGlkZSgpIHsgfSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIGZsb29ycGxhbjoge1xyXG4gICAgICAgICAgICBzdGF0OiBmYWxzZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIG1lc3VyZToge1xyXG4gICAgICAgICAgICBzdGF0OiBmYWxzZSxcclxuICAgICAgICAgICAgaWNvbklkOiBcInVpLW1lc3VyZVwiLFxyXG4gICAgICAgICAgICBzaG93KCkgeyB9LFxyXG4gICAgICAgICAgICBoaWRlKCkgeyB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZmlsdGVyOiB7XHJcbiAgICAgICAgICAgIHN0YXQ6IGZhbHNlLFxyXG4gICAgICAgIH0sXHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgcG9pU2VydmljZTogUG9pU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIG1hdHRlcnBvcnRTZXJ2aWNlOiBNYXR0ZXJwb3J0U2VydmljZSxcclxuICAgICkge1xyXG4gICAgICAgIHRoaXMuc2V0TW9kZShcIk1hdHRlcnBvcnRcIik7XHJcbiAgICB9XHJcblxyXG4gICAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgICAgVXRpbHNcclxuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbiAgICBjaGVja01vZGUoaW5kZXhNb2RlOiBzdHJpbmcpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy52aWV3ZXJNb2RlID09PSBpbmRleE1vZGU7XHJcbiAgICB9XHJcblxyXG4gICAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgICAgU2V0dGVyc1xyXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuICAgIHNldE1vZGUoaW5kZXhNb2RlOiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLnZpZXdlck1vZGUgPSBpbmRleE1vZGU7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0VG91clVybChtb2RlbDNkOiBzdHJpbmcsIHNob3dJY29uUGxhbjogYm9vbGVhbiA9IHRydWUsIHNob3dJY29uRG9sbGhvdXNlOiBib29sZWFuID0gdHJ1ZSwgc2hvd0ljb25GbG9vcnM6IGJvb2xlYW4gPSB0cnVlLCBlbmFibGVRdWlja1N0YXJ0OiBib29sZWFuID0gdHJ1ZSkge1xyXG4gICAgICAgIC8vIHRoaXMudG91clVybCA9IHRoaXMuY2hlY2tNb2RlKFwiTWF0dGVycG9ydFwiKVxyXG4gICAgICAgIC8vICAgICA/IGBodHRwczovL215Lm1hdHRlcnBvcnQuY29tL3Nob3cvP209JHttb2RlbDNkfSZwbGF5PTEmcXM9MSZocj0wJmd0PTAmdGl0bGU9MCZsb2c9MCZicmFuZD0wJmFwcGxpY2F0aW9uS2V5PXFuOXdzYXN1eTVoMmZ6cmJybjFuenIwaWQmbWRzPTBgXHJcbiAgICAgICAgLy8gICAgIDogXCJodHRwOi8vY3VwaXh3ZWV3b3JrLnMzLXdlYnNpdGUuZXUtd2VzdC0zLmFtYXpvbmF3cy5jb20vXCI7XHJcbiAgICAgICAgdGhpcy50b3VyVXJsID0gYGh0dHBzOi8vbXkubWF0dGVycG9ydC5jb20vc2hvdy8/bT0ke21vZGVsM2R9JnBsYXk9MSZocj0wJmd0PTAmdGl0bGU9MCZsb2c9MCZicmFuZD0wJnNlYXJjaD0wJmFwcGxpY2F0aW9uS2V5PXFuOXdzYXN1eTVoMmZ6cmJybjFuenIwaWQmbWRzPTBgO1xyXG4gICAgICAgIGlmICghc2hvd0ljb25QbGFuKSB7XHJcbiAgICAgICAgICAgIHRoaXMudG91clVybCArPSBcIiZmcD0wXCI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICghc2hvd0ljb25Eb2xsaG91c2UpIHtcclxuICAgICAgICAgICAgdGhpcy50b3VyVXJsICs9IFwiJmRoPTBcIjtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKCFzaG93SWNvbkZsb29ycykge1xyXG4gICAgICAgICAgICB0aGlzLnRvdXJVcmwgKz0gXCImZj0wXCI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChlbmFibGVRdWlja1N0YXJ0KSB7XHJcbiAgICAgICAgICAgIHRoaXMudG91clVybCArPSBcIiZxcz0xXCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGNsZWFyQWxsKCkge1xyXG4gICAgICAgIHRoaXMuc3dlZXBUb01vdmUgPSBudWxsO1xyXG4gICAgICAgIHRoaXMucm90YXRpb25Ub01vdmUgPSBudWxsO1xyXG4gICAgICAgIGlmICh0aGlzLmNoZWNrTW9kZShcIk1hdHRlcnBvcnRcIikpIHtcclxuICAgICAgICAgICAgdGhpcy5zaG93aW5nVmlld2VyID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuaXNMb2FkZWQgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5jbGVhckFsbCgpO1xyXG4gICAgICAgICAgICB0aGlzLnZpZXdlcklzT24ubmV4dCh7XHJcbiAgICAgICAgICAgICAgICBzcGFjZUlEOiBudWxsLFxyXG4gICAgICAgICAgICAgICAgbW9kZWwzRDogbnVsbCxcclxuICAgICAgICAgICAgICAgIHN3ZWVwOiBudWxsLFxyXG4gICAgICAgICAgICAgICAgcm90YXRpb246IG51bGwsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAgICBHZXR0ZXJzXHJcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4gICAgZ2V0TW9kZSgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy52aWV3ZXJNb2RlO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFZpZXdlclNlbGVjdGVkU2VydmljZSgpIHtcclxuICAgICAgICAvLyBNYXR0ZXJwb3J0XHJcbiAgICAgICAgLy8gaWYgKHRoaXMuY2hlY2tNb2RlKFwiTWF0dGVycG9ydFwiKSkge1xyXG4gICAgICAgIC8vICAgICByZXR1cm4gdGhpcy5nZXRNYXR0ZXJwb3J0U2VydmljZSgpO1xyXG4gICAgICAgIC8vIH1cclxuICAgICAgICByZXR1cm4gdGhpcy5nZXRNYXR0ZXJwb3J0U2VydmljZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFRvdXJVcmwoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMudG91clVybDtcclxuICAgIH1cclxuXHJcbiAgICBnZXRNYXR0ZXJwb3J0U2VydmljZSgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5tYXR0ZXJwb3J0U2VydmljZTtcclxuICAgIH1cclxuXHJcbiAgICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAgICBHZW5lcmljIE1haW4gYWN0aW9uIGZ1bmN0aW9uc1xyXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4gICAgc2V0U3dlZXBUb01vdmUoc3dlZXA6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuc3dlZXBUb01vdmUgPSBzd2VlcDtcclxuICAgIH1cclxuXHJcbiAgICBzZXRSb3RhdGlvblRvTW92ZShyb3RhdGlvbjogeyB4OiBudW1iZXI7IHk6IG51bWJlcjsgfSkge1xyXG4gICAgICAgIHRoaXMucm90YXRpb25Ub01vdmUgPSByb3RhdGlvbjtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBhY3Rpb25fbW92ZV90b190YWcoZWxlbWVudElkOiBzdHJpbmcpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgICAgICAvLyBNYXR0ZXJwb3J0XHJcbiAgICAgICAgaWYgKHRoaXMuY2hlY2tNb2RlKFwiTWF0dGVycG9ydFwiKSkge1xyXG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPVxyXG4gICAgICAgICAgICAgICAgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5nZXRUYWdGcm9tRWxlbWVudElkKGVsZW1lbnRJZCk7XHJcbiAgICAgICAgICAgIGlmIChyZXN1bHQudGFnKSB7XHJcbiAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmdvVG9UYWcocmVzdWx0LnRhZyk7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAocmVzdWx0LnN3ZWVwKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnN3ZWVwVG9Nb3ZlID0gcmVzdWx0LnN3ZWVwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQWRkcyBNYXR0ZXJ0YWdzIHRvIFZpZXdlclxyXG4gICAgICogQHBhcmFtIG9iamVjdHMgTGlzdCBvZiBvYmplY3RzICh0aWNrZXRzLCBlcXVpcG1lbnRzKSBldGMgdG8gYmUgYWRkZWQgYXMgTWF0dGVydGFnc1xyXG4gICAgICovXHJcbiAgICBhc3luYyBhZGRPYmplY3RUYWdzVG9WaWV3ZXIob2JqZWN0czogRGJPYmplY3RUeXBlW10pIHtcclxuICAgICAgICBhd2FpdCBQcm9taXNlLmFsbChcclxuICAgICAgICAgICAgb2JqZWN0cy5tYXAoYXN5bmMgKG9iamVjdCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgcG9pID0gYXdhaXQgdGhpcy5wb2lTZXJ2aWNlLmdldFBvaUJ5RWxlbWVudElkKG9iamVjdC5pZCEpO1xyXG4gICAgICAgICAgICAgICAgaWYgKHBvaSAmJiBwb2kuY29vcmRpbmF0ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWN0aW9uQWRkT2JqZWN0RnJvbVBPSShvYmplY3QsIHBvaSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgYWN0aW9uQWRkT2JqZWN0RnJvbVBPSShcclxuICAgICAgICBvYmplY3Q6IERiT2JqZWN0VHlwZSxcclxuICAgICAgICBwb2k6IFBPSVxyXG4gICAgKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY2hlY2tNb2RlKFwiTWF0dGVycG9ydFwiKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5hY3Rpb25fYWRkX21hdHRlcnRhZ19mcm9tX1BPSShcclxuICAgICAgICAgICAgICAgIHBvaS50eXBlISxcclxuICAgICAgICAgICAgICAgIG9iamVjdCxcclxuICAgICAgICAgICAgICAgIHBvaSxcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gQ3VwaXhcclxuICAgICAgICAvLyBUT0RPXHJcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBhc3luYyBhY3Rpb25fZGVsZXRlX2VsZW1lbnQoXHJcbiAgICAgICAgZWxlbWVudDogRGJPYmplY3RUeXBlLFxyXG4gICAgKSB7XHJcbiAgICAgICAgLy8gTWF0dGVycG9ydFxyXG4gICAgICAgIGlmICh0aGlzLmNoZWNrTW9kZShcIk1hdHRlcnBvcnRcIikpIHtcclxuICAgICAgICAgICAgYXdhaXQgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5hY3Rpb25fZGVsZXRlX2VsZW1lbnQoZWxlbWVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgKiBFbmFibGUgdGFnIHBsYWNlbWVudCBtZW51IHRvIGFkZCBhIG5ldyBlbGVtZW50IGRlcGVuZGluZyBvbiBpdHMgdHlwZSAoVElDS0VULCBEQVRBLCBFUVVJUE1FTlQgZXRjKVxyXG4gICAgKi9cclxuICAgIGFzeW5jIGFjdGlvbkFkZE5ld0VsZW1lbnRUb1ZpZXdlcihwb2lUeXBlOiBQb2lUeXBlKSB7XHJcbiAgICAgICAgdGhpcy5hY3Rpb25fdG9vbGJveF9pbnNpZGVfdmlldygpO1xyXG5cclxuICAgICAgICAvLyBNYXR0ZXJwb3J0XHJcbiAgICAgICAgaWYgKHRoaXMuY2hlY2tNb2RlKFwiTWF0dGVycG9ydFwiKSAmJiB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmdldEludGVyYWN0aW9uTW9kZSgpID09PVxyXG4gICAgICAgICAgICBWaWV3ZXJJbnRlcmFjdGlvbnMuREVGQVVMVCkge1xyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmFkZEVsZW1lbnRBc01hdHRlcnRhZyhwb2lUeXBlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBMYXVuY2hlcyB0aGUgcmVwb3NpdGlvbmluZyBvZiBhbiBleGlzdGluZyBNYXR0ZXJ0YWcgcmVsYXRlZCB0byBwYXJhbWV0ZXIgb2JqZWN0XHJcbiAgICAgKiBAcGFyYW0gZWxlbWVudCBvYmplY3QgKFRJQ0tFVCwgRVFVSVBNRU5ULCBGRUFUVVJFLCBldGMpXHJcbiAgICAgKiBAcGFyYW0gcG9pVHlwZSB0eXBlIG9mIG9iamVjdFxyXG4gICAgICovXHJcbiAgICBhc3luYyBhY3Rpb25SZXBvc2l0aW9uRWxlbWVudEluVmlld2VyKGVsZW1lbnQ6IERiT2JqZWN0VHlwZSwgcG9pVHlwZTogUG9pVHlwZSkge1xyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgICAgdGhpcy5jaGVja01vZGUoXCJNYXR0ZXJwb3J0XCIpICYmXHJcbiAgICAgICAgICAgIHRoaXMubWF0dGVycG9ydFNlcnZpY2UuZ2V0SW50ZXJhY3Rpb25Nb2RlKCkgPT09XHJcbiAgICAgICAgICAgIFZpZXdlckludGVyYWN0aW9ucy5ERUZBVUxUXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICAgIGF3YWl0IHRoaXMubWF0dGVycG9ydFNlcnZpY2UuYWN0aW9uX3Bvc2l0aW9uX2VsZW1lbnQoXHJcbiAgICAgICAgICAgICAgICBwb2lUeXBlLFxyXG4gICAgICAgICAgICAgICAgZWxlbWVudCxcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFbmFibGUgdGlja2V0IHBsYWNlbWVudCBtZW51IHRvIGFkZCBhIG5ldyB0aWNrZXRcclxuICAgICAqL1xyXG4gICAgYWN0aW9uX2NhbmNlbGVkKCkge1xyXG4gICAgICAgIC8vIE1hdHRlcnBvcnRcclxuICAgICAgICBpZiAodGhpcy5jaGVja01vZGUoXCJNYXR0ZXJwb3J0XCIpKSB7XHJcbiAgICAgICAgICAgIHRoaXMubWF0dGVycG9ydFNlcnZpY2UuYWN0aW9uX2NhbmNlbGVkKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGFjdGlvbl90b29sYm94X2luc2lkZV92aWV3KCkge1xyXG4gICAgICAgIC8vIE1hdHRlcnBvcnRcclxuICAgICAgICBpZiAodGhpcy5jaGVja01vZGUoXCJNYXR0ZXJwb3J0XCIpKSB7XHJcbiAgICAgICAgICAgIHRoaXMubWF0dGVycG9ydFNlcnZpY2UuYWN0aW9uX3Rvb2xib3hfaW5zaWRlX3ZpZXcoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYWN0aW9uX3Rvb2xib3hfZG9sbGhvdXNlKCkge1xyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgICAgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5nZXRJbnRlcmFjdGlvbk1vZGUoKSAhPT1cclxuICAgICAgICAgICAgVmlld2VySW50ZXJhY3Rpb25zLkRFRkFVTFRcclxuICAgICAgICApIHtcclxuICAgICAgICAgICAgdGhpcy5hY3Rpb25fY2FuY2VsZWQoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuYWN0aW9uX3Rvb2xib3hfY2FuY2VsX21lc3VyZSgpO1xyXG4gICAgICAgIC8vIE1hdHRlcnBvcnRcclxuICAgICAgICBpZiAodGhpcy5jaGVja01vZGUoXCJNYXR0ZXJwb3J0XCIpKSB7XHJcbiAgICAgICAgICAgIHRoaXMubWF0dGVycG9ydFNlcnZpY2UuYWN0aW9uX3Rvb2xib3hfZG9sbGhvdXNlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGFjdGlvbl9mbG9vcnBsYW4oKSB7XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmdldEludGVyYWN0aW9uTW9kZSgpICE9PVxyXG4gICAgICAgICAgICBWaWV3ZXJJbnRlcmFjdGlvbnMuREVGQVVMVFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgICB0aGlzLmFjdGlvbl9jYW5jZWxlZCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBNYXR0ZXJwb3J0XHJcbiAgICAgICAgaWYgKHRoaXMuY2hlY2tNb2RlKFwiTWF0dGVycG9ydFwiKSkge1xyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmFjdGlvbl90b29sYm94X2Zsb29ycGxhbigpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhY3Rpb25fdG9vbGJveF9tZXN1cmUoKSB7XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmdldEludGVyYWN0aW9uTW9kZSgpICE9PVxyXG4gICAgICAgICAgICBWaWV3ZXJJbnRlcmFjdGlvbnMuREVGQVVMVFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgICB0aGlzLmFjdGlvbl9jYW5jZWxlZCgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5hY3Rpb25fdG9vbGJveF9pbnNpZGVfdmlldygpO1xyXG4gICAgICAgIC8vIE1hdHRlcnBvcnRcclxuICAgICAgICBpZiAodGhpcy5jaGVja01vZGUoXCJNYXR0ZXJwb3J0XCIpKSB7XHJcbiAgICAgICAgICAgIHRoaXMubWF0dGVycG9ydFNlcnZpY2UuYWN0aW9uX3Rvb2xib3hfbWVzdXJlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGFjdGlvbl90b29sYm94X2NhbmNlbF9tZXN1cmUoKSB7XHJcbiAgICAgICAgLy8gTWF0dGVycG9ydFxyXG4gICAgICAgIGlmICh0aGlzLmNoZWNrTW9kZShcIk1hdHRlcnBvcnRcIikpIHtcclxuICAgICAgICAgICAgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5hY3Rpb25fdG9vbGJveF9jYW5jZWxfbWVzdXJlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGFjdGlvbl91cGRhdGVfcG9pKFxyXG4gICAgICAgIHBvaTogUE9JLFxyXG4gICAgICAgIGlzVmFsaWQ6IGJvb2xlYW4sXHJcbiAgICAgICAgZWxlbWVudDogRGJPYmplY3RUeXBlLFxyXG4gICAgKTogUHJvbWlzZTxQT0k+IHtcclxuICAgICAgICBpZiAodGhpcy5jaGVja01vZGUoXCJNYXR0ZXJwb3J0XCIpKSB7XHJcbiAgICAgICAgICAgIGlmIChpc1ZhbGlkKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBsYXN0VGFnID0gdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5tYXR0ZXJ0YWdUb0ZvbGxvd1xyXG4gICAgICAgICAgICAgICAgICAgID8gdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5tYXR0ZXJ0YWdUb0ZvbGxvd1xyXG4gICAgICAgICAgICAgICAgICAgIDogdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5nZXRMYXN0VGFnKCk7XHJcbiAgICAgICAgICAgICAgICBpZiAoIWxhc3RUYWcpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHBvaSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBjb25zdCB0YWdEYXRhID1cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmdldFRhZ0RhdGFGcm9tSWQobGFzdFRhZyk7XHJcbiAgICAgICAgICAgICAgICBpZiAoIXRhZ0RhdGEpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHBvaSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgY29uc3QgcG9pTWV0YWRhdGEgPSBwb2kubWV0YWRhdGFcclxuICAgICAgICAgICAgICAgICAgICA/IEpTT04ucGFyc2UocG9pLm1ldGFkYXRhKVxyXG4gICAgICAgICAgICAgICAgICAgIDoge307XHJcbiAgICAgICAgICAgICAgICBwb2lNZXRhZGF0YS5ub3JtYWwgPSB0YWdEYXRhLmdldE5vcm1hbCgpO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgcG9pSW5wdXQgPSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWQ6IHBvaS5pZCxcclxuICAgICAgICAgICAgICAgICAgICBjb29yZGluYXRlOiB0YWdEYXRhLmdldENvb3JkaW5hdGVTdHJpbmcoKSxcclxuICAgICAgICAgICAgICAgICAgICBtYXR0ZXJwb3J0U3dlZXBJRDogdGFnRGF0YS5nZXRTd2VlcElEKCksXHJcbiAgICAgICAgICAgICAgICAgICAgbWV0YWRhdGE6IEpTT04uc3RyaW5naWZ5KHBvaU1ldGFkYXRhKSxcclxuICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICBjb25zdCB1cGRhdGVkUG9pOiBQT0kgPSBhd2FpdCB0aGlzLnBvaVNlcnZpY2UudXBkYXRlUG9pKFxyXG4gICAgICAgICAgICAgICAgICAgIHBvaUlucHV0LFxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIHRhZ0RhdGEuc2V0UG9pKHVwZGF0ZWRQb2kpO1xyXG4gICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5pbmplY3RIdG1sSW5UYWcoXHJcbiAgICAgICAgICAgICAgICAgICAgcG9pLnR5cGUhLFxyXG4gICAgICAgICAgICAgICAgICAgIGVsZW1lbnQsXHJcbiAgICAgICAgICAgICAgICAgICAgbGFzdFRhZ1xyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMubWF0dGVycG9ydFNlcnZpY2UuZWRpdFRhZ1N0eWxlKGxhc3RUYWcsIHRhZ0RhdGEpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5nb1RvVGFnKGxhc3RUYWcpO1xyXG5cclxuICAgICAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodXBkYXRlZFBvaSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5kZWxldGVMYXN0TWF0dGVydGFnKCk7XHJcbiAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUocG9pKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShwb2kpO1xyXG4gICAgfVxyXG5cclxuICAgIGVkaXRPbmx5VGFnU3R5bGVGb3JQb2kocG9pOiBQT0ksIG9iamVjdDogRGJPYmplY3RUeXBlKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY2hlY2tNb2RlKFwiTWF0dGVycG9ydFwiKSkge1xyXG4gICAgICAgICAgICBjb25zdCB0YWdEYXRhID0gdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5nZXRUYWdGcm9tRWxlbWVudElkKHBvaS5lbGVtZW50SUQpO1xyXG4gICAgICAgICAgICBpZiAodGFnRGF0YS50YWcpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IG1hdHRlcnRhZ0RhdGEgPVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubWF0dGVycG9ydFNlcnZpY2UuZ2V0VGFnRGF0YUZyb21JZCh0YWdEYXRhLnRhZyk7XHJcbiAgICAgICAgICAgICAgICBtYXR0ZXJ0YWdEYXRhLnNldE9iamVjdChvYmplY3QsIFBvaVR5cGUuUk9PTSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmVkaXRUYWdTdHlsZSh0YWdEYXRhLnRhZywgbWF0dGVydGFnRGF0YSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYWRkSWNvbkFuZFNldEZvclBvaShwb2k6IFBPSSwgaWNvblBhdGg6IHN0cmluZykge1xyXG4gICAgICAgIGlmICh0aGlzLmNoZWNrTW9kZShcIk1hdHRlcnBvcnRcIikpIHtcclxuICAgICAgICAgICAgY29uc3QgdGFnRGF0YSA9IHRoaXMubWF0dGVycG9ydFNlcnZpY2UuZ2V0VGFnRnJvbUVsZW1lbnRJZChwb2kuZWxlbWVudElEKTtcclxuICAgICAgICAgICAgaWYgKHRhZ0RhdGEudGFnKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmFkZE5ld0ljb25BbmRTZXRGb3JUYWcodGFnRGF0YS50YWcsIGljb25QYXRoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBjaGFuZ2VUb1JlZ2lzdHJlZEljb25Gb3JQb2kocG9pOiBQT0ksIGljb25OYW1lOiBzdHJpbmcpIHtcclxuICAgICAgICBpZiAodGhpcy5jaGVja01vZGUoXCJNYXR0ZXJwb3J0XCIpKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHRhZ0RhdGEgPSB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmdldFRhZ0Zyb21FbGVtZW50SWQocG9pLmVsZW1lbnRJRCk7XHJcbiAgICAgICAgICAgIGlmICh0YWdEYXRhLnRhZykge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5zZXRSZWdpc3RyZWRJY29uRm9yVGFnKHRhZ0RhdGEudGFnLCBpY29uTmFtZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgdXBkYXRlVGFnRm9yUG9pV2l0aE9iamVjdChwb2k6IFBPSSwgb2JqZWN0OiBEYk9iamVjdFR5cGUpIHtcclxuICAgICAgICBpZiAodGhpcy5jaGVja01vZGUoXCJNYXR0ZXJwb3J0XCIpKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHRhZ0RhdGEgPSB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmdldFRhZ0Zyb21FbGVtZW50SWQocG9pLmVsZW1lbnRJRCk7XHJcbiAgICAgICAgICAgIGlmICh0YWdEYXRhLnRhZykge1xyXG4gICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS51cGRhdGVNYXR0ZXJUYWdGcm9tSWQodGFnRGF0YS50YWcsIG9iamVjdCwgcG9pLnR5cGUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogTW92ZSBhbiBleGlzdGluZyBwb2kgaW4gTWF0dGVycG9ydFxyXG4gICAgICogQHBhcmFtIHBvaVxyXG4gICAgICogQHBhcmFtIGVsZW1lbnRcclxuICAgICAqL1xyXG4gICAgYXN5bmMgYWN0aW9uX21vdmVfcG9pX3Zpc3VhbGx5KFxyXG4gICAgICAgIHBvaTogUE9JLFxyXG4gICAgICAgIGVsZW1lbnQ6IFRpY2tldCB8IEZlYXR1cmUgfCBFcXVpcG1lbnQgfCBDb21tZW50LFxyXG4gICAgKSB7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5hY3Rpb25fZGVsZXRlX2VsZW1lbnQoZWxlbWVudCk7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5hY3Rpb25BZGRPYmplY3RGcm9tUE9JKGVsZW1lbnQsIHBvaSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgQ3VwaXhcclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbiAgICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICBNYXR0ZXJwb3J0XHJcbiAgICBodHRwczovL21hdHRlcnBvcnQuZ2l0aHViLmlvL3Nob3djYXNlLXNkay9kb2NzL3Nkay9yZWZlcmVuY2UvY3VycmVudC9tb2R1bGVzL21hdHRlcnRhZy5odG1sI2FkZFxyXG4gICAgaHR0cHM6Ly9tYXR0ZXJwb3J0LmdpdGh1Yi5pby9zaG93Y2FzZS1zZGsvZG9jcy9zZGsvcmVmZXJlbmNlL2N1cnJlbnQvbW9kdWxlcy9tYXR0ZXJ0YWcuaHRtbCNyZW1vdmVcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuICAgIGFzeW5jIGluaXRNYXR0ZXJwb3J0U2RrKHNwYWNlSUQ6IHN0cmluZywgbW9kZWwzRDogc3RyaW5nLCB0YWdTZXJ2aWNlOiBCYXNlVGFnU2VydmljZSwgbW9kdWxlOiBTcE1vZHVsZSA9IFNwTW9kdWxlLklNTU8pOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICB0aGlzLmlzTG9hZGVkID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5jdXJyZW50U3BhY2VJRCA9IHNwYWNlSUQ7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMubWF0dGVycG9ydFNlcnZpY2UuaW5pdFNkayh0YWdTZXJ2aWNlLCBtb2R1bGUpLnRoZW4oYXN5bmMgKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCB7IHNkayB9ID0gdGhpcy5tYXR0ZXJwb3J0U2VydmljZTtcclxuICAgICAgICAgICAgICAgIHNkay5BcHAuc3RhdGUuc3Vic2NyaWJlKGZ1bmN0aW9uIChhcHBTdGF0ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIGFwcCBzdGF0ZSBoYXMgY2hhbmdlZFxyXG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKCdUaGUgY3VycmVudCBwaGFzZTogJywgYXBwU3RhdGUucGhhc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChhcHBTdGF0ZS5waGFzZSA9PT0gc2RrLkFwcC5QaGFzZS5QTEFZSU5HKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKCdUaGUgYXBwIGlzIHBsYXlpbmcnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zaG93aW5nVmlld2VyID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy52aWV3ZXJJc09uLm5leHQoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BhY2VJRCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGVsM0QsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd2VlcDogdGhpcy5zd2VlcFRvTW92ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uOiB0aGlzLnJvdGF0aW9uVG9Nb3ZlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRhSXNMb2FkZWQubmV4dCh0cnVlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5pc0xvYWRlZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc3dlZXBUb01vdmUgPSBudWxsO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJvdGF0aW9uVG9Nb3ZlID0gbnVsbDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9LmJpbmQodGhpcykpO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdCgpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHJlbW92ZUZvcmJpZGRlblN3ZWVwcyhmb3JiaWRkZW5Td2VlcHM6IHN0cmluZ1tdKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY2hlY2tNb2RlKFwiTWF0dGVycG9ydFwiKSkge1xyXG4gICAgICAgICAgICB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLnJlbW92ZUZvcmJpZGRlblN3ZWVwcyhmb3JiaWRkZW5Td2VlcHMpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
|
|
361
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc21hcnRlcnBsYW4tY29yZS9zcmMvbGliL3NlcnZpY2VzL3ZpZXdlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHFDQUFxQztBQUNyQyw4QkFBOEI7QUFDOUIseUNBQXlDO0FBQ3pDLDJDQUEyQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHL0IsT0FBTyxFQUFxQixrQkFBa0IsRUFBRSxPQUFPLEVBQXVDLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7O0FBS2pJLE1BQU0sT0FBTyxhQUFhO0lBNkN0QixZQUNZLFVBQXNCLEVBQ3RCLGlCQUFvQztRQURwQyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUE5Q3hDLGVBQVUsR0FBVyxZQUFZLENBQUM7UUFNbkMsZUFBVSxHQUtaLElBQUksT0FBTyxFQUFFLENBQUM7UUFFWixpQkFBWSxHQUFxQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBRS9DLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFakIsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFNdEIsa0JBQWEsR0FBRztZQUNuQixTQUFTLEVBQUU7Z0JBQ1AsSUFBSSxFQUFFLEtBQUs7Z0JBQ1gsTUFBTSxFQUFFLGNBQWM7Z0JBQ3RCLElBQUksS0FBSyxDQUFDO2dCQUNWLElBQUksS0FBSyxDQUFDO2FBQ2I7WUFDRCxTQUFTLEVBQUU7Z0JBQ1AsSUFBSSxFQUFFLEtBQUs7YUFDZDtZQUNELE1BQU0sRUFBRTtnQkFDSixJQUFJLEVBQUUsS0FBSztnQkFDWCxNQUFNLEVBQUUsV0FBVztnQkFDbkIsSUFBSSxLQUFLLENBQUM7Z0JBQ1YsSUFBSSxLQUFLLENB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LENBQUM7d0JBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO3dCQUNyQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQzt3QkFDeEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7cUJBQzlCO2dCQUNMLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztnQkFDZCxPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQzthQUM1QjtZQUNELE9BQU8sT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzVCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELHFCQUFxQixDQUFDLGVBQXlCO1FBQzNDLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUM5QixJQUFJLENBQUMsaUJBQWlCLENBQUMscUJBQXFCLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDakU7SUFDTCxDQUFDOzswR0F2YlEsYUFBYTs4R0FBYixhQUFhLGNBRlYsTUFBTTsyRkFFVCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLWF3YWl0LWluLWxvb3AgKi9cclxuLyogZXNsaW50LWRpc2FibGUgY2FtZWxjYXNlICovXHJcbi8qIGVzbGludC1kaXNhYmxlIG5vLXVuZGVyc2NvcmUtZGFuZ2xlICovXHJcbi8qIGVzbGludC1kaXNhYmxlIGNsYXNzLW1ldGhvZHMtdXNlLXRoaXMgKi9cclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBNYXR0ZXJwb3J0U2VydmljZSB9IGZyb20gXCIuL21hdHRlcnBvcnQuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBCYXNlVGFnU2VydmljZSB9IGZyb20gXCIuL3RhZy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IERiT2JqZWN0VHlwZSwgUE9JLCBWaWV3ZXJJbnRlcmFjdGlvbnMsIFBvaVR5cGUsIENvbW1lbnQsIEVxdWlwbWVudCwgVGlja2V0LCBGZWF0dXJlLCBTcE1vZHVsZSB9IGZyb20gXCIuLi90eXBlcy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFBvaVNlcnZpY2UgfSBmcm9tIFwiLi9tb2RlbHMvcG9pLnNlcnZpY2VcIjtcclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogXCJyb290XCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBWaWV3ZXJTZXJ2aWNlIHtcclxuICAgIHByaXZhdGUgdmlld2VyTW9kZTogc3RyaW5nID0gXCJNYXR0ZXJwb3J0XCI7XHJcblxyXG4gICAgcHVibGljIGN1cnJlbnRNb2RlbDNEOiBzdHJpbmc7XHJcblxyXG4gICAgcHJpdmF0ZSB0b3VyVXJsOiBzdHJpbmc7XHJcblxyXG4gICAgcHVibGljIHZpZXdlcklzT246IFN1YmplY3Q8e1xyXG4gICAgICAgIHNwYWNlSUQ6IHN0cmluZyB8IG51bGw7XHJcbiAgICAgICAgbW9kZWwzRDogc3RyaW5nIHwgbnVsbDtcclxuICAgICAgICBzd2VlcDogc3RyaW5nIHwgbnVsbDtcclxuICAgICAgICByb3RhdGlvbjogeyB4OiBudW1iZXI7IHk6IG51bWJlcjsgfSB8IG51bGw7XHJcbiAgICB9PiA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gICAgcHVibGljIGRhdGFJc0xvYWRlZDogU3ViamVjdDxib29sZWFuPiA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gICAgcHVibGljIGlzTG9hZGVkID0gZmFsc2U7XHJcblxyXG4gICAgcHVibGljIHNob3dpbmdWaWV3ZXIgPSBmYWxzZTtcclxuXHJcbiAgICBwdWJsaWMgc3dlZXBUb01vdmU6IHN0cmluZyB8IG51bGw7XHJcblxyXG4gICAgcHVibGljIHJvdGF0aW9uVG9Nb3ZlOiB7IHg6IG51bWJlcjsgeTogbnVtYmVyOyB9IHwgbnVsbDtcclxuXHJcbiAgICBwdWJsaWMgdG9vbGJveFN0YXRlcyA9IHtcclxuICAgICAgICBkb2xsaG91c2U6IHtcclxuICAgICAgICAgICAgc3RhdDogZmFsc2UsXHJcbiAgICAgICAgICAgIGljb25JZDogXCJ1aS1kb2xsaG91c2VcIixcclxuICAgICAgICAgICAgc2hvdygpIHsgfSxcclxuICAgICAgICAgICAgaGlkZSgpIHsgfSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIGZsb29ycGxhbjoge1xyXG4gICAgICAgICAgICBzdGF0OiBmYWxzZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIG1lc3VyZToge1xyXG4gICAgICAgICAgICBzdGF0OiBmYWxzZSxcclxuICAgICAgICAgICAgaWNvbklkOiBcInVpLW1lc3VyZVwiLFxyXG4gICAgICAgICAgICBzaG93KCkgeyB9LFxyXG4gICAgICAgICAgICBoaWRlKCkgeyB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZmlsdGVyOiB7XHJcbiAgICAgICAgICAgIHN0YXQ6IGZhbHNlLFxyXG4gICAgICAgIH0sXHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgcG9pU2VydmljZTogUG9pU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIG1hdHRlcnBvcnRTZXJ2aWNlOiBNYXR0ZXJwb3J0U2VydmljZSxcclxuICAgICkge1xyXG4gICAgICAgIHRoaXMuc2V0TW9kZShcIk1hdHRlcnBvcnRcIik7XHJcbiAgICB9XHJcblxyXG4gICAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgICAgVXRpbHNcclxuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbiAgICBjaGVja01vZGUoaW5kZXhNb2RlOiBzdHJpbmcpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy52aWV3ZXJNb2RlID09PSBpbmRleE1vZGU7XHJcbiAgICB9XHJcblxyXG4gICAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgICAgU2V0dGVyc1xyXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuICAgIHNldE1vZGUoaW5kZXhNb2RlOiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLnZpZXdlck1vZGUgPSBpbmRleE1vZGU7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0VG91clVybChtb2RlbDNkOiBzdHJpbmcsIHNob3dJY29uUGxhbjogYm9vbGVhbiA9IHRydWUsIHNob3dJY29uRG9sbGhvdXNlOiBib29sZWFuID0gdHJ1ZSwgc2hvd0ljb25GbG9vcnM6IGJvb2xlYW4gPSB0cnVlLCBlbmFibGVRdWlja1N0YXJ0OiBib29sZWFuID0gdHJ1ZSkge1xyXG4gICAgICAgIC8vIHRoaXMudG91clVybCA9IHRoaXMuY2hlY2tNb2RlKFwiTWF0dGVycG9ydFwiKVxyXG4gICAgICAgIC8vICAgICA/IGBodHRwczovL215Lm1hdHRlcnBvcnQuY29tL3Nob3cvP209JHttb2RlbDNkfSZwbGF5PTEmcXM9MSZocj0wJmd0PTAmdGl0bGU9MCZsb2c9MCZicmFuZD0wJmFwcGxpY2F0aW9uS2V5PXFuOXdzYXN1eTVoMmZ6cmJybjFuenIwaWQmbWRzPTBgXHJcbiAgICAgICAgLy8gICAgIDogXCJodHRwOi8vY3VwaXh3ZWV3b3JrLnMzLXdlYnNpdGUuZXUtd2VzdC0zLmFtYXpvbmF3cy5jb20vXCI7XHJcbiAgICAgICAgdGhpcy50b3VyVXJsID0gYGh0dHBzOi8vbXkubWF0dGVycG9ydC5jb20vc2hvdy8/bT0ke21vZGVsM2R9JnBsYXk9MSZocj0wJmd0PTAmdGl0bGU9MCZsb2c9MCZicmFuZD0wJnNlYXJjaD0wJmFwcGxpY2F0aW9uS2V5PXFuOXdzYXN1eTVoMmZ6cmJybjFuenIwaWQmbWRzPTBgO1xyXG4gICAgICAgIGlmICghc2hvd0ljb25QbGFuKSB7XHJcbiAgICAgICAgICAgIHRoaXMudG91clVybCArPSBcIiZmcD0wXCI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICghc2hvd0ljb25Eb2xsaG91c2UpIHtcclxuICAgICAgICAgICAgdGhpcy50b3VyVXJsICs9IFwiJmRoPTBcIjtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKCFzaG93SWNvbkZsb29ycykge1xyXG4gICAgICAgICAgICB0aGlzLnRvdXJVcmwgKz0gXCImZj0wXCI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChlbmFibGVRdWlja1N0YXJ0KSB7XHJcbiAgICAgICAgICAgIHRoaXMudG91clVybCArPSBcIiZxcz0xXCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGNsZWFyQWxsKCkge1xyXG4gICAgICAgIHRoaXMuc3dlZXBUb01vdmUgPSBudWxsO1xyXG4gICAgICAgIHRoaXMucm90YXRpb25Ub01vdmUgPSBudWxsO1xyXG4gICAgICAgIGlmICh0aGlzLmNoZWNrTW9kZShcIk1hdHRlcnBvcnRcIikpIHtcclxuICAgICAgICAgICAgdGhpcy5zaG93aW5nVmlld2VyID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuaXNMb2FkZWQgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5jbGVhckFsbCgpO1xyXG4gICAgICAgICAgICB0aGlzLnZpZXdlcklzT24ubmV4dCh7XHJcbiAgICAgICAgICAgICAgICBzcGFjZUlEOiBudWxsLFxyXG4gICAgICAgICAgICAgICAgbW9kZWwzRDogbnVsbCxcclxuICAgICAgICAgICAgICAgIHN3ZWVwOiBudWxsLFxyXG4gICAgICAgICAgICAgICAgcm90YXRpb246IG51bGwsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAgICBHZXR0ZXJzXHJcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4gICAgZ2V0TW9kZSgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy52aWV3ZXJNb2RlO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFZpZXdlclNlbGVjdGVkU2VydmljZSgpIHtcclxuICAgICAgICAvLyBNYXR0ZXJwb3J0XHJcbiAgICAgICAgLy8gaWYgKHRoaXMuY2hlY2tNb2RlKFwiTWF0dGVycG9ydFwiKSkge1xyXG4gICAgICAgIC8vICAgICByZXR1cm4gdGhpcy5nZXRNYXR0ZXJwb3J0U2VydmljZSgpO1xyXG4gICAgICAgIC8vIH1cclxuICAgICAgICByZXR1cm4gdGhpcy5nZXRNYXR0ZXJwb3J0U2VydmljZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFRvdXJVcmwoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMudG91clVybDtcclxuICAgIH1cclxuXHJcbiAgICBnZXRNYXR0ZXJwb3J0U2VydmljZSgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5tYXR0ZXJwb3J0U2VydmljZTtcclxuICAgIH1cclxuXHJcbiAgICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAgICBHZW5lcmljIE1haW4gYWN0aW9uIGZ1bmN0aW9uc1xyXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4gICAgc2V0U3dlZXBUb01vdmUoc3dlZXA6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuc3dlZXBUb01vdmUgPSBzd2VlcDtcclxuICAgIH1cclxuXHJcbiAgICBzZXRSb3RhdGlvblRvTW92ZShyb3RhdGlvbjogeyB4OiBudW1iZXI7IHk6IG51bWJlcjsgfSkge1xyXG4gICAgICAgIHRoaXMucm90YXRpb25Ub01vdmUgPSByb3RhdGlvbjtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBhY3Rpb25fbW92ZV90b190YWcoZWxlbWVudElkOiBzdHJpbmcpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgICAgICAvLyBNYXR0ZXJwb3J0XHJcbiAgICAgICAgaWYgKHRoaXMuY2hlY2tNb2RlKFwiTWF0dGVycG9ydFwiKSkge1xyXG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPVxyXG4gICAgICAgICAgICAgICAgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5nZXRUYWdGcm9tRWxlbWVudElkKGVsZW1lbnRJZCk7XHJcbiAgICAgICAgICAgIGlmIChyZXN1bHQudGFnKSB7XHJcbiAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmdvVG9UYWcocmVzdWx0LnRhZyk7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAocmVzdWx0LnN3ZWVwKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnN3ZWVwVG9Nb3ZlID0gcmVzdWx0LnN3ZWVwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQWRkcyBNYXR0ZXJ0YWdzIHRvIFZpZXdlclxyXG4gICAgICogQHBhcmFtIG9iamVjdHMgTGlzdCBvZiBvYmplY3RzICh0aWNrZXRzLCBlcXVpcG1lbnRzKSBldGMgdG8gYmUgYWRkZWQgYXMgTWF0dGVydGFnc1xyXG4gICAgICovXHJcbiAgICBhc3luYyBhZGRPYmplY3RUYWdzVG9WaWV3ZXIob2JqZWN0czogRGJPYmplY3RUeXBlW10pIHtcclxuICAgICAgICBhd2FpdCBQcm9taXNlLmFsbChcclxuICAgICAgICAgICAgb2JqZWN0cy5tYXAoYXN5bmMgKG9iamVjdCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgcG9pID0gYXdhaXQgdGhpcy5wb2lTZXJ2aWNlLmdldFBvaUJ5RWxlbWVudElkKG9iamVjdC5pZCEpO1xyXG4gICAgICAgICAgICAgICAgaWYgKHBvaSAmJiBwb2kuY29vcmRpbmF0ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWN0aW9uQWRkT2JqZWN0RnJvbVBPSShvYmplY3QsIHBvaSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgYWN0aW9uQWRkT2JqZWN0RnJvbVBPSShcclxuICAgICAgICBvYmplY3Q6IERiT2JqZWN0VHlwZSxcclxuICAgICAgICBwb2k6IFBPSVxyXG4gICAgKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY2hlY2tNb2RlKFwiTWF0dGVycG9ydFwiKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5hY3Rpb25fYWRkX21hdHRlcnRhZ19mcm9tX1BPSShcclxuICAgICAgICAgICAgICAgIHBvaS50eXBlISxcclxuICAgICAgICAgICAgICAgIG9iamVjdCxcclxuICAgICAgICAgICAgICAgIHBvaSxcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gQ3VwaXhcclxuICAgICAgICAvLyBUT0RPXHJcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBhc3luYyBhY3Rpb25fZGVsZXRlX2VsZW1lbnQoXHJcbiAgICAgICAgZWxlbWVudDogRGJPYmplY3RUeXBlLFxyXG4gICAgKSB7XHJcbiAgICAgICAgLy8gTWF0dGVycG9ydFxyXG4gICAgICAgIGlmICh0aGlzLmNoZWNrTW9kZShcIk1hdHRlcnBvcnRcIikpIHtcclxuICAgICAgICAgICAgYXdhaXQgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5hY3Rpb25fZGVsZXRlX2VsZW1lbnQoZWxlbWVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgKiBFbmFibGUgdGFnIHBsYWNlbWVudCBtZW51IHRvIGFkZCBhIG5ldyBlbGVtZW50IGRlcGVuZGluZyBvbiBpdHMgdHlwZSAoVElDS0VULCBEQVRBLCBFUVVJUE1FTlQgZXRjKVxyXG4gICAgKi9cclxuICAgIGFzeW5jIGFjdGlvbkFkZE5ld0VsZW1lbnRUb1ZpZXdlcihwb2lUeXBlOiBQb2lUeXBlKSB7XHJcbiAgICAgICAgdGhpcy5hY3Rpb25fdG9vbGJveF9pbnNpZGVfdmlldygpO1xyXG5cclxuICAgICAgICAvLyBNYXR0ZXJwb3J0XHJcbiAgICAgICAgaWYgKHRoaXMuY2hlY2tNb2RlKFwiTWF0dGVycG9ydFwiKSAmJiB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmdldEludGVyYWN0aW9uTW9kZSgpID09PVxyXG4gICAgICAgICAgICBWaWV3ZXJJbnRlcmFjdGlvbnMuREVGQVVMVCkge1xyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmFkZEVsZW1lbnRBc01hdHRlcnRhZyhwb2lUeXBlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBMYXVuY2hlcyB0aGUgcmVwb3NpdGlvbmluZyBvZiBhbiBleGlzdGluZyBNYXR0ZXJ0YWcgcmVsYXRlZCB0byBwYXJhbWV0ZXIgb2JqZWN0XHJcbiAgICAgKiBAcGFyYW0gZWxlbWVudCBvYmplY3QgKFRJQ0tFVCwgRVFVSVBNRU5ULCBGRUFUVVJFLCBldGMpXHJcbiAgICAgKiBAcGFyYW0gcG9pVHlwZSB0eXBlIG9mIG9iamVjdFxyXG4gICAgICovXHJcbiAgICBhc3luYyBhY3Rpb25SZXBvc2l0aW9uRWxlbWVudEluVmlld2VyKGVsZW1lbnQ6IERiT2JqZWN0VHlwZSwgcG9pVHlwZTogUG9pVHlwZSkge1xyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgICAgdGhpcy5jaGVja01vZGUoXCJNYXR0ZXJwb3J0XCIpICYmXHJcbiAgICAgICAgICAgIHRoaXMubWF0dGVycG9ydFNlcnZpY2UuZ2V0SW50ZXJhY3Rpb25Nb2RlKCkgPT09XHJcbiAgICAgICAgICAgIFZpZXdlckludGVyYWN0aW9ucy5ERUZBVUxUXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICAgIGF3YWl0IHRoaXMubWF0dGVycG9ydFNlcnZpY2UuYWN0aW9uX3Bvc2l0aW9uX2VsZW1lbnQoXHJcbiAgICAgICAgICAgICAgICBwb2lUeXBlLFxyXG4gICAgICAgICAgICAgICAgZWxlbWVudCxcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFbmFibGUgdGlja2V0IHBsYWNlbWVudCBtZW51IHRvIGFkZCBhIG5ldyB0aWNrZXRcclxuICAgICAqL1xyXG4gICAgYWN0aW9uX2NhbmNlbGVkKCkge1xyXG4gICAgICAgIC8vIE1hdHRlcnBvcnRcclxuICAgICAgICBpZiAodGhpcy5jaGVja01vZGUoXCJNYXR0ZXJwb3J0XCIpKSB7XHJcbiAgICAgICAgICAgIHRoaXMubWF0dGVycG9ydFNlcnZpY2UuYWN0aW9uX2NhbmNlbGVkKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGFjdGlvbl90b29sYm94X2luc2lkZV92aWV3KCkge1xyXG4gICAgICAgIC8vIE1hdHRlcnBvcnRcclxuICAgICAgICBpZiAodGhpcy5jaGVja01vZGUoXCJNYXR0ZXJwb3J0XCIpKSB7XHJcbiAgICAgICAgICAgIHRoaXMubWF0dGVycG9ydFNlcnZpY2UuYWN0aW9uX3Rvb2xib3hfaW5zaWRlX3ZpZXcoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYWN0aW9uX3Rvb2xib3hfZG9sbGhvdXNlKCkge1xyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgICAgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5nZXRJbnRlcmFjdGlvbk1vZGUoKSAhPT1cclxuICAgICAgICAgICAgVmlld2VySW50ZXJhY3Rpb25zLkRFRkFVTFRcclxuICAgICAgICApIHtcclxuICAgICAgICAgICAgdGhpcy5hY3Rpb25fY2FuY2VsZWQoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuYWN0aW9uX3Rvb2xib3hfY2FuY2VsX21lc3VyZSgpO1xyXG4gICAgICAgIC8vIE1hdHRlcnBvcnRcclxuICAgICAgICBpZiAodGhpcy5jaGVja01vZGUoXCJNYXR0ZXJwb3J0XCIpKSB7XHJcbiAgICAgICAgICAgIHRoaXMubWF0dGVycG9ydFNlcnZpY2UuYWN0aW9uX3Rvb2xib3hfZG9sbGhvdXNlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGFjdGlvbl9mbG9vcnBsYW4oKSB7XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmdldEludGVyYWN0aW9uTW9kZSgpICE9PVxyXG4gICAgICAgICAgICBWaWV3ZXJJbnRlcmFjdGlvbnMuREVGQVVMVFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgICB0aGlzLmFjdGlvbl9jYW5jZWxlZCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBNYXR0ZXJwb3J0XHJcbiAgICAgICAgaWYgKHRoaXMuY2hlY2tNb2RlKFwiTWF0dGVycG9ydFwiKSkge1xyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmFjdGlvbl90b29sYm94X2Zsb29ycGxhbigpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhY3Rpb25fdG9vbGJveF9tZXN1cmUoKSB7XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmdldEludGVyYWN0aW9uTW9kZSgpICE9PVxyXG4gICAgICAgICAgICBWaWV3ZXJJbnRlcmFjdGlvbnMuREVGQVVMVFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgICB0aGlzLmFjdGlvbl9jYW5jZWxlZCgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5hY3Rpb25fdG9vbGJveF9pbnNpZGVfdmlldygpO1xyXG4gICAgICAgIC8vIE1hdHRlcnBvcnRcclxuICAgICAgICBpZiAodGhpcy5jaGVja01vZGUoXCJNYXR0ZXJwb3J0XCIpKSB7XHJcbiAgICAgICAgICAgIHRoaXMubWF0dGVycG9ydFNlcnZpY2UuYWN0aW9uX3Rvb2xib3hfbWVzdXJlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGFjdGlvbl90b29sYm94X2NhbmNlbF9tZXN1cmUoKSB7XHJcbiAgICAgICAgLy8gTWF0dGVycG9ydFxyXG4gICAgICAgIGlmICh0aGlzLmNoZWNrTW9kZShcIk1hdHRlcnBvcnRcIikpIHtcclxuICAgICAgICAgICAgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5hY3Rpb25fdG9vbGJveF9jYW5jZWxfbWVzdXJlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGFjdGlvbl91cGRhdGVfcG9pKFxyXG4gICAgICAgIHBvaTogUE9JLFxyXG4gICAgICAgIGlzVmFsaWQ6IGJvb2xlYW4sXHJcbiAgICAgICAgZWxlbWVudDogRGJPYmplY3RUeXBlLFxyXG4gICAgKTogUHJvbWlzZTxQT0k+IHtcclxuICAgICAgICBpZiAodGhpcy5jaGVja01vZGUoXCJNYXR0ZXJwb3J0XCIpKSB7XHJcbiAgICAgICAgICAgIGlmIChpc1ZhbGlkKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBsYXN0VGFnID0gdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5tYXR0ZXJ0YWdUb0ZvbGxvd1xyXG4gICAgICAgICAgICAgICAgICAgID8gdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5tYXR0ZXJ0YWdUb0ZvbGxvd1xyXG4gICAgICAgICAgICAgICAgICAgIDogdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5nZXRMYXN0VGFnKCk7XHJcbiAgICAgICAgICAgICAgICBpZiAoIWxhc3RUYWcpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHBvaSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBjb25zdCB0YWdEYXRhID1cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmdldFRhZ0RhdGFGcm9tSWQobGFzdFRhZyk7XHJcbiAgICAgICAgICAgICAgICBpZiAoIXRhZ0RhdGEpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHBvaSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgY29uc3QgcG9pTWV0YWRhdGEgPSBwb2kubWV0YWRhdGFcclxuICAgICAgICAgICAgICAgICAgICA/IEpTT04ucGFyc2UocG9pLm1ldGFkYXRhKVxyXG4gICAgICAgICAgICAgICAgICAgIDoge307XHJcbiAgICAgICAgICAgICAgICBwb2lNZXRhZGF0YS5ub3JtYWwgPSB0YWdEYXRhLmdldE5vcm1hbCgpO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgcG9pSW5wdXQgPSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWQ6IHBvaS5pZCxcclxuICAgICAgICAgICAgICAgICAgICBjb29yZGluYXRlOiB0YWdEYXRhLmdldENvb3JkaW5hdGVTdHJpbmcoKSxcclxuICAgICAgICAgICAgICAgICAgICBtYXR0ZXJwb3J0U3dlZXBJRDogdGFnRGF0YS5nZXRTd2VlcElEKCksXHJcbiAgICAgICAgICAgICAgICAgICAgbWV0YWRhdGE6IEpTT04uc3RyaW5naWZ5KHBvaU1ldGFkYXRhKSxcclxuICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICBjb25zdCB1cGRhdGVkUG9pOiBQT0kgPSBhd2FpdCB0aGlzLnBvaVNlcnZpY2UudXBkYXRlUG9pKFxyXG4gICAgICAgICAgICAgICAgICAgIHBvaUlucHV0LFxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIHRhZ0RhdGEuc2V0UG9pKHVwZGF0ZWRQb2kpO1xyXG4gICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5pbmplY3RIdG1sSW5UYWcoXHJcbiAgICAgICAgICAgICAgICAgICAgcG9pLnR5cGUhLFxyXG4gICAgICAgICAgICAgICAgICAgIGVsZW1lbnQsXHJcbiAgICAgICAgICAgICAgICAgICAgbGFzdFRhZ1xyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMubWF0dGVycG9ydFNlcnZpY2UuZWRpdFRhZ1N0eWxlKGxhc3RUYWcsIHRhZ0RhdGEpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5nb1RvVGFnKGxhc3RUYWcpO1xyXG5cclxuICAgICAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodXBkYXRlZFBvaSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5kZWxldGVMYXN0TWF0dGVydGFnKCk7XHJcbiAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUocG9pKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShwb2kpO1xyXG4gICAgfVxyXG5cclxuICAgIGVkaXRPbmx5VGFnU3R5bGVGb3JQb2kocG9pOiBQT0ksIG9iamVjdDogRGJPYmplY3RUeXBlKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY2hlY2tNb2RlKFwiTWF0dGVycG9ydFwiKSkge1xyXG4gICAgICAgICAgICBjb25zdCB0YWdEYXRhID0gdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5nZXRUYWdGcm9tRWxlbWVudElkKHBvaS5lbGVtZW50SUQpO1xyXG4gICAgICAgICAgICBpZiAodGFnRGF0YS50YWcpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IG1hdHRlcnRhZ0RhdGEgPVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubWF0dGVycG9ydFNlcnZpY2UuZ2V0VGFnRGF0YUZyb21JZCh0YWdEYXRhLnRhZyk7XHJcbiAgICAgICAgICAgICAgICBtYXR0ZXJ0YWdEYXRhLnNldE9iamVjdChvYmplY3QsIFBvaVR5cGUuUk9PTSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmVkaXRUYWdTdHlsZSh0YWdEYXRhLnRhZywgbWF0dGVydGFnRGF0YSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYWRkSWNvbkFuZFNldEZvclBvaShwb2k6IFBPSSwgaWNvblBhdGg6IHN0cmluZykge1xyXG4gICAgICAgIGlmICh0aGlzLmNoZWNrTW9kZShcIk1hdHRlcnBvcnRcIikpIHtcclxuICAgICAgICAgICAgY29uc3QgdGFnRGF0YSA9IHRoaXMubWF0dGVycG9ydFNlcnZpY2UuZ2V0VGFnRnJvbUVsZW1lbnRJZChwb2kuZWxlbWVudElEKTtcclxuICAgICAgICAgICAgaWYgKHRhZ0RhdGEudGFnKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmFkZE5ld0ljb25BbmRTZXRGb3JUYWcodGFnRGF0YS50YWcsIGljb25QYXRoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBjaGFuZ2VUb1JlZ2lzdHJlZEljb25Gb3JQb2kocG9pOiBQT0ksIGljb25OYW1lOiBzdHJpbmcpIHtcclxuICAgICAgICBpZiAodGhpcy5jaGVja01vZGUoXCJNYXR0ZXJwb3J0XCIpKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHRhZ0RhdGEgPSB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLmdldFRhZ0Zyb21FbGVtZW50SWQocG9pLmVsZW1lbnRJRCk7XHJcbiAgICAgICAgICAgIGlmICh0YWdEYXRhLnRhZykge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5zZXRSZWdpc3RyZWRJY29uRm9yVGFnKHRhZ0RhdGEudGFnLCBpY29uTmFtZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgdXBkYXRlSHRtbFRhZ0ZvclBvaVdpdGhPYmplY3QocG9pOiBQT0ksIG9iamVjdDogRGJPYmplY3RUeXBlKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY2hlY2tNb2RlKFwiTWF0dGVycG9ydFwiKSkge1xyXG4gICAgICAgICAgICBjb25zdCB0YWdEYXRhID0gdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5nZXRUYWdGcm9tRWxlbWVudElkKHBvaS5lbGVtZW50SUQpO1xyXG4gICAgICAgICAgICBpZiAodGFnRGF0YS50YWcpIHtcclxuICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMubWF0dGVycG9ydFNlcnZpY2UudXBkYXRlSW5qZWN0ZWRIdG1sRm9yVGFnSUQodGFnRGF0YS50YWcsIG9iamVjdCwgcG9pLnR5cGUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogTW92ZSBhbiBleGlzdGluZyBwb2kgaW4gTWF0dGVycG9ydFxyXG4gICAgICogQHBhcmFtIHBvaVxyXG4gICAgICogQHBhcmFtIGVsZW1lbnRcclxuICAgICAqL1xyXG4gICAgYXN5bmMgYWN0aW9uX21vdmVfcG9pX3Zpc3VhbGx5KFxyXG4gICAgICAgIHBvaTogUE9JLFxyXG4gICAgICAgIGVsZW1lbnQ6IFRpY2tldCB8IEZlYXR1cmUgfCBFcXVpcG1lbnQgfCBDb21tZW50LFxyXG4gICAgKSB7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5hY3Rpb25fZGVsZXRlX2VsZW1lbnQoZWxlbWVudCk7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5hY3Rpb25BZGRPYmplY3RGcm9tUE9JKGVsZW1lbnQsIHBvaSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgQ3VwaXhcclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbiAgICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICBNYXR0ZXJwb3J0XHJcbiAgICBodHRwczovL21hdHRlcnBvcnQuZ2l0aHViLmlvL3Nob3djYXNlLXNkay9kb2NzL3Nkay9yZWZlcmVuY2UvY3VycmVudC9tb2R1bGVzL21hdHRlcnRhZy5odG1sI2FkZFxyXG4gICAgaHR0cHM6Ly9tYXR0ZXJwb3J0LmdpdGh1Yi5pby9zaG93Y2FzZS1zZGsvZG9jcy9zZGsvcmVmZXJlbmNlL2N1cnJlbnQvbW9kdWxlcy9tYXR0ZXJ0YWcuaHRtbCNyZW1vdmVcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuICAgIGFzeW5jIGluaXRNYXR0ZXJwb3J0U2RrKHNwYWNlSUQ6IHN0cmluZywgbW9kZWwzRDogc3RyaW5nLCB0YWdTZXJ2aWNlOiBCYXNlVGFnU2VydmljZSwgbW9kdWxlOiBTcE1vZHVsZSA9IFNwTW9kdWxlLklNTU8pOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICB0aGlzLmlzTG9hZGVkID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5tYXR0ZXJwb3J0U2VydmljZS5jdXJyZW50U3BhY2VJRCA9IHNwYWNlSUQ7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMubWF0dGVycG9ydFNlcnZpY2UuaW5pdFNkayh0YWdTZXJ2aWNlLCBtb2R1bGUpLnRoZW4oYXN5bmMgKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCB7IHNkayB9ID0gdGhpcy5tYXR0ZXJwb3J0U2VydmljZTtcclxuICAgICAgICAgICAgICAgIHNkay5BcHAuc3RhdGUuc3Vic2NyaWJlKGZ1bmN0aW9uIChhcHBTdGF0ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIGFwcCBzdGF0ZSBoYXMgY2hhbmdlZFxyXG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKCdUaGUgY3VycmVudCBwaGFzZTogJywgYXBwU3RhdGUucGhhc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChhcHBTdGF0ZS5waGFzZSA9PT0gc2RrLkFwcC5QaGFzZS5QTEFZSU5HKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKCdUaGUgYXBwIGlzIHBsYXlpbmcnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zaG93aW5nVmlld2VyID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy52aWV3ZXJJc09uLm5leHQoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BhY2VJRCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGVsM0QsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd2VlcDogdGhpcy5zd2VlcFRvTW92ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uOiB0aGlzLnJvdGF0aW9uVG9Nb3ZlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRhSXNMb2FkZWQubmV4dCh0cnVlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5pc0xvYWRlZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc3dlZXBUb01vdmUgPSBudWxsO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJvdGF0aW9uVG9Nb3ZlID0gbnVsbDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9LmJpbmQodGhpcykpO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdCgpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHJlbW92ZUZvcmJpZGRlblN3ZWVwcyhmb3JiaWRkZW5Td2VlcHM6IHN0cmluZ1tdKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY2hlY2tNb2RlKFwiTWF0dGVycG9ydFwiKSkge1xyXG4gICAgICAgICAgICB0aGlzLm1hdHRlcnBvcnRTZXJ2aWNlLnJlbW92ZUZvcmJpZGRlblN3ZWVwcyhmb3JiaWRkZW5Td2VlcHMpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -119,6 +119,7 @@ export var EmailStatus;
|
|
|
119
119
|
EmailStatus["SOFT_BOUNCE"] = "SOFT_BOUNCE";
|
|
120
120
|
EmailStatus["HARD_BOUNCE"] = "HARD_BOUNCE";
|
|
121
121
|
EmailStatus["REJECTED"] = "REJECTED";
|
|
122
|
+
EmailStatus["SATISFACTION_TO_DELIVER"] = "SATISFACTION_TO_DELIVER";
|
|
122
123
|
})(EmailStatus || (EmailStatus = {}));
|
|
123
124
|
export var CaptureViewer;
|
|
124
125
|
(function (CaptureViewer) {
|
|
@@ -292,4 +293,4 @@ export var SpModule;
|
|
|
292
293
|
SpModule["HOTEL"] = "HOTEL";
|
|
293
294
|
SpModule["IMMO"] = "IMMO";
|
|
294
295
|
})(SpModule || (SpModule = {}));
|
|
295
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zbWFydGVycGxhbi1jb3JlL3NyYy9saWIvdHlwZXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxVQU1YO0FBTkQsV0FBWSxVQUFVO0lBQ2xCLDBDQUE0QixDQUFBO0lBQzVCLDBDQUE0QixDQUFBO0lBQzVCLG9DQUFzQixDQUFBO0lBQ3RCLHNDQUF3QixDQUFBO0lBQ3hCLGtEQUFvQyxDQUFBO0FBQ3hDLENBQUMsRUFOVyxVQUFVLEtBQVYsVUFBVSxRQU1yQjtBQUNELE1BQU0sQ0FBTixJQUFZLE9BU1g7QUFURCxXQUFZLE9BQU87SUFDZixrQ0FBdUIsQ0FBQTtJQUN2QixzQ0FBMkIsQ0FBQTtJQUMzQiw0QkFBaUIsQ0FBQTtJQUNqQiw4QkFBbUIsQ0FBQTtJQUNuQix3QkFBYSxDQUFBO0lBQ2IsNEJBQWlCLENBQUE7SUFDakIsd0JBQWEsQ0FBQTtJQUNiLHdCQUFhLENBQUE7QUFDakIsQ0FBQyxFQVRXLE9BQU8sS0FBUCxPQUFPLFFBU2xCO0FBRUQsTUFBTSxDQUFOLElBQVksY0FNWDtBQU5ELFdBQVksY0FBYztJQUN0QixxQ0FBbUIsQ0FBQTtJQUNuQiw2QkFBVyxDQUFBO0lBQ1gsbUNBQWlCLENBQUE7SUFDakIsK0JBQWEsQ0FBQTtJQUNiLHFDQUFtQixDQUFBO0FBQ3ZCLENBQUMsRUFOVyxjQUFjLEtBQWQsY0FBYyxRQU16QjtBQUVELE1BQU0sQ0FBTixJQUFZLFNBV1g7QUFYRCxXQUFZLFNBQVM7SUFDakIsaUNBQW9CLENBQUE7SUFDcEIsdUNBQTBCLENBQUE7SUFDMUIsdUNBQTBCLENBQUE7SUFDMUIsdUNBQTBCLENBQUE7SUFDMUIsbUNBQXNCLENBQUE7SUFDdEIsdUNBQTBCLENBQUE7SUFDMUIscUNBQXdCLENBQUE7SUFDeEIsMENBQTZCLENBQUE7SUFDN0IseUNBQTRC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bnQiOlsiZXhwb3J0IGVudW0gQ2FtZXJhTW9kZSB7XHJcbiAgICBET0xMSE9VU0UgPSBcIm1vZGUuZG9sbGhvdXNlXCIsXHJcbiAgICBGTE9PUlBMQU4gPSBcIm1vZGUuZmxvb3JwbGFuXCIsXHJcbiAgICBJTlNJREUgPSBcIm1vZGUuaW5zaWRlXCIsXHJcbiAgICBPVVRTSURFID0gXCJtb2RlLm91dHNpZGVcIixcclxuICAgIFRSQU5TSVRJT05JTkcgPSBcIm1vZGUudHJhbnNpdGlvbmluZ1wiXHJcbn1cclxuZXhwb3J0IGVudW0gUG9pVHlwZSB7XHJcbiAgICBFUVVJUE1FTlQgPSBcIkVRVUlQTUVOVFwiLFxyXG4gICAgSU5GT1JNQVRJT04gPSBcIklORk9STUFUSU9OXCIsXHJcbiAgICBUSUNLRVQgPSBcIlRJQ0tFVFwiLFxyXG4gICAgTUVBU1VSRSA9IFwiTUVBU1VSRVwiLFxyXG4gICAgREFUQSA9IFwiREFUQVwiLFxyXG4gICAgUEVPUExFID0gXCJQRU9QTEVcIixcclxuICAgIERFU0sgPSBcIkRFU0tcIixcclxuICAgIFJPT00gPSBcIlJPT01cIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBUaWNrZXRQcmlvcml0eSB7XHJcbiAgICBNSU5JTVVNID0gXCJNSU5JTVVNXCIsXHJcbiAgICBMT1cgPSBcIkxPV1wiLFxyXG4gICAgTUVESVVNID0gXCJNRURJVU1cIixcclxuICAgIEhJR0ggPSBcIkhJR0hcIixcclxuICAgIE1BWElNVU0gPSBcIk1BWElNVU1cIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBUYWdBY3Rpb24ge1xyXG4gICAgSE9WRVJfT04gPSBcImhvdmVyT25cIixcclxuICAgIEFVRElPX0NMSUNLID0gXCJhdWRpb0NsaWNrXCIsXHJcbiAgICBWSURFT19DTElDSyA9IFwidmlkZW9DbGlja1wiLFxyXG4gICAgSU1BR0VfQ0xJQ0sgPSBcImltYWdlQ2xpY2tcIixcclxuICAgIERPQ19DTElDSyA9IFwiZG9jQ2xpY2tcIixcclxuICAgIENMT1NFX01PREFMID0gXCJjbG9zZU1vZGFsXCIsXHJcbiAgICBORVhUX1NMSURFID0gXCJuZXh0U2xpZGVcIixcclxuICAgIERFVEFJTF9DTElDSyA9IFwiZGV0YWlsc0NsaWNrXCIsXHJcbiAgICBUSUNLRVRfQ0xJQ0sgPSBcInRpY2tldENsaWNrXCIsXHJcbiAgICBZT1VUVUJFX0NMSUNLID0gXCJ5b3V0dWJlQ2xpY2tcIixcclxufVxyXG5cclxuZXhwb3J0IGVudW0gVGlja2V0U3RhdHVzIHtcclxuICAgIFRPX0JFX1BST0NFU1NFRCA9IFwiVE9fQkVfUFJPQ0VTU0VEXCIsXHJcbiAgICBQTEFOTkVEID0gXCJQTEFOTkVEXCIsXHJcbiAgICBJTl9QUk9HUkVTUyA9IFwiSU5fUFJPR1JFU1NcIixcclxuICAgIFdBSVRJTkdfRk9SX1ZBTElEQVRJT04gPSBcIldBSVRJTkdfRk9SX1ZBTElEQVRJT05cIixcclxuICAgIFZBTElEQVRFRCA9IFwiVkFMSURBVEVEXCIsXHJcbiAgICBSRUpFQ1RFRCA9IFwiUkVKRUNURURcIixcclxuICAgIFJFU09MVkVEID0gXCJSRVNPTFZFRFwiLFxyXG4gICAgQVJDSElWRUQgPSBcIkFSQ0hJVkVEXCIsXHJcbiAgICBMQVRFID0gXCJMQVRFXCIsXHJcbiAgICBCTE9DS0VEID0gXCJCTE9DS0VEXCIsXHJcbiAgICBDT01QTEVURUQgPSBcIkNPTVBMRVRFRFwiLFxyXG4gICAgREVMQVlFRCA9IFwiREVMQVlFRFwiLFxyXG4gICAgQ0FOQ0VMTEVEID0gXCJDQU5DRUxMRURcIixcclxuICAgIFRPX1JFRE8gPSBcIlRPX1JFRE9cIixcclxuICAgIENSRUFURUQgPSBcIkNSRUFURURcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBEb21haW5UeXBlIHtcclxuICAgIEVRVUlQTUVOVCA9IFwiRVFVSVBNRU5UXCIsXHJcbiAgICBNSVNTSU9OID0gXCJNSVNTSU9OXCIsXHJcbiAgICBUSUNLRVQgPSBcIlRJQ0tFVFwiLFxyXG4gICAgUE9JID0gXCJQT0lcIixcclxuICAgIEZFQVRVUkUgPSBcIkZFQVRVUkVcIixcclxuICAgIEJPT0tJTkcgPSBcIkJPT0tJTkdcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBSb2xlU3RhdHVzIHtcclxuICAgIFZJU0lUT1IgPSBcIlZJU0lUT1JcIixcclxuICAgIFZJU0lUT1JfTVVTRVVNID0gXCJWSVNJVE9SX01VU0VVTVwiLFxyXG4gICAgR1VJREVfTVVTRVVNID0gXCJHVUlERV9NVVNFVU1cIixcclxuICAgIE9DQ1VQQU5UID0gXCJPQ0NVUEFOVFwiLFxyXG4gICAgU0VSVklDRSA9IFwiU0VSVklDRVwiLFxyXG4gICAgTUFOQUdFUiA9IFwiTUFOQUdFUlwiLFxyXG4gICAgT1dORVIgPSBcIk9XTkVSXCIsXHJcbiAgICBBRE1JTiA9IFwiQURNSU5cIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBQcm9maWxlU3RhdHVzIHtcclxuICAgIFdBSVRJTkdfRk9SX1ZBTElEQVRJT04gPSBcIldBSVRJTkdfRk9SX1ZBTElEQVRJT05cIixcclxuICAgIFdBSVRJTkdfRk9SX0FDVElWQVRJT04gPSBcIldBSVRJTkdfRk9SX0FDVElWQVRJT05cIixcclxuICAgIEFDVElWRSA9IFwiQUNUSVZFXCIsXHJcbiAgICBJTkFDVElWRSA9IFwiSU5BQ1RJVkVcIixcclxuICAgIEJMT0NLRUQgPSBcIkJMT0NLRURcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBMZXZlbFN0YXR1cyB7XHJcbiAgICBNSU5JTVVNID0gXCJNSU5JTVVNXCIsXHJcbiAgICBMT1cgPSBcIkxPV1wiLFxyXG4gICAgTUVESVVNID0gXCJNRURJVU1cIixcclxuICAgIEhJR0ggPSBcIkhJR0hcIixcclxuICAgIE1BWElNVU0gPSBcIk1BWElNVU1cIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBQcm9wZXJ0eVR5cGUge1xyXG4gICAgUFJPUEVSVFkgPSBcIlBST1BFUlRZXCIsXHJcbiAgICBWSVNJVCA9IFwiVklTSVRcIixcclxuICAgIE9DQ1VQQU5UID0gXCJPQ0NVUEFOVFwiLFxyXG4gICAgU0hBUkVEID0gXCJTSEFSRURcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBTcGFjZVN0YXR1cyB7XHJcbiAgICBEUEVfVE9fVkFMSURBVEUgPSBcIkRQRV9UT19WQUxJREFURVwiLFxyXG4gICAgRFBFX1ZBTElEQVRFRCA9IFwiRFBFX1ZBTElEQVRFRFwiLFxyXG4gICAgRFBFX0ZFVENIID0gXCJEUEVfRkVUQ0hcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBMb2NhbGUge1xyXG4gICAgRlIgPSBcIkZSXCIsXHJcbiAgICBFTiA9IFwiRU5cIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBFbWFpbFN0YXR1cyB7XHJcbiAgICBDUkVBVElPTl9UT19ERUxJVkVSID0gXCJDUkVBVElPTl9UT19ERUxJVkVSXCIsXHJcbiAgICBVUERBVEVfVE9fREVMSVZFUiA9IFwiVVBEQVRFX1RPX0RFTElWRVJcIixcclxuICAgIENBTkNFTExBVElPTl9UT19ERUxJVkVSID0gXCJDQU5DRUxMQVRJT05fVE9fREVMSVZFUlwiLFxyXG4gICAgU0VOVCA9IFwiU0VOVFwiLFxyXG4gICAgU09GVF9CT1VOQ0UgPSBcIlNPRlRfQk9VTkNFXCIsXHJcbiAgICBIQVJEX0JPVU5DRSA9IFwiSEFSRF9CT1VOQ0VcIixcclxuICAgIFJFSkVDVEVEID0gXCJSRUpFQ1RFRFwiXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIENhcHR1cmVWaWV3ZXIge1xyXG4gICAgQ1VQSVggPSBcIkNVUElYXCIsXHJcbiAgICBNQVRURVJQT1JUID0gXCJNQVRURVJQT1JUXCIsXHJcbiAgICBTTUFSVEVSUExBTl9WMSA9IFwiU01BUlRFUlBMQU5fVjFcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBJbnZlbnRvcnlTdGF0dXMge1xyXG4gICAgU1VDQ0VTUyA9IFwiU1VDQ0VTU1wiLFxyXG4gICAgRVJST1IgPSBcIkVSUk9SXCIsXHJcbiAgICBUT19SVU4gPSBcIlRPX1JVTlwiLFxyXG4gICAgVE9fUlVOX09ORV9JTUFHRSA9IFwiVE9fUlVOX09ORV9JTUFHRVwiLFxyXG4gICAgRVJST1JfRklMRV9PQkpfTk9UX0VYSVNUID0gXCJFUlJPUl9GSUxFX09CSl9OT1RfRVhJU1RcIixcclxuICAgIEVSUk9SX0ZJTEVfSlNPTl9OT1RfRVhJU1QgPSBcIkVSUk9SX0ZJTEVfSlNPTl9OT1RfRVhJU1RcIixcclxuICAgIEVSUk9SX0ZJTEVfTU9ERUxfTk9UX0VYSVNUID0gXCJFUlJPUl9GSUxFX01PREVMX05PVF9FWElTVFwiXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFR5cGVOb3RlIHtcclxuICAgIENPTlRSQUNUVUFMID0gXCJDT05UUkFDVFVBTFwiLFxyXG4gICAgSU5GT1JNQVRJT04gPSBcIklORk9STUFUSU9OXCIsXHJcbiAgICBURUNITklDQUwgPSBcIlRFQ0hOSUNBTFwiLFxyXG4gICAgRklOQU5DSUFMID0gXCJGSU5BTkNJQUxcIixcclxuICAgIE9USEVSID0gXCJPVEhFUlwiLFxyXG4gICAgSU1BR0UgPSBcIklNQUdFXCJcclxufVxyXG5cclxuZXhwb3J0IGVudW0gRmVhdHVyZVR5cGUge1xyXG4gICAgREVTSyA9IFwiREVTS1wiLFxyXG4gICAgSU5ESUNBVE9SX1RFTVAgPSBcIklORElDQVRPUl9URU1QXCIsXHJcbiAgICBJTkZPUk1BVElPTiA9IFwiSU5GT1JNQVRJT05cIixcclxuICAgIElORElDQVRPUl9DTzIgPSBcIklORElDQVRPUl9DTzJcIixcclxuICAgIFBVUkNIQVNFID0gXCJQVVJDSEFTRVwiXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFRpY2tldFR5cGUge1xyXG4gICAgUkVQT1JUSU5HID0gXCJSRVBPUlRJTkdcIixcclxuICAgIFJFUVVFU1RfRk9SX0lOVEVSVkVOVElPTiA9IFwiUkVRVUVTVF9GT1JfSU5URVJWRU5USU9OXCIsXHJcbiAgICBSRVFVRVNUX0ZPUl9NQUlOVEVOQU5DRSA9IFwiUkVRVUVTVF9GT1JfTUFJTlRFTkFOQ0VcIixcclxuICAgIFdPUktfT1JERVIgPSBcIldPUktfT1JERVJcIixcclxuICAgIElOQ0lERU5UID0gXCJJTkNJREVOVFwiLFxyXG4gICAgSU5GT1JNQVRJT04gPSBcIklORk9STUFUSU9OXCJcclxufVxyXG5cclxuZXhwb3J0IGVudW0gRXZlbnRUeXBlIHtcclxuICAgIEVRVUlQTUVOVCA9IFwiRVFVSVBNRU5UXCIsXHJcbiAgICBDT01NRU5UID0gXCJDT01NRU5UXCIsXHJcbiAgICBDT05UUkFDVFVBTF9JTlRFUlZFTlRJT04gPSBcIkNPTlRSQUNUVUFMX0lOVEVSVkVOVElPTlwiLFxyXG4gICAgTk9OX0NPTlRSQUNUVUFMX0lOVEVSVkVOVElPTiA9IFwiTk9OX0NPTlRSQUNUVUFMX0lOVEVSVkVOVElPTlwiLFxyXG4gICAgVElDS0VUID0gXCJUSUNLRVRcIixcclxuICAgIFJFUE9SVElORyA9IFwiUkVQT1JUSU5HXCIsXHJcbiAgICBSRVFVRVNUX0ZPUl9JTlRFUlZFTlRJT04gPSBcIlJFUVVFU1RfRk9SX0lOVEVSVkVOVElPTlwiLFxyXG4gICAgUkVRVUVTVF9GT1JfTUFJTlRFTkFOQ0UgPSBcIlJFUVVFU1RfRk9SX01BSU5URU5BTkNFXCIsXHJcbiAgICBXT1JLX09SREVSID0gXCJXT1JLX09SREVSXCIsXHJcbiAgICBJTkNJREVOVCA9IFwiSU5DSURFTlRcIixcclxuICAgIE1FQVNVUkUgPSBcIk1FQVNVUkVcIixcclxuICAgIEJPT0tJTkcgPSBcIkJPT0tJTkdcIixcclxuICAgIEJPT0tJTkdfU1VCQ1JJUFRJT04gPSBcIkJPT0tJTkdfU1VCQ1JJUFRJT05cIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBFdmVudFN0YXR1cyB7XHJcbiAgICBUT19CRV9QUk9DRVNTRUQgPSBcIlRPX0JFX1BST0NFU1NFRFwiLFxyXG4gICAgUExBTk5FRCA9IFwiUExBTk5FRFwiLFxyXG4gICAgSU5fUFJPR1JFU1MgPSBcIklOX1BST0dSRVNTXCIsXHJcbiAgICBXQUlUSU5HX0ZPUl9WQUxJREFUSU9OID0gXCJXQUlUSU5HX0ZPUl9WQUxJREFUSU9OXCIsXHJcbiAgICBWQUxJREFURUQgPSBcIlZBTElEQVRFRFwiLFxyXG4gICAgUkVKRUNURUQgPSBcIlJFSkVDVEVEXCIsXHJcbiAgICBSRVNPTFZFRCA9IFwiUkVTT0xWRURcIixcclxuICAgIEFSQ0hJVkVEID0gXCJBUkNISVZFRFwiLFxyXG4gICAgTEFURSA9IFwiTEFURVwiLFxyXG4gICAgQkxPQ0tFRCA9IFwiQkxPQ0tFRFwiLFxyXG4gICAgQ09NUExFVEVEID0gXCJDT01QTEVURURcIixcclxuICAgIERFTEFZRUQgPSBcIkRFTEFZRURcIixcclxuICAgIENBTkNFTExFRCA9IFwiQ0FOQ0VMTEVEXCIsXHJcbiAgICBUT19SRURPID0gXCJUT19SRURPXCIsXHJcbiAgICBDUkVBVEVEID0gXCJDUkVBVEVEXCIsXHJcbiAgICBMSU5LRURfVE9fRVFVSVBNRU5UID0gXCJMSU5LRURfVE9fRVFVSVBNRU5UXCIsXHJcbiAgICBVTkxJTktFRF9GUk9NX0VRVUlQTUVOVCA9IFwiVU5MSU5LRURfRlJPTV9FUVVJUE1FTlRcIixcclxuICAgIEVESVRFRCA9IFwiRURJVEVEXCIsXHJcbiAgICBMSU5LRURfVE9fQV9QQVJFTlRfVElDS0VUID0gXCJMSU5LRURfVE9fQV9QQVJFTlRfVElDS0VUXCIsXHJcbiAgICBXQUlUSU5HX0ZPUl9BQ0NFUFRBVElPTiA9IFwiV0FJVElOR19GT1JfQUNDRVBUQVRJT05cIixcclxuICAgIEFDQ0VQVEVEID0gXCJBQ0NFUFRFRFwiLFxyXG4gICAgUkVGVVNFRCA9IFwiUkVGVVNFRFwiLFxyXG4gICAgRE9NQUlOX1VQREFURUQgPSBcIkRPTUFJTl9VUERBVEVEXCIsXHJcbiAgICBEQVRFU19VUERBVEVEID0gXCJEQVRFU19VUERBVEVEXCIsXHJcbiAgICBUSUNLRVRfQ0hJTERfUkVNT1ZFRCA9IFwiVElDS0VUX0NISUxEX1JFTU9WRURcIixcclxuICAgIFRZUEVfVVBEQVRFRCA9IFwiVFlQRV9VUERBVEVEXCIsXHJcbiAgICBEQVRFX0VORF9VUERBVEVEID0gXCJEQVRFX0VORF9VUERBVEVEXCIsXHJcbiAgICBEQVRFX1NUQVJUX1VQREFURUQgPSBcIkRBVEVfU1RBUlRfVVBEQVRFRFwiLFxyXG4gICAgUE9TSVRJT05fU0VUID0gXCJQT1NJVElPTl9TRVRcIixcclxuICAgIFBPU0lUSU9OX1VQREFURUQgPSBcIlBPU0lUSU9OX1VQREFURURcIixcclxuICAgIFBPU0lUSU9OX1JFTU9WRUQgPSBcIlBPU0lUSU9OX1JFTU9WRURcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBQYXltZW50U3RhdHVzIHtcclxuICAgIFVOUEFJRCA9IFwiVU5QQUlEXCIsXHJcbiAgICBQQUlEID0gXCJQQUlEXCIsXHJcbiAgICBQRU5ESU5HID0gXCJQRU5ESU5HXCIsXHJcbiAgICBFUlJPUiA9IFwiRVJST1JcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBDb21tZW50VHlwZSB7XHJcbiAgICBNRUFTVVJFID0gXCJNRUFTVVJFXCIsXHJcbiAgICBWSURFTyA9IFwiVklERU9cIixcclxuICAgIERPQ1VNRU5UID0gXCJET0NVTUVOVFwiLFxyXG4gICAgSU1BR0UgPSBcIklNQUdFXCIsXHJcbiAgICBURVhUID0gXCJURVhUXCIsXHJcbiAgICBBVURJTyA9IFwiQVVESU9cIixcclxuICAgIFVSTCA9IFwiVVJMXCIsXHJcbiAgICBZT1VUVUJFID0gXCJZT1VUVUJFXCIsXHJcbiAgICBVUkxfU0hPUCA9IFwiVVJMX1NIT1BcIixcclxuICAgIFNDUklQVF9FTUJFRCA9IFwiU0NSSVBUX0VNQkVEXCJcclxufVxyXG5cclxuZXhwb3J0IGVudW0gU3RhdHVzRXF1aXBtZW50IHtcclxuICAgIFRPX1NFVFVQID0gXCJUT19TRVRVUFwiLFxyXG4gICAgQlJPS0VOID0gXCJCUk9LRU5cIixcclxuICAgIFVOSU5TVEFMTEVEID0gXCJVTklOU1RBTExFRFwiLFxyXG4gICAgSU5DSURFTlQgPSBcIklOQ0lERU5UXCIsXHJcbiAgICBJTl9PUEVSQVRJT04gPSBcIklOX09QRVJBVElPTlwiLFxyXG4gICAgV0FJVElOR19GT1JfUkVQQUlSID0gXCJXQUlUSU5HX0ZPUl9SRVBBSVJcIixcclxuICAgIERFTEVURUQgPSBcIkRFTEVURURcIixcclxuICAgIE9VVF9PRl9PUkRFUiA9IFwiT1VUX09GX09SREVSXCIsXHJcbiAgICBUT19CRV9SRVBMQUNFRCA9IFwiVE9fQkVfUkVQTEFDRURcIlxyXG59XHJcblxyXG4vKiogSW50ZXJmYWNlIGZvciBVcGRhdGUgKG9ubHkgaWQgaXMgcmVxdWlyZWQpICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVVwZGF0ZSB7XHJcbiAgICBpZDogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBBV1NUeXBlID0ge1xyXG4gICAgX190eXBlbmFtZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBpZD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBjcmVhdGVkQXQ/OiBzdHJpbmc7XHJcbiAgICB1cGRhdGVkQXQ/OiBzdHJpbmc7XHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBEYk9iamVjdFR5cGUgPSB7XHJcbiAgICBzcGFjZUlEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGRlc2NyaXB0aW9uPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHBvaXM/OiB7XHJcbiAgICAgICAgX190eXBlbmFtZT86IFwiTW9kZWxQT0lDb25uZWN0aW9uXCI7XHJcbiAgICAgICAgaXRlbXM/OiBBcnJheTxQT0k+IHwgbnVsbDtcclxuICAgICAgICBuZXh0VG9rZW4/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgfSB8IG51bGw7XHJcbiAgICBzcGFjZT86IFNwYWNlIHwgbnVsbDtcclxuICAgIGRvbWFpbklEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIG5hbWU/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgdGl0bGU/OiBzdHJpbmcgfCBudWxsO1xyXG59ICYgQVdTVHlwZTtcclxuXHJcbmV4cG9ydCB0eXBlIFRpY2tldCA9IHtcclxuICAgIHNwYWNlSUQ6IHN0cmluZztcclxuICAgIHRpdGxlOiBzdHJpbmc7XHJcbiAgICBzdGF0dXM/OiBUaWNrZXRTdGF0dXMgfCBudWxsO1xyXG4gICAgcHJpb3JpdHk/OiBUaWNrZXRQcmlvcml0eSB8IG51bGw7XHJcbiAgICBvd25lck1pc3Npb25JRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBvd25lck1pc3Npb24/OiBNaXNzaW9uIHwgbnVsbDtcclxuICAgIHR5cGU/OiBUaWNrZXRUeXBlIHwgbnVsbDtcclxuICAgIHBhcmVudElEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGxldmVsPzogTGV2ZWxTdGF0dXMgfCBudWxsO1xyXG4gICAgZnJpZW5kbHlMYWJlbD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBkb21haW46IERvbWFpbiB8IG51bGw7XHJcbiAgICBkb21haW5JRDogc3RyaW5nIHwgbnVsbDtcclxuICAgIGV2ZW50cz86IHtcclxuICAgICAgICBfX3R5cGVuYW1lPzogXCJNb2RlbEV2ZW50Q29ubmVjdGlvblwiO1xyXG4gICAgICAgIGl0ZW1zPzogQXJyYXk8RXZlbnQ+IHwgbnVsbDtcclxuICAgICAgICBuZXh0VG9rZW4/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgfSB8IG51bGw7XHJcbiAgICBhc3NpZ25lZXM/OiB7XHJcbiAgICAgICAgX190eXBlbmFtZT86IFwiTW9kZWxBZmZlY3RhdGlvbkNvbm5lY3Rpb25cIjtcclxuICAgICAgICBpdGVtcz86IEFycmF5PEFmZmVjdGF0aW9uPiB8IG51bGw7XHJcbiAgICAgICAgbmV4dFRva2VuPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIH0gfCBudWxsO1xyXG4gICAgZXF1aXBtZW50cz86IEFycmF5PEVxdWlwbWVudD4gfCBudWxsO1xyXG4gICAgb3BlcmF0aW9ucz86IHtcclxuICAgICAgICBfX3R5cGVuYW1lPzogXCJNb2RlbE9wZXJhdGlvbkNvbm5lY3Rpb25cIjtcclxuICAgICAgICBpdGVtcz86IEFycmF5PE9wZXJhdGlvbiB8IG51bGw+IHwgbnVsbDtcclxuICAgICAgICBuZXh0VG9rZW4/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgfTtcclxuICAgIGNvbW1lbnRzPzoge1xyXG4gICAgICAgIF9fdHlwZW5hbWU/OiBcIk1vZGVsQ29tbWVudENvbm5lY3Rpb25cIjtcclxuICAgICAgICBpdGVtcz86IEFycmF5PENvbW1lbnQgfCBudWxsPiB8IG51bGw7XHJcbiAgICAgICAgbmV4dFRva2VuPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIH07XHJcbiAgICBwcmVzdGF0YWlyZT86IFByZXN0YXRhaXJlIHwgbnVsbDtcclxuICAgIGNoaWxkcmVuPzoge1xyXG4gICAgICAgIF9fdHlwZW5hbWU/OiBcIk1vZGVsVGlja2V0Q29ubmVjdGlvblwiO1xyXG4gICAgICAgIGl0ZW1zPzogQXJyYXk8VGlja2V0IHwgbnVsbD4gfCBudWxsO1xyXG4gICAgICAgIG5leHRUb2tlbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICB9O1xyXG4gICAgYXJjaGl2ZWRGb3JNaXNzaW9uSUQ/OiBzdHJpbmdbXSB8IG51bGw7XHJcbn0gJiBEYk9iamVjdFR5cGU7XHJcblxyXG5leHBvcnQgdHlwZSBPcGVyYXRpb24gPSB7XHJcbiAgICBpZD86IHN0cmluZyB8IG51bGw7XHJcbiAgICB0aWNrZXRJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBlcXVpcG1lbnRJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBkZWxldGVkQXQ/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgdGlja2V0PzogVGlja2V0IHwgbnVsbDtcclxuICAgIGVxdWlwbWVudD86IEVxdWlwbWVudCB8IG51bGw7XHJcbn0gJiBBV1NUeXBlO1xyXG5cclxuZXhwb3J0IHR5cGUgRXF1aXBtZW50ID0ge1xyXG4gICAgbmFtZTogc3RyaW5nO1xyXG4gICAgbm90ZXM/OiB7XHJcbiAgICAgICAgX190eXBlbmFtZT86IFwiTW9kZWxOb3RlQ29ubmVjdGlvblwiO1xyXG4gICAgICAgIGl0ZW1zPzogQXJyYXk8Tm90ZSB8IG51bGw+IHwgbnVsbDtcclxuICAgICAgICBuZXh0VG9rZW4/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgfTtcclxuICAgIGRvY3VtZW50cz86IEFycmF5PEVxdWlwbWVudERvY3VtZW50PiB8IG51bGw7XHJcbiAgICBkb2N1bWVudGF0aW9uSW1hZ2VVcmxTaWduZWQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgc3ViRXF1aXBtZW50cz86IEFycmF5PEVxdWlwbWVudCB8IG51bGw+IHwgbnVsbDtcclxuICAgIHN1YmVxdWlwbWVudHNJRHM/OiBBcnJheTxzdHJpbmcgfCBudWxsPiB8IG51bGw7XHJcbiAgICBzZXJpYWxOdW1iZXI/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgZG9tYWluPzogRG9tYWluIHwgbnVsbDtcclxuICAgIGNoaWxkRG9tYWluPzogRG9tYWluIHwgbnVsbDtcclxuICAgIHBhcmVudERvbWFpbj86IERvbWFpbiB8IG51bGw7XHJcbiAgICBwaG90bz86IHN0cmluZyB8IG51bGw7XHJcbiAgICB6b25lPzogWm9uZSB8IG51bGw7XHJcbiAgICB0aWNrZXRzPzogVGlja2V0W10gfCBudWxsO1xyXG4gICAgZG9tYWluSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgc3BhY2VJRDogc3RyaW5nO1xyXG4gICAgYXJjaGl2ZWRGb3JNaXNzaW9uSUQ/OiBzdHJpbmdbXSB8IG51bGw7XHJcbiAgICBhbm5vdGF0aW9uPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHN0YXR1cz86IFN0YXR1c0VxdWlwbWVudCB8IG51bGw7XHJcbiAgICBmYW1pbHk/OiBBcnJheTxzdHJpbmcgfCBudWxsPiB8IG51bGw7XHJcbiAgICBtYW51ZmFjdHVyZXI/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgc2t1Pzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGluc3RhbGxEYXRlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHdhcnJhbnR5RW5kRGF0ZT86IG51bWJlciB8IG51bGw7XHJcbiAgICBvcGVyYXRpb25zPzoge1xyXG4gICAgICAgIF9fdHlwZW5hbWU/OiBcIk1vZGVsT3BlcmF0aW9uQ29ubmVjdGlvblwiO1xyXG4gICAgICAgIGl0ZW1zPzogQXJyYXk8T3BlcmF0aW9uIHwgbnVsbD4gfCBudWxsO1xyXG4gICAgICAgIG5leHRUb2tlbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICB9O1xyXG59ICYgRGJPYmplY3RUeXBlO1xyXG5cclxuZXhwb3J0IHR5cGUgRXF1aXBtZW50U2VsZWN0ZWQgPSB7XHJcbiAgICBzZWxlY3RlZD86IGJvb2xlYW47XHJcbn0gJiBFcXVpcG1lbnQ7XHJcblxyXG4vLyBub3QgaW4gZGJcclxuZXhwb3J0IHR5cGUgRXF1aXBtZW50RG9jdW1lbnQgPSB7XHJcbiAgICBmaWxlbmFtZTogc3RyaW5nO1xyXG4gICAgdXJsOiBzdHJpbmc7XHJcbiAgICB1cmxTaWduZWQ6IHN0cmluZztcclxuICAgIG5vdGVJRDogc3RyaW5nO1xyXG59O1xyXG5cclxuLy8gbm90IGluIGRiXHJcbmV4cG9ydCB0eXBlIFByZXN0YXRhaXJlID0ge1xyXG4gICAgb3JnYW5pc2F0aW9uOiBPcmdhbmlzYXRpb247XHJcbiAgICBtaXNzaW9uOiBNaXNzaW9uO1xyXG4gICAgcHJvZmlsZTogUHJvZmlsZTtcclxuICAgIG5hbWU6IHN0cmluZztcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIE5vdGUgPSB7XHJcbiAgICBpZD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBhdHRhY2htZW50Pzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHNpZ25EYXRlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIGV4cGlyYXRpb25EYXRlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHR5cGU/OiBUeXBlTm90ZSB8IG51bGw7XHJcbiAgICBvd25lck1pc3Npb25JRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBlcXVpcG1lbnRJRD86IHN0cmluZyB8IG51bGw7XHJcbn0gJiBBV1NUeXBlO1xyXG5cclxuZXhwb3J0IHR5cGUgRG9tYWluID0ge1xyXG4gICAgbmFtZTogc3RyaW5nO1xyXG4gICAgc2x1Zz86IHN0cmluZyB8IG51bGw7XHJcbiAgICBhYmJyZXZpYXRpb24/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgb3JnYW5pc2F0aW9uSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgcGFyZW50SUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgdHlwZT86IERvbWFpblR5cGUgfCBudWxsO1xyXG4gICAgcGFyZW50PzogRG9tYWluIHwgbnVsbDtcclxuICAgIGNoaWxkcmVuPzoge1xyXG4gICAgICAgIF9fdHlwZW5hbWU/OiBcIk1vZGVsRG9tYWluQ29ubmVjdGlvblwiO1xyXG4gICAgICAgIGl0ZW1zPzogQXJyYXk8RG9tYWluIHwgbnVsbD4gfCBudWxsO1xyXG4gICAgICAgIG5leHRUb2tlbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICB9O1xyXG59ICYgQVdTVHlwZTtcclxuXHJcbmV4cG9ydCB0eXBlIFBPSSA9IHtcclxuICAgIGlkPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGNvb3JkaW5hdGU/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgdGFnSWNvbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICB0YWdEZXNjcmlwdGlvbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICB0YWdJbWFnZUlEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIG1ldGFkYXRhPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIG1hdHRlcnBvcnRTd2VlcElEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHR5cGU/OiBQb2lUeXBlIHwgbnVsbDtcclxuICAgIGVsZW1lbnRJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICB2aXJ0dWFsPzogYm9vbGVhbiB8IG51bGw7XHJcbn07XHJcblxyXG5leHBvcnQgZW51bSBWaWV3ZXJJbnRlcmFjdGlvbnMge1xyXG4gICAgREVGQVVMVCA9IDAsXHJcbiAgICBBRERJTkdfVElDS0VULFxyXG4gICAgUE9TSVRJT05JTkcsXHJcbiAgICBBRERJTkdfRVFVSVBNRU5ULFxyXG4gICAgQURESU5HX01FQVNVUkUsXHJcbiAgICBBRERJTkdfRkVBVFVSRSxcclxuICAgIEFERElOR19ST09NLFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBNaXNzaW9uID0ge1xyXG4gICAgdXNlcklEOiBzdHJpbmc7XHJcbiAgICByb2xlPzogUm9sZVN0YXR1cyB8IG51bGw7XHJcbiAgICBvcmdhbmlzYXRpb25JRDogc3RyaW5nO1xyXG4gICAgc3BhY2VJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBsZXZlbD86IExldmVsU3RhdHVzIHwgbnVsbDtcclxuICAgIG9yZGVyZWRPcmdhbmlzYXRpb25JRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICB6b25lSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgZ3JvdXBzPzogQXJyYXk8c3RyaW5nIHwgbnVsbD4gfCBudWxsO1xyXG4gICAgZW1haWxTdGF0dXM/OiBFbWFpbFN0YXR1cyB8IG51bGw7XHJcbiAgICBkZXNjcmlwdGlvbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICBtZXRhZGF0YT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBkZWxldGVkQXQ/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgYXNzaWdubWVudHM/OiB7XHJcbiAgICAgICAgX190eXBlbmFtZT86IFwiTW9kZWxBZmZlY3RhdGlvbkNvbm5lY3Rpb25cIjtcclxuICAgICAgICBpdGVtcz86IEFycmF5PEFmZmVjdGF0aW9uIHwgbnVsbD4gfCBudWxsO1xyXG4gICAgICAgIG5leHRUb2tlbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICB9O1xyXG4gICAgb3JnYW5pc2F0aW9uPzogT3JnYW5pc2F0aW9uIHwgbnVsbDtcclxuICAgIG9yZGVyZWRPcmdhbmlzYXRpb24/OiBPcmdhbmlzYXRpb24gfCBudWxsO1xyXG4gICAgdXNlcj86IFByb2ZpbGUgfCBudWxsO1xyXG4gICAgZG9tYWlucz86IHN0cmluZ1tdIHwgbnVsbDtcclxuICAgIC8vIGRvbWFpbk9iamVjdHM/OiBEb21haW5bXSB8IG51bGw7XHJcbiAgICBzcGFjZT86IFNwYWNlIHwgbnVsbDtcclxuICAgIHpvbmU/OiBab25lIHwgbnVsbDtcclxuICAgIHN0YXJ0RGF0ZVRpbWU/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgZW5kRGF0ZVRpbWU/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgaGFzaHRhZ3M/OiBBcnJheTxzdHJpbmcgfCBudWxsPiB8IG51bGw7XHJcbiAgICB0ZW1wbGF0ZU1pc3Npb25JRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICB0ZW1wbGF0ZU1pc3Npb24/OiBWaXNpdFRlbXBsYXRlIHwgbnVsbDtcclxuICAgIGxvY2FsZT86IExvY2FsZSB8IG51bGw7XHJcbiAgICBpc0luV2FpdGluZ1Jvb20/OiBib29sZWFuIHwgbnVsbDtcclxuICAgIGJsb2NrZWRJbkNoYXQ/OiBib29sZWFuIHwgbnVsbDtcclxuICAgIGNvbm5lY3RlZFRvTGl2ZUF0Pzogc3RyaW5nW10gfCBudWxsO1xyXG4gICAgZGlzY29ubmVjdGVkRnJvbUxpdmVBdD86IHN0cmluZ1tdIHwgbnVsbDtcclxufSAmIEFXU1R5cGU7XHJcblxyXG5leHBvcnQgdHlwZSBBZmZlY3RhdGlvbiA9IHtcclxuICAgIG1pc3Npb24/OiBNaXNzaW9uIHwgbnVsbDtcclxuICAgIGdyb3VwOiBzdHJpbmc7XHJcbiAgICBtZXRhZGF0YT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBkZWxldGVkQXQ/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgbWlzc2lvbklEOiBzdHJpbmc7XHJcbiAgICB0aWNrZXRJRDogc3RyaW5nO1xyXG59ICYgQVdTVHlwZTtcclxuXHJcbmV4cG9ydCB0eXBlIE1lZGlhQ29udGVudCA9IHtcclxuICAgIHBhdGg6IHN0cmluZztcclxuICAgIHRpdGxlOiBzdHJpbmc7XHJcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xyXG4gICAgc2hvd0luVGFnPzogYm9vbGVhbjtcclxuICAgIHR5cGU/OiBDb21tZW50VHlwZTtcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIENvbW1lbnQgPSB7XHJcbiAgICB0aXRsZTogc3RyaW5nO1xyXG4gICAgdGlja2V0PzogVGlja2V0IHwgbnVsbDtcclxuICAgIG93bmVySUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgb3duZXI/OiBNaXNzaW9uIHwgbnVsbDtcclxuICAgIGFubmV4ZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICB0aWNrZXRJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICB0eXBlPzogQ29tbWVudFR5cGUgfCBudWxsO1xyXG4gICAgZGltZW5zaW9ucz86IEFycmF5PG51bWJlciB8IG51bGw+IHwgbnVsbDtcclxuICAgIGZlYXR1cmVJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBpc0NvdmVySW1hZ2U/OiBib29sZWFuIHwgbnVsbDtcclxuICAgIGluZGV4PzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHNob3duSW5UYWc/OiBib29sZWFuIHwgbnVsbDtcclxuICAgIGV4dGVybmFsTGluaz86IHN0cmluZyB8IG51bGw7XHJcbn0gJiBBV1NUeXBlICYgRGJPYmplY3RUeXBlO1xyXG5cclxuXHJcbmV4cG9ydCB0eXBlIFpvbmUgPSB7XHJcbiAgICBzd2VlcElEcz86IHN0cmluZ1tdIHwgbnVsbDtcclxuICAgIGxheWVyPzogTGF5ZXIgfCBudWxsO1xyXG4gICAgcGFyZW50PzogWm9uZSB8IG51bGw7XHJcbiAgICB2aXJ0dWFsPzogYm9vbGVhbiB8IG51bGw7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICB0YWdzPzogQXJyYXk8c3RyaW5nIHwgbnVsbD4gfCBudWxsO1xyXG4gICAgcGFyZW50SUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgc3BhY2VJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBzcGFjZT86IFNwYWNlIHwgbnVsbDtcclxuICAgIGlzTXVzZXVtVmlzaXRab25lPzogYm9vbGVhbiB8IG51bGw7XHJcbiAgICBub2RlSURzPzogQXJyYXk8c3RyaW5nIHwgbnVsbD4gfCBudWxsO1xyXG4gICAgc3VyZmFjZT86IG51bWJlciB8IG51bGw7XHJcbiAgICBtZXRhZGF0YT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBpc011bHRpcGxlRmxvb3Jab25lPzogYm9vbGVhbiB8IG51bGw7XHJcbn0gJiBBV1NUeXBlO1xyXG5cclxuXHJcbmV4cG9ydCB0eXBlIExheWVyID0ge1xyXG4gICAgbmFtZTogc3RyaW5nO1xyXG59ICYgQVdTVHlwZTtcclxuXHJcbmV4cG9ydCB0eXBlIFByb2ZpbGUgPSB7XHJcbiAgICBpZD86IHN0cmluZyB8IG51bGw7XHJcbiAgICB1c2VySUQ6IHN0cmluZztcclxuICAgIGF2YXRhcj86IHN0cmluZyB8IG51bGw7XHJcbiAgICB0b2tlbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICB0b2tlbkV4cGlyZWRBdD86IG51bWJlciB8IG51bGw7XHJcbiAgICBzdGF0dXM/OiBQcm9maWxlU3RhdHVzIHwgbnVsbDtcclxuICAgIG1ldGFkYXRhPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGxhc3RDb25uZWN0ZWRBdD86IG51bWJlciB8IG51bGw7XHJcbiAgICBwc2V1ZG8/OiBzdHJpbmcgfCBudWxsO1xyXG59ICYgQVdTVHlwZTtcclxuXHJcbmV4cG9ydCBjbGFzcyBQcm9maWxlRW50aXR5IGltcGxlbWVudHMgUHJvZmlsZSB7XHJcbiAgICBpZD86IHN0cmluZyB8IG51bGw7XHJcblxyXG4gICAgdXNlcklEOiBzdHJpbmc7XHJcblxyXG4gICAgYXZhdGFyPzogc3RyaW5nIHwgbnVsbDtcclxuXHJcbiAgICB0b2tlbj86IHN0cmluZyB8IG51bGw7XHJcblxyXG4gICAgdG9rZW5FeHBpcmVkQXQ/OiBudW1iZXIgfCBudWxsO1xyXG5cclxuICAgIHN0YXR1cz86IFByb2ZpbGVTdGF0dXMgfCBudWxsO1xyXG5cclxuICAgIGNyZWF0ZWRBdD86IHN0cmluZztcclxuXHJcbiAgICB1cGRhdGVkQXQ/OiBzdHJpbmc7XHJcblxyXG4gICAgZmlyc3ROYW1lOiBzdHJpbmc7XHJcblxyXG4gICAgbGFzdE5hbWU6IHN0cmluZztcclxuXHJcbiAgICBlbWFpbDogc3RyaW5nO1xyXG5cclxuICAgIHBob25lOiBzdHJpbmc7XHJcblxyXG4gICAgcHNldWRvOiBzdHJpbmc7XHJcblxyXG4gICAgY29uc3RydWN0b3IoaW5pdD86IFBhcnRpYWw8UHJvZmlsZT4pIHtcclxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGluaXQpO1xyXG4gICAgICAgIHRoaXMubWV0YWRhdGEgPSBpbml0Lm1ldGFkYXRhO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBtZXRhZGF0YSgpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh7XHJcbiAgICAgICAgICAgIGZpcnN0TmFtZTogdGhpcy5maXJzdE5hbWUsXHJcbiAgICAgICAgICAgIGxhc3ROYW1lOiB0aGlzLmxhc3ROYW1lLFxyXG4gICAgICAgICAgICBlbWFpbDogdGhpcy5lbWFpbCxcclxuICAgICAgICAgICAgcGhvbmU6IHRoaXMucGhvbmUsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0IG1ldGFkYXRhKG06IHN0cmluZykge1xyXG4gICAgICAgIGNvbnN0IGQgPSBKU09OLnBhcnNlKG0pO1xyXG4gICAgICAgIGlmIChkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZmlyc3ROYW1lID0gZC5maXJzdE5hbWU7XHJcbiAgICAgICAgICAgIHRoaXMubGFzdE5hbWUgPSBkLmxhc3ROYW1lO1xyXG4gICAgICAgICAgICB0aGlzLmVtYWlsID0gZC5lbWFpbDtcclxuICAgICAgICAgICAgdGhpcy5waG9uZSA9IGQucGhvbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGdldCBkaXNwbGF5TmFtZSgpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICh0aGlzLnBzZXVkbykge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5wc2V1ZG87XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLmxhc3ROYW1lLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgcmV0dXJuIGAke3RoaXMuZmlyc3ROYW1lfSAke3RoaXMubGFzdE5hbWV9YDtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZW1haWw7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIE9yZ2FuaXNhdGlvbiA9IHtcclxuICAgIG5hbWU6IHN0cmluZztcclxuICAgIHNpcmV0Pzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGFkZHJlc3M/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgY2l0eT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBwb3N0YWw/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgbG9nb1VybD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBvcmlnaW5EYXRlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIGRlbGV0ZWRBdD86IG51bWJlciB8IG51bGw7XHJcbiAgICBzaGFyZVRva2VuPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHRva2VuRXhwaXJlc0F0PzogbnVtYmVyIHwgbnVsbDtcclxuICAgIGNvbm5lY3RlZEFjY291bnRTdHJpcGVJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBzdHJpcGVPbkJvYXJkaW5nQ29tcGxldGVkPzogYm9vbGVhbiB8IG51bGw7XHJcbiAgICBzdHJpcGVUb2tlbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICBzdHJpcGVDaGFyZ2VzRW5hYmxlZD86IGJvb2xlYW4gfCBudWxsO1xyXG4gICAgY29udGFjdERldGFpbHM/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgdGlja2V0T3JnYW5pc2F0aW9uc0lkPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIC8vIHByb3BlcnRpZXM/OiB7XHJcbiAgICAvLyAgICAgX190eXBlbmFtZT86IFwiTW9kZWxQcm9wZXJ0eUNvbm5lY3Rpb25cIjtcclxuICAgIC8vICAgICBpdGVtcz86IEFycmF5PFByb3BlcnR5IHwgbnVsbD4gfCBudWxsO1xyXG4gICAgLy8gICAgIG5leHRUb2tlbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICAvLyB9IHwgbnVsbDtcclxufSAmIEFXU1R5cGU7XHJcblxyXG5leHBvcnQgdHlwZSBQcm9wZXJ0eSA9IHtcclxuICAgIHR5cGU6IFByb3BlcnR5VHlwZTtcclxuICAgIGRlbGV0ZWRBdD86IG51bWJlciB8IG51bGw7XHJcbiAgICBvcmdhbmlzYXRpb25JRDogc3RyaW5nO1xyXG4gICAgc3BhY2VJRDogc3RyaW5nO1xyXG4gICAgem9uZUlEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHNwYWNlPzogU3BhY2UgfCBudWxsO1xyXG4gICAgb3JnYW5pc2F0aW9uPzogT3JnYW5pc2F0aW9uIHwgbnVsbDtcclxuICAgIC8vIHpvbmU/OiBab25lIHwgbnVsbDtcclxufSAmIEFXU1R5cGU7XHJcblxyXG5leHBvcnQgdHlwZSBTcGFjZSA9IHtcclxuICAgIG5hbWU6IHN0cmluZztcclxuICAgIGFkZHJlc3Nlcz86IHN0cmluZyB8IG51bGw7XHJcbiAgICBhbm5leGVzPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHRhZ3M/OiBBcnJheTxzdHJpbmcgfCBudWxsPiB8IG51bGw7XHJcbiAgICBsYXRpdHVkZT86IG51bWJlciB8IG51bGw7XHJcbiAgICBsb25naXR1ZGU/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgbWV0YWRhdGE/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgbGV2ZWw/OiBMZXZlbFN0YXR1cyB8IG51bGw7XHJcbiAgICBkZWxldGVkQXQ/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgY29uc3RydWN0aW9uWWVhcj86IHN0cmluZyB8IG51bGw7XHJcbiAgICBjbGFzc0VuZXJneUNvbnN1bXB0aW9uPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGNsYXNzR2VzPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHN0YXR1cz86IFNwYWNlU3RhdHVzIHwgbnVsbDtcclxuICAgIGd1ZXN0TGluaz86IHN0cmluZyB8IG51bGw7XHJcbiAgICBzaWduZWRJbWFnZVVybD86IHN0cmluZyB8IG51bGw7XHJcbiAgICB6b25lcz86IHtcclxuICAgICAgICBfX3R5cGVuYW1lPzogXCJNb2RlbFpvbmVDb25uZWN0aW9uXCI7XHJcbiAgICAgICAgaXRlbXM/OiBBcnJheTxab25lIHwgbnVsbD4gfCBudWxsO1xyXG4gICAgICAgIG5leHRUb2tlbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICB9O1xyXG4gICAgcHJvcGVydGllcz86IHtcclxuICAgICAgICBfX3R5cGVuYW1lPzogXCJNb2RlbFByb3BlcnR5Q29ubmVjdGlvblwiO1xyXG4gICAgICAgIGl0ZW1zPzogQXJyYXk8UHJvcGVydHkgfCBudWxsPiB8IG51bGw7XHJcbiAgICAgICAgbmV4dFRva2VuPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIH07XHJcbiAgICB2aXNpdHM/OiBWaXNpdFtdIHwgbnVsbDtcclxuICAgIG9yZ2FuaXNhdGlvbklEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIG9yZ2FuaXNhdGlvbj86IE9yZ2FuaXNhdGlvbiB8IG51bGw7XHJcbiAgICBkZXNjcmlwdGlvbj86IHN0cmluZyB8IG51bGw7XHJcbn0gJiBBV1NUeXBlO1xyXG5cclxuLy8gbm90IGluIERCXHJcbmV4cG9ydCB0eXBlIFZpc2l0ID0ge1xyXG4gICAgY2FwdHVyZUlEOiBzdHJpbmc7XHJcbiAgICBtb2RlbDNkOiBzdHJpbmc7XHJcbiAgICB0YWtlbkF0OiBudW1iZXI7XHJcbiAgICBzcGFjZUlEOiBzdHJpbmc7XHJcbiAgICB2aWV3ZXI6IENhcHR1cmVWaWV3ZXI7XHJcbiAgICBzdXJmYWNlOiBudW1iZXI7XHJcbiAgICBub2RlOiBOb2RlO1xyXG4gICAgbmFtZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBpbWFnZXNJbXBvcnRlZDogYm9vbGVhbjtcclxufTtcclxuXHJcblxyXG5leHBvcnQgdHlwZSBIYXNodGFnID0ge1xyXG4gICAgbmFtZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBvcmdhbmlzYXRpb25JRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBzcGFjZUlEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIG9yZ2FuaXphdGlvbj86IE9yZ2FuaXNhdGlvbiB8IG51bGw7XHJcbiAgICBzcGFjZT86IFNwYWNlIHwgbnVsbDtcclxufSAmIEFXU1R5cGU7XHJcblxyXG5leHBvcnQgdHlwZSBDYXB0dXJlID0ge1xyXG4gICAgLy8gY2xpZW50UmVmPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIC8vIG9yaWdpbkNvb3JkaW5hdGU/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgLy8gb3JpZ2luQW5nbGU/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgLy8gb3JpZ2luWm9vbT86IHN0cmluZyB8IG51bGw7XHJcbiAgICB0YWtlbkF0PzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHZpZXdlcj86IENhcHR1cmVWaWV3ZXIgfCBudWxsO1xyXG4gICAgcHVibGlzaGVkQXQ/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgc3VyZmFjZT86IG51bWJlciB8IG51bGw7XHJcbiAgICBtZXRhZGF0YT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBzcGFjZUlEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIG5vZGVzPzoge1xyXG4gICAgICAgIF9fdHlwZW5hbWU/OiBcIk1vZGVsTm9kZUNvbm5lY3Rpb25cIjtcclxuICAgICAgICBpdGVtcz86IEFycmF5PE5vZGUgfCBudWxsPiB8IG51bGw7XHJcbiAgICAgICAgbmV4dFRva2VuPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIH07XHJcbn0gJiBBV1NUeXBlO1xyXG5cclxuZXhwb3J0IHR5cGUgTm9kZSA9IHtcclxuICAgIG1vZGVsM0Q/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgY29vcmRpbmF0ZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBzaXplPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHNjYWxlPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHZlcnNpb24/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgYWN0aXZlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIG9yZGVyPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIC8vIHF1YWxpdHk/OiBOb2RlUXVhbGl0eSB8IG51bGw7XHJcbiAgICBtZXRhZGF0YT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBjYXB0dXJlSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgaW52ZW50b3J5U3RhdHVzPzogSW52ZW50b3J5U3RhdHVzIHwgbnVsbDtcclxuICAgIG5hdmlnYXRpb25Gb3JJbnZlbnRvcnk/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgY2FwdHVyZT86IENhcHR1cmUgfCBudWxsO1xyXG59ICYgQVdTVHlwZTtcclxuXHJcbmV4cG9ydCB0eXBlIFBsYW4gPSB7XHJcbiAgICBuYW1lPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGFubmV4ZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBjYWxpYnJhdGlvbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICB6b25lSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgaXNDdXJyZW50Rm9yWm9uZT86IGJvb2xlYW4gfCBudWxsO1xyXG4gICAgc3BhY2VJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBpc01vZGlmaWVkPzogYm9vbGVhbiB8IG51bGw7XHJcbiAgICBpc0ltcG9ydGVkTWF0dGVycG9ydD86IGJvb2xlYW4gfCBudWxsO1xyXG4gICAgZmlsZXBhdGg/OiBzdHJpbmc7XHJcbiAgICBtb2RlbDNkPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGZsb29yPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHZpc2l0TmFtZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICB6b25lPzogWm9uZSB8IG51bGw7XHJcbiAgICBleHRlbnNpb24/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgbmF2aWdhdGlvbklEcz86IHN0cmluZ1tdIHwgbnVsbDtcclxufSAmIEFXU1R5cGU7XHJcblxyXG5leHBvcnQgdHlwZSBOYXZpZ2F0aW9uID0ge1xyXG4gICAgbWF0dGVycG9ydFN3ZWVwSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgcG9zaXRpb24/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgcm90YXRpb24/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgcmFkaXVzPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHVybD86IHN0cmluZyB8IG51bGw7XHJcbiAgICB0YWdzPzogQXJyYXk8c3RyaW5nIHwgbnVsbD4gfCBudWxsO1xyXG4gICAgbGV2ZWw/OiBMZXZlbFN0YXR1cyB8IG51bGw7XHJcbiAgICBub2RlSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgc3BhY2VJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBwb3NpdGlvbk9uUGxhbj86IEFycmF5PHN0cmluZyB8IG51bGw+IHwgbnVsbDtcclxuICAgIG5hdmlnYXRpb25TaWJsaW5nc0lkPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHBvaXM/OiB7XHJcbiAgICAgICAgX190eXBlbmFtZT86IFwiTW9kZWxQT0lDb25uZWN0aW9uXCI7XHJcbiAgICAgICAgaXRlbXM/OiBBcnJheTxQT0kgfCBudWxsPiB8IG51bGw7XHJcbiAgICAgICAgbmV4dFRva2VuPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIH07XHJcbiAgICBub2RlPzogTm9kZSB8IG51bGw7XHJcbn0gJiBBV1NUeXBlO1xyXG5cclxuZXhwb3J0IHR5cGUgTWVudUl0ZW0gPSB7IGxhYmVsOiBzdHJpbmc7IHVybD86IHN0cmluZzsgYmFjaz86IGFueTsgfTtcclxuXHJcbi8vIG5vdCBpbiBkYlxyXG5leHBvcnQgdHlwZSBNZWFzdXJlbWVudCA9IHtcclxuICAgIGlkOiBzdHJpbmc7XHJcbiAgICBwb2k6IFBPSTtcclxuICAgIGNvbW1lbnQ6IENvbW1lbnQ7XHJcbiAgICBzaW5nZWRVcmxQaG90bz86IHN0cmluZyB8IG51bGw7XHJcbiAgICB2YWx1ZXM6IEFycmF5PG51bWJlcj4gfCBudWxsO1xyXG4gICAgbnVtYmVyUG9pbnRzOiBudW1iZXI7XHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBGZWF0dXJlID0ge1xyXG4gICAgdGl0bGU/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgc2hvcnREZXNjcmlwdGlvbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICBvd25lck1pc3Npb25JRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBsZXZlbD86IExldmVsU3RhdHVzIHwgbnVsbDtcclxuICAgIGluZGV4PzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHR5cGU/OiBGZWF0dXJlVHlwZSB8IG51bGw7XHJcbiAgICBhcmNoaXZlZEZvck1pc3Npb25JRD86IEFycmF5PHN0cmluZyB8IG51bGw+IHwgbnVsbDtcclxuICAgIHN0cmlwZVByb2R1Y3RJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBzdHJpcGVQcmljZUlEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGJvb2tpbmdQcmljZU1ldGFkYXRhPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGxvY2FsZT86IExvY2FsZSB8IG51bGw7XHJcbiAgICBoYXNodGFncz86IEFycmF5PHN0cmluZyB8IG51bGw+IHwgbnVsbDtcclxuICAgIGNvdmVySW1hZ2VVcmw/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgaW1hZ2VzPzogQXJyYXk8TWVkaWFDb250ZW50PiB8IG51bGw7XHJcbiAgICB2aWRlb3M/OiBBcnJheTxNZWRpYUNvbnRlbnQ+IHwgbnVsbDtcclxuICAgIGF1ZGlvcz86IEFycmF5PE1lZGlhQ29udGVudD4gfCBudWxsO1xyXG4gICAgZXh0ZXJuYWxMaW5rcz86IEFycmF5PE1lZGlhQ29udGVudD4gfCBudWxsO1xyXG4gICAgZG9jdW1lbnRzPzogQXJyYXk8e1xyXG4gICAgICAgIHBhdGg6IHN0cmluZztcclxuICAgICAgICB0aXRsZTogc3RyaW5nO1xyXG4gICAgICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgICB9PiB8IG51bGw7XHJcbiAgICBjb21tZW50cz86IHtcclxuICAgICAgICBfX3R5cGVuYW1lPzogXCJNb2RlbENvbW1lbnRDb25uZWN0aW9uXCI7XHJcbiAgICAgICAgaXRlbXM/OiBBcnJheTxDb21tZW50IHwgbnVsbD4gfCBudWxsO1xyXG4gICAgICAgIG5leHRUb2tlbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICB9O1xyXG4gICAgZG9tYWluPzogRG9tYWluIHwgbnVsbDtcclxuICAgIGlzQm9va2luZ1BsYWNlPzogYm9vbGVhbiB8IG51bGw7XHJcbiAgICBldmVudHM/OiB7XHJcbiAgICAgICAgX190eXBlbmFtZT86IFwiTW9kZWxFdmVudENvbm5lY3Rpb25cIjtcclxuICAgICAgICBpdGVtcz86IEFycmF5PEV2ZW50IHwgbnVsbD4gfCBudWxsO1xyXG4gICAgICAgIG5leHRUb2tlbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICB9O1xyXG4gICAgc3BhY2VJRDogc3RyaW5nO1xyXG59ICYgRGJPYmplY3RUeXBlO1xyXG5cclxuZXhwb3J0IHR5cGUgRXZlbnQgPSB7XHJcbiAgICB0aXRsZTogc3RyaW5nO1xyXG4gICAgdHlwZT86IEV2ZW50VHlwZSB8IG51bGw7XHJcbiAgICBlc3RpbWF0ZVN0YXJ0RGF0ZT86IG51bWJlciB8IG51bGw7XHJcbiAgICBlc3RpbWF0ZUR1cmF0aW9uPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIGVzdGltYXRlRW5kRGF0ZT86IG51bWJlciB8IG51bGw7XHJcbiAgICByZWFsU3RhcnREYXRlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHRpbWVTcGVudD86IG51bWJlciB8IG51bGw7XHJcbiAgICByZWFsRW5kRGF0ZT86IG51bWJlciB8IG51bGw7XHJcbiAgICBzdGF0dXM/OiBFdmVudFN0YXR1cyB8IG51bGw7XHJcbiAgICBkZXNjcmlwdGlvbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICBncm91cD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBtZXRhZGF0YT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBvd25lcklEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHRpY2tldElEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGNyZWF0ZWRBdD86IHN0cmluZyB8IG51bGw7XHJcbiAgICB0cmFuc2xhdGlvblBhdGg/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgZmVhdHVyZUlEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGFyY2hpdmVkQnlPd25lcj86IGJvb2xlYW4gfCBudWxsO1xyXG4gICAgcGF5bWVudFN0YXR1cz86IFBheW1lbnRTdGF0dXMgfCBudWxsO1xyXG4gICAgc3RyaXBlU2Vzc2lvbklEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIG5vdGlmaWNhdGlvblN0YXR1cz86IEVtYWlsU3RhdHVzIHwgbnVsbDtcclxuICAgIHJlZnVzYWxSZWFzb24/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgYWdvU3RyPzogYm9vbGVhbiB8IHN0cmluZyB8IG51bGw7XHJcbiAgICBvd25lcj86IE1pc3Npb24gfCBudWxsO1xyXG4gICAgYXV0aG9yPzogUHJvZmlsZUVudGl0eSB8IG51bGw7XHJcbiAgICBmZWF0dXJlPzogRmVhdHVyZSB8IG51bGw7XHJcbn0gJiBBV1NUeXBlO1xyXG5cclxuLy9ub3QgaW4gREIgKHZhcmlhdGlvbiBvZiBFdmVudClcclxuZXhwb3J0IHR5cGUgUmVxdWVzdEludGVydmVudGlvbiA9IHtcclxuICAgIGVzdGltYXRlU3RhcnREYXRlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIGVzdGltYXRlRHVyYXRpb24/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgZXN0aW1hdGVFbmREYXRlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHJlYWxTdGFydERhdGU/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgcmVhbER1cmF0aW9uPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHJlYWxFbmREYXRlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHR5cGU6IEV2ZW50VHlwZS5SRVFVRVNUX0ZPUl9JTlRFUlZFTlRJT047XHJcbiAgICBzdGF0dXM6IEV2ZW50U3RhdHVzO1xyXG4gICAgaW50ZXJ2ZW50aW9uPzogRXZlbnQgfCBudWxsO1xyXG4gICAgcmVwb3J0PzogRXZlbnQgfCBudWxsO1xyXG4gICAgdGlja2V0SUQ6IHN0cmluZztcclxufSAmIEFXU1R5cGU7XHJcblxyXG4vL25vdCBpbiBEQiAodmFyaWF0aW9uIG9mIEV2ZW50KVxyXG5leHBvcnQgdHlwZSBJbnRlcnZlbnRpb24gPSB7XHJcbiAgICBlc3RpbWF0ZVN0YXJ0RGF0ZT86IG51bWJlciB8IG51bGw7XHJcbiAgICBlc3RpbWF0ZUR1cmF0aW9uPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIGVzdGltYXRlRW5kRGF0ZT86IG51bWJlciB8IG51bGw7XHJcbiAgICByZWFsU3RhcnREYXRlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHJlYWxEdXJhdGlvbj86IG51bWJlciB8IG51bGw7XHJcbiAgICByZWFsRW5kRGF0ZT86IG51bWJlciB8IG51bGw7XHJcbiAgICB0eXBlOiBFdmVudFR5cGU7XHJcbiAgICBzdGF0dXM6IEV2ZW50U3RhdHVzO1xyXG59ICYgQVdTVHlwZTtcclxuXHJcbmV4cG9ydCB0eXBlIFZpc2l0VGVtcGxhdGUgPSB7XHJcbiAgICBpZD86IHN0cmluZyB8IG51bGw7XHJcbiAgICB0aXRsZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBsZXZlbD86IExldmVsU3RhdHVzIHwgbnVsbDtcclxuICAgIGRlc2NyaXB0aW9uPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIG1ldGFkYXRhPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGRlbGV0ZWRBdD86IG51bWJlciB8IG51bGw7XHJcbiAgICBzdGFydERhdGVUaW1lPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGVuZERhdGVUaW1lPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGhhc2h0YWdzPzogQXJyYXk8c3RyaW5nIHwgbnVsbD4gfCBudWxsO1xyXG4gICAgb3JnYW5pc2F0aW9uSUQ6IHN0cmluZztcclxuICAgIHNwYWNlSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgem9uZUlEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGxvY2FsZT86IExvY2FsZSB8IG51bGw7XHJcbiAgICByZWFsU3RhcnRlZEF0PzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHJlYWxFbmRlZEF0PzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHNwYWNlPzogU3BhY2UgfCBudWxsO1xyXG4gICAgem9uZT86IFpvbmUgfCBudWxsO1xyXG4gICAgb3JnYW5pc2F0aW9uPzogT3JnYW5pc2F0aW9uIHwgbnVsbDtcclxuICAgIHVzZXJNaXNzaW9ucz86IHtcclxuICAgICAgICBfX3R5cGVuYW1lOiBcIk1vZGVsTWlzc2lvbkNvbm5lY3Rpb25cIjtcclxuICAgICAgICBpdGVtczogQXJyYXk8TWlzc2lvbiB8IG51bGw+O1xyXG4gICAgICAgIG5leHRUb2tlbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICB9IHwgbnVsbDtcclxufSAmIEFXU1R5cGU7XHJcblxyXG5leHBvcnQgZW51bSBTcE1vZHVsZSB7XHJcbiAgICBNVVNFVU0gPSBcIk1VU0VVTVwiLFxyXG4gICAgSE9URUwgPSBcIkhPVEVMXCIsXHJcbiAgICBJTU1PID0gXCJJTU1PXCJcclxufSJdfQ==
|
|
296
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zbWFydGVycGxhbi1jb3JlL3NyYy9saWIvdHlwZXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxVQU1YO0FBTkQsV0FBWSxVQUFVO0lBQ2xCLDBDQUE0QixDQUFBO0lBQzVCLDBDQUE0QixDQUFBO0lBQzVCLG9DQUFzQixDQUFBO0lBQ3RCLHNDQUF3QixDQUFBO0lBQ3hCLGtEQUFvQyxDQUFBO0FBQ3hDLENBQUMsRUFOVyxVQUFVLEtBQVYsVUFBVSxRQU1yQjtBQUNELE1BQU0sQ0FBTixJQUFZLE9BU1g7QUFURCxXQUFZLE9BQU87SUFDZixrQ0FBdUIsQ0FBQTtJQUN2QixzQ0FBMkIsQ0FBQTtJQUMzQiw0QkFBaUIsQ0FBQTtJQUNqQiw4QkFBbUIsQ0FBQTtJQUNuQix3QkFBYSxDQUFBO0lBQ2IsNEJBQWlCLENBQUE7SUFDakIsd0JBQWEsQ0FBQTtJQUNiLHdCQUFhLENBQUE7QUFDakIsQ0FBQyxFQVRXLE9BQU8sS0FBUCxPQUFPLFFBU2xCO0FBRUQsTUFBTSxDQUFOLElBQVksY0FNWDtBQU5ELFdBQVksY0FBYztJQUN0QixxQ0FBbUIsQ0FBQTtJQUNuQiw2QkFBVyxDQUFBO0lBQ1gsbUNBQWlCLENBQUE7SUFDakIsK0JBQWEsQ0FBQTtJQUNiLHFDQUFtQixDQUFBO0FBQ3ZCLENBQUMsRUFOVyxjQUFjLEtBQWQsY0FBYyxRQU16QjtBQUVELE1BQU0sQ0FBTixJQUFZLFNBV1g7QUFYRCxXQUFZLFNBQVM7SUFDakIsaUNBQW9CLENBQUE7SUFDcEIsdUNBQTBCLENBQUE7SUFDMUIsdUNBQTBCLENBQUE7SUFDMUIsdUNBQTBCLENBQUE7SUFDMUIsbUNBQXNCLENBQUE7SUFDdEIsdUNBQTBCLENBQUE7SUFDMUIscUNBQXdCLENBQUE7SUFDeEIsMENBQTZCLENBQUE7SUFDN0IseUNBQTRC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SW5CIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gQ2FtZXJhTW9kZSB7XHJcbiAgICBET0xMSE9VU0UgPSBcIm1vZGUuZG9sbGhvdXNlXCIsXHJcbiAgICBGTE9PUlBMQU4gPSBcIm1vZGUuZmxvb3JwbGFuXCIsXHJcbiAgICBJTlNJREUgPSBcIm1vZGUuaW5zaWRlXCIsXHJcbiAgICBPVVRTSURFID0gXCJtb2RlLm91dHNpZGVcIixcclxuICAgIFRSQU5TSVRJT05JTkcgPSBcIm1vZGUudHJhbnNpdGlvbmluZ1wiXHJcbn1cclxuZXhwb3J0IGVudW0gUG9pVHlwZSB7XHJcbiAgICBFUVVJUE1FTlQgPSBcIkVRVUlQTUVOVFwiLFxyXG4gICAgSU5GT1JNQVRJT04gPSBcIklORk9STUFUSU9OXCIsXHJcbiAgICBUSUNLRVQgPSBcIlRJQ0tFVFwiLFxyXG4gICAgTUVBU1VSRSA9IFwiTUVBU1VSRVwiLFxyXG4gICAgREFUQSA9IFwiREFUQVwiLFxyXG4gICAgUEVPUExFID0gXCJQRU9QTEVcIixcclxuICAgIERFU0sgPSBcIkRFU0tcIixcclxuICAgIFJPT00gPSBcIlJPT01cIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBUaWNrZXRQcmlvcml0eSB7XHJcbiAgICBNSU5JTVVNID0gXCJNSU5JTVVNXCIsXHJcbiAgICBMT1cgPSBcIkxPV1wiLFxyXG4gICAgTUVESVVNID0gXCJNRURJVU1cIixcclxuICAgIEhJR0ggPSBcIkhJR0hcIixcclxuICAgIE1BWElNVU0gPSBcIk1BWElNVU1cIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBUYWdBY3Rpb24ge1xyXG4gICAgSE9WRVJfT04gPSBcImhvdmVyT25cIixcclxuICAgIEFVRElPX0NMSUNLID0gXCJhdWRpb0NsaWNrXCIsXHJcbiAgICBWSURFT19DTElDSyA9IFwidmlkZW9DbGlja1wiLFxyXG4gICAgSU1BR0VfQ0xJQ0sgPSBcImltYWdlQ2xpY2tcIixcclxuICAgIERPQ19DTElDSyA9IFwiZG9jQ2xpY2tcIixcclxuICAgIENMT1NFX01PREFMID0gXCJjbG9zZU1vZGFsXCIsXHJcbiAgICBORVhUX1NMSURFID0gXCJuZXh0U2xpZGVcIixcclxuICAgIERFVEFJTF9DTElDSyA9IFwiZGV0YWlsc0NsaWNrXCIsXHJcbiAgICBUSUNLRVRfQ0xJQ0sgPSBcInRpY2tldENsaWNrXCIsXHJcbiAgICBZT1VUVUJFX0NMSUNLID0gXCJ5b3V0dWJlQ2xpY2tcIixcclxufVxyXG5cclxuZXhwb3J0IGVudW0gVGlja2V0U3RhdHVzIHtcclxuICAgIFRPX0JFX1BST0NFU1NFRCA9IFwiVE9fQkVfUFJPQ0VTU0VEXCIsXHJcbiAgICBQTEFOTkVEID0gXCJQTEFOTkVEXCIsXHJcbiAgICBJTl9QUk9HUkVTUyA9IFwiSU5fUFJPR1JFU1NcIixcclxuICAgIFdBSVRJTkdfRk9SX1ZBTElEQVRJT04gPSBcIldBSVRJTkdfRk9SX1ZBTElEQVRJT05cIixcclxuICAgIFZBTElEQVRFRCA9IFwiVkFMSURBVEVEXCIsXHJcbiAgICBSRUpFQ1RFRCA9IFwiUkVKRUNURURcIixcclxuICAgIFJFU09MVkVEID0gXCJSRVNPTFZFRFwiLFxyXG4gICAgQVJDSElWRUQgPSBcIkFSQ0hJVkVEXCIsXHJcbiAgICBMQVRFID0gXCJMQVRFXCIsXHJcbiAgICBCTE9DS0VEID0gXCJCTE9DS0VEXCIsXHJcbiAgICBDT01QTEVURUQgPSBcIkNPTVBMRVRFRFwiLFxyXG4gICAgREVMQVlFRCA9IFwiREVMQVlFRFwiLFxyXG4gICAgQ0FOQ0VMTEVEID0gXCJDQU5DRUxMRURcIixcclxuICAgIFRPX1JFRE8gPSBcIlRPX1JFRE9cIixcclxuICAgIENSRUFURUQgPSBcIkNSRUFURURcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBEb21haW5UeXBlIHtcclxuICAgIEVRVUlQTUVOVCA9IFwiRVFVSVBNRU5UXCIsXHJcbiAgICBNSVNTSU9OID0gXCJNSVNTSU9OXCIsXHJcbiAgICBUSUNLRVQgPSBcIlRJQ0tFVFwiLFxyXG4gICAgUE9JID0gXCJQT0lcIixcclxuICAgIEZFQVRVUkUgPSBcIkZFQVRVUkVcIixcclxuICAgIEJPT0tJTkcgPSBcIkJPT0tJTkdcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBSb2xlU3RhdHVzIHtcclxuICAgIFZJU0lUT1IgPSBcIlZJU0lUT1JcIixcclxuICAgIFZJU0lUT1JfTVVTRVVNID0gXCJWSVNJVE9SX01VU0VVTVwiLFxyXG4gICAgR1VJREVfTVVTRVVNID0gXCJHVUlERV9NVVNFVU1cIixcclxuICAgIE9DQ1VQQU5UID0gXCJPQ0NVUEFOVFwiLFxyXG4gICAgU0VSVklDRSA9IFwiU0VSVklDRVwiLFxyXG4gICAgTUFOQUdFUiA9IFwiTUFOQUdFUlwiLFxyXG4gICAgT1dORVIgPSBcIk9XTkVSXCIsXHJcbiAgICBBRE1JTiA9IFwiQURNSU5cIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBQcm9maWxlU3RhdHVzIHtcclxuICAgIFdBSVRJTkdfRk9SX1ZBTElEQVRJT04gPSBcIldBSVRJTkdfRk9SX1ZBTElEQVRJT05cIixcclxuICAgIFdBSVRJTkdfRk9SX0FDVElWQVRJT04gPSBcIldBSVRJTkdfRk9SX0FDVElWQVRJT05cIixcclxuICAgIEFDVElWRSA9IFwiQUNUSVZFXCIsXHJcbiAgICBJTkFDVElWRSA9IFwiSU5BQ1RJVkVcIixcclxuICAgIEJMT0NLRUQgPSBcIkJMT0NLRURcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBMZXZlbFN0YXR1cyB7XHJcbiAgICBNSU5JTVVNID0gXCJNSU5JTVVNXCIsXHJcbiAgICBMT1cgPSBcIkxPV1wiLFxyXG4gICAgTUVESVVNID0gXCJNRURJVU1cIixcclxuICAgIEhJR0ggPSBcIkhJR0hcIixcclxuICAgIE1BWElNVU0gPSBcIk1BWElNVU1cIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBQcm9wZXJ0eVR5cGUge1xyXG4gICAgUFJPUEVSVFkgPSBcIlBST1BFUlRZXCIsXHJcbiAgICBWSVNJVCA9IFwiVklTSVRcIixcclxuICAgIE9DQ1VQQU5UID0gXCJPQ0NVUEFOVFwiLFxyXG4gICAgU0hBUkVEID0gXCJTSEFSRURcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBTcGFjZVN0YXR1cyB7XHJcbiAgICBEUEVfVE9fVkFMSURBVEUgPSBcIkRQRV9UT19WQUxJREFURVwiLFxyXG4gICAgRFBFX1ZBTElEQVRFRCA9IFwiRFBFX1ZBTElEQVRFRFwiLFxyXG4gICAgRFBFX0ZFVENIID0gXCJEUEVfRkVUQ0hcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBMb2NhbGUge1xyXG4gICAgRlIgPSBcIkZSXCIsXHJcbiAgICBFTiA9IFwiRU5cIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBFbWFpbFN0YXR1cyB7XHJcbiAgICBDUkVBVElPTl9UT19ERUxJVkVSID0gXCJDUkVBVElPTl9UT19ERUxJVkVSXCIsXHJcbiAgICBVUERBVEVfVE9fREVMSVZFUiA9IFwiVVBEQVRFX1RPX0RFTElWRVJcIixcclxuICAgIENBTkNFTExBVElPTl9UT19ERUxJVkVSID0gXCJDQU5DRUxMQVRJT05fVE9fREVMSVZFUlwiLFxyXG4gICAgU0VOVCA9IFwiU0VOVFwiLFxyXG4gICAgU09GVF9CT1VOQ0UgPSBcIlNPRlRfQk9VTkNFXCIsXHJcbiAgICBIQVJEX0JPVU5DRSA9IFwiSEFSRF9CT1VOQ0VcIixcclxuICAgIFJFSkVDVEVEID0gXCJSRUpFQ1RFRFwiLFxyXG4gICAgU0FUSVNGQUNUSU9OX1RPX0RFTElWRVIgPSBcIlNBVElTRkFDVElPTl9UT19ERUxJVkVSXCJcclxufVxyXG5cclxuZXhwb3J0IGVudW0gQ2FwdHVyZVZpZXdlciB7XHJcbiAgICBDVVBJWCA9IFwiQ1VQSVhcIixcclxuICAgIE1BVFRFUlBPUlQgPSBcIk1BVFRFUlBPUlRcIixcclxuICAgIFNNQVJURVJQTEFOX1YxID0gXCJTTUFSVEVSUExBTl9WMVwiXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIEludmVudG9yeVN0YXR1cyB7XHJcbiAgICBTVUNDRVNTID0gXCJTVUNDRVNTXCIsXHJcbiAgICBFUlJPUiA9IFwiRVJST1JcIixcclxuICAgIFRPX1JVTiA9IFwiVE9fUlVOXCIsXHJcbiAgICBUT19SVU5fT05FX0lNQUdFID0gXCJUT19SVU5fT05FX0lNQUdFXCIsXHJcbiAgICBFUlJPUl9GSUxFX09CSl9OT1RfRVhJU1QgPSBcIkVSUk9SX0ZJTEVfT0JKX05PVF9FWElTVFwiLFxyXG4gICAgRVJST1JfRklMRV9KU09OX05PVF9FWElTVCA9IFwiRVJST1JfRklMRV9KU09OX05PVF9FWElTVFwiLFxyXG4gICAgRVJST1JfRklMRV9NT0RFTF9OT1RfRVhJU1QgPSBcIkVSUk9SX0ZJTEVfTU9ERUxfTk9UX0VYSVNUXCJcclxufVxyXG5cclxuZXhwb3J0IGVudW0gVHlwZU5vdGUge1xyXG4gICAgQ09OVFJBQ1RVQUwgPSBcIkNPTlRSQUNUVUFMXCIsXHJcbiAgICBJTkZPUk1BVElPTiA9IFwiSU5GT1JNQVRJT05cIixcclxuICAgIFRFQ0hOSUNBTCA9IFwiVEVDSE5JQ0FMXCIsXHJcbiAgICBGSU5BTkNJQUwgPSBcIkZJTkFOQ0lBTFwiLFxyXG4gICAgT1RIRVIgPSBcIk9USEVSXCIsXHJcbiAgICBJTUFHRSA9IFwiSU1BR0VcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBGZWF0dXJlVHlwZSB7XHJcbiAgICBERVNLID0gXCJERVNLXCIsXHJcbiAgICBJTkRJQ0FUT1JfVEVNUCA9IFwiSU5ESUNBVE9SX1RFTVBcIixcclxuICAgIElORk9STUFUSU9OID0gXCJJTkZPUk1BVElPTlwiLFxyXG4gICAgSU5ESUNBVE9SX0NPMiA9IFwiSU5ESUNBVE9SX0NPMlwiLFxyXG4gICAgUFVSQ0hBU0UgPSBcIlBVUkNIQVNFXCJcclxufVxyXG5cclxuZXhwb3J0IGVudW0gVGlja2V0VHlwZSB7XHJcbiAgICBSRVBPUlRJTkcgPSBcIlJFUE9SVElOR1wiLFxyXG4gICAgUkVRVUVTVF9GT1JfSU5URVJWRU5USU9OID0gXCJSRVFVRVNUX0ZPUl9JTlRFUlZFTlRJT05cIixcclxuICAgIFJFUVVFU1RfRk9SX01BSU5URU5BTkNFID0gXCJSRVFVRVNUX0ZPUl9NQUlOVEVOQU5DRVwiLFxyXG4gICAgV09SS19PUkRFUiA9IFwiV09SS19PUkRFUlwiLFxyXG4gICAgSU5DSURFTlQgPSBcIklOQ0lERU5UXCIsXHJcbiAgICBJTkZPUk1BVElPTiA9IFwiSU5GT1JNQVRJT05cIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBFdmVudFR5cGUge1xyXG4gICAgRVFVSVBNRU5UID0gXCJFUVVJUE1FTlRcIixcclxuICAgIENPTU1FTlQgPSBcIkNPTU1FTlRcIixcclxuICAgIENPTlRSQUNUVUFMX0lOVEVSVkVOVElPTiA9IFwiQ09OVFJBQ1RVQUxfSU5URVJWRU5USU9OXCIsXHJcbiAgICBOT05fQ09OVFJBQ1RVQUxfSU5URVJWRU5USU9OID0gXCJOT05fQ09OVFJBQ1RVQUxfSU5URVJWRU5USU9OXCIsXHJcbiAgICBUSUNLRVQgPSBcIlRJQ0tFVFwiLFxyXG4gICAgUkVQT1JUSU5HID0gXCJSRVBPUlRJTkdcIixcclxuICAgIFJFUVVFU1RfRk9SX0lOVEVSVkVOVElPTiA9IFwiUkVRVUVTVF9GT1JfSU5URVJWRU5USU9OXCIsXHJcbiAgICBSRVFVRVNUX0ZPUl9NQUlOVEVOQU5DRSA9IFwiUkVRVUVTVF9GT1JfTUFJTlRFTkFOQ0VcIixcclxuICAgIFdPUktfT1JERVIgPSBcIldPUktfT1JERVJcIixcclxuICAgIElOQ0lERU5UID0gXCJJTkNJREVOVFwiLFxyXG4gICAgTUVBU1VSRSA9IFwiTUVBU1VSRVwiLFxyXG4gICAgQk9PS0lORyA9IFwiQk9PS0lOR1wiLFxyXG4gICAgQk9PS0lOR19TVUJDUklQVElPTiA9IFwiQk9PS0lOR19TVUJDUklQVElPTlwiXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIEV2ZW50U3RhdHVzIHtcclxuICAgIFRPX0JFX1BST0NFU1NFRCA9IFwiVE9fQkVfUFJPQ0VTU0VEXCIsXHJcbiAgICBQTEFOTkVEID0gXCJQTEFOTkVEXCIsXHJcbiAgICBJTl9QUk9HUkVTUyA9IFwiSU5fUFJPR1JFU1NcIixcclxuICAgIFdBSVRJTkdfRk9SX1ZBTElEQVRJT04gPSBcIldBSVRJTkdfRk9SX1ZBTElEQVRJT05cIixcclxuICAgIFZBTElEQVRFRCA9IFwiVkFMSURBVEVEXCIsXHJcbiAgICBSRUpFQ1RFRCA9IFwiUkVKRUNURURcIixcclxuICAgIFJFU09MVkVEID0gXCJSRVNPTFZFRFwiLFxyXG4gICAgQVJDSElWRUQgPSBcIkFSQ0hJVkVEXCIsXHJcbiAgICBMQVRFID0gXCJMQVRFXCIsXHJcbiAgICBCTE9DS0VEID0gXCJCTE9DS0VEXCIsXHJcbiAgICBDT01QTEVURUQgPSBcIkNPTVBMRVRFRFwiLFxyXG4gICAgREVMQVlFRCA9IFwiREVMQVlFRFwiLFxyXG4gICAgQ0FOQ0VMTEVEID0gXCJDQU5DRUxMRURcIixcclxuICAgIFRPX1JFRE8gPSBcIlRPX1JFRE9cIixcclxuICAgIENSRUFURUQgPSBcIkNSRUFURURcIixcclxuICAgIExJTktFRF9UT19FUVVJUE1FTlQgPSBcIkxJTktFRF9UT19FUVVJUE1FTlRcIixcclxuICAgIFVOTElOS0VEX0ZST01fRVFVSVBNRU5UID0gXCJVTkxJTktFRF9GUk9NX0VRVUlQTUVOVFwiLFxyXG4gICAgRURJVEVEID0gXCJFRElURURcIixcclxuICAgIExJTktFRF9UT19BX1BBUkVOVF9USUNLRVQgPSBcIkxJTktFRF9UT19BX1BBUkVOVF9USUNLRVRcIixcclxuICAgIFdBSVRJTkdfRk9SX0FDQ0VQVEFUSU9OID0gXCJXQUlUSU5HX0ZPUl9BQ0NFUFRBVElPTlwiLFxyXG4gICAgQUNDRVBURUQgPSBcIkFDQ0VQVEVEXCIsXHJcbiAgICBSRUZVU0VEID0gXCJSRUZVU0VEXCIsXHJcbiAgICBET01BSU5fVVBEQVRFRCA9IFwiRE9NQUlOX1VQREFURURcIixcclxuICAgIERBVEVTX1VQREFURUQgPSBcIkRBVEVTX1VQREFURURcIixcclxuICAgIFRJQ0tFVF9DSElMRF9SRU1PVkVEID0gXCJUSUNLRVRfQ0hJTERfUkVNT1ZFRFwiLFxyXG4gICAgVFlQRV9VUERBVEVEID0gXCJUWVBFX1VQREFURURcIixcclxuICAgIERBVEVfRU5EX1VQREFURUQgPSBcIkRBVEVfRU5EX1VQREFURURcIixcclxuICAgIERBVEVfU1RBUlRfVVBEQVRFRCA9IFwiREFURV9TVEFSVF9VUERBVEVEXCIsXHJcbiAgICBQT1NJVElPTl9TRVQgPSBcIlBPU0lUSU9OX1NFVFwiLFxyXG4gICAgUE9TSVRJT05fVVBEQVRFRCA9IFwiUE9TSVRJT05fVVBEQVRFRFwiLFxyXG4gICAgUE9TSVRJT05fUkVNT1ZFRCA9IFwiUE9TSVRJT05fUkVNT1ZFRFwiXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFBheW1lbnRTdGF0dXMge1xyXG4gICAgVU5QQUlEID0gXCJVTlBBSURcIixcclxuICAgIFBBSUQgPSBcIlBBSURcIixcclxuICAgIFBFTkRJTkcgPSBcIlBFTkRJTkdcIixcclxuICAgIEVSUk9SID0gXCJFUlJPUlwiXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIENvbW1lbnRUeXBlIHtcclxuICAgIE1FQVNVUkUgPSBcIk1FQVNVUkVcIixcclxuICAgIFZJREVPID0gXCJWSURFT1wiLFxyXG4gICAgRE9DVU1FTlQgPSBcIkRPQ1VNRU5UXCIsXHJcbiAgICBJTUFHRSA9IFwiSU1BR0VcIixcclxuICAgIFRFWFQgPSBcIlRFWFRcIixcclxuICAgIEFVRElPID0gXCJBVURJT1wiLFxyXG4gICAgVVJMID0gXCJVUkxcIixcclxuICAgIFlPVVRVQkUgPSBcIllPVVRVQkVcIixcclxuICAgIFVSTF9TSE9QID0gXCJVUkxfU0hPUFwiLFxyXG4gICAgU0NSSVBUX0VNQkVEID0gXCJTQ1JJUFRfRU1CRURcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBTdGF0dXNFcXVpcG1lbnQge1xyXG4gICAgVE9fU0VUVVAgPSBcIlRPX1NFVFVQXCIsXHJcbiAgICBCUk9LRU4gPSBcIkJST0tFTlwiLFxyXG4gICAgVU5JTlNUQUxMRUQgPSBcIlVOSU5TVEFMTEVEXCIsXHJcbiAgICBJTkNJREVOVCA9IFwiSU5DSURFTlRcIixcclxuICAgIElOX09QRVJBVElPTiA9IFwiSU5fT1BFUkFUSU9OXCIsXHJcbiAgICBXQUlUSU5HX0ZPUl9SRVBBSVIgPSBcIldBSVRJTkdfRk9SX1JFUEFJUlwiLFxyXG4gICAgREVMRVRFRCA9IFwiREVMRVRFRFwiLFxyXG4gICAgT1VUX09GX09SREVSID0gXCJPVVRfT0ZfT1JERVJcIixcclxuICAgIFRPX0JFX1JFUExBQ0VEID0gXCJUT19CRV9SRVBMQUNFRFwiXHJcbn1cclxuXHJcbi8qKiBJbnRlcmZhY2UgZm9yIFVwZGF0ZSAob25seSBpZCBpcyByZXF1aXJlZCkgKi9cclxuZXhwb3J0IGludGVyZmFjZSBJVXBkYXRlIHtcclxuICAgIGlkOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIEFXU1R5cGUgPSB7XHJcbiAgICBfX3R5cGVuYW1lPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGlkPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGNyZWF0ZWRBdD86IHN0cmluZztcclxuICAgIHVwZGF0ZWRBdD86IHN0cmluZztcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIERiT2JqZWN0VHlwZSA9IHtcclxuICAgIHNwYWNlSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgcG9pcz86IHtcclxuICAgICAgICBfX3R5cGVuYW1lPzogXCJNb2RlbFBPSUNvbm5lY3Rpb25cIjtcclxuICAgICAgICBpdGVtcz86IEFycmF5PFBPST4gfCBudWxsO1xyXG4gICAgICAgIG5leHRUb2tlbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICB9IHwgbnVsbDtcclxuICAgIHNwYWNlPzogU3BhY2UgfCBudWxsO1xyXG4gICAgZG9tYWluSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgbmFtZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICB0aXRsZT86IHN0cmluZyB8IG51bGw7XHJcbn0gJiBBV1NUeXBlO1xyXG5cclxuZXhwb3J0IHR5cGUgVGlja2V0ID0ge1xyXG4gICAgc3BhY2VJRDogc3RyaW5nO1xyXG4gICAgdGl0bGU6IHN0cmluZztcclxuICAgIHN0YXR1cz86IFRpY2tldFN0YXR1cyB8IG51bGw7XHJcbiAgICBwcmlvcml0eT86IFRpY2tldFByaW9yaXR5IHwgbnVsbDtcclxuICAgIG93bmVyTWlzc2lvbklEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIG93bmVyTWlzc2lvbj86IE1pc3Npb24gfCBudWxsO1xyXG4gICAgdHlwZT86IFRpY2tldFR5cGUgfCBudWxsO1xyXG4gICAgcGFyZW50SUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgbGV2ZWw/OiBMZXZlbFN0YXR1cyB8IG51bGw7XHJcbiAgICBmcmllbmRseUxhYmVsPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGRvbWFpbjogRG9tYWluIHwgbnVsbDtcclxuICAgIGRvbWFpbklEOiBzdHJpbmcgfCBudWxsO1xyXG4gICAgZXZlbnRzPzoge1xyXG4gICAgICAgIF9fdHlwZW5hbWU/OiBcIk1vZGVsRXZlbnRDb25uZWN0aW9uXCI7XHJcbiAgICAgICAgaXRlbXM/OiBBcnJheTxFdmVudD4gfCBudWxsO1xyXG4gICAgICAgIG5leHRUb2tlbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICB9IHwgbnVsbDtcclxuICAgIGFzc2lnbmVlcz86IHtcclxuICAgICAgICBfX3R5cGVuYW1lPzogXCJNb2RlbEFmZmVjdGF0aW9uQ29ubmVjdGlvblwiO1xyXG4gICAgICAgIGl0ZW1zPzogQXJyYXk8QWZmZWN0YXRpb24+IHwgbnVsbDtcclxuICAgICAgICBuZXh0VG9rZW4/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgfSB8IG51bGw7XHJcbiAgICBlcXVpcG1lbnRzPzogQXJyYXk8RXF1aXBtZW50PiB8IG51bGw7XHJcbiAgICBvcGVyYXRpb25zPzoge1xyXG4gICAgICAgIF9fdHlwZW5hbWU/OiBcIk1vZGVsT3BlcmF0aW9uQ29ubmVjdGlvblwiO1xyXG4gICAgICAgIGl0ZW1zPzogQXJyYXk8T3BlcmF0aW9uIHwgbnVsbD4gfCBudWxsO1xyXG4gICAgICAgIG5leHRUb2tlbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICB9O1xyXG4gICAgY29tbWVudHM/OiB7XHJcbiAgICAgICAgX190eXBlbmFtZT86IFwiTW9kZWxDb21tZW50Q29ubmVjdGlvblwiO1xyXG4gICAgICAgIGl0ZW1zPzogQXJyYXk8Q29tbWVudCB8IG51bGw+IHwgbnVsbDtcclxuICAgICAgICBuZXh0VG9rZW4/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgfTtcclxuICAgIHByZXN0YXRhaXJlPzogUHJlc3RhdGFpcmUgfCBudWxsO1xyXG4gICAgY2hpbGRyZW4/OiB7XHJcbiAgICAgICAgX190eXBlbmFtZT86IFwiTW9kZWxUaWNrZXRDb25uZWN0aW9uXCI7XHJcbiAgICAgICAgaXRlbXM/OiBBcnJheTxUaWNrZXQgfCBudWxsPiB8IG51bGw7XHJcbiAgICAgICAgbmV4dFRva2VuPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIH07XHJcbiAgICBhcmNoaXZlZEZvck1pc3Npb25JRD86IHN0cmluZ1tdIHwgbnVsbDtcclxufSAmIERiT2JqZWN0VHlwZTtcclxuXHJcbmV4cG9ydCB0eXBlIE9wZXJhdGlvbiA9IHtcclxuICAgIGlkPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHRpY2tldElEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGVxdWlwbWVudElEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGRlbGV0ZWRBdD86IG51bWJlciB8IG51bGw7XHJcbiAgICB0aWNrZXQ/OiBUaWNrZXQgfCBudWxsO1xyXG4gICAgZXF1aXBtZW50PzogRXF1aXBtZW50IHwgbnVsbDtcclxufSAmIEFXU1R5cGU7XHJcblxyXG5leHBvcnQgdHlwZSBFcXVpcG1lbnQgPSB7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICBub3Rlcz86IHtcclxuICAgICAgICBfX3R5cGVuYW1lPzogXCJNb2RlbE5vdGVDb25uZWN0aW9uXCI7XHJcbiAgICAgICAgaXRlbXM/OiBBcnJheTxOb3RlIHwgbnVsbD4gfCBudWxsO1xyXG4gICAgICAgIG5leHRUb2tlbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICB9O1xyXG4gICAgZG9jdW1lbnRzPzogQXJyYXk8RXF1aXBtZW50RG9jdW1lbnQ+IHwgbnVsbDtcclxuICAgIGRvY3VtZW50YXRpb25JbWFnZVVybFNpZ25lZD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBzdWJFcXVpcG1lbnRzPzogQXJyYXk8RXF1aXBtZW50IHwgbnVsbD4gfCBudWxsO1xyXG4gICAgc3ViZXF1aXBtZW50c0lEcz86IEFycmF5PHN0cmluZyB8IG51bGw+IHwgbnVsbDtcclxuICAgIHNlcmlhbE51bWJlcj86IHN0cmluZyB8IG51bGw7XHJcbiAgICBkb21haW4/OiBEb21haW4gfCBudWxsO1xyXG4gICAgY2hpbGREb21haW4/OiBEb21haW4gfCBudWxsO1xyXG4gICAgcGFyZW50RG9tYWluPzogRG9tYWluIHwgbnVsbDtcclxuICAgIHBob3RvPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHpvbmU/OiBab25lIHwgbnVsbDtcclxuICAgIHRpY2tldHM/OiBUaWNrZXRbXSB8IG51bGw7XHJcbiAgICBkb21haW5JRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBzcGFjZUlEOiBzdHJpbmc7XHJcbiAgICBhcmNoaXZlZEZvck1pc3Npb25JRD86IHN0cmluZ1tdIHwgbnVsbDtcclxuICAgIGFubm90YXRpb24/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgc3RhdHVzPzogU3RhdHVzRXF1aXBtZW50IHwgbnVsbDtcclxuICAgIGZhbWlseT86IEFycmF5PHN0cmluZyB8IG51bGw+IHwgbnVsbDtcclxuICAgIG1hbnVmYWN0dXJlcj86IHN0cmluZyB8IG51bGw7XHJcbiAgICBza3U/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgaW5zdGFsbERhdGU/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgd2FycmFudHlFbmREYXRlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIG9wZXJhdGlvbnM/OiB7XHJcbiAgICAgICAgX190eXBlbmFtZT86IFwiTW9kZWxPcGVyYXRpb25Db25uZWN0aW9uXCI7XHJcbiAgICAgICAgaXRlbXM/OiBBcnJheTxPcGVyYXRpb24gfCBudWxsPiB8IG51bGw7XHJcbiAgICAgICAgbmV4dFRva2VuPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIH07XHJcbn0gJiBEYk9iamVjdFR5cGU7XHJcblxyXG5leHBvcnQgdHlwZSBFcXVpcG1lbnRTZWxlY3RlZCA9IHtcclxuICAgIHNlbGVjdGVkPzogYm9vbGVhbjtcclxufSAmIEVxdWlwbWVudDtcclxuXHJcbi8vIG5vdCBpbiBkYlxyXG5leHBvcnQgdHlwZSBFcXVpcG1lbnREb2N1bWVudCA9IHtcclxuICAgIGZpbGVuYW1lOiBzdHJpbmc7XHJcbiAgICB1cmw6IHN0cmluZztcclxuICAgIHVybFNpZ25lZDogc3RyaW5nO1xyXG4gICAgbm90ZUlEOiBzdHJpbmc7XHJcbn07XHJcblxyXG4vLyBub3QgaW4gZGJcclxuZXhwb3J0IHR5cGUgUHJlc3RhdGFpcmUgPSB7XHJcbiAgICBvcmdhbmlzYXRpb246IE9yZ2FuaXNhdGlvbjtcclxuICAgIG1pc3Npb246IE1pc3Npb247XHJcbiAgICBwcm9maWxlOiBQcm9maWxlO1xyXG4gICAgbmFtZTogc3RyaW5nO1xyXG59O1xyXG5cclxuZXhwb3J0IHR5cGUgTm90ZSA9IHtcclxuICAgIGlkPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGF0dGFjaG1lbnQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgc2lnbkRhdGU/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgZXhwaXJhdGlvbkRhdGU/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgdHlwZT86IFR5cGVOb3RlIHwgbnVsbDtcclxuICAgIG93bmVyTWlzc2lvbklEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGVxdWlwbWVudElEPzogc3RyaW5nIHwgbnVsbDtcclxufSAmIEFXU1R5cGU7XHJcblxyXG5leHBvcnQgdHlwZSBEb21haW4gPSB7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICBzbHVnPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGFiYnJldmlhdGlvbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICBkZXNjcmlwdGlvbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICBvcmdhbmlzYXRpb25JRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBwYXJlbnRJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICB0eXBlPzogRG9tYWluVHlwZSB8IG51bGw7XHJcbiAgICBwYXJlbnQ/OiBEb21haW4gfCBudWxsO1xyXG4gICAgY2hpbGRyZW4/OiB7XHJcbiAgICAgICAgX190eXBlbmFtZT86IFwiTW9kZWxEb21haW5Db25uZWN0aW9uXCI7XHJcbiAgICAgICAgaXRlbXM/OiBBcnJheTxEb21haW4gfCBudWxsPiB8IG51bGw7XHJcbiAgICAgICAgbmV4dFRva2VuPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIH07XHJcbn0gJiBBV1NUeXBlO1xyXG5cclxuZXhwb3J0IHR5cGUgUE9JID0ge1xyXG4gICAgaWQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgY29vcmRpbmF0ZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICB0YWdJY29uPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHRhZ0Rlc2NyaXB0aW9uPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHRhZ0ltYWdlSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgbWV0YWRhdGE/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgbWF0dGVycG9ydFN3ZWVwSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgdHlwZT86IFBvaVR5cGUgfCBudWxsO1xyXG4gICAgZWxlbWVudElEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHZpcnR1YWw/OiBib29sZWFuIHwgbnVsbDtcclxufTtcclxuXHJcbmV4cG9ydCBlbnVtIFZpZXdlckludGVyYWN0aW9ucyB7XHJcbiAgICBERUZBVUxUID0gMCxcclxuICAgIEFERElOR19USUNLRVQsXHJcbiAgICBQT1NJVElPTklORyxcclxuICAgIEFERElOR19FUVVJUE1FTlQsXHJcbiAgICBBRERJTkdfTUVBU1VSRSxcclxuICAgIEFERElOR19GRUFUVVJFLFxyXG4gICAgQURESU5HX1JPT00sXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIE1pc3Npb24gPSB7XHJcbiAgICB1c2VySUQ6IHN0cmluZztcclxuICAgIHJvbGU/OiBSb2xlU3RhdHVzIHwgbnVsbDtcclxuICAgIG9yZ2FuaXNhdGlvbklEOiBzdHJpbmc7XHJcbiAgICBzcGFjZUlEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGxldmVsPzogTGV2ZWxTdGF0dXMgfCBudWxsO1xyXG4gICAgb3JkZXJlZE9yZ2FuaXNhdGlvbklEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHpvbmVJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBncm91cHM/OiBBcnJheTxzdHJpbmcgfCBudWxsPiB8IG51bGw7XHJcbiAgICBlbWFpbFN0YXR1cz86IEVtYWlsU3RhdHVzIHwgbnVsbDtcclxuICAgIGRlc2NyaXB0aW9uPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIG1ldGFkYXRhPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGRlbGV0ZWRBdD86IG51bWJlciB8IG51bGw7XHJcbiAgICBhc3NpZ25tZW50cz86IHtcclxuICAgICAgICBfX3R5cGVuYW1lPzogXCJNb2RlbEFmZmVjdGF0aW9uQ29ubmVjdGlvblwiO1xyXG4gICAgICAgIGl0ZW1zPzogQXJyYXk8QWZmZWN0YXRpb24gfCBudWxsPiB8IG51bGw7XHJcbiAgICAgICAgbmV4dFRva2VuPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIH07XHJcbiAgICBvcmdhbmlzYXRpb24/OiBPcmdhbmlzYXRpb24gfCBudWxsO1xyXG4gICAgb3JkZXJlZE9yZ2FuaXNhdGlvbj86IE9yZ2FuaXNhdGlvbiB8IG51bGw7XHJcbiAgICB1c2VyPzogUHJvZmlsZSB8IG51bGw7XHJcbiAgICBkb21haW5zPzogc3RyaW5nW10gfCBudWxsO1xyXG4gICAgLy8gZG9tYWluT2JqZWN0cz86IERvbWFpbltdIHwgbnVsbDtcclxuICAgIHNwYWNlPzogU3BhY2UgfCBudWxsO1xyXG4gICAgem9uZT86IFpvbmUgfCBudWxsO1xyXG4gICAgc3RhcnREYXRlVGltZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBlbmREYXRlVGltZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBoYXNodGFncz86IEFycmF5PHN0cmluZyB8IG51bGw+IHwgbnVsbDtcclxuICAgIHRlbXBsYXRlTWlzc2lvbklEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHRlbXBsYXRlTWlzc2lvbj86IFZpc2l0VGVtcGxhdGUgfCBudWxsO1xyXG4gICAgbG9jYWxlPzogTG9jYWxlIHwgbnVsbDtcclxuICAgIGlzSW5XYWl0aW5nUm9vbT86IGJvb2xlYW4gfCBudWxsO1xyXG4gICAgYmxvY2tlZEluQ2hhdD86IGJvb2xlYW4gfCBudWxsO1xyXG4gICAgY29ubmVjdGVkVG9MaXZlQXQ/OiBzdHJpbmdbXSB8IG51bGw7XHJcbiAgICBkaXNjb25uZWN0ZWRGcm9tTGl2ZUF0Pzogc3RyaW5nW10gfCBudWxsO1xyXG59ICYgQVdTVHlwZTtcclxuXHJcbmV4cG9ydCB0eXBlIEFmZmVjdGF0aW9uID0ge1xyXG4gICAgbWlzc2lvbj86IE1pc3Npb24gfCBudWxsO1xyXG4gICAgZ3JvdXA6IHN0cmluZztcclxuICAgIG1ldGFkYXRhPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGRlbGV0ZWRBdD86IG51bWJlciB8IG51bGw7XHJcbiAgICBtaXNzaW9uSUQ6IHN0cmluZztcclxuICAgIHRpY2tldElEOiBzdHJpbmc7XHJcbn0gJiBBV1NUeXBlO1xyXG5cclxuZXhwb3J0IHR5cGUgTWVkaWFDb250ZW50ID0ge1xyXG4gICAgcGF0aDogc3RyaW5nO1xyXG4gICAgdGl0bGU6IHN0cmluZztcclxuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgICBzaG93SW5UYWc/OiBib29sZWFuO1xyXG4gICAgdHlwZT86IENvbW1lbnRUeXBlO1xyXG59O1xyXG5cclxuZXhwb3J0IHR5cGUgQ29tbWVudCA9IHtcclxuICAgIHRpdGxlOiBzdHJpbmc7XHJcbiAgICB0aWNrZXQ/OiBUaWNrZXQgfCBudWxsO1xyXG4gICAgb3duZXJJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBvd25lcj86IE1pc3Npb24gfCBudWxsO1xyXG4gICAgYW5uZXhlPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHRpY2tldElEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHR5cGU/OiBDb21tZW50VHlwZSB8IG51bGw7XHJcbiAgICBkaW1lbnNpb25zPzogQXJyYXk8bnVtYmVyIHwgbnVsbD4gfCBudWxsO1xyXG4gICAgZmVhdHVyZUlEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGlzQ292ZXJJbWFnZT86IGJvb2xlYW4gfCBudWxsO1xyXG4gICAgaW5kZXg/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgc2hvd25JblRhZz86IGJvb2xlYW4gfCBudWxsO1xyXG4gICAgZXh0ZXJuYWxMaW5rPzogc3RyaW5nIHwgbnVsbDtcclxufSAmIEFXU1R5cGUgJiBEYk9iamVjdFR5cGU7XHJcblxyXG5cclxuZXhwb3J0IHR5cGUgWm9uZSA9IHtcclxuICAgIHN3ZWVwSURzPzogc3RyaW5nW10gfCBudWxsO1xyXG4gICAgbGF5ZXI/OiBMYXllciB8IG51bGw7XHJcbiAgICBwYXJlbnQ/OiBab25lIHwgbnVsbDtcclxuICAgIHZpcnR1YWw/OiBib29sZWFuIHwgbnVsbDtcclxuICAgIG5hbWU6IHN0cmluZztcclxuICAgIHRhZ3M/OiBBcnJheTxzdHJpbmcgfCBudWxsPiB8IG51bGw7XHJcbiAgICBwYXJlbnRJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBzcGFjZUlEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHNwYWNlPzogU3BhY2UgfCBudWxsO1xyXG4gICAgaXNNdXNldW1WaXNpdFpvbmU/OiBib29sZWFuIHwgbnVsbDtcclxuICAgIG5vZGVJRHM/OiBBcnJheTxzdHJpbmcgfCBudWxsPiB8IG51bGw7XHJcbiAgICBzdXJmYWNlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIG1ldGFkYXRhPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGlzTXVsdGlwbGVGbG9vclpvbmU/OiBib29sZWFuIHwgbnVsbDtcclxufSAmIEFXU1R5cGU7XHJcblxyXG5cclxuZXhwb3J0IHR5cGUgTGF5ZXIgPSB7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbn0gJiBBV1NUeXBlO1xyXG5cclxuZXhwb3J0IHR5cGUgUHJvZmlsZSA9IHtcclxuICAgIGlkPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHVzZXJJRDogc3RyaW5nO1xyXG4gICAgYXZhdGFyPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHRva2VuPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHRva2VuRXhwaXJlZEF0PzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHN0YXR1cz86IFByb2ZpbGVTdGF0dXMgfCBudWxsO1xyXG4gICAgbWV0YWRhdGE/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgbGFzdENvbm5lY3RlZEF0PzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHBzZXVkbz86IHN0cmluZyB8IG51bGw7XHJcbn0gJiBBV1NUeXBlO1xyXG5cclxuZXhwb3J0IGNsYXNzIFByb2ZpbGVFbnRpdHkgaW1wbGVtZW50cyBQcm9maWxlIHtcclxuICAgIGlkPzogc3RyaW5nIHwgbnVsbDtcclxuXHJcbiAgICB1c2VySUQ6IHN0cmluZztcclxuXHJcbiAgICBhdmF0YXI/OiBzdHJpbmcgfCBudWxsO1xyXG5cclxuICAgIHRva2VuPzogc3RyaW5nIHwgbnVsbDtcclxuXHJcbiAgICB0b2tlbkV4cGlyZWRBdD86IG51bWJlciB8IG51bGw7XHJcblxyXG4gICAgc3RhdHVzPzogUHJvZmlsZVN0YXR1cyB8IG51bGw7XHJcblxyXG4gICAgY3JlYXRlZEF0Pzogc3RyaW5nO1xyXG5cclxuICAgIHVwZGF0ZWRBdD86IHN0cmluZztcclxuXHJcbiAgICBmaXJzdE5hbWU6IHN0cmluZztcclxuXHJcbiAgICBsYXN0TmFtZTogc3RyaW5nO1xyXG5cclxuICAgIGVtYWlsOiBzdHJpbmc7XHJcblxyXG4gICAgcGhvbmU6IHN0cmluZztcclxuXHJcbiAgICBwc2V1ZG86IHN0cmluZztcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihpbml0PzogUGFydGlhbDxQcm9maWxlPikge1xyXG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywgaW5pdCk7XHJcbiAgICAgICAgdGhpcy5tZXRhZGF0YSA9IGluaXQubWV0YWRhdGE7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IG1ldGFkYXRhKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHtcclxuICAgICAgICAgICAgZmlyc3ROYW1lOiB0aGlzLmZpcnN0TmFtZSxcclxuICAgICAgICAgICAgbGFzdE5hbWU6IHRoaXMubGFzdE5hbWUsXHJcbiAgICAgICAgICAgIGVtYWlsOiB0aGlzLmVtYWlsLFxyXG4gICAgICAgICAgICBwaG9uZTogdGhpcy5waG9uZSxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBzZXQgbWV0YWRhdGEobTogc3RyaW5nKSB7XHJcbiAgICAgICAgY29uc3QgZCA9IEpTT04ucGFyc2UobSk7XHJcbiAgICAgICAgaWYgKGQpIHtcclxuICAgICAgICAgICAgdGhpcy5maXJzdE5hbWUgPSBkLmZpcnN0TmFtZTtcclxuICAgICAgICAgICAgdGhpcy5sYXN0TmFtZSA9IGQubGFzdE5hbWU7XHJcbiAgICAgICAgICAgIHRoaXMuZW1haWwgPSBkLmVtYWlsO1xyXG4gICAgICAgICAgICB0aGlzLnBob25lID0gZC5waG9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGRpc3BsYXlOYW1lKCk6IHN0cmluZyB7XHJcbiAgICAgICAgaWYgKHRoaXMucHNldWRvKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnBzZXVkbztcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRoaXMubGFzdE5hbWUubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICByZXR1cm4gYCR7dGhpcy5maXJzdE5hbWV9ICR7dGhpcy5sYXN0TmFtZX1gO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdGhpcy5lbWFpbDtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgT3JnYW5pc2F0aW9uID0ge1xyXG4gICAgbmFtZTogc3RyaW5nO1xyXG4gICAgc2lyZXQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgYWRkcmVzcz86IHN0cmluZyB8IG51bGw7XHJcbiAgICBjaXR5Pzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHBvc3RhbD86IG51bWJlciB8IG51bGw7XHJcbiAgICBsb2dvVXJsPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIG9yaWdpbkRhdGU/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgZGVsZXRlZEF0PzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHNoYXJlVG9rZW4/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgdG9rZW5FeHBpcmVzQXQ/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgY29ubmVjdGVkQWNjb3VudFN0cmlwZUlEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHN0cmlwZU9uQm9hcmRpbmdDb21wbGV0ZWQ/OiBib29sZWFuIHwgbnVsbDtcclxuICAgIHN0cmlwZVRva2VuPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHN0cmlwZUNoYXJnZXNFbmFibGVkPzogYm9vbGVhbiB8IG51bGw7XHJcbiAgICBjb250YWN0RGV0YWlscz86IHN0cmluZyB8IG51bGw7XHJcbiAgICB0aWNrZXRPcmdhbmlzYXRpb25zSWQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgLy8gcHJvcGVydGllcz86IHtcclxuICAgIC8vICAgICBfX3R5cGVuYW1lPzogXCJNb2RlbFByb3BlcnR5Q29ubmVjdGlvblwiO1xyXG4gICAgLy8gICAgIGl0ZW1zPzogQXJyYXk8UHJvcGVydHkgfCBudWxsPiB8IG51bGw7XHJcbiAgICAvLyAgICAgbmV4dFRva2VuPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIC8vIH0gfCBudWxsO1xyXG59ICYgQVdTVHlwZTtcclxuXHJcbmV4cG9ydCB0eXBlIFByb3BlcnR5ID0ge1xyXG4gICAgdHlwZTogUHJvcGVydHlUeXBlO1xyXG4gICAgZGVsZXRlZEF0PzogbnVtYmVyIHwgbnVsbDtcclxuICAgIG9yZ2FuaXNhdGlvbklEOiBzdHJpbmc7XHJcbiAgICBzcGFjZUlEOiBzdHJpbmc7XHJcbiAgICB6b25lSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgc3BhY2U/OiBTcGFjZSB8IG51bGw7XHJcbiAgICBvcmdhbmlzYXRpb24/OiBPcmdhbmlzYXRpb24gfCBudWxsO1xyXG4gICAgLy8gem9uZT86IFpvbmUgfCBudWxsO1xyXG59ICYgQVdTVHlwZTtcclxuXHJcbmV4cG9ydCB0eXBlIFNwYWNlID0ge1xyXG4gICAgbmFtZTogc3RyaW5nO1xyXG4gICAgYWRkcmVzc2VzPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGFubmV4ZXM/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgdGFncz86IEFycmF5PHN0cmluZyB8IG51bGw+IHwgbnVsbDtcclxuICAgIGxhdGl0dWRlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIGxvbmdpdHVkZT86IG51bWJlciB8IG51bGw7XHJcbiAgICBtZXRhZGF0YT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBsZXZlbD86IExldmVsU3RhdHVzIHwgbnVsbDtcclxuICAgIGRlbGV0ZWRBdD86IG51bWJlciB8IG51bGw7XHJcbiAgICBjb25zdHJ1Y3Rpb25ZZWFyPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGNsYXNzRW5lcmd5Q29uc3VtcHRpb24/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgY2xhc3NHZXM/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgc3RhdHVzPzogU3BhY2VTdGF0dXMgfCBudWxsO1xyXG4gICAgZ3Vlc3RMaW5rPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHNpZ25lZEltYWdlVXJsPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHpvbmVzPzoge1xyXG4gICAgICAgIF9fdHlwZW5hbWU/OiBcIk1vZGVsWm9uZUNvbm5lY3Rpb25cIjtcclxuICAgICAgICBpdGVtcz86IEFycmF5PFpvbmUgfCBudWxsPiB8IG51bGw7XHJcbiAgICAgICAgbmV4dFRva2VuPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIH07XHJcbiAgICBwcm9wZXJ0aWVzPzoge1xyXG4gICAgICAgIF9fdHlwZW5hbWU/OiBcIk1vZGVsUHJvcGVydHlDb25uZWN0aW9uXCI7XHJcbiAgICAgICAgaXRlbXM/OiBBcnJheTxQcm9wZXJ0eSB8IG51bGw+IHwgbnVsbDtcclxuICAgICAgICBuZXh0VG9rZW4/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgfTtcclxuICAgIHZpc2l0cz86IFZpc2l0W10gfCBudWxsO1xyXG4gICAgb3JnYW5pc2F0aW9uSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgb3JnYW5pc2F0aW9uPzogT3JnYW5pc2F0aW9uIHwgbnVsbDtcclxuICAgIGRlc2NyaXB0aW9uPzogc3RyaW5nIHwgbnVsbDtcclxufSAmIEFXU1R5cGU7XHJcblxyXG4vLyBub3QgaW4gREJcclxuZXhwb3J0IHR5cGUgVmlzaXQgPSB7XHJcbiAgICBjYXB0dXJlSUQ6IHN0cmluZztcclxuICAgIG1vZGVsM2Q6IHN0cmluZztcclxuICAgIHRha2VuQXQ6IG51bWJlcjtcclxuICAgIHNwYWNlSUQ6IHN0cmluZztcclxuICAgIHZpZXdlcjogQ2FwdHVyZVZpZXdlcjtcclxuICAgIHN1cmZhY2U6IG51bWJlcjtcclxuICAgIG5vZGU6IE5vZGU7XHJcbiAgICBuYW1lPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGltYWdlc0ltcG9ydGVkOiBib29sZWFuO1xyXG59O1xyXG5cclxuXHJcbmV4cG9ydCB0eXBlIEhhc2h0YWcgPSB7XHJcbiAgICBuYW1lPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIG9yZ2FuaXNhdGlvbklEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHNwYWNlSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgb3JnYW5pemF0aW9uPzogT3JnYW5pc2F0aW9uIHwgbnVsbDtcclxuICAgIHNwYWNlPzogU3BhY2UgfCBudWxsO1xyXG59ICYgQVdTVHlwZTtcclxuXHJcbmV4cG9ydCB0eXBlIENhcHR1cmUgPSB7XHJcbiAgICAvLyBjbGllbnRSZWY/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgLy8gb3JpZ2luQ29vcmRpbmF0ZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICAvLyBvcmlnaW5BbmdsZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICAvLyBvcmlnaW5ab29tPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHRha2VuQXQ/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgdmlld2VyPzogQ2FwdHVyZVZpZXdlciB8IG51bGw7XHJcbiAgICBwdWJsaXNoZWRBdD86IG51bWJlciB8IG51bGw7XHJcbiAgICBzdXJmYWNlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIG1ldGFkYXRhPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHNwYWNlSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgbm9kZXM/OiB7XHJcbiAgICAgICAgX190eXBlbmFtZT86IFwiTW9kZWxOb2RlQ29ubmVjdGlvblwiO1xyXG4gICAgICAgIGl0ZW1zPzogQXJyYXk8Tm9kZSB8IG51bGw+IHwgbnVsbDtcclxuICAgICAgICBuZXh0VG9rZW4/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgfTtcclxufSAmIEFXU1R5cGU7XHJcblxyXG5leHBvcnQgdHlwZSBOb2RlID0ge1xyXG4gICAgbW9kZWwzRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBjb29yZGluYXRlPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHNpemU/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgc2NhbGU/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgdmVyc2lvbj86IG51bWJlciB8IG51bGw7XHJcbiAgICBhY3RpdmU/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgb3JkZXI/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgLy8gcXVhbGl0eT86IE5vZGVRdWFsaXR5IHwgbnVsbDtcclxuICAgIG1ldGFkYXRhPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGNhcHR1cmVJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBpbnZlbnRvcnlTdGF0dXM/OiBJbnZlbnRvcnlTdGF0dXMgfCBudWxsO1xyXG4gICAgbmF2aWdhdGlvbkZvckludmVudG9yeT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBjYXB0dXJlPzogQ2FwdHVyZSB8IG51bGw7XHJcbn0gJiBBV1NUeXBlO1xyXG5cclxuZXhwb3J0IHR5cGUgUGxhbiA9IHtcclxuICAgIG5hbWU/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgYW5uZXhlPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGNhbGlicmF0aW9uPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHpvbmVJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBpc0N1cnJlbnRGb3Jab25lPzogYm9vbGVhbiB8IG51bGw7XHJcbiAgICBzcGFjZUlEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGlzTW9kaWZpZWQ/OiBib29sZWFuIHwgbnVsbDtcclxuICAgIGlzSW1wb3J0ZWRNYXR0ZXJwb3J0PzogYm9vbGVhbiB8IG51bGw7XHJcbiAgICBmaWxlcGF0aD86IHN0cmluZztcclxuICAgIG1vZGVsM2Q/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgZmxvb3I/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgdmlzaXROYW1lPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHpvbmU/OiBab25lIHwgbnVsbDtcclxuICAgIGV4dGVuc2lvbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICBuYXZpZ2F0aW9uSURzPzogc3RyaW5nW10gfCBudWxsO1xyXG59ICYgQVdTVHlwZTtcclxuXHJcbmV4cG9ydCB0eXBlIE5hdmlnYXRpb24gPSB7XHJcbiAgICBtYXR0ZXJwb3J0U3dlZXBJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBwb3NpdGlvbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICByb3RhdGlvbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICByYWRpdXM/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgdXJsPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHRhZ3M/OiBBcnJheTxzdHJpbmcgfCBudWxsPiB8IG51bGw7XHJcbiAgICBsZXZlbD86IExldmVsU3RhdHVzIHwgbnVsbDtcclxuICAgIG5vZGVJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBzcGFjZUlEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHBvc2l0aW9uT25QbGFuPzogQXJyYXk8c3RyaW5nIHwgbnVsbD4gfCBudWxsO1xyXG4gICAgbmF2aWdhdGlvblNpYmxpbmdzSWQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgcG9pcz86IHtcclxuICAgICAgICBfX3R5cGVuYW1lPzogXCJNb2RlbFBPSUNvbm5lY3Rpb25cIjtcclxuICAgICAgICBpdGVtcz86IEFycmF5PFBPSSB8IG51bGw+IHwgbnVsbDtcclxuICAgICAgICBuZXh0VG9rZW4/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgfTtcclxuICAgIG5vZGU/OiBOb2RlIHwgbnVsbDtcclxufSAmIEFXU1R5cGU7XHJcblxyXG5leHBvcnQgdHlwZSBNZW51SXRlbSA9IHsgbGFiZWw6IHN0cmluZzsgdXJsPzogc3RyaW5nOyBiYWNrPzogYW55OyB9O1xyXG5cclxuLy8gbm90IGluIGRiXHJcbmV4cG9ydCB0eXBlIE1lYXN1cmVtZW50ID0ge1xyXG4gICAgaWQ6IHN0cmluZztcclxuICAgIHBvaTogUE9JO1xyXG4gICAgY29tbWVudDogQ29tbWVudDtcclxuICAgIHNpbmdlZFVybFBob3RvPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHZhbHVlczogQXJyYXk8bnVtYmVyPiB8IG51bGw7XHJcbiAgICBudW1iZXJQb2ludHM6IG51bWJlcjtcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIEZlYXR1cmUgPSB7XHJcbiAgICB0aXRsZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBzaG9ydERlc2NyaXB0aW9uPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIG93bmVyTWlzc2lvbklEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGxldmVsPzogTGV2ZWxTdGF0dXMgfCBudWxsO1xyXG4gICAgaW5kZXg/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgdHlwZT86IEZlYXR1cmVUeXBlIHwgbnVsbDtcclxuICAgIGFyY2hpdmVkRm9yTWlzc2lvbklEPzogQXJyYXk8c3RyaW5nIHwgbnVsbD4gfCBudWxsO1xyXG4gICAgc3RyaXBlUHJvZHVjdElEPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHN0cmlwZVByaWNlSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgYm9va2luZ1ByaWNlTWV0YWRhdGE/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgbG9jYWxlPzogTG9jYWxlIHwgbnVsbDtcclxuICAgIGhhc2h0YWdzPzogQXJyYXk8c3RyaW5nIHwgbnVsbD4gfCBudWxsO1xyXG4gICAgY292ZXJJbWFnZVVybD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBpbWFnZXM/OiBBcnJheTxNZWRpYUNvbnRlbnQ+IHwgbnVsbDtcclxuICAgIHZpZGVvcz86IEFycmF5PE1lZGlhQ29udGVudD4gfCBudWxsO1xyXG4gICAgYXVkaW9zPzogQXJyYXk8TWVkaWFDb250ZW50PiB8IG51bGw7XHJcbiAgICBleHRlcm5hbExpbmtzPzogQXJyYXk8TWVkaWFDb250ZW50PiB8IG51bGw7XHJcbiAgICBkb2N1bWVudHM/OiBBcnJheTx7XHJcbiAgICAgICAgcGF0aDogc3RyaW5nO1xyXG4gICAgICAgIHRpdGxlOiBzdHJpbmc7XHJcbiAgICAgICAgZGVzY3JpcHRpb246IHN0cmluZztcclxuICAgIH0+IHwgbnVsbDtcclxuICAgIGNvbW1lbnRzPzoge1xyXG4gICAgICAgIF9fdHlwZW5hbWU/OiBcIk1vZGVsQ29tbWVudENvbm5lY3Rpb25cIjtcclxuICAgICAgICBpdGVtcz86IEFycmF5PENvbW1lbnQgfCBudWxsPiB8IG51bGw7XHJcbiAgICAgICAgbmV4dFRva2VuPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIH07XHJcbiAgICBkb21haW4/OiBEb21haW4gfCBudWxsO1xyXG4gICAgaXNCb29raW5nUGxhY2U/OiBib29sZWFuIHwgbnVsbDtcclxuICAgIGV2ZW50cz86IHtcclxuICAgICAgICBfX3R5cGVuYW1lPzogXCJNb2RlbEV2ZW50Q29ubmVjdGlvblwiO1xyXG4gICAgICAgIGl0ZW1zPzogQXJyYXk8RXZlbnQgfCBudWxsPiB8IG51bGw7XHJcbiAgICAgICAgbmV4dFRva2VuPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIH07XHJcbiAgICBzcGFjZUlEOiBzdHJpbmc7XHJcbn0gJiBEYk9iamVjdFR5cGU7XHJcblxyXG5leHBvcnQgdHlwZSBFdmVudCA9IHtcclxuICAgIHRpdGxlOiBzdHJpbmc7XHJcbiAgICB0eXBlPzogRXZlbnRUeXBlIHwgbnVsbDtcclxuICAgIGVzdGltYXRlU3RhcnREYXRlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIGVzdGltYXRlRHVyYXRpb24/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgZXN0aW1hdGVFbmREYXRlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHJlYWxTdGFydERhdGU/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgdGltZVNwZW50PzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHJlYWxFbmREYXRlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHN0YXR1cz86IEV2ZW50U3RhdHVzIHwgbnVsbDtcclxuICAgIGRlc2NyaXB0aW9uPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGdyb3VwPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIG1ldGFkYXRhPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIG93bmVySUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgdGlja2V0SUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgY3JlYXRlZEF0Pzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHRyYW5zbGF0aW9uUGF0aD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBmZWF0dXJlSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgYXJjaGl2ZWRCeU93bmVyPzogYm9vbGVhbiB8IG51bGw7XHJcbiAgICBwYXltZW50U3RhdHVzPzogUGF5bWVudFN0YXR1cyB8IG51bGw7XHJcbiAgICBzdHJpcGVTZXNzaW9uSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgbm90aWZpY2F0aW9uU3RhdHVzPzogRW1haWxTdGF0dXMgfCBudWxsO1xyXG4gICAgcmVmdXNhbFJlYXNvbj86IHN0cmluZyB8IG51bGw7XHJcbiAgICBhZ29TdHI/OiBib29sZWFuIHwgc3RyaW5nIHwgbnVsbDtcclxuICAgIG93bmVyPzogTWlzc2lvbiB8IG51bGw7XHJcbiAgICBhdXRob3I/OiBQcm9maWxlRW50aXR5IHwgbnVsbDtcclxuICAgIGZlYXR1cmU/OiBGZWF0dXJlIHwgbnVsbDtcclxufSAmIEFXU1R5cGU7XHJcblxyXG4vL25vdCBpbiBEQiAodmFyaWF0aW9uIG9mIEV2ZW50KVxyXG5leHBvcnQgdHlwZSBSZXF1ZXN0SW50ZXJ2ZW50aW9uID0ge1xyXG4gICAgZXN0aW1hdGVTdGFydERhdGU/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgZXN0aW1hdGVEdXJhdGlvbj86IG51bWJlciB8IG51bGw7XHJcbiAgICBlc3RpbWF0ZUVuZERhdGU/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgcmVhbFN0YXJ0RGF0ZT86IG51bWJlciB8IG51bGw7XHJcbiAgICByZWFsRHVyYXRpb24/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgcmVhbEVuZERhdGU/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgdHlwZTogRXZlbnRUeXBlLlJFUVVFU1RfRk9SX0lOVEVSVkVOVElPTjtcclxuICAgIHN0YXR1czogRXZlbnRTdGF0dXM7XHJcbiAgICBpbnRlcnZlbnRpb24/OiBFdmVudCB8IG51bGw7XHJcbiAgICByZXBvcnQ/OiBFdmVudCB8IG51bGw7XHJcbiAgICB0aWNrZXRJRDogc3RyaW5nO1xyXG59ICYgQVdTVHlwZTtcclxuXHJcbi8vbm90IGluIERCICh2YXJpYXRpb24gb2YgRXZlbnQpXHJcbmV4cG9ydCB0eXBlIEludGVydmVudGlvbiA9IHtcclxuICAgIGVzdGltYXRlU3RhcnREYXRlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIGVzdGltYXRlRHVyYXRpb24/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgZXN0aW1hdGVFbmREYXRlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHJlYWxTdGFydERhdGU/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgcmVhbER1cmF0aW9uPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHJlYWxFbmREYXRlPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHR5cGU6IEV2ZW50VHlwZTtcclxuICAgIHN0YXR1czogRXZlbnRTdGF0dXM7XHJcbn0gJiBBV1NUeXBlO1xyXG5cclxuZXhwb3J0IHR5cGUgVmlzaXRUZW1wbGF0ZSA9IHtcclxuICAgIGlkPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHRpdGxlPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGxldmVsPzogTGV2ZWxTdGF0dXMgfCBudWxsO1xyXG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgbWV0YWRhdGE/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgZGVsZXRlZEF0PzogbnVtYmVyIHwgbnVsbDtcclxuICAgIHN0YXJ0RGF0ZVRpbWU/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgZW5kRGF0ZVRpbWU/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgaGFzaHRhZ3M/OiBBcnJheTxzdHJpbmcgfCBudWxsPiB8IG51bGw7XHJcbiAgICBvcmdhbmlzYXRpb25JRDogc3RyaW5nO1xyXG4gICAgc3BhY2VJRD86IHN0cmluZyB8IG51bGw7XHJcbiAgICB6b25lSUQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgbG9jYWxlPzogTG9jYWxlIHwgbnVsbDtcclxuICAgIHJlYWxTdGFydGVkQXQ/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgcmVhbEVuZGVkQXQ/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgc3BhY2U/OiBTcGFjZSB8IG51bGw7XHJcbiAgICB6b25lPzogWm9uZSB8IG51bGw7XHJcbiAgICBvcmdhbmlzYXRpb24/OiBPcmdhbmlzYXRpb24gfCBudWxsO1xyXG4gICAgdXNlck1pc3Npb25zPzoge1xyXG4gICAgICAgIF9fdHlwZW5hbWU6IFwiTW9kZWxNaXNzaW9uQ29ubmVjdGlvblwiO1xyXG4gICAgICAgIGl0ZW1zOiBBcnJheTxNaXNzaW9uIHwgbnVsbD47XHJcbiAgICAgICAgbmV4dFRva2VuPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIH0gfCBudWxsO1xyXG59ICYgQVdTVHlwZTtcclxuXHJcbmV4cG9ydCBlbnVtIFNwTW9kdWxlIHtcclxuICAgIE1VU0VVTSA9IFwiTVVTRVVNXCIsXHJcbiAgICBIT1RFTCA9IFwiSE9URUxcIixcclxuICAgIElNTU8gPSBcIklNTU9cIlxyXG59Il19
|
|
@@ -219,6 +219,7 @@ var EmailStatus;
|
|
|
219
219
|
EmailStatus["SOFT_BOUNCE"] = "SOFT_BOUNCE";
|
|
220
220
|
EmailStatus["HARD_BOUNCE"] = "HARD_BOUNCE";
|
|
221
221
|
EmailStatus["REJECTED"] = "REJECTED";
|
|
222
|
+
EmailStatus["SATISFACTION_TO_DELIVER"] = "SATISFACTION_TO_DELIVER";
|
|
222
223
|
})(EmailStatus || (EmailStatus = {}));
|
|
223
224
|
var CaptureViewer;
|
|
224
225
|
(function (CaptureViewer) {
|
|
@@ -1135,6 +1136,11 @@ class MatterportService {
|
|
|
1135
1136
|
yield this.editTagStyle(mattertagID, this.dictionnaryTags.get(mattertagID).mattertagData);
|
|
1136
1137
|
});
|
|
1137
1138
|
}
|
|
1139
|
+
updateInjectedHtmlForTagID(mattertagID, object, tagType) {
|
|
1140
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
1141
|
+
yield this.injectHtmlInTag(tagType, object, mattertagID);
|
|
1142
|
+
});
|
|
1143
|
+
}
|
|
1138
1144
|
deleteMattertagFromId(mattertagID) {
|
|
1139
1145
|
this.sdk.Mattertag.remove(mattertagID);
|
|
1140
1146
|
this.dictionnaryTags.delete(mattertagID);
|
|
@@ -1908,12 +1914,12 @@ class ViewerService {
|
|
|
1908
1914
|
}
|
|
1909
1915
|
}
|
|
1910
1916
|
}
|
|
1911
|
-
|
|
1917
|
+
updateHtmlTagForPoiWithObject(poi, object) {
|
|
1912
1918
|
return __awaiter(this, void 0, void 0, function* () {
|
|
1913
1919
|
if (this.checkMode("Matterport")) {
|
|
1914
1920
|
const tagData = this.matterportService.getTagFromElementId(poi.elementID);
|
|
1915
1921
|
if (tagData.tag) {
|
|
1916
|
-
yield this.matterportService.
|
|
1922
|
+
yield this.matterportService.updateInjectedHtmlForTagID(tagData.tag, object, poi.type);
|
|
1917
1923
|
}
|
|
1918
1924
|
}
|
|
1919
1925
|
});
|