@reusa/ngx-reusa-app-lib 0.0.1309 → 0.0.1311

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.
@@ -581,12 +581,10 @@ export class HeaderComponent extends BasePage {
581
581
  this.ls.logout();
582
582
  }
583
583
  openWeeklies() {
584
- if (this.legacyMenu == 'true' && this.isMS() && this.interimHomePage == 'false') {
585
- this.openPage('cp', 'v2/weeklies');
586
- }
587
- else {
588
- this.openPage('cp', 'v3/weeklies');
589
- }
584
+ const path = (this.legacyMenu == 'true' && this.isMS() && this.interimHomePage == 'false')
585
+ ? '/v2/weeklies'
586
+ : '/v3/weeklies';
587
+ this.r.navigateByUrl(path);
590
588
  }
591
589
  openAuditDashboard() {
592
590
  if (this.context == 'audit') {
@@ -800,4 +798,4 @@ export class HeaderComponent extends BasePage {
800
798
  args: ['context']
801
799
  }] }); })();
802
800
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(HeaderComponent, { className: "HeaderComponent", filePath: "lib\\components\\header\\header.component.ts", lineNumber: 23 }); })();
803
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBR3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDcEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDbEcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBUWhGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7Ozs7SUNkaEQsdUNBQ21COzs7O0lBRGtCLHVFQUFvQzs7O0lBSWpFLHNDQUM0SDs7O0lBQWhHLHlHQUE2RTs7OztJQVF6RyxzQ0FBeU07SUFBN0wsd0xBQVMsZUFBQSxrQkFBVSxDQUFBLElBQUM7SUFBeUssb0JBQUk7SUFBQSxpQkFBYTs7O0lBQWhKLG1HQUE2RTs7OztJQUV2SixzQ0FBOFI7SUFBakQsd0xBQVMsZUFBQSxzQkFBYyxDQUFBLElBQUM7O0lBQXlCLFlBQThDO0lBQUEsaUJBQWE7OztJQUF4VCxtRkFBa0Q7SUFBMEIsb0dBQThFO0lBQW1HLGVBQThDO0lBQTlDLHdFQUE4Qzs7OztJQUM1VSxzQ0FBNFI7SUFBekIsd0xBQVMsZUFBQSxzQkFBYyxDQUFBLElBQUM7O0lBQUMsWUFBOEM7SUFBQSxpQkFB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WUFBdEIsMkNBQXNCO1lBSVIsZUFBOEI7WUFBOUIsbURBQThCOzs7aUZEakg5QyxlQUFlO2NBTDNCLFNBQVM7MkJBQ0UsWUFBWTsrU0FjTixLQUFLO2tCQUFwQixLQUFLO21CQUFDLE9BQU87WUFFRyxNQUFNO2tCQUF0QixLQUFLO21CQUFDLFFBQVE7WUFFUyxhQUFhO2tCQUFwQyxLQUFLO21CQUFDLGVBQWU7WUFFQSxXQUFXO2tCQUFoQyxLQUFLO21CQUFDLGFBQWE7WUFFRSxXQUFXO2tCQUFoQyxLQUFLO21CQUFDLGFBQWE7WUFFRCxRQUFRO2tCQUExQixLQUFLO21CQUFDLFVBQVU7WUFFQyxPQUFPO2tCQUF4QixLQUFLO21CQUFDLFNBQVM7O2tGQXRCTCxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTW9kYWxDb250cm9sbGVyLCBOYXZDb250cm9sbGVyLCBQb3BvdmVyQ29udHJvbGxlciB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7IExpYkNvbnN0YW50cyB9IGZyb20gJy4uLy4uL21vZGVscy9MaWJDb25zdGFudHMnO1xuaW1wb3J0IHsgQ2xhaW1hbnRNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9jbGFpbWFudC9DbGFpbWFudE1vZGVsJztcbmltcG9ydCB7IE15Tm90aWZpY2F0aW9uc1BhZ2UgfSBmcm9tICcuLi8uLi9wYWdlcy9wb3BvdmVycy9teS1ub3RpZmljYXRpb25zL215LW5vdGlmaWNhdGlvbnMucGFnZSc7XG5pbXBvcnQgeyBNeVByb2ZpbGVQYWdlIH0gZnJvbSAnLi4vLi4vcGFnZXMvcG9wb3ZlcnMvbXktcHJvZmlsZS9teS1wcm9maWxlLnBhZ2UnO1xuaW1wb3J0IHsgQ2xhaW1hbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY2xhaW1hbnQvY2xhaW1hbnQuc2VydmljZSc7XG5pbXBvcnQgeyBMb2dpblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sb2dpbi9sb2dpbi5zZXJ2aWNlJztcbmltcG9ydCB7IE5vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgVXRpbFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy91dGlsL3V0aWwuc2VydmljZSc7XG5pbXBvcnQgeyBIZWxwU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2hlbHAvaGVscC5zZXJ2aWNlJztcbmltcG9ydCB7IE1lbnVJdGVtIH0gZnJvbSAncHJpbWVuZy9hcGknO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgQmFzZVBhZ2UgfSBmcm9tICcuLi8uLi9wYWdlcy9CYXNlUGFnZSc7XG5pbXBvcnQgeyBBdXRvQ29tcGxldGVTZWxlY3RFdmVudCB9IGZyb20gJ3ByaW1lbmcvYXV0b2NvbXBsZXRlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9oZWFkZXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBIZWFkZXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlUGFnZSBpbXBsZW1lbnRzIE9uSW5pdCAge1xuXG4gIGl0ZW1zOiBNZW51SXRlbVtdO1xuXG4gIHNlYXJjaFRleHQ7XG5cbiAgcmVzdWx0czogQ2xhaW1hbnRNb2RlbFtdO1xuXG4gIGNvbnRleHRSb290OnN0cmluZztcblxuICBASW5wdXQoJ3RpdGxlJykgdGl0bGU6IHN0cmluZztcblxuICBASW5wdXQoJ3BhZ2VJZCcpIHBhZ2VJZDogc3RyaW5nO1xuXG4gIEBJbnB1dCgnc2Vjb25kVG9vbGJhcicpIHNlY29uZFRvb2xiYXI6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoJ2Rpc3BsYXlMb2dvJykgZGlzcGxheUxvZ286IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoJ3Nob3dIaXN0b3J5Jykgc2hvd0hpc3Rvcnk6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoJ2JhY2tQYWdlJykgYmFja1BhZ2U6IHN0cmluZztcblxuICBASW5wdXQoJ2NvbnRleHQnKSBjb250ZXh0OiBzdHJpbmc7XG5cbiAgcHVibGljIHNob3dOb3RpZmljYXRpb25Mb2FkZXIgPSBmYWxzZTtcblxuICBwdWJsaWMgbGVnYWN5TWVudSA9IExpYkNvbnN0YW50cy5sZWdhY3lNZW51O1xuXG4gIHB1YmxpYyBpbnRlcmltSG9tZVBhZ2UgPSBMaWJDb25zdGFudHMuaW50ZXJpbUhvbWVQYWdlO1xuXG4gIHB1YmxpYyBzaG93UHJvZmlsZVBvcHVwIDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHB1YmxpYyBzaG93am9iU2VhcmNoUmVzdWx0UG9wdXAgOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHVibGljIHNob3dMYW5ndWFnZU9wdGlvbiA9IExpYkNvbnN0YW50cy5lbmFibGVMYW5ndWFnZUNoYW5nZTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgbHMgOiBMb2dpblNlcnZpY2UsIHB1YmxpYyB1dGlsIDogVXRpbFNlcnZpY2UsIHB1YmxpYyByIDogUm91dGVyLCBwdWJsaWMgcG9wdXA6IFBvcG92ZXJDb250cm9sbGVyLCBcbiAgICAgICAgICAgICAgcHVibGljIGNzIDogQ2xhaW1hbnRTZXJ2aWNlLCBwcml2YXRlIG5hdiA6IE5hdkNvbnRyb2xsZXIsIHB1YmxpYyBtb2RhbENvbnRyb2xsZXI6IE1vZGFsQ29udHJvbGxlcixcbiAgICAgICAgICAgICAgcHVibGljIG5zIDogTm90aWZpY2F0aW9uU2VydmljZSwgcHVibGljIGhzOiBIZWxwU2VydmljZSwgcHVibGljIHRyYW5zbGF0ZVNlcnZpY2UgOiBUcmFuc2xhdGVTZXJ2aWNlKSB7XG4gICAgICAgICAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgICAgICAgIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICAvL3RoaXMubG9hZE5vdGlmaWNhdGlvbkNvdW50KCk7XG4gICAgdGhpcy5zZXRNZW51SXRlbXMobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJsYW5ndWFnZVwiKSk7XG4gICAgdGhpcy5jb250ZXh0Um9vdCA9IHRoaXMuZ2V0Q29udGV4dFJvb3QoKTtcbiAgfVxuICBcbiAgLypKb2IgU2VhcmNoIFJlc3VsdCBJY29uIFBvcHVwXG4gICBwcmVzZW50Sm9iU2VhcmNoUmVzdWx0UG9wdXAoKSB7XG4gICAgaWYodGhpcy5scy5pc0NsYWltYW50KCkpe1xuICAgICAgdGhpcy5zaG93am9iU2VhcmNoUmVzdWx0UG9wdXAgPSB0cnVlO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfVxuICAqL1xuICBnZXRDb250ZXh0Um9vdCgpe1xuICAgIGxldCBwYXJ0cyA9IHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZS5zcGxpdCgnLycpO1xuICAgIGxldCBjb250ZXh0Um9vdCA9IHBhcnRzLmxlbmd0aCA+IDEgPyBwYXJ0c1sxXSA6ICcnO1xuICAgIHJldHVybiBjb250ZXh0Um9vdDtcbiAgfVxuICBzZXRNZW51SXRlbXMobGFuZ3VhZ2UgOiBzdHJpbmcpe1xuICAgIHRoaXMuaXRlbXMgPSBbe1xuICAgICAgbGFiZWwgOiAnQ2hvb3NlIGxhbmd1YWdlJyxcbiAgICAgIGl0ZW1zOiBbe1xuICAgICAgICBsYWJlbDogJ0VuZ2xpc2gnLFxuICAgICAgICBpY29uIDogdGhpcy5nZXRJY29uKGxhbmd1YWdlLCdlbicpLFxuICAgICAgICBjb21tYW5kOiAoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNldExhbmd1YWdlKCdlbicsICdFbmdsaXNoJyk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGxhYmVsOiAnRXNwYcOxb2wnLFxuICAgICAgICBpY29uIDogdGhpcy5nZXRJY29uKGxhbmd1YWdlLCdlcycpLFxuICAgICAgICBjb21tYW5kOiAoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNldExhbmd1YWdlKCdlcycsICdlc3Bhw7FvbCcpO1xuICAgICAgICB9XG4gICAgICB9XVxuICAgIH1dO1xuICB9XG5cbiAgZ2V0SWNvbihzZWxlY3RlZExhbmcgOiBzdHJpbmcsIGxhbmd1YWdlIDogc3RyaW5nKXtcbiAgICBpZihsYW5ndWFnZSA9PSBzZWxlY3RlZExhbmcpe1xuICAgICAgcmV0dXJuIFwicGkgcGktZncgcGktY2hlY2tcIjtcbiAgICB9ZWxzZSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBzZXRMYW5ndWFnZShsYW5ndWFnZSA6IHN0cmluZywgbmFtZSA6IHN0cmluZyl7XG4gICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnVzZShsYW5ndWFnZSk7XG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2xhbmd1YWdlJywgbGFuZ3VhZ2UpO1xuICAgIHRoaXMudXRpbC50b2FzdCgnTGFuZ3VhZ2UgcHJlZmVyZW5jZSBjaGFuZ2VkIHRvICcgKyBuYW1lKTtcbiAgICB0aGlzLnNldE1lbnVJdGVtcyhsYW5ndWFnZSk7XG4gIH1cblxuICBhc3luYyBwcmVzZW50TXlQcm9maWxlUG9wb3ZlcihldmVudCkge1xuXG4gICAgaWYodGhpcy5scy5pc0NsYWltYW50KCkgJiYgICh0aGlzLmxlZ2FjeU1lbnUgPT0gJ2ZhbHNlJyB8fCB0aGlzLnV0aWwuaXNTdGF0ZSgnTUUnKSB8fCAodGhpcy51dGlsLmlzU3RhdGUoJ01TJykgJiYgTGliQ29uc3RhbnRzLmludGVyaW1Ib21lUGFnZSA9PSAndHJ1ZScpKSl7XG4gICAgICB0aGlzLnNob3dQcm9maWxlUG9wdXAgPSB0cnVlO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHBvcG92ZXIgPSBhd2FpdCB0aGlzLnBvcHVwLmNyZWF0ZSh7XG4gICAgICBjb21wb25lbnQ6IE15UHJvZmlsZVBhZ2UsXG4gICAgICB0cmFuc2x1Y2VudDogdHJ1ZSxcbiAgICAgIGJhY2tkcm9wRGlzbWlzczogdHJ1ZSxcbiAgICAgIGV2ZW50OiBldmVudCxcbiAgICAgIGNzc0NsYXNzOiAnaGVhZGVyLXBvcG92ZXInXG4gICAgfSk7XG5cbiAgICByZXR1cm4gYXdhaXQgcG9wb3Zlci5wcmVzZW50KCk7XG4gIH1cblxuICBhc3luYyBwcmVzZW50TXlOb3RpZmljYXRpb25Qb3BvdmVyKGV2ZW50KSB7XG4gICAgY29uc3QgcG9wb3ZlciA9IGF3YWl0IHRoaXMucG9wdXAuY3JlYXRlKHtcbiAgICAgIGNvbXBvbmVudDogTXlOb3RpZmljYXRpb25zUGFnZSxcbiAgICAgIHRyYW5zbHVjZW50OiB0cnVlLFxuICAgICAgYmFja2Ryb3BEaXNtaXNzOiB0cnVlLFxuICAgICAgZXZlbnQ6IGV2ZW50LFxuICAgICAgY3NzQ2xhc3M6ICdoZWFkZXItcG9wb3ZlcidcbiAgICB9KTtcblxuICAgIHBvcG92ZXIub25EaWREaXNtaXNzKCkudGhlbigoKSA9PiB7XG4gICAgICB0aGlzLm5zLnVwZGF0ZVJlYWRGbGFnKCk7XG4gICAgfSlcblxuICAgIHJldHVybiBhd2FpdCBwb3BvdmVyLnByZXNlbnQoKTtcbiAgfVxuXG4gIGxvZ291dCgpe1xuICAgIHRoaXMubmF2Lm5hdmlnYXRlUm9vdCgnL2xhbmRpbmcnKTtcbiAgICB0aGlzLmxzLmxvZ291dCgpO1xuICB9XG5cbiAgb3BlbldlZWtsaWVzKCl7XG4gICAgaWYodGhpcy5sZWdhY3lNZW51ID09ICd0cnVlJyAmJiB0aGlzLmlzTVMoKSAmJiB0aGlzLmludGVyaW1Ib21lUGFnZSA9PSAnZmFsc2UnKXtcbiAgICAgIHRoaXMub3BlblBhZ2UoJ2NwJywgJ3YyL3dlZWtsaWVzJylcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vcGVuUGFnZSgnY3AnLCAndjMvd2Vla2xpZXMnKVxuICAgIH1cbiAgfVxuXG4gIG9wZW5BdWRpdERhc2hib2FyZCgpe1xuICAgIGlmKHRoaXMuY29udGV4dD09J2F1ZGl0Jyl7XG4gICAgICBpZih0aGlzLmxzLmlzVGF4QXVkaXRTdXBlcnZpc29yKCkgfHwgdGhpcy5scy5pc1RheEF1ZGl0RGlyZWN0b3IoKSl7XG4gICAgICAgIHRoaXMub3BlblBhZ2UoJ2F1ZGl0JywnL2Rhc2hib2FyZCcpO1xuICAgICAgfSBlbHNlIGlmKHRoaXMubHMuaXNUYXhBdWRpdEF1ZGl0b3IoKSl7XG4gICAgICAgIHRoaXMub3BlblBhZ2UoJ2F1ZGl0JywnL215cScpO1xuICAgICAgfSBlbHNlIGlmKHRoaXMubHMuaXNFbXBsb3llcigpKXtcbiAgICAgICAgdGhpcy5vcGVuUGFnZSgnYXVkaXQnLCcvJyk7IC8vQWRkIHRoZSBhY3R1YWwgdXJsIGZvciBlbXBsb3llciBhdWRpdCBkYXNoYm9hcmRcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBvcGVuQXVkaXRvcldvcmtMaXN0KCl7XG4gICAgdGhpcy5vcGVuUGFnZSgnYXVkaXQnLCcvYXVkaXRvci13b3JrLWxpc3QnKTtcbiAgfVxuXG4gIG9wZW5VcGxvYWREb2N1bWVudHMoKXtcbiAgICB0aGlzLm9wZW5QYWdlKCdhdWRpdCcsJy91cGxvYWQtZG9jdW1lbnRzJyk7XG4gIH1cblxuICBvcGVuU3VwZXJ2aXNvck15USgpe1xuICAgIGlmKHRoaXMubHMuaXNUYXhBdWRpdFN1cGVydmlzb3IoKSB8fCB0aGlzLmxzLmlzVGF4QXVkaXRBdWRpdG9yKCkgfHwgdGhpcy5scy5pc1RheEF1ZGl0RGlyZWN0b3IoKSl7XG4gICAgICB0aGlzLm9wZW5QYWdlKCdhdWRpdCcsJy9teXEnKTtcbiAgICB9XG4gIH1cblxuICBvcGVuU3VwZXJ2aXNvcklucXVpcnkoKXtcbiAgICB0aGlzLm9wZW5QYWdlKCdhdWRpdCcsJy9pbnF1aXJ5Jyk7XG4gIH1cblxuICBvcGVuU3VwZXJ2aXNvclJlZmVycmFscygpe1xuICAgIGlmKHRoaXMubHMuaXNUYXhBdWRpdFN1cGVydmlzb3IoKSB8fCB0aGlzLmxzLmlzVGF4QXVkaXREaXJlY3RvcigpKXtcbiAgICAgIHRoaXMub3BlblBhZ2UoJ2F1ZGl0JywnL3JlZmVycmFscycpO1xuICAgIH0gZWxzZSBpZih0aGlzLmxzLmlzVGF4QXVkaXRBdWRpdG9yKCkgfHwgdGhpcy5scy5pc1RwYSgpKXsvL0FnZW5jeSBFbXBsb3llZSBEZWZhdWx0IC0gY2hlY2sgcm9sZSB3aXRoIGNpanVcbiAgICAgIHRoaXMub3BlblBhZ2UoJ2F1ZGl0JywnL25ldy1yZWZlcnJhbCcpO1xuICAgIH1cbiAgfVxuXG4gIG9wZW5TdXBlcnZpc29yQ29uZmlnKCl7XG4gICAgdGhpcy5vcGVuUGFnZSgnYXVkaXQnLCcvY29uZmlnJyk7XG4gIH1cblxuICBvcGVuU3VwZXJ2aXNvckFuYWx5dGljcygpe1xuICAgIGlmKHRoaXMubHMuaXNUYXhBdWRpdFN1cGVydmlzb3IoKSB8fCB0aGlzLmxzLmlzVGF4QXVkaXREaXJlY3RvcigpKXtcbiAgICAgIHRoaXMub3BlblBhZ2UoJ2F1ZGl0JywnL2FuYWx5dGljcycpO1xuICAgIH1cbiAgICBpZih0aGlzLmxzLmlzVGF4QXVkaXRBdWRpdG9yKCkpeyBcbiAgICAgIHRoaXMub3BlblBhZ2UoJ2F1ZGl0JywnL2F1ZGl0b3ItYW5hbHl0aWNzJyk7XG4gICAgfVxuICB9XG5cbiAgb3BlblN1cGVydmlzb3JBc3NpZ24oKXtcbiAgICB0aGlzLm9wZW5QYWdlKCdhdWRpdCcsJy9hc3NpZ24nKTtcbiAgfVxuXG4gIG9wZW5TdXBlcnZpc29yVGVhbSgpe1xuICAgIHRoaXMub3BlblBhZ2UoJ2F1ZGl0JywnL3RlYW0nKTtcbiAgfVxuXG4gIG9wZW5RdWVzdGlvbm5haXJlKCl7XG4gICAgaWYodGhpcy5scy5pc1RheEF1ZGl0QXVkaXRvcigpKXtcbiAgICAgIHRoaXMub3BlblBhZ2UoJ2F1ZGl0JywnL2F1ZGl0b3ItcXVlc3Rpb25uYWlyZScpO1xuICAgIH0gZWxzZSBpZih0aGlzLmxzLmlzRW1wbG95ZXIoKSl7XG4gICAgICB0aGlzLm9wZW5QYWdlKCdhdWRpdCcsJy9hdWRpdG9yLXF1ZXN0aW9ubmFpcmUtZm9ybScpOy8vQWRkIHRoZSBhY3R1YWwgdXJsIGZvciBlbXBsb3llciBxdWVzdGlvbm5haXJlXG4gICAgfVxuICB9XG5cbiAgb3BlbkhvbWUoKXtcbiAgICAvL3RoaXMubmF2Lm5hdmlnYXRlUm9vdChcIi93ZWxjb21lXCIpO1xuICAgIGlmKHRoaXMubHMuaXNDbGFpbWFudCgpKXtcbiAgICAgIHRoaXMudXRpbC5vcGVuUGFnZUJ5Q29udGV4dFJvb3QodGhpcy51dGlsLmdldENsYWltYW50QXBwQ29udGV4dFJvb3QoKSwgXCJ3ZWxjb21lXCIsIHRoaXMubmF2KTsgXG4gICAgfSBlbHNlIGlmKHRoaXMubHMuaXNDc3IoKSl7XG4gICAgICB0aGlzLnV0aWwub3BlblBhZ2VCeUNvbnRleHRSb290KHRoaXMudXRpbC5nZXRTZWN1cml0eUFwcENvbnRleHRSb290KCksXCJ3ZWxjb21lXCIsIHRoaXMubmF2KTsgXG4gICAgfSBlbHNlIGlmKHRoaXMubHMuaXNFbXBsb3llcigpKXtcbiAgICAgIHRoaXMub3BlblBhZ2UoJ2F1ZGl0JywnLycpOy8vQWRkIHRoZSBhY3R1YWwgdXJsIGZvciBlbXBsb3llciBxdWVzdGlvbm5haXJlXG4gICAgfSBcbiAgICBlbHNlIHtcbiAgICAgIHRoaXMubmF2Lm5hdmlnYXRlUm9vdChcIi93ZWxjb21lXCIpO1xuICAgIH1cbiAgICB0aGlzLnV0aWwuaGlkZUxvYWRlcigpO1xuICB9XG5cbiAgc2VhcmNoKGV2ZW50KSB7XG4gICAgbGV0IGRvU2VhcmNoID0gZmFsc2U7XG4gICAgbGV0IGNsYWltYW50U2VhcmNoID0gbmV3IENsYWltYW50TW9kZWwoKTtcbiAgICBsZXQgcXVlcnkgPSBldmVudC5xdWVyeSArICcnO1xuICAgIGlmKHF1ZXJ5LmluY2x1ZGVzKFwiIFwiKSl7XG4gICAgICBsZXQgZk5hbWUgPSBxdWVyeS5zcGxpdChcIiBcIilbMF07XG4gICAgICBsZXQgbE5hbWUgPSBxdWVyeS5zcGxpdChcIiBcIilbMV07XG4gICAgICBjbGFpbWFudFNlYXJjaC5maXJzdE5hbWUgPSBmTmFtZTtcbiAgICAgIGNsYWltYW50U2VhcmNoLmxhc3ROYW1lID0gbE5hbWU7XG4gICAgICBkb1NlYXJjaCA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYocXVlcnkubGVuZ3RoID09IDkgJiYgdGhpcy5pc051bWJlcihxdWVyeSkgJiYgIWRvU2VhcmNoKXtcbiAgICAgIGNsYWltYW50U2VhcmNoLnNzbiA9IHF1ZXJ5O1xuICAgICAgZG9TZWFyY2ggPSB0cnVlO1xuICAgIH1lbHNlIGlmKCF0aGlzLmlzTnVtYmVyKHF1ZXJ5KSAmJiAhZG9TZWFyY2gpe1xuICAgICAgY2xhaW1hbnRTZWFyY2gudXNlcklkID0gcXVlcnk7XG4gICAgICBkb1NlYXJjaCA9IHRydWU7XG4gICAgfVxuICAgIFxuICAgIGlmKGRvU2VhcmNoKXtcbiAgICAgIHRoaXMuY3Muc2VhcmNoKGNsYWltYW50U2VhcmNoKS5zdWJzY3JpYmUoZGF0YSA9PiB7XG4gICAgICAgICAgdGhpcy5yZXN1bHRzID0gZGF0YTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaXNOdW1iZXIobnVtKXtcbiAgICByZXR1cm4gIWlzTmFOKG51bSk7XG4gIH1cblxuICBvblNlbGVjdEFjdGlvbihldmVudCA6IEF1dG9Db21wbGV0ZVNlbGVjdEV2ZW50KXtcbiAgICB0aGlzLnJlc3VsdHMgPSBudWxsO1xuICAgIHRoaXMuc2VhcmNoVGV4dCA9IG51bGw7XG4gICAgdGhpcy5jcy5nZXRDbGFpbWFudCgpLm5leHQoZXZlbnQudmFsdWUpO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy51dGlsLm9wZW5QYWdlQnlDb250ZXh0Um9vdCh0aGlzLnV0aWwuZ2V0U2VjdXJpdHlBcHBDb250ZXh0Um9vdCgpLFwicmVzZXQtcGFzc3dvcmRcIiwgdGhpcy5uYXYpO1xuICAgICAgLy90aGlzLm5hdi5uYXZpZ2F0ZUZvcndhcmQoJy9yZXNldC1wYXNzd29yZCcpO1xuICAgIH0sIDUwMClcbiAgICBcbiAgfVxuXG4gIG9wZW5CZW5lZml0c0FwcCgpe1xuICAgIGxldCB1c2VyTW9kZWwgPSB0aGlzLmxzLmdldFVzZXIoKVxuICAgIHRoaXMudXRpbC5zaG93TG9hZGVyKCk7XG4gICAgd2luZG93Lm9wZW4oYCR7TGliQ29uc3RhbnRzLmJlbmVmaXRzVXJsRXh0ZXJuYWx9L2ZhY2VzL3ZpcnR1YWwvY29udGV4dHN3aXRjaC54aHRtbD9hPSR7dXNlck1vZGVsLmFjY2Vzc190b2tlbn0mcj0ke3VzZXJNb2RlbC5yZWZyZXNoX3Rva2VufSZ2PTIyOTlgLCAnX3NlbGYnKTtcbiAgfVxuXG4gIG9wZW5QYWdlKGNvbnRleHRSb290LCB1cmkpe1xuICAgIGxldCBjdXJyZW50Q29udGV4dFJvb3QgPSB0aGlzLnV0aWwuZ2V0Q29udGV4dFJvb3QoKTtcbiAgICBsZXQgdGFyZ2V0ID0gYC8ke2NvbnRleHRSb290fWA7XG5cbiAgICBpZihjdXJyZW50Q29udGV4dFJvb3QgPT0gdGFyZ2V0KXtcbiAgICAgIHRoaXMubmF2Lm5hdmlnYXRlUm9vdChgLyR7dXJpfWApO1xuICAgIH1lbHNle1xuICAgICAgdGhpcy51dGlsLm9wZW5QYWdlQnlDb250ZXh0Um9vdCh0YXJnZXQsIHVyaSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0Q2xhc3MobmFtZSl7XG4gICAgbGV0IGN1cnJlbnRSb3V0ZSA9IHRoaXMuci51cmwucmVwbGFjZSgnLycsICcnKTtcbiAgICBjb25zb2xlLmxvZyhjdXJyZW50Um91dGUsIG5hbWUsIGN1cnJlbnRSb3V0ZSA9PSBuYW1lKTtcbiAgICByZXR1cm4gY3VycmVudFJvdXRlID09IG5hbWUgPyAnaGVhZGVyLWJ1dHRvbicgOiAnJztcbiAgfVxuXG4gIG9wZW5Db250ZXh0SGVscCgpe1xuXG4gIH1cblxuICBhc3luYyBjaGFuZ2VMYW5ndWFnZShldmVudCkge1xuICAgIFxuICB9XG59XG4iLCI8bWF0LXByb2dyZXNzLWJhciBtb2RlPVwiZGV0ZXJtaW5hdGVcIiBbdmFsdWVdPVwidXRpbC5sb2FkZXIudmFsdWUkIHwgYXN5bmNcIiAqbmdJZj1cIih1dGlsLmxvYWRlci52YWx1ZSQgfCBhc3luYykgIT0gMFwiPlxyXG48L21hdC1wcm9ncmVzcy1iYXI+XHJcbjxpb24tdG9vbGJhcj5cclxuICAgIDxpb24tYnV0dG9ucyBzbG90PVwic3RhcnRcIiBzdHlsZT1cIm1hcmdpbi1sZWZ0OiAtNXB4O1wiPlxyXG4gICAgICAgIDxpb24tbWVudS1idXR0b24gYXV0b0hpZGU9XCJmYWxzZVwiIHBUb29sdGlwPVwiTWVudVwiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiXHJcbiAgICAgICAgICAgICpuZ0lmPVwibHMuaXNMb2dnZWRJbigpXCIgW25nQ2xhc3NdPVwibGVnYWN5TWVudSA9PSAnZmFsc2UnICYmIGxzLmlzQ2xhaW1hbnQoKSA/ICdoaWRlLXhsIGhpZGUtbGcnIDogJydcIj48L2lvbi1tZW51LWJ1dHRvbj5cclxuICAgIDwvaW9uLWJ1dHRvbnM+XHJcbiAgICA8aW9uLWJ1dHRvbnMgc2xvdD1cInN0YXJ0XCIgW25nQ2xhc3NdPVwiZGlzcGxheUxvZ28gPyAnaGVhZGVyX2J1dHRvbl93aGl0ZScgOiAnaGVhZGVyX2J1dHRvbiBoaWRlLXhzIGhpZGUtbWQnXCIgKGNsaWNrKT1cIm9wZW5BdWRpdERhc2hib2FyZCgpXCI+XHJcbiAgICAgICAgPGltZyBhbHQ9XCJsb2dvXCIgcFRvb2x0aXA9XCJ7eydSZUVtcGxveU1TIExvZ28nIHwgdHJhbnNsYXRlfX1cIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIlxyXG4gICAgICAgICBzcmM9XCJhc3NldHMvaWNvbi9SZUVtcGxveXt7dXRpbC5nZXRTdGF0ZSgpfX0uc3ZnXCIgW25nQ2xhc3NdPVwiZGlzcGxheUxvZ28gPyAnaGVhZGVyX2xvZ28nIDogJ2hlYWRlcl9sb2dvIGhpZGUteHMgaGlkZS1tZCdcIi8+XHJcbiAgICA8L2lvbi1idXR0b25zPlxyXG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgPGlvbi1idXR0b25zIHNsb3Q9XCJzdGFydFwiICpuZ0lmPVwibHMuaXNMb2dnZWRJbigpXCI+XHJcbiAgICAgICAgPGlvbi1idXR0b24gKGNsaWNrKT1cIm9wZW5Ib21lKClcIiBwVG9vbHRpcD1cIkhvbWVcIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiBbbmdDbGFzc109XCJyLnVybC5yZXBsYWNlKCcvJywgJycpLmluY2x1ZGVzKCd3ZWxjb21lJykgPyAnaGVhZGVyLWJ1dHRvbicgOiAnJ1wiICpuZ0lmPVwidGhpcy5jb250ZXh0IT0nYXVkaXQnIHx8IGxzLmlzRW1wbG95ZXIoKVwiPkhvbWU8L2lvbi1idXR0b24+XHJcblxyXG4gICAgICAgIDxpb24tYnV0dG9uIGlkPVwiYnRuRmlsZVdlZWtsaWVzXCIgcFRvb2x0aXA9XCJ7eydoZWFkZXIud2Vla2x5LnRvb2x0aXAnIHwgdHJhbnNsYXRlfX1cIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiBbbmdDbGFzc109XCJyLnVybC5yZXBsYWNlKCcvJywgJycpLmluY2x1ZGVzKCd3ZWVrbGllcycpID8gJ2hlYWRlci1idXR0b24nIDogJydcIiAqbmdJZj1cImxzLmlzQ2xhaW1hbnQoKSAmJiBsZWdhY3lNZW51ID09ICdmYWxzZSdcIiAoY2xpY2spPVwib3BlbldlZWtsaWVzKClcIiBjbGFzcz1cImhpZGUteHMgaGlkZS1tZFwiPnt7bGVnYWN5TWVudSA9PSAndHJ1ZScgPyAnV2Vla2x5JyA6ICdXZWVrbHknfX08L2lvbi1idXR0b24+XHJcbiAgICAgICAgPGlvbi1idXR0b24gaWQ9XCJidG5GaWxlV2Vla2xpZXNcIiBwVG9vbHRpcD1cInt7J2hlYWRlci53ZWVrbHkudG9vbHRpcCcgfCB0cmFuc2xhdGV9fVwiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiIFtuZ0NsYXNzXT1cInIudXJsLnJlcGxhY2UoJy8nLCAnJykuaW5jbHVkZXMoJ3dlZWtsaWVzJykgPyAnaGVhZGVyLWJ1dHRvbicgOiAnJ1wiICpuZ0lmPVwibHMuaXNDbGFpbWFudCgpICYmIGxlZ2FjeU1lbnUgPT0gJ3RydWUnICYmICF1dGlsLmlzU3RhdGUoJ01FJylcIiAoY2xpY2spPVwib3BlbldlZWtsaWVzKClcIj57e2xlZ2FjeU1lbnUgPT0gJ3RydWUnID8gJ1dlZWtseScgOiAnV2Vla2x5J319PC9pb24tYnV0dG9uPlxyXG4gICAgICAgIDxpb24tYnV0dG9uIGlkPVwiYnRuRmlsZVdlZWtsaWVzXCIgcFRvb2x0aXA9XCJ7eydoZWFkZXIud2Vla2x5LnRvb2x0aXAnIHwgdHJhbnNsYXRlfX1cIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiBbbmdDbGFzc109XCJyLnVybC5yZXBsYWNlKCcvJywgJycpLmluY2x1ZGVzKCd3ZWVrbGllcycpID8gJ2hlYWRlci1idXR0b24nIDogJydcIiAqbmdJZj1cImxzLmlzQ2xhaW1hbnQoKSAmJiBsZWdhY3lNZW51ID09ICd0cnVlJyAmJiB1dGlsLmlzU3RhdGUoJ01FJylcIiAoY2xpY2spPVwib3BlbldlZWtsaWVzKClcIj57e2xlZ2FjeU1lbnUgPT0gJ3RydWUnID8gJ1dlZWtseSBDbGFpbScgOiAnV2Vla2x5J319PC9pb24tYnV0dG9uPlxyXG4gICAgICAgIFxyXG4gICAgICAgXHJcbiAgICAgICAgPGlvbi1idXR0b24gcFRvb2x0aXA9XCJIaXN0b3J5XCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCIgW25nQ2xhc3NdPVwici51cmwucmVwbGFjZSgnLycsICcnKSA9PSAnaGlzdG9yeScgPyAnaGVhZGVyLWJ1dHRvbicgOiAnJ1wiICpuZ0lmPVwibHMuaXNDbGFpbWFudCgpICYmIGxlZ2FjeU1lbnUgPT0gJ2ZhbHNlJyAmJiBpbnRlcmltSG9tZVBhZ2UgPT0gJ2ZhbHNlJ1wiIChjbGljayk9XCJvcGVuUGFnZSgnY3AnLCAnaGlzdG9yeScpXCIgY2xhc3M9XCJoaWRlLXhzIGhpZGUtbWRcIj5IaXN0b3J5PC9pb24tYnV0dG9uPlxyXG4gICAgXHJcbiAgICAgICAgPGlvbi1idXR0b24gaWQ9XCJidG5BdWRpdE15UVwiIHBUb29sdGlwPVwiTXlRXCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCIgW25nQ2xhc3NdPVwici51cmwucmVwbGFjZSgnLycsICcnKS5pbmNsdWRlcygnbXlxJykgPyAnaGVhZGVyLWJ1dHRvbicgOiAnJ1wiICpuZ0lmPVwidGhpcy5jb250ZXh0PT0nYXVkaXQnICYmIChscy5pc1RheEF1ZGl0U3VwZXJ2aXNvcigpIHx8IGxzLmlzVGF4QXVkaXRBdWRpdG9yKCkgfHwgbHMuaXNUYXhBdWRpdERpcmVjdG9yKCkgfHwgbHMuaXNUYXhBdWRpdERpcmVjdG9yKCkpXCIgKGNsaWNrKT1cIm9wZW5TdXBlcnZpc29yTXlRKClcIj5NeVE8L2lvbi1idXR0b24+XHJcbiAgICAgICAgPGlvbi1idXR0b24gaWQ9XCJidG5BdWRpdERhc2hib2FyZFwiIHBUb29sdGlwPVwiRGFzaGJvYXJkXCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCIgW25nQ2xhc3NdPVwici51cmwucmVwbGFjZSgnLycsICcnKS5pbmNsdWRlcygnZGFzaGJvYXJkJykgPyAnaGVhZGVyLWJ1dHRvbicgOiAnJ1wiICpuZ0lmPVwidGhpcy5jb250ZXh0PT0nYXVkaXQnICYmIChscy5pc1RheEF1ZGl0U3VwZXJ2aXNvcigpIHx8IGxzLmlzRW1wbG95ZXIoKSB8fCBscy5pc1RheEF1ZGl0RGlyZWN0b3IoKSlcIiAoY2xpY2spPVwib3BlbkF1ZGl0RGFzaGJvYXJkKClcIj5EYXNoYm9hcmQ8L2lvbi1idXR0b24+XHJcbiAgICAgICAgPGlvbi1idXR0b24gaWQ9XCJidG5BdWRpdFdvcmtMaXN0XCIgcFRvb2x0aXA9XCJXb3JrTGlzdFwiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiIFtuZ0NsYXNzXT1cInIudXJsLnJlcGxhY2UoJy8nLCAnJykuaW5jbHVkZXMoJ2F1ZGl0b3Itd29yay1saXN0JykgPyAnaGVhZGVyLWJ1dHRvbicgOiAnJ1wiICpuZ0lmPVwidGhpcy5jb250ZXh0PT0nYXVkaXQnICYmIGxzLmlzVGF4QXVkaXRBdWRpdG9yKClcIiAoY2xpY2spPVwib3BlbkF1ZGl0b3JXb3JrTGlzdCgpXCI+V29yayBMaXN0PC9pb24tYnV0dG9uPlxyXG4gICAgICAgIDxpb24tYnV0dG9uIGlkPVwiYnRuQXVkaXRJbnF1aXJ5XCIgcFRvb2x0aXA9XCJJbnF1aXJ5XCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCIgW25nQ2xhc3NdPVwici51cmwucmVwbGFjZSgnLycsICcnKS5pbmNsdWRlcygnaW5xdWlyeScpID8gJ2hlYWRlci1idXR0b24nIDogJydcIiAqbmdJZj1cInRoaXMuY29udGV4dD09J2F1ZGl0JyAmJiAobHMuaXNUYXhBdWRpdFN1cGVydmlzb3IoKSB8fCBscy5pc1RheEF1ZGl0QXVkaXRvcigpIHx8IGxzLmlzVGF4QXVkaXREaXJlY3RvcigpKVwiIChjbGljayk9XCJvcGVuU3VwZXJ2aXNvcklucXVpcnkoKVwiPklucXVpcnk8L2lvbi1idXR0b24+XHJcbiAgICAgICAgPGlvbi1idXR0b24gaWQ9XCJidG5BdWRpdFVwbG9hZERvY3VtZW50c1wiIHBUb29sdGlwPVwiVXBsb2FkIERvY3VtZW50c1wiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiIFtuZ0NsYXNzXT1cInIudXJsLnJlcGxhY2UoJy8nLCAnJykuaW5jbHVkZXMoJ3VwbG9hZC1kb2N1bWVudHMnKSA/ICdoZWFkZXItYnV0dG9uJyA6ICcnXCIgKm5nSWY9XCJ0aGlzLmNvbnRleHQ9PSdhdWRpdCcgJiYgbHMuaXNFbXBsb3llcigpXCIgKGNsaWNrKT1cIm9wZW5VcGxvYWREb2N1bWVudHMoKVwiPlVwbG9hZCBEb2N1bWVudHM8L2lvbi1idXR0b24+XHJcbiAgICAgICAgPGlvbi1idXR0b24gaWQ9XCJidG5BdWRpdFF1ZXN0aW9ubmFpcmVcIiBwVG9vbHRpcD1cIlF1ZXN0aW9ubmFpcmVcIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiBbbmdDbGFzc109XCJyLnVybC5yZXBsYWNlKCcvJywgJycpLmluY2x1ZGVzKCdhdWRpdG9yLXF1ZXN0aW9ubmFpcmUnKSA/ICdoZWFkZXItYnV0dG9uJyA6ICcnXCIgKm5nSWY9XCJ0aGlzLmNvbnRleHQ9PSdhdWRpdCcgJiYgKGxzLmlzVGF4QXVkaXRBdWRpdG9yKCkgfHwgbHMuaXNFbXBsb3llcigpKVwiIChjbGljayk9XCJvcGVuUXVlc3Rpb25uYWlyZSgpXCI+UXVlc3Rpb25uYWlyZTwvaW9uLWJ1dHRvbj5cclxuICAgICAgICA8aW9uLWJ1dHRvbiBpZD1cImJ0bkF1ZGl0UmVmZXJyYWxzXCIgcFRvb2x0aXA9XCJSZWZlcnJhbHNcIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiBbbmdDbGFzc109XCJyLnVybC5yZXBsYWNlKCcvJywgJycpLmluY2x1ZGVzKCdyZWZlcnJhbHMnKSA/ICdoZWFkZXItYnV0dG9uJyA6ICcnXCIgKm5nSWY9XCJ0aGlzLmNvbnRleHQ9PSdhdWRpdCcgJiYgKGxzLmlzVGF4QXVkaXRTdXBlcnZpc29yKCkgfHwgbHMuaXNUYXhBdWRpdEF1ZGl0b3IoKSB8fCBscy5pc1RheEF1ZGl0RGlyZWN0b3IoKSlcIiAoY2xpY2spPVwib3BlblN1cGVydmlzb3JSZWZlcnJhbHMoKVwiPlJlZmVycmFsczwvaW9uLWJ1dHRvbj5cclxuICAgICAgICA8aW9uLWJ1dHRvbiBpZD1cImJ0bkF1ZGl0QXNzaWduXCIgcFRvb2x0aXA9XCJBc3NpZ25cIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiBbbmdDbGFzc109XCJyLnVybC5yZXBsYWNlKCcvJywgJycpLmluY2x1ZGVzKCdhc3NpZ24nKSA/ICdoZWFkZXItYnV0dG9uJyA6ICcnXCIgKm5nSWY9XCJ0aGlzLmNvbnRleHQ9PSdhdWRpdCcgJiYgbHMuaXNUYXhBdWRpdFN1cGVydmlzb3IoKVwiIChjbGljayk9XCJvcGVuU3VwZXJ2aXNvckFzc2lnbigpXCI+QXNzaWduPC9pb24tYnV0dG9uPlxyXG4gICAgICAgIDxpb24tYnV0dG9uIGlkPVwiYnRuQXVkaXRUZWFtXCIgcFRvb2x0aXA9XCJUZWFtXCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCIgW25nQ2xhc3NdPVwici51cmwucmVwbGFjZSgnLycsICcnKS5pbmNsdWRlcygndGVhbScpID8gJ2hlYWRlci1idXR0b24nIDogJydcIiAqbmdJZj1cInRoaXMuY29udGV4dD09J2F1ZGl0JyAmJiBscy5pc1RheEF1ZGl0U3VwZXJ2aXNvcigpXCIgKGNsaWNrKT1cIm9wZW5TdXBlcnZpc29yVGVhbSgpXCI+VGVhbTwvaW9uLWJ1dHRvbj5cclxuICAgICAgICA8aW9uLWJ1dHRvbiBpZD1cImJ0bkF1ZGl0Q29uZmlnXCIgcFRvb2x0aXA9XCJDb25maWdcIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiBbbmdDbGFzc109XCJyLnVybC5yZXBsYWNlKCcvJywgJycpLmluY2x1ZGVzKCdjb25maWcnKSA/ICdoZWFkZXItYnV0dG9uJyA6ICcnXCIgKm5nSWY9XCJ0aGlzLmNvbnRleHQ9PSdhdWRpdCcgJiYgKGxzLmlzVGF4QXVkaXRTdXBlcnZpc29yKCkgfHwgbHMuaXNUYXhBdWRpdERpcmVjdG9yKCkpXCIgKGNsaWNrKT1cIm9wZW5TdXBlcnZpc29yQ29uZmlnKClcIj5Db25maWc8L2lvbi1idXR0b24+XHJcbiAgICAgICAgPGlvbi1idXR0b24gaWQ9XCJidG5BdWRpdEFuYWx5dGljc1wiIHBUb29sdGlwPVwiQW5hbHl0aWNzXCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCIgW25nQ2xhc3NdPVwici51cmwucmVwbGFjZSgnLycsICcnKS5pbmNsdWRlcygnYW5hbHl0aWNzJykgPyAnaGVhZGVyLWJ1dHRvbicgOiAnJ1wiICpuZ0lmPVwidGhpcy5jb250ZXh0PT0nYXVkaXQnICYmIChscy5pc1RheEF1ZGl0U3VwZXJ2aXNvcigpIHx8IGxzLmlzVGF4QXVkaXRBdWRpdG9yKCkgfHwgbHMuaXNUYXhBdWRpdERpcmVjdG9yKCkpXCIgKGNsaWNrKT1cIm9wZW5TdXBlcnZpc29yQW5hbHl0aWNzKClcIj5BbmFseXRpY3M8L2lvbi1idXR0b24+XHJcbiAgICA8L2lvbi1idXR0b25zPlxyXG5cclxuICAgIFxyXG4gICAgPGRpdiBjbGFzcz1cInRvb2xiYXItY29udGVudCBoaWRlLXhzXCIgKm5nSWY9XCJscy5pc0xvZ2dlZEluKCkgJiYgbHMuaXNDc3IoKSAmJiB0aGlzLmNvbnRleHQgIT0nYXVkaXQnICYmIGNvbnRleHRSb290ID09PSdzcydcIj5cclxuICAgICAgICA8cC1hdXRvQ29tcGxldGUgYXBwZW5kVG89XCJib2R5XCIgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXh0XCIgW3N1Z2dlc3Rpb25zXT1cInJlc3VsdHNcIlxyXG4gICAgICAgICAgICAoY29tcGxldGVNZXRob2QpPVwic2VhcmNoKCRldmVudClcIiBwbGFjZWhvbGRlcj1cIlNlYXJjaCBDbGFpbWFudHNcIiAob25TZWxlY3QpPVwib25TZWxlY3RBY3Rpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIGVtcHR5TWVzc2FnZT1cIk5vIFJlc3VsdHMgRm91bmQuXCIgc2l6ZT1cIjI1XCI+XHJcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBsZXQtdXNlciBwVGVtcGxhdGU9XCJpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICA8aW9uLXJvdyBjbGFzcz1cIi5pb24td3JhcFwiID5cclxuICAgICAgICAgICAgICAgICAgICA8aW9uLWNvbCBzaXplLWF1dG8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpb24tdGV4dD57e3VzZXIuZmlyc3ROYW1lIHwgcHJvcGVyQ2FzZX19IHt7dXNlci5sYXN0TmFtZSB8IHByb3BlckNhc2V9fTwvaW9uLXRleHQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpb24tY29sIHNpemUtYXV0bz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlvbi10ZXh0Pnt7dXNlci51c2VySWR9fTwvaW9uLXRleHQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpb24tY29sIHNpemUtYXV0bz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlvbi10ZXh0Pnt7dXRpbC5tYXNrU3NuKHVzZXIuc3NuKX19PC9pb24tdGV4dD5cclxuICAgICAgICAgICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICAgICAgICA8L2lvbi1yb3c+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPC9wLWF1dG9Db21wbGV0ZT5cclxuICAgIDwvZGl2PlxyXG4gICAgPGlvbi1idXR0b25zIHNsb3Q9XCJlbmRcIiAqbmdJZj1cImxzLmlzTG9nZ2VkSW4oKVwiID5cclxuICAgICAgICA8aW9uLWJ1dHRvbiAoY2xpY2spPVwicHJlc2VudE15UHJvZmlsZVBvcG92ZXIoJGV2ZW50KVwiIHBUb29sdGlwPVwiQWNjb3VudFwiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiIFtuZ0NsYXNzXT1cImxlZ2FjeU1lbnUgPT0gJ2ZhbHNlJyAmJiBscy5pc0NsYWltYW50KCkgJiYgc2hvd1Byb2ZpbGVQb3B1cCA/ICdoaWRlLXhzIGhpZGUtbWQgaGVhZGVyLWJ1dHRvbicgOiAobGVnYWN5TWVudSA9PSAnZmFsc2UnICYmIGxzLmlzQ2xhaW1hbnQoKSA/ICdoaWRlLXhzIGhpZGUtbWQnIDogJycpXCI+XHJcbiAgICAgICAgICAgIDxpb24tdGl0bGUgc3R5bGU9XCJmb250LXNpemU6IDIwcHg7IHBhZGRpbmc6IDBweDtcIiBjbGFzcz1cImhpZGUteHNcIj57e2xzLmdldEZ1bGxOYW1lKCkgfCBwcm9wZXJDYXNlfX08L2lvbi10aXRsZT5cclxuICAgICAgICAgICAgPGlvbi1pY29uIHNsb3Q9XCJlbmRcIiBuYW1lPVwicGVyc29uLWNpcmNsZS1vdXRsaW5lXCI+PC9pb24taWNvbj5cclxuICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgPGlvbi1idXR0b24gKGNsaWNrKT1cIm9wZW5QYWdlKCdjcCcsICdkb2N1bWVudHMnKVwiIHBUb29sdGlwPVwiTm90aWNlc1wiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiICpuZ0lmPVwiIWxzLmlzQ3NyKCkgJiYgbGVnYWN5TWVudSA9PSAnZmFsc2UnICYmIHV0aWwuaXNTdGF0ZSgnTVMnKVwiIFtuZ0NsYXNzXT1cInIudXJsLnJlcGxhY2UoJy8nLCAnJykgPT0gJ2RvY3VtZW50cycgPyAnaGVhZGVyLWJ1dHRvbiBoaWRlLXhzIGhpZGUtbWQnIDogJ2hpZGUteHMgaGlkZS1tZCdcIj5cclxuICAgICAgICAgICAgPGkgY2xhc3M9J3BpIHBpLWZpbGUgZm9udC1ib2xkJyBzdHlsZT1cImZvbnQtc2l6ZTogMS4zcmVtOyAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1wiPjwvaT5cclxuICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgPGlvbi1idXR0b24gKGNsaWNrKT1cIm9wZW5QYWdlKCdjcCcsICdkb2N1bWVudHMnKVwiIHBUb29sdGlwPVwiTm90aWNlc1wiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiICpuZ0lmPVwiIWxzLmlzQ3NyKCkgJiYgbGVnYWN5TWVudSA9PSAndHJ1ZScgJiYgdXRpbC5pc1N0YXRlKCdNUycpXCI+XHJcbiAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwiZG9jdW1lbnQtdGV4dC1vdXRsaW5lXCI+PC9pb24taWNvbj5cclxuICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgPGlvbi1idXR0b24gKGNsaWNrKT1cIm9wZW5QYWdlKCdjcCcsICdkb2N1bWVudHMnKVwiIHBUb29sdGlwPVwiQ29ycmVzcG9uZGVuY2VzXCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCIgKm5nSWY9XCIhbHMuaXNDc3IoKSAmJiBsZWdhY3lNZW51ID09ICdmYWxzZScgJiYgdXRpbC5pc1N0YXRlKCdNRScpXCIgW25nQ2xhc3NdPVwici51cmwucmVwbGFjZSgnLycsICcnKSA9PSAnZG9jdW1lbnRzJyA/ICdoZWFkZXItYnV0dG9uIGhpZGUteHMgaGlkZS1tZCcgOiAnaGlkZS14cyBoaWRlLW1kJ1wiPlxyXG4gICAgICAgICAgICA8aSBjbGFzcz0ncGkgcGktZmlsZSBmb250LWJvbGQnIHN0eWxlPVwiZm9udC1zaXplOiAxLjNyZW07ICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XCI+PC9pPlxyXG4gICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgICA8aW9uLWJ1dHRvbiAoY2xpY2spPVwib3BlblBhZ2UoJ2NwJywgJ2RvY3VtZW50cycpXCIgcFRvb2x0aXA9XCJDb3JyZXNwb25kZW5jZXNcIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiAqbmdJZj1cIiFscy5pc0NzcigpICYmIGxlZ2FjeU1lbnUgPT0gJ3RydWUnICYmIHV0aWwuaXNTdGF0ZSgnTUUnKVwiPlxyXG4gICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImRvY3VtZW50LXRleHQtb3V0bGluZVwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgPC9pb24tYnV0dG9uPlxyXG5cclxuICAgICAgICBcclxuICAgICAgICA8IS0tIDxpb24tYnV0dG9uIChjbGljayk9XCJwcmVzZW50Sm9iU2VhcmNoUmVzdWx0UG9wdXAoKVwiIHBUb29sdGlwPVwiU2hvdyBqb2Igc2VhcmNoIHJlc3VsdFwiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiIFtuZ0NsYXNzXT1cImxlZ2FjeU1lbnUgPT0gJ2ZhbHNlJyAmJiBscy5pc0NsYWltYW50KCkgPyAnaGlkZS14cyBoaWRlLW1kJyA6ICcnXCIgKm5nSWY9XCJscy5pc0NsYWltYW50KCkgJiYgbGVnYWN5TWVudSA9PSAnZmFsc2UnICYmIHV0aWwuaXNTdGF0ZSgnTVMnKVwiPlxyXG4gICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImJyaWVmY2FzZVwiIGZpbGw9XCJvdXRsaW5lXCI+PC9pb24taWNvbj5cclxuICAgICAgICA8L2lvbi1idXR0b24+IC0tPlxyXG4gICAgICAgIFxyXG4gICAgICAgIFxyXG4gICAgICAgIDxpb24tYnV0dG9uIChjbGljayk9XCJwcmVzZW50TXlOb3RpZmljYXRpb25Qb3BvdmVyKCRldmVudClcIiBwVG9vbHRpcD1cIk5vdGlmaWNhdGlvblwiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiXHJcbiAgICAgICAgICAgICpuZ0lmPVwiIW5zLnNob3dOb3RpZmljYXRpb25Mb2FkZXIgJiYgIXV0aWwuaXNTdGF0ZSgnTUUnKVwiIFtuZ0NsYXNzXT1cImxlZ2FjeU1lbnUgPT0gJ2ZhbHNlJyAmJiBscy5pc0NsYWltYW50KCkgPyAnaGlkZS14cyBoaWRlLW1kJyA6ICcnXCI+XHJcbiAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwibm90aWZpY2F0aW9ucy1vdXRsaW5lXCI+PC9pb24taWNvbj5cclxuICAgICAgICAgICAgPGlvbi1iYWRnZSBjb2xvcj1cImRhcmtcIiAqbmdJZj1cIm5zLm5vdGlmaWNhdGlvbkNvdW50LmdldFZhbHVlKCkgPiAwXCI+XHJcbiAgICAgICAgICAgICAgICA8aW9uLWxhYmVsPnt7bnMubm90aWZpY2F0aW9uQ291bnQuZ2V0VmFsdWUoKX19PC9pb24tbGFiZWw+XHJcbiAgICAgICAgICAgIDwvaW9uLWJhZGdlPlxyXG4gICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgICA8aW9uLXNwaW5uZXIgbmFtZT1cImNyZXNjZW50XCIgKm5nSWY9XCJucy5zaG93Tm90aWZpY2F0aW9uTG9hZGVyXCI+PC9pb24tc3Bpbm5lcj5cclxuXHJcbiAgICAgICAgPGlvbi1idXR0b24gKGNsaWNrKT1cInRoaXMuaHMuc2hvdygpXCIgcFRvb2x0aXA9XCJIZWxwXCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCIgKm5nSWY9XCJscy5pc0NsYWltYW50KCkgJiYgbGVnYWN5TWVudSA9PSAnZmFsc2UnICYmIChocy5zaG91bGREaXNwbGF5SGVscEJ1dHRvbigpIHwgYXN5bmMpXCI+XHJcbiAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwiaGVscC1jaXJjbGUtb3V0bGluZVwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgPC9pb24tYnV0dG9ucz5cclxuXHJcbiAgICA8aW9uLWJ1dHRvbnMgc2xvdD1cInNlY29uZGFyeVwiICpuZ0lmPVwiIWxzLmlzTG9nZ2VkSW4oKSAmJiBscy5nZXRVc2VyKClcIj5cclxuICAgICAgICA8aW9uLWJ1dHRvbiAoY2xpY2spPVwibG9nb3V0KClcIiBwVG9vbHRpcD1cIkxvZ291dFwiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiPlxyXG4gICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImxvZy1vdXQtc2hhcnBcIj48L2lvbi1pY29uPlxyXG4gICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgIDwvaW9uLWJ1dHRvbnM+XHJcblxyXG4gICAgPGlvbi1idXR0b25zIHNsb3Q9XCJlbmRcIiAqbmdJZj1cInNob3dMYW5ndWFnZU9wdGlvbiA9PT0gJ3RydWUnICYmICghbHMuZ2V0VXNlcigpICYmIGxlZ2FjeU1lbnUgPT0gJ2ZhbHNlJylcIj5cclxuICAgICAgICA8cC1tZW51ICNtZW51IFtwb3B1cF09XCJ0cnVlXCIgW21vZGVsXT1cIml0ZW1zXCIgYXBwZW5kVG89XCJib2R5XCI+PC9wLW1lbnU+XHJcbiAgICAgICAgPGlvbi1idXR0b24gKGNsaWNrKT1cIm1lbnUudG9nZ2xlKCRldmVudClcIiBwVG9vbHRpcD1cIkxhbmd1YWdlXCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCI+XHJcbiAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImxhbmd1YWdlXCIgc2xvdD1cImVuZFwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICA8L2lvbi1idXR0b25zPlxyXG5cclxuPC9pb24tdG9vbGJhcj5cclxuPGlvbi10b29sYmFyIGNvbG9yPVwibGlnaHRcIiBpZD1cInNlY29uZFRvb2xiYXJcIiAqbmdJZj1cInNlY29uZFRvb2xiYXJcIj5cclxuICAgIDxpb24tYnV0dG9ucyBzbG90PVwic3RhcnRcIj5cclxuICAgICAgICA8aW9uLWJhY2stYnV0dG9uIHBUb29sdGlwPVwiQmFja1wiIGFsdD1cIkJhY2tcIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiBbZGVmYXVsdEhyZWZdPVwiYmFja1BhZ2UgPyBiYWNrUGFnZSA6ICcvd2VsY29tZSdcIj48L2lvbi1iYWNrLWJ1dHRvbj5cclxuICAgICAgICA8aW9uLXRpdGxlIGNvbG9yPVwicHJpbWFyeVwiICpuZ0lmPVwidGl0bGVcIiBzdHlsZT1cImZvbnQtc2l6ZTogMThweFwiPnt7dGl0bGV9fTwvaW9uLXRpdGxlPlxyXG4gICAgPC9pb24tYnV0dG9ucz5cclxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgIDxpb24tYnV0dG9ucyBzbG90PVwiZW5kXCI+XHJcbiAgICAgICAgPGlvbi10aXRsZSBjb2xvcj1cInByaW1hcnlcIiBzdHlsZT1cImZvbnQtc2l6ZTogeHgtc21hbGw7IGZsb2F0OiByaWdodDsgcGFkZGluZy1yaWdodDogOHB4O1wiICpuZ0lmPVwicGFnZUlkXCI+XHJcbiAgICAgICAgICAgIHt7cGFnZUlkfX08L2lvbi10aXRsZT5cclxuICAgIDwvaW9uLWJ1dHRvbnM+XHJcbjwvaW9uLXRvb2xiYXI+XHJcbjxwLXRvYXN0PlxyXG4gICAgPG5nLXRlbXBsYXRlIGxldC1tZXNzYWdlIHBUZW1wbGF0ZT1cIm1lc3NhZ2VcIj5cclxuICAgICAgICA8aSAqbmdJZj1cIm1lc3NhZ2Uuc2V2ZXJpdHkgPT09ICdlcnJvcidcIiBjbGFzcz1cInBpIHBpLXRpbWVzLWNpcmNsZVwiIHN0eWxlPVwibWFyZ2luLXJpZ2h0OiAxNHB4OyBmb250LXNpemU6IDM4cHggXCI+PC9pPlxyXG4gICAgICAgIDxpICpuZ0lmPVwibWVzc2FnZS5zZXZlcml0eSA9PT0gJ3N1Y2Nlc3MnXCIgY2xhc3M9XCJwaSBwaS1jaGVjay1jaXJjbGVcIiBzdHlsZT1cIm1hcmdpbi1yaWdodDogMTRweDsgZm9udC1zaXplOiAzOHB4IFwiPjwvaT5cclxuICAgICAgICA8aSAqbmdJZj1cIm1lc3NhZ2Uuc2V2ZXJpdHkgPT09ICd3YXJuJ1wiIGNsYXNzPVwicGkgcGktZXhjbGFtYXRpb24tY2lyY2xlXCJzdHlsZT1cIm1hcmdpbi1yaWdodDogMTRweDsgZm9udC1zaXplOiAzOHB4IFwiPjwvaT5cclxuICAgICAgICA8aSAqbmdJZj1cIm1lc3NhZ2Uuc2V2ZXJpdHkgPT09ICdpbmZvJ1wiIGNsYXNzPVwicGkgcGktaW5mby1jaXJjbGVcIiBzdHlsZT1cIm1hcmdpbi1yaWdodDogMTRweDsgZm9udC1zaXplOiAzOHB4IFwiPjwvaT5cclxuXHJcbiAgICAgICAgPGRpdiBbaW5uZXJIVE1MXT1cIic8c3Ryb25nIHN0eWxlPVxcJ2ZvbnQtc2l6ZTogMjJweDtmb250LXdlaWdodDogYm9sZDtcXCc+JyArIG1lc3NhZ2Uuc3VtbWFyeSArICc8L3N0cm9uZz48YnI+PGJyPicgKyBcclxuICAgICAgICAgICAgJzxzcGFuIHN0eWxlPVxcJ2ZvbnQtc2l6ZTogMThweDtcXCc+JyArIG1lc3NhZ2UuZGV0YWlsICsgJzwvc3Bhbj4nXCI+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgPC9wLXRvYXN0PlxyXG5cclxuPG5nLWNvbnRhaW5lciAqbmdJZj1cInNob3dQcm9maWxlUG9wdXBcIj5cclxuICAgIDxhcHAtcHJvZmlsZSAqbmdJZj1cInNob3dQcm9maWxlUG9wdXBcIiAob25DYW5jZWwpPVwic2hvd1Byb2ZpbGVQb3B1cCA9ICFzaG93UHJvZmlsZVBvcHVwXCI+PC9hcHAtcHJvZmlsZT5cclxuPC9uZy1jb250YWluZXI+XHJcblxyXG48YXBwLWpvYi1zZWFyY2gtcmVzdWx0LXBhZ2UgKm5nSWY9XCJzaG93am9iU2VhcmNoUmVzdWx0UG9wdXBcIiAob25DYW5jZWwpPVwic2hvd2pvYlNlYXJjaFJlc3VsdFBvcHVwID0gIXNob3dqb2JTZWFyY2hSZXN1bHRQb3B1cFwiPjwvYXBwLWpvYi1zZWFyY2gtcmVzdWx0LXBhZ2U+XHJcblxyXG5cclxuXHJcbiJdfQ==
801
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBR3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDcEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDbEcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBUWhGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7Ozs7SUNkaEQsdUNBQ21COzs7O0lBRGtCLHVFQUFvQzs7O0lBSWpFLHNDQUM0SDs7O0lBQWhHLHlHQUE2RTs7OztJQVF6RyxzQ0FBeU07SUFBN0wsd0xBQVMsZUFBQSxrQkFBVSxDQUFBLElBQUM7SUFBeUssb0JBQUk7SUFBQSxpQkFBYTs7O0lBQWhKLG1HQUE2RTs7OztJQUV2SixzQ0FBOFI7SUFBakQsd0xBQVMsZUFBQSxzQkFBYyxDQUFBLElBQUM7O0lBQXlCLFlBQThDO0lBQUEsaUJBQWE7OztJQUF4VCxtRkFBa0Q7SUFBMEIsb0dBQThFO0lBQW1HLGVBQThDO0lBQTlDLHdFQUE4Qzs7OztJQUM1VSxzQ0FBNFI7SUFBekIsd0xBQVMsZUFBQSxzQkFBYyxDQUFBLElBQUM7O0lBQUMsWUFBOEM7SUFBQSxpQkFB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QiwyQ0FBc0I7WUFJUixlQUE4QjtZQUE5QixtREFBOEI7OztpRkRqSDlDLGVBQWU7Y0FMM0IsU0FBUzsyQkFDRSxZQUFZOytTQWNOLEtBQUs7a0JBQXBCLEtBQUs7bUJBQUMsT0FBTztZQUVHLE1BQU07a0JBQXRCLEtBQUs7bUJBQUMsUUFBUTtZQUVTLGFBQWE7a0JBQXBDLEtBQUs7bUJBQUMsZUFBZTtZQUVBLFdBQVc7a0JBQWhDLEtBQUs7bUJBQUMsYUFBYTtZQUVFLFdBQVc7a0JBQWhDLEtBQUs7bUJBQUMsYUFBYTtZQUVELFFBQVE7a0JBQTFCLEtBQUs7bUJBQUMsVUFBVTtZQUVDLE9BQU87a0JBQXhCLEtBQUs7bUJBQUMsU0FBUzs7a0ZBdEJMLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBNb2RhbENvbnRyb2xsZXIsIE5hdkNvbnRyb2xsZXIsIFBvcG92ZXJDb250cm9sbGVyIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHsgTGliQ29uc3RhbnRzIH0gZnJvbSAnLi4vLi4vbW9kZWxzL0xpYkNvbnN0YW50cyc7XG5pbXBvcnQgeyBDbGFpbWFudE1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2NsYWltYW50L0NsYWltYW50TW9kZWwnO1xuaW1wb3J0IHsgTXlOb3RpZmljYXRpb25zUGFnZSB9IGZyb20gJy4uLy4uL3BhZ2VzL3BvcG92ZXJzL215LW5vdGlmaWNhdGlvbnMvbXktbm90aWZpY2F0aW9ucy5wYWdlJztcbmltcG9ydCB7IE15UHJvZmlsZVBhZ2UgfSBmcm9tICcuLi8uLi9wYWdlcy9wb3BvdmVycy9teS1wcm9maWxlL215LXByb2ZpbGUucGFnZSc7XG5pbXBvcnQgeyBDbGFpbWFudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jbGFpbWFudC9jbGFpbWFudC5zZXJ2aWNlJztcbmltcG9ydCB7IExvZ2luU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2xvZ2luL2xvZ2luLnNlcnZpY2UnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBVdGlsU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3V0aWwvdXRpbC5zZXJ2aWNlJztcbmltcG9ydCB7IEhlbHBTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvaGVscC9oZWxwLnNlcnZpY2UnO1xuaW1wb3J0IHsgTWVudUl0ZW0gfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBCYXNlUGFnZSB9IGZyb20gJy4uLy4uL3BhZ2VzL0Jhc2VQYWdlJztcbmltcG9ydCB7IEF1dG9Db21wbGV0ZVNlbGVjdEV2ZW50IH0gZnJvbSAncHJpbWVuZy9hdXRvY29tcGxldGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtaGVhZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2hlYWRlci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEhlYWRlckNvbXBvbmVudCBleHRlbmRzIEJhc2VQYWdlIGltcGxlbWVudHMgT25Jbml0ICB7XG5cbiAgaXRlbXM6IE1lbnVJdGVtW107XG5cbiAgc2VhcmNoVGV4dDtcblxuICByZXN1bHRzOiBDbGFpbWFudE1vZGVsW107XG5cbiAgY29udGV4dFJvb3Q6c3RyaW5nO1xuXG4gIEBJbnB1dCgndGl0bGUnKSB0aXRsZTogc3RyaW5nO1xuXG4gIEBJbnB1dCgncGFnZUlkJykgcGFnZUlkOiBzdHJpbmc7XG5cbiAgQElucHV0KCdzZWNvbmRUb29sYmFyJykgc2Vjb25kVG9vbGJhcjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgnZGlzcGxheUxvZ28nKSBkaXNwbGF5TG9nbzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgnc2hvd0hpc3RvcnknKSBzaG93SGlzdG9yeTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgnYmFja1BhZ2UnKSBiYWNrUGFnZTogc3RyaW5nO1xuXG4gIEBJbnB1dCgnY29udGV4dCcpIGNvbnRleHQ6IHN0cmluZztcblxuICBwdWJsaWMgc2hvd05vdGlmaWNhdGlvbkxvYWRlciA9IGZhbHNlO1xuXG4gIHB1YmxpYyBsZWdhY3lNZW51ID0gTGliQ29uc3RhbnRzLmxlZ2FjeU1lbnU7XG5cbiAgcHVibGljIGludGVyaW1Ib21lUGFnZSA9IExpYkNvbnN0YW50cy5pbnRlcmltSG9tZVBhZ2U7XG5cbiAgcHVibGljIHNob3dQcm9maWxlUG9wdXAgOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHVibGljIHNob3dqb2JTZWFyY2hSZXN1bHRQb3B1cCA6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwdWJsaWMgc2hvd0xhbmd1YWdlT3B0aW9uID0gTGliQ29uc3RhbnRzLmVuYWJsZUxhbmd1YWdlQ2hhbmdlO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBscyA6IExvZ2luU2VydmljZSwgcHVibGljIHV0aWwgOiBVdGlsU2VydmljZSwgcHVibGljIHIgOiBSb3V0ZXIsIHB1YmxpYyBwb3B1cDogUG9wb3ZlckNvbnRyb2xsZXIsIFxuICAgICAgICAgICAgICBwdWJsaWMgY3MgOiBDbGFpbWFudFNlcnZpY2UsIHByaXZhdGUgbmF2IDogTmF2Q29udHJvbGxlciwgcHVibGljIG1vZGFsQ29udHJvbGxlcjogTW9kYWxDb250cm9sbGVyLFxuICAgICAgICAgICAgICBwdWJsaWMgbnMgOiBOb3RpZmljYXRpb25TZXJ2aWNlLCBwdWJsaWMgaHM6IEhlbHBTZXJ2aWNlLCBwdWJsaWMgdHJhbnNsYXRlU2VydmljZSA6IFRyYW5zbGF0ZVNlcnZpY2UpIHtcbiAgICAgICAgICAgICAgICBzdXBlcigpO1xuICAgICAgICAgICAgICAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIC8vdGhpcy5sb2FkTm90aWZpY2F0aW9uQ291bnQoKTtcbiAgICB0aGlzLnNldE1lbnVJdGVtcyhsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcImxhbmd1YWdlXCIpKTtcbiAgICB0aGlzLmNvbnRleHRSb290ID0gdGhpcy5nZXRDb250ZXh0Um9vdCgpO1xuICB9XG4gIFxuICAvKkpvYiBTZWFyY2ggUmVzdWx0IEljb24gUG9wdXBcbiAgIHByZXNlbnRKb2JTZWFyY2hSZXN1bHRQb3B1cCgpIHtcbiAgICBpZih0aGlzLmxzLmlzQ2xhaW1hbnQoKSl7XG4gICAgICB0aGlzLnNob3dqb2JTZWFyY2hSZXN1bHRQb3B1cCA9IHRydWU7XG4gICAgICByZXR1cm47XG4gICAgfVxuICB9XG4gICovXG4gIGdldENvbnRleHRSb290KCl7XG4gICAgbGV0IHBhcnRzID0gd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLnNwbGl0KCcvJyk7XG4gICAgbGV0IGNvbnRleHRSb290ID0gcGFydHMubGVuZ3RoID4gMSA/IHBhcnRzWzFdIDogJyc7XG4gICAgcmV0dXJuIGNvbnRleHRSb290O1xuICB9XG4gIHNldE1lbnVJdGVtcyhsYW5ndWFnZSA6IHN0cmluZyl7XG4gICAgdGhpcy5pdGVtcyA9IFt7XG4gICAgICBsYWJlbCA6ICdDaG9vc2UgbGFuZ3VhZ2UnLFxuICAgICAgaXRlbXM6IFt7XG4gICAgICAgIGxhYmVsOiAnRW5nbGlzaCcsXG4gICAgICAgIGljb24gOiB0aGlzLmdldEljb24obGFuZ3VhZ2UsJ2VuJyksXG4gICAgICAgIGNvbW1hbmQ6ICgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2V0TGFuZ3VhZ2UoJ2VuJywgJ0VuZ2xpc2gnKTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbGFiZWw6ICdFc3Bhw7FvbCcsXG4gICAgICAgIGljb24gOiB0aGlzLmdldEljb24obGFuZ3VhZ2UsJ2VzJyksXG4gICAgICAgIGNvbW1hbmQ6ICgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2V0TGFuZ3VhZ2UoJ2VzJywgJ2VzcGHDsW9sJyk7XG4gICAgICAgIH1cbiAgICAgIH1dXG4gICAgfV07XG4gIH1cblxuICBnZXRJY29uKHNlbGVjdGVkTGFuZyA6IHN0cmluZywgbGFuZ3VhZ2UgOiBzdHJpbmcpe1xuICAgIGlmKGxhbmd1YWdlID09IHNlbGVjdGVkTGFuZyl7XG4gICAgICByZXR1cm4gXCJwaSBwaS1mdyBwaS1jaGVja1wiO1xuICAgIH1lbHNlIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuXG4gIHNldExhbmd1YWdlKGxhbmd1YWdlIDogc3RyaW5nLCBuYW1lIDogc3RyaW5nKXtcbiAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UudXNlKGxhbmd1YWdlKTtcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnbGFuZ3VhZ2UnLCBsYW5ndWFnZSk7XG4gICAgdGhpcy51dGlsLnRvYXN0KCdMYW5ndWFnZSBwcmVmZXJlbmNlIGNoYW5nZWQgdG8gJyArIG5hbWUpO1xuICAgIHRoaXMuc2V0TWVudUl0ZW1zKGxhbmd1YWdlKTtcbiAgfVxuXG4gIGFzeW5jIHByZXNlbnRNeVByb2ZpbGVQb3BvdmVyKGV2ZW50KSB7XG5cbiAgICBpZih0aGlzLmxzLmlzQ2xhaW1hbnQoKSAmJiAgKHRoaXMubGVnYWN5TWVudSA9PSAnZmFsc2UnIHx8IHRoaXMudXRpbC5pc1N0YXRlKCdNRScpIHx8ICh0aGlzLnV0aWwuaXNTdGF0ZSgnTVMnKSAmJiBMaWJDb25zdGFudHMuaW50ZXJpbUhvbWVQYWdlID09ICd0cnVlJykpKXtcbiAgICAgIHRoaXMuc2hvd1Byb2ZpbGVQb3B1cCA9IHRydWU7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcG9wb3ZlciA9IGF3YWl0IHRoaXMucG9wdXAuY3JlYXRlKHtcbiAgICAgIGNvbXBvbmVudDogTXlQcm9maWxlUGFnZSxcbiAgICAgIHRyYW5zbHVjZW50OiB0cnVlLFxuICAgICAgYmFja2Ryb3BEaXNtaXNzOiB0cnVlLFxuICAgICAgZXZlbnQ6IGV2ZW50LFxuICAgICAgY3NzQ2xhc3M6ICdoZWFkZXItcG9wb3ZlcidcbiAgICB9KTtcblxuICAgIHJldHVybiBhd2FpdCBwb3BvdmVyLnByZXNlbnQoKTtcbiAgfVxuXG4gIGFzeW5jIHByZXNlbnRNeU5vdGlmaWNhdGlvblBvcG92ZXIoZXZlbnQpIHtcbiAgICBjb25zdCBwb3BvdmVyID0gYXdhaXQgdGhpcy5wb3B1cC5jcmVhdGUoe1xuICAgICAgY29tcG9uZW50OiBNeU5vdGlmaWNhdGlvbnNQYWdlLFxuICAgICAgdHJhbnNsdWNlbnQ6IHRydWUsXG4gICAgICBiYWNrZHJvcERpc21pc3M6IHRydWUsXG4gICAgICBldmVudDogZXZlbnQsXG4gICAgICBjc3NDbGFzczogJ2hlYWRlci1wb3BvdmVyJ1xuICAgIH0pO1xuXG4gICAgcG9wb3Zlci5vbkRpZERpc21pc3MoKS50aGVuKCgpID0+IHtcbiAgICAgIHRoaXMubnMudXBkYXRlUmVhZEZsYWcoKTtcbiAgICB9KVxuXG4gICAgcmV0dXJuIGF3YWl0IHBvcG92ZXIucHJlc2VudCgpO1xuICB9XG5cbiAgbG9nb3V0KCl7XG4gICAgdGhpcy5uYXYubmF2aWdhdGVSb290KCcvbGFuZGluZycpO1xuICAgIHRoaXMubHMubG9nb3V0KCk7XG4gIH1cblxuICBvcGVuV2Vla2xpZXMoKSB7XG4gICAgY29uc3QgcGF0aCA9ICh0aGlzLmxlZ2FjeU1lbnUgPT0gJ3RydWUnICYmIHRoaXMuaXNNUygpICYmIHRoaXMuaW50ZXJpbUhvbWVQYWdlID09ICdmYWxzZScpXG4gICAgICA/ICcvdjIvd2Vla2xpZXMnXG4gICAgICA6ICcvdjMvd2Vla2xpZXMnO1xuICAgIHRoaXMuci5uYXZpZ2F0ZUJ5VXJsKHBhdGgpO1xuICB9XG5cbiAgb3BlbkF1ZGl0RGFzaGJvYXJkKCl7XG4gICAgaWYodGhpcy5jb250ZXh0PT0nYXVkaXQnKXtcbiAgICAgIGlmKHRoaXMubHMuaXNUYXhBdWRpdFN1cGVydmlzb3IoKSB8fCB0aGlzLmxzLmlzVGF4QXVkaXREaXJlY3RvcigpKXtcbiAgICAgICAgdGhpcy5vcGVuUGFnZSgnYXVkaXQnLCcvZGFzaGJvYXJkJyk7XG4gICAgICB9IGVsc2UgaWYodGhpcy5scy5pc1RheEF1ZGl0QXVkaXRvcigpKXtcbiAgICAgICAgdGhpcy5vcGVuUGFnZSgnYXVkaXQnLCcvbXlxJyk7XG4gICAgICB9IGVsc2UgaWYodGhpcy5scy5pc0VtcGxveWVyKCkpe1xuICAgICAgICB0aGlzLm9wZW5QYWdlKCdhdWRpdCcsJy8nKTsgLy9BZGQgdGhlIGFjdHVhbCB1cmwgZm9yIGVtcGxveWVyIGF1ZGl0IGRhc2hib2FyZFxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9wZW5BdWRpdG9yV29ya0xpc3QoKXtcbiAgICB0aGlzLm9wZW5QYWdlKCdhdWRpdCcsJy9hdWRpdG9yLXdvcmstbGlzdCcpO1xuICB9XG5cbiAgb3BlblVwbG9hZERvY3VtZW50cygpe1xuICAgIHRoaXMub3BlblBhZ2UoJ2F1ZGl0JywnL3VwbG9hZC1kb2N1bWVudHMnKTtcbiAgfVxuXG4gIG9wZW5TdXBlcnZpc29yTXlRKCl7XG4gICAgaWYodGhpcy5scy5pc1RheEF1ZGl0U3VwZXJ2aXNvcigpIHx8IHRoaXMubHMuaXNUYXhBdWRpdEF1ZGl0b3IoKSB8fCB0aGlzLmxzLmlzVGF4QXVkaXREaXJlY3RvcigpKXtcbiAgICAgIHRoaXMub3BlblBhZ2UoJ2F1ZGl0JywnL215cScpO1xuICAgIH1cbiAgfVxuXG4gIG9wZW5TdXBlcnZpc29ySW5xdWlyeSgpe1xuICAgIHRoaXMub3BlblBhZ2UoJ2F1ZGl0JywnL2lucXVpcnknKTtcbiAgfVxuXG4gIG9wZW5TdXBlcnZpc29yUmVmZXJyYWxzKCl7XG4gICAgaWYodGhpcy5scy5pc1RheEF1ZGl0U3VwZXJ2aXNvcigpIHx8IHRoaXMubHMuaXNUYXhBdWRpdERpcmVjdG9yKCkpe1xuICAgICAgdGhpcy5vcGVuUGFnZSgnYXVkaXQnLCcvcmVmZXJyYWxzJyk7XG4gICAgfSBlbHNlIGlmKHRoaXMubHMuaXNUYXhBdWRpdEF1ZGl0b3IoKSB8fCB0aGlzLmxzLmlzVHBhKCkpey8vQWdlbmN5IEVtcGxveWVlIERlZmF1bHQgLSBjaGVjayByb2xlIHdpdGggY2lqdVxuICAgICAgdGhpcy5vcGVuUGFnZSgnYXVkaXQnLCcvbmV3LXJlZmVycmFsJyk7XG4gICAgfVxuICB9XG5cbiAgb3BlblN1cGVydmlzb3JDb25maWcoKXtcbiAgICB0aGlzLm9wZW5QYWdlKCdhdWRpdCcsJy9jb25maWcnKTtcbiAgfVxuXG4gIG9wZW5TdXBlcnZpc29yQW5hbHl0aWNzKCl7XG4gICAgaWYodGhpcy5scy5pc1RheEF1ZGl0U3VwZXJ2aXNvcigpIHx8IHRoaXMubHMuaXNUYXhBdWRpdERpcmVjdG9yKCkpe1xuICAgICAgdGhpcy5vcGVuUGFnZSgnYXVkaXQnLCcvYW5hbHl0aWNzJyk7XG4gICAgfVxuICAgIGlmKHRoaXMubHMuaXNUYXhBdWRpdEF1ZGl0b3IoKSl7IFxuICAgICAgdGhpcy5vcGVuUGFnZSgnYXVkaXQnLCcvYXVkaXRvci1hbmFseXRpY3MnKTtcbiAgICB9XG4gIH1cblxuICBvcGVuU3VwZXJ2aXNvckFzc2lnbigpe1xuICAgIHRoaXMub3BlblBhZ2UoJ2F1ZGl0JywnL2Fzc2lnbicpO1xuICB9XG5cbiAgb3BlblN1cGVydmlzb3JUZWFtKCl7XG4gICAgdGhpcy5vcGVuUGFnZSgnYXVkaXQnLCcvdGVhbScpO1xuICB9XG5cbiAgb3BlblF1ZXN0aW9ubmFpcmUoKXtcbiAgICBpZih0aGlzLmxzLmlzVGF4QXVkaXRBdWRpdG9yKCkpe1xuICAgICAgdGhpcy5vcGVuUGFnZSgnYXVkaXQnLCcvYXVkaXRvci1xdWVzdGlvbm5haXJlJyk7XG4gICAgfSBlbHNlIGlmKHRoaXMubHMuaXNFbXBsb3llcigpKXtcbiAgICAgIHRoaXMub3BlblBhZ2UoJ2F1ZGl0JywnL2F1ZGl0b3ItcXVlc3Rpb25uYWlyZS1mb3JtJyk7Ly9BZGQgdGhlIGFjdHVhbCB1cmwgZm9yIGVtcGxveWVyIHF1ZXN0aW9ubmFpcmVcbiAgICB9XG4gIH1cblxuICBvcGVuSG9tZSgpe1xuICAgIC8vdGhpcy5uYXYubmF2aWdhdGVSb290KFwiL3dlbGNvbWVcIik7XG4gICAgaWYodGhpcy5scy5pc0NsYWltYW50KCkpe1xuICAgICAgdGhpcy51dGlsLm9wZW5QYWdlQnlDb250ZXh0Um9vdCh0aGlzLnV0aWwuZ2V0Q2xhaW1hbnRBcHBDb250ZXh0Um9vdCgpLCBcIndlbGNvbWVcIiwgdGhpcy5uYXYpOyBcbiAgICB9IGVsc2UgaWYodGhpcy5scy5pc0NzcigpKXtcbiAgICAgIHRoaXMudXRpbC5vcGVuUGFnZUJ5Q29udGV4dFJvb3QodGhpcy51dGlsLmdldFNlY3VyaXR5QXBwQ29udGV4dFJvb3QoKSxcIndlbGNvbWVcIiwgdGhpcy5uYXYpOyBcbiAgICB9IGVsc2UgaWYodGhpcy5scy5pc0VtcGxveWVyKCkpe1xuICAgICAgdGhpcy5vcGVuUGFnZSgnYXVkaXQnLCcvJyk7Ly9BZGQgdGhlIGFjdHVhbCB1cmwgZm9yIGVtcGxveWVyIHF1ZXN0aW9ubmFpcmVcbiAgICB9IFxuICAgIGVsc2Uge1xuICAgICAgdGhpcy5uYXYubmF2aWdhdGVSb290KFwiL3dlbGNvbWVcIik7XG4gICAgfVxuICAgIHRoaXMudXRpbC5oaWRlTG9hZGVyKCk7XG4gIH1cblxuICBzZWFyY2goZXZlbnQpIHtcbiAgICBsZXQgZG9TZWFyY2ggPSBmYWxzZTtcbiAgICBsZXQgY2xhaW1hbnRTZWFyY2ggPSBuZXcgQ2xhaW1hbnRNb2RlbCgpO1xuICAgIGxldCBxdWVyeSA9IGV2ZW50LnF1ZXJ5ICsgJyc7XG4gICAgaWYocXVlcnkuaW5jbHVkZXMoXCIgXCIpKXtcbiAgICAgIGxldCBmTmFtZSA9IHF1ZXJ5LnNwbGl0KFwiIFwiKVswXTtcbiAgICAgIGxldCBsTmFtZSA9IHF1ZXJ5LnNwbGl0KFwiIFwiKVsxXTtcbiAgICAgIGNsYWltYW50U2VhcmNoLmZpcnN0TmFtZSA9IGZOYW1lO1xuICAgICAgY2xhaW1hbnRTZWFyY2gubGFzdE5hbWUgPSBsTmFtZTtcbiAgICAgIGRvU2VhcmNoID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZihxdWVyeS5sZW5ndGggPT0gOSAmJiB0aGlzLmlzTnVtYmVyKHF1ZXJ5KSAmJiAhZG9TZWFyY2gpe1xuICAgICAgY2xhaW1hbnRTZWFyY2guc3NuID0gcXVlcnk7XG4gICAgICBkb1NlYXJjaCA9IHRydWU7XG4gICAgfWVsc2UgaWYoIXRoaXMuaXNOdW1iZXIocXVlcnkpICYmICFkb1NlYXJjaCl7XG4gICAgICBjbGFpbWFudFNlYXJjaC51c2VySWQgPSBxdWVyeTtcbiAgICAgIGRvU2VhcmNoID0gdHJ1ZTtcbiAgICB9XG4gICAgXG4gICAgaWYoZG9TZWFyY2gpe1xuICAgICAgdGhpcy5jcy5zZWFyY2goY2xhaW1hbnRTZWFyY2gpLnN1YnNjcmliZShkYXRhID0+IHtcbiAgICAgICAgICB0aGlzLnJlc3VsdHMgPSBkYXRhO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpc051bWJlcihudW0pe1xuICAgIHJldHVybiAhaXNOYU4obnVtKTtcbiAgfVxuXG4gIG9uU2VsZWN0QWN0aW9uKGV2ZW50IDogQXV0b0NvbXBsZXRlU2VsZWN0RXZlbnQpe1xuICAgIHRoaXMucmVzdWx0cyA9IG51bGw7XG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gbnVsbDtcbiAgICB0aGlzLmNzLmdldENsYWltYW50KCkubmV4dChldmVudC52YWx1ZSk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnV0aWwub3BlblBhZ2VCeUNvbnRleHRSb290KHRoaXMudXRpbC5nZXRTZWN1cml0eUFwcENvbnRleHRSb290KCksXCJyZXNldC1wYXNzd29yZFwiLCB0aGlzLm5hdik7XG4gICAgICAvL3RoaXMubmF2Lm5hdmlnYXRlRm9yd2FyZCgnL3Jlc2V0LXBhc3N3b3JkJyk7XG4gICAgfSwgNTAwKVxuICAgIFxuICB9XG5cbiAgb3BlbkJlbmVmaXRzQXBwKCl7XG4gICAgbGV0IHVzZXJNb2RlbCA9IHRoaXMubHMuZ2V0VXNlcigpXG4gICAgdGhpcy51dGlsLnNob3dMb2FkZXIoKTtcbiAgICB3aW5kb3cub3BlbihgJHtMaWJDb25zdGFudHMuYmVuZWZpdHNVcmxFeHRlcm5hbH0vZmFjZXMvdmlydHVhbC9jb250ZXh0c3dpdGNoLnhodG1sP2E9JHt1c2VyTW9kZWwuYWNjZXNzX3Rva2VufSZyPSR7dXNlck1vZGVsLnJlZnJlc2hfdG9rZW59JnY9MjI5OWAsICdfc2VsZicpO1xuICB9XG5cbiAgb3BlblBhZ2UoY29udGV4dFJvb3QsIHVyaSl7XG4gICAgbGV0IGN1cnJlbnRDb250ZXh0Um9vdCA9IHRoaXMudXRpbC5nZXRDb250ZXh0Um9vdCgpO1xuICAgIGxldCB0YXJnZXQgPSBgLyR7Y29udGV4dFJvb3R9YDtcblxuICAgIGlmKGN1cnJlbnRDb250ZXh0Um9vdCA9PSB0YXJnZXQpe1xuICAgICAgdGhpcy5uYXYubmF2aWdhdGVSb290KGAvJHt1cml9YCk7XG4gICAgfWVsc2V7XG4gICAgICB0aGlzLnV0aWwub3BlblBhZ2VCeUNvbnRleHRSb290KHRhcmdldCwgdXJpKTtcbiAgICB9XG4gIH1cblxuICBnZXRDbGFzcyhuYW1lKXtcbiAgICBsZXQgY3VycmVudFJvdXRlID0gdGhpcy5yLnVybC5yZXBsYWNlKCcvJywgJycpO1xuICAgIGNvbnNvbGUubG9nKGN1cnJlbnRSb3V0ZSwgbmFtZSwgY3VycmVudFJvdXRlID09IG5hbWUpO1xuICAgIHJldHVybiBjdXJyZW50Um91dGUgPT0gbmFtZSA/ICdoZWFkZXItYnV0dG9uJyA6ICcnO1xuICB9XG5cbiAgb3BlbkNvbnRleHRIZWxwKCl7XG5cbiAgfVxuXG4gIGFzeW5jIGNoYW5nZUxhbmd1YWdlKGV2ZW50KSB7XG4gICAgXG4gIH1cbn1cbiIsIjxtYXQtcHJvZ3Jlc3MtYmFyIG1vZGU9XCJkZXRlcm1pbmF0ZVwiIFt2YWx1ZV09XCJ1dGlsLmxvYWRlci52YWx1ZSQgfCBhc3luY1wiICpuZ0lmPVwiKHV0aWwubG9hZGVyLnZhbHVlJCB8IGFzeW5jKSAhPSAwXCI+XHJcbjwvbWF0LXByb2dyZXNzLWJhcj5cclxuPGlvbi10b29sYmFyPlxyXG4gICAgPGlvbi1idXR0b25zIHNsb3Q9XCJzdGFydFwiIHN0eWxlPVwibWFyZ2luLWxlZnQ6IC01cHg7XCI+XHJcbiAgICAgICAgPGlvbi1tZW51LWJ1dHRvbiBhdXRvSGlkZT1cImZhbHNlXCIgcFRvb2x0aXA9XCJNZW51XCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCJcclxuICAgICAgICAgICAgKm5nSWY9XCJscy5pc0xvZ2dlZEluKClcIiBbbmdDbGFzc109XCJsZWdhY3lNZW51ID09ICdmYWxzZScgJiYgbHMuaXNDbGFpbWFudCgpID8gJ2hpZGUteGwgaGlkZS1sZycgOiAnJ1wiPjwvaW9uLW1lbnUtYnV0dG9uPlxyXG4gICAgPC9pb24tYnV0dG9ucz5cclxuICAgIDxpb24tYnV0dG9ucyBzbG90PVwic3RhcnRcIiBbbmdDbGFzc109XCJkaXNwbGF5TG9nbyA/ICdoZWFkZXJfYnV0dG9uX3doaXRlJyA6ICdoZWFkZXJfYnV0dG9uIGhpZGUteHMgaGlkZS1tZCdcIiAoY2xpY2spPVwib3BlbkF1ZGl0RGFzaGJvYXJkKClcIj5cclxuICAgICAgICA8aW1nIGFsdD1cImxvZ29cIiBwVG9vbHRpcD1cInt7J1JlRW1wbG95TVMgTG9nbycgfCB0cmFuc2xhdGV9fVwiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiXHJcbiAgICAgICAgIHNyYz1cImFzc2V0cy9pY29uL1JlRW1wbG95e3t1dGlsLmdldFN0YXRlKCl9fS5zdmdcIiBbbmdDbGFzc109XCJkaXNwbGF5TG9nbyA/ICdoZWFkZXJfbG9nbycgOiAnaGVhZGVyX2xvZ28gaGlkZS14cyBoaWRlLW1kJ1wiLz5cclxuICAgIDwvaW9uLWJ1dHRvbnM+XHJcbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgICA8aW9uLWJ1dHRvbnMgc2xvdD1cInN0YXJ0XCIgKm5nSWY9XCJscy5pc0xvZ2dlZEluKClcIj5cclxuICAgICAgICA8aW9uLWJ1dHRvbiAoY2xpY2spPVwib3BlbkhvbWUoKVwiIHBUb29sdGlwPVwiSG9tZVwiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiIFtuZ0NsYXNzXT1cInIudXJsLnJlcGxhY2UoJy8nLCAnJykuaW5jbHVkZXMoJ3dlbGNvbWUnKSA/ICdoZWFkZXItYnV0dG9uJyA6ICcnXCIgKm5nSWY9XCJ0aGlzLmNvbnRleHQhPSdhdWRpdCcgfHwgbHMuaXNFbXBsb3llcigpXCI+SG9tZTwvaW9uLWJ1dHRvbj5cclxuXHJcbiAgICAgICAgPGlvbi1idXR0b24gaWQ9XCJidG5GaWxlV2Vla2xpZXNcIiBwVG9vbHRpcD1cInt7J2hlYWRlci53ZWVrbHkudG9vbHRpcCcgfCB0cmFuc2xhdGV9fVwiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiIFtuZ0NsYXNzXT1cInIudXJsLnJlcGxhY2UoJy8nLCAnJykuaW5jbHVkZXMoJ3dlZWtsaWVzJykgPyAnaGVhZGVyLWJ1dHRvbicgOiAnJ1wiICpuZ0lmPVwibHMuaXNDbGFpbWFudCgpICYmIGxlZ2FjeU1lbnUgPT0gJ2ZhbHNlJ1wiIChjbGljayk9XCJvcGVuV2Vla2xpZXMoKVwiIGNsYXNzPVwiaGlkZS14cyBoaWRlLW1kXCI+e3tsZWdhY3lNZW51ID09ICd0cnVlJyA/ICdXZWVrbHknIDogJ1dlZWtseSd9fTwvaW9uLWJ1dHRvbj5cclxuICAgICAgICA8aW9uLWJ1dHRvbiBpZD1cImJ0bkZpbGVXZWVrbGllc1wiIHBUb29sdGlwPVwie3snaGVhZGVyLndlZWtseS50b29sdGlwJyB8IHRyYW5zbGF0ZX19XCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCIgW25nQ2xhc3NdPVwici51cmwucmVwbGFjZSgnLycsICcnKS5pbmNsdWRlcygnd2Vla2xpZXMnKSA/ICdoZWFkZXItYnV0dG9uJyA6ICcnXCIgKm5nSWY9XCJscy5pc0NsYWltYW50KCkgJiYgbGVnYWN5TWVudSA9PSAndHJ1ZScgJiYgIXV0aWwuaXNTdGF0ZSgnTUUnKVwiIChjbGljayk9XCJvcGVuV2Vla2xpZXMoKVwiPnt7bGVnYWN5TWVudSA9PSAndHJ1ZScgPyAnV2Vla2x5JyA6ICdXZWVrbHknfX08L2lvbi1idXR0b24+XHJcbiAgICAgICAgPGlvbi1idXR0b24gaWQ9XCJidG5GaWxlV2Vla2xpZXNcIiBwVG9vbHRpcD1cInt7J2hlYWRlci53ZWVrbHkudG9vbHRpcCcgfCB0cmFuc2xhdGV9fVwiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiIFtuZ0NsYXNzXT1cInIudXJsLnJlcGxhY2UoJy8nLCAnJykuaW5jbHVkZXMoJ3dlZWtsaWVzJykgPyAnaGVhZGVyLWJ1dHRvbicgOiAnJ1wiICpuZ0lmPVwibHMuaXNDbGFpbWFudCgpICYmIGxlZ2FjeU1lbnUgPT0gJ3RydWUnICYmIHV0aWwuaXNTdGF0ZSgnTUUnKVwiIChjbGljayk9XCJvcGVuV2Vla2xpZXMoKVwiPnt7bGVnYWN5TWVudSA9PSAndHJ1ZScgPyAnV2Vla2x5IENsYWltJyA6ICdXZWVrbHknfX08L2lvbi1idXR0b24+XHJcbiAgICAgICAgXHJcbiAgICAgICBcclxuICAgICAgICA8aW9uLWJ1dHRvbiBwVG9vbHRpcD1cIkhpc3RvcnlcIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiBbbmdDbGFzc109XCJyLnVybC5yZXBsYWNlKCcvJywgJycpID09ICdoaXN0b3J5JyA/ICdoZWFkZXItYnV0dG9uJyA6ICcnXCIgKm5nSWY9XCJscy5pc0NsYWltYW50KCkgJiYgbGVnYWN5TWVudSA9PSAnZmFsc2UnICYmIGludGVyaW1Ib21lUGFnZSA9PSAnZmFsc2UnXCIgKGNsaWNrKT1cIm9wZW5QYWdlKCdjcCcsICdoaXN0b3J5JylcIiBjbGFzcz1cImhpZGUteHMgaGlkZS1tZFwiPkhpc3Rvcnk8L2lvbi1idXR0b24+XHJcbiAgICBcclxuICAgICAgICA8aW9uLWJ1dHRvbiBpZD1cImJ0bkF1ZGl0TXlRXCIgcFRvb2x0aXA9XCJNeVFcIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiBbbmdDbGFzc109XCJyLnVybC5yZXBsYWNlKCcvJywgJycpLmluY2x1ZGVzKCdteXEnKSA/ICdoZWFkZXItYnV0dG9uJyA6ICcnXCIgKm5nSWY9XCJ0aGlzLmNvbnRleHQ9PSdhdWRpdCcgJiYgKGxzLmlzVGF4QXVkaXRTdXBlcnZpc29yKCkgfHwgbHMuaXNUYXhBdWRpdEF1ZGl0b3IoKSB8fCBscy5pc1RheEF1ZGl0RGlyZWN0b3IoKSB8fCBscy5pc1RheEF1ZGl0RGlyZWN0b3IoKSlcIiAoY2xpY2spPVwib3BlblN1cGVydmlzb3JNeVEoKVwiPk15UTwvaW9uLWJ1dHRvbj5cclxuICAgICAgICA8aW9uLWJ1dHRvbiBpZD1cImJ0bkF1ZGl0RGFzaGJvYXJkXCIgcFRvb2x0aXA9XCJEYXNoYm9hcmRcIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiBbbmdDbGFzc109XCJyLnVybC5yZXBsYWNlKCcvJywgJycpLmluY2x1ZGVzKCdkYXNoYm9hcmQnKSA/ICdoZWFkZXItYnV0dG9uJyA6ICcnXCIgKm5nSWY9XCJ0aGlzLmNvbnRleHQ9PSdhdWRpdCcgJiYgKGxzLmlzVGF4QXVkaXRTdXBlcnZpc29yKCkgfHwgbHMuaXNFbXBsb3llcigpIHx8IGxzLmlzVGF4QXVkaXREaXJlY3RvcigpKVwiIChjbGljayk9XCJvcGVuQXVkaXREYXNoYm9hcmQoKVwiPkRhc2hib2FyZDwvaW9uLWJ1dHRvbj5cclxuICAgICAgICA8aW9uLWJ1dHRvbiBpZD1cImJ0bkF1ZGl0V29ya0xpc3RcIiBwVG9vbHRpcD1cIldvcmtMaXN0XCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCIgW25nQ2xhc3NdPVwici51cmwucmVwbGFjZSgnLycsICcnKS5pbmNsdWRlcygnYXVkaXRvci13b3JrLWxpc3QnKSA/ICdoZWFkZXItYnV0dG9uJyA6ICcnXCIgKm5nSWY9XCJ0aGlzLmNvbnRleHQ9PSdhdWRpdCcgJiYgbHMuaXNUYXhBdWRpdEF1ZGl0b3IoKVwiIChjbGljayk9XCJvcGVuQXVkaXRvcldvcmtMaXN0KClcIj5Xb3JrIExpc3Q8L2lvbi1idXR0b24+XHJcbiAgICAgICAgPGlvbi1idXR0b24gaWQ9XCJidG5BdWRpdElucXVpcnlcIiBwVG9vbHRpcD1cIklucXVpcnlcIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiBbbmdDbGFzc109XCJyLnVybC5yZXBsYWNlKCcvJywgJycpLmluY2x1ZGVzKCdpbnF1aXJ5JykgPyAnaGVhZGVyLWJ1dHRvbicgOiAnJ1wiICpuZ0lmPVwidGhpcy5jb250ZXh0PT0nYXVkaXQnICYmIChscy5pc1RheEF1ZGl0U3VwZXJ2aXNvcigpIHx8IGxzLmlzVGF4QXVkaXRBdWRpdG9yKCkgfHwgbHMuaXNUYXhBdWRpdERpcmVjdG9yKCkpXCIgKGNsaWNrKT1cIm9wZW5TdXBlcnZpc29ySW5xdWlyeSgpXCI+SW5xdWlyeTwvaW9uLWJ1dHRvbj5cclxuICAgICAgICA8aW9uLWJ1dHRvbiBpZD1cImJ0bkF1ZGl0VXBsb2FkRG9jdW1lbnRzXCIgcFRvb2x0aXA9XCJVcGxvYWQgRG9jdW1lbnRzXCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCIgW25nQ2xhc3NdPVwici51cmwucmVwbGFjZSgnLycsICcnKS5pbmNsdWRlcygndXBsb2FkLWRvY3VtZW50cycpID8gJ2hlYWRlci1idXR0b24nIDogJydcIiAqbmdJZj1cInRoaXMuY29udGV4dD09J2F1ZGl0JyAmJiBscy5pc0VtcGxveWVyKClcIiAoY2xpY2spPVwib3BlblVwbG9hZERvY3VtZW50cygpXCI+VXBsb2FkIERvY3VtZW50czwvaW9uLWJ1dHRvbj5cclxuICAgICAgICA8aW9uLWJ1dHRvbiBpZD1cImJ0bkF1ZGl0UXVlc3Rpb25uYWlyZVwiIHBUb29sdGlwPVwiUXVlc3Rpb25uYWlyZVwiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiIFtuZ0NsYXNzXT1cInIudXJsLnJlcGxhY2UoJy8nLCAnJykuaW5jbHVkZXMoJ2F1ZGl0b3ItcXVlc3Rpb25uYWlyZScpID8gJ2hlYWRlci1idXR0b24nIDogJydcIiAqbmdJZj1cInRoaXMuY29udGV4dD09J2F1ZGl0JyAmJiAobHMuaXNUYXhBdWRpdEF1ZGl0b3IoKSB8fCBscy5pc0VtcGxveWVyKCkpXCIgKGNsaWNrKT1cIm9wZW5RdWVzdGlvbm5haXJlKClcIj5RdWVzdGlvbm5haXJlPC9pb24tYnV0dG9uPlxyXG4gICAgICAgIDxpb24tYnV0dG9uIGlkPVwiYnRuQXVkaXRSZWZlcnJhbHNcIiBwVG9vbHRpcD1cIlJlZmVycmFsc1wiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiIFtuZ0NsYXNzXT1cInIudXJsLnJlcGxhY2UoJy8nLCAnJykuaW5jbHVkZXMoJ3JlZmVycmFscycpID8gJ2hlYWRlci1idXR0b24nIDogJydcIiAqbmdJZj1cInRoaXMuY29udGV4dD09J2F1ZGl0JyAmJiAobHMuaXNUYXhBdWRpdFN1cGVydmlzb3IoKSB8fCBscy5pc1RheEF1ZGl0QXVkaXRvcigpIHx8IGxzLmlzVGF4QXVkaXREaXJlY3RvcigpKVwiIChjbGljayk9XCJvcGVuU3VwZXJ2aXNvclJlZmVycmFscygpXCI+UmVmZXJyYWxzPC9pb24tYnV0dG9uPlxyXG4gICAgICAgIDxpb24tYnV0dG9uIGlkPVwiYnRuQXVkaXRBc3NpZ25cIiBwVG9vbHRpcD1cIkFzc2lnblwiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiIFtuZ0NsYXNzXT1cInIudXJsLnJlcGxhY2UoJy8nLCAnJykuaW5jbHVkZXMoJ2Fzc2lnbicpID8gJ2hlYWRlci1idXR0b24nIDogJydcIiAqbmdJZj1cInRoaXMuY29udGV4dD09J2F1ZGl0JyAmJiBscy5pc1RheEF1ZGl0U3VwZXJ2aXNvcigpXCIgKGNsaWNrKT1cIm9wZW5TdXBlcnZpc29yQXNzaWduKClcIj5Bc3NpZ248L2lvbi1idXR0b24+XHJcbiAgICAgICAgPGlvbi1idXR0b24gaWQ9XCJidG5BdWRpdFRlYW1cIiBwVG9vbHRpcD1cIlRlYW1cIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiBbbmdDbGFzc109XCJyLnVybC5yZXBsYWNlKCcvJywgJycpLmluY2x1ZGVzKCd0ZWFtJykgPyAnaGVhZGVyLWJ1dHRvbicgOiAnJ1wiICpuZ0lmPVwidGhpcy5jb250ZXh0PT0nYXVkaXQnICYmIGxzLmlzVGF4QXVkaXRTdXBlcnZpc29yKClcIiAoY2xpY2spPVwib3BlblN1cGVydmlzb3JUZWFtKClcIj5UZWFtPC9pb24tYnV0dG9uPlxyXG4gICAgICAgIDxpb24tYnV0dG9uIGlkPVwiYnRuQXVkaXRDb25maWdcIiBwVG9vbHRpcD1cIkNvbmZpZ1wiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiIFtuZ0NsYXNzXT1cInIudXJsLnJlcGxhY2UoJy8nLCAnJykuaW5jbHVkZXMoJ2NvbmZpZycpID8gJ2hlYWRlci1idXR0b24nIDogJydcIiAqbmdJZj1cInRoaXMuY29udGV4dD09J2F1ZGl0JyAmJiAobHMuaXNUYXhBdWRpdFN1cGVydmlzb3IoKSB8fCBscy5pc1RheEF1ZGl0RGlyZWN0b3IoKSlcIiAoY2xpY2spPVwib3BlblN1cGVydmlzb3JDb25maWcoKVwiPkNvbmZpZzwvaW9uLWJ1dHRvbj5cclxuICAgICAgICA8aW9uLWJ1dHRvbiBpZD1cImJ0bkF1ZGl0QW5hbHl0aWNzXCIgcFRvb2x0aXA9XCJBbmFseXRpY3NcIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiBbbmdDbGFzc109XCJyLnVybC5yZXBsYWNlKCcvJywgJycpLmluY2x1ZGVzKCdhbmFseXRpY3MnKSA/ICdoZWFkZXItYnV0dG9uJyA6ICcnXCIgKm5nSWY9XCJ0aGlzLmNvbnRleHQ9PSdhdWRpdCcgJiYgKGxzLmlzVGF4QXVkaXRTdXBlcnZpc29yKCkgfHwgbHMuaXNUYXhBdWRpdEF1ZGl0b3IoKSB8fCBscy5pc1RheEF1ZGl0RGlyZWN0b3IoKSlcIiAoY2xpY2spPVwib3BlblN1cGVydmlzb3JBbmFseXRpY3MoKVwiPkFuYWx5dGljczwvaW9uLWJ1dHRvbj5cclxuICAgIDwvaW9uLWJ1dHRvbnM+XHJcblxyXG4gICAgXHJcbiAgICA8ZGl2IGNsYXNzPVwidG9vbGJhci1jb250ZW50IGhpZGUteHNcIiAqbmdJZj1cImxzLmlzTG9nZ2VkSW4oKSAmJiBscy5pc0NzcigpICYmIHRoaXMuY29udGV4dCAhPSdhdWRpdCcgJiYgY29udGV4dFJvb3QgPT09J3NzJ1wiPlxyXG4gICAgICAgIDxwLWF1dG9Db21wbGV0ZSBhcHBlbmRUbz1cImJvZHlcIiBbKG5nTW9kZWwpXT1cInNlYXJjaFRleHRcIiBbc3VnZ2VzdGlvbnNdPVwicmVzdWx0c1wiXHJcbiAgICAgICAgICAgIChjb21wbGV0ZU1ldGhvZCk9XCJzZWFyY2goJGV2ZW50KVwiIHBsYWNlaG9sZGVyPVwiU2VhcmNoIENsYWltYW50c1wiIChvblNlbGVjdCk9XCJvblNlbGVjdEFjdGlvbigkZXZlbnQpXCJcclxuICAgICAgICAgICAgZW1wdHlNZXNzYWdlPVwiTm8gUmVzdWx0cyBGb3VuZC5cIiBzaXplPVwiMjVcIj5cclxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIGxldC11c2VyIHBUZW1wbGF0ZT1cIml0ZW1cIj5cclxuICAgICAgICAgICAgICAgIDxpb24tcm93IGNsYXNzPVwiLmlvbi13cmFwXCIgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpb24tY29sIHNpemUtYXV0bz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlvbi10ZXh0Pnt7dXNlci5maXJzdE5hbWUgfCBwcm9wZXJDYXNlfX0ge3t1c2VyLmxhc3ROYW1lIHwgcHJvcGVyQ2FzZX19PC9pb24tdGV4dD5cclxuICAgICAgICAgICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlvbi1jb2wgc2l6ZS1hdXRvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW9uLXRleHQ+e3t1c2VyLnVzZXJJZH19PC9pb24tdGV4dD5cclxuICAgICAgICAgICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlvbi1jb2wgc2l6ZS1hdXRvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW9uLXRleHQ+e3t1dGlsLm1hc2tTc24odXNlci5zc24pfX08L2lvbi10ZXh0PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgICAgICAgIDwvaW9uLXJvdz5cclxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8L3AtYXV0b0NvbXBsZXRlPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8aW9uLWJ1dHRvbnMgc2xvdD1cImVuZFwiICpuZ0lmPVwibHMuaXNMb2dnZWRJbigpXCIgPlxyXG4gICAgICAgIDxpb24tYnV0dG9uIChjbGljayk9XCJwcmVzZW50TXlQcm9maWxlUG9wb3ZlcigkZXZlbnQpXCIgcFRvb2x0aXA9XCJBY2NvdW50XCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCIgW25nQ2xhc3NdPVwibGVnYWN5TWVudSA9PSAnZmFsc2UnICYmIGxzLmlzQ2xhaW1hbnQoKSAmJiBzaG93UHJvZmlsZVBvcHVwID8gJ2hpZGUteHMgaGlkZS1tZCBoZWFkZXItYnV0dG9uJyA6IChsZWdhY3lNZW51ID09ICdmYWxzZScgJiYgbHMuaXNDbGFpbWFudCgpID8gJ2hpZGUteHMgaGlkZS1tZCcgOiAnJylcIj5cclxuICAgICAgICAgICAgPGlvbi10aXRsZSBzdHlsZT1cImZvbnQtc2l6ZTogMjBweDsgcGFkZGluZzogMHB4O1wiIGNsYXNzPVwiaGlkZS14c1wiPnt7bHMuZ2V0RnVsbE5hbWUoKSB8IHByb3BlckNhc2V9fTwvaW9uLXRpdGxlPlxyXG4gICAgICAgICAgICA8aW9uLWljb24gc2xvdD1cImVuZFwiIG5hbWU9XCJwZXJzb24tY2lyY2xlLW91dGxpbmVcIj48L2lvbi1pY29uPlxyXG4gICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgICA8aW9uLWJ1dHRvbiAoY2xpY2spPVwib3BlblBhZ2UoJ2NwJywgJ2RvY3VtZW50cycpXCIgcFRvb2x0aXA9XCJOb3RpY2VzXCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCIgKm5nSWY9XCIhbHMuaXNDc3IoKSAmJiBsZWdhY3lNZW51ID09ICdmYWxzZScgJiYgdXRpbC5pc1N0YXRlKCdNUycpXCIgW25nQ2xhc3NdPVwici51cmwucmVwbGFjZSgnLycsICcnKSA9PSAnZG9jdW1lbnRzJyA/ICdoZWFkZXItYnV0dG9uIGhpZGUteHMgaGlkZS1tZCcgOiAnaGlkZS14cyBoaWRlLW1kJ1wiPlxyXG4gICAgICAgICAgICA8aSBjbGFzcz0ncGkgcGktZmlsZSBmb250LWJvbGQnIHN0eWxlPVwiZm9udC1zaXplOiAxLjNyZW07ICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XCI+PC9pPlxyXG4gICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgICA8aW9uLWJ1dHRvbiAoY2xpY2spPVwib3BlblBhZ2UoJ2NwJywgJ2RvY3VtZW50cycpXCIgcFRvb2x0aXA9XCJOb3RpY2VzXCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCIgKm5nSWY9XCIhbHMuaXNDc3IoKSAmJiBsZWdhY3lNZW51ID09ICd0cnVlJyAmJiB1dGlsLmlzU3RhdGUoJ01TJylcIj5cclxuICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJkb2N1bWVudC10ZXh0LW91dGxpbmVcIj48L2lvbi1pY29uPlxyXG4gICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgICA8aW9uLWJ1dHRvbiAoY2xpY2spPVwib3BlblBhZ2UoJ2NwJywgJ2RvY3VtZW50cycpXCIgcFRvb2x0aXA9XCJDb3JyZXNwb25kZW5jZXNcIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiAqbmdJZj1cIiFscy5pc0NzcigpICYmIGxlZ2FjeU1lbnUgPT0gJ2ZhbHNlJyAmJiB1dGlsLmlzU3RhdGUoJ01FJylcIiBbbmdDbGFzc109XCJyLnVybC5yZXBsYWNlKCcvJywgJycpID09ICdkb2N1bWVudHMnID8gJ2hlYWRlci1idXR0b24gaGlkZS14cyBoaWRlLW1kJyA6ICdoaWRlLXhzIGhpZGUtbWQnXCI+XHJcbiAgICAgICAgICAgIDxpIGNsYXNzPSdwaSBwaS1maWxlIGZvbnQtYm9sZCcgc3R5bGU9XCJmb250LXNpemU6IDEuM3JlbTsgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcIj48L2k+XHJcbiAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgIDxpb24tYnV0dG9uIChjbGljayk9XCJvcGVuUGFnZSgnY3AnLCAnZG9jdW1lbnRzJylcIiBwVG9vbHRpcD1cIkNvcnJlc3BvbmRlbmNlc1wiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiICpuZ0lmPVwiIWxzLmlzQ3NyKCkgJiYgbGVnYWN5TWVudSA9PSAndHJ1ZScgJiYgdXRpbC5pc1N0YXRlKCdNRScpXCI+XHJcbiAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwiZG9jdW1lbnQtdGV4dC1vdXRsaW5lXCI+PC9pb24taWNvbj5cclxuICAgICAgICA8L2lvbi1idXR0b24+XHJcblxyXG4gICAgICAgIFxyXG4gICAgICAgIDwhLS0gPGlvbi1idXR0b24gKGNsaWNrKT1cInByZXNlbnRKb2JTZWFyY2hSZXN1bHRQb3B1cCgpXCIgcFRvb2x0aXA9XCJTaG93IGpvYiBzZWFyY2ggcmVzdWx0XCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCIgW25nQ2xhc3NdPVwibGVnYWN5TWVudSA9PSAnZmFsc2UnICYmIGxzLmlzQ2xhaW1hbnQoKSA/ICdoaWRlLXhzIGhpZGUtbWQnIDogJydcIiAqbmdJZj1cImxzLmlzQ2xhaW1hbnQoKSAmJiBsZWdhY3lNZW51ID09ICdmYWxzZScgJiYgdXRpbC5pc1N0YXRlKCdNUycpXCI+XHJcbiAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwiYnJpZWZjYXNlXCIgZmlsbD1cIm91dGxpbmVcIj48L2lvbi1pY29uPlxyXG4gICAgICAgIDwvaW9uLWJ1dHRvbj4gLS0+XHJcbiAgICAgICAgXHJcbiAgICAgICAgXHJcbiAgICAgICAgPGlvbi1idXR0b24gKGNsaWNrKT1cInByZXNlbnRNeU5vdGlmaWNhdGlvblBvcG92ZXIoJGV2ZW50KVwiIHBUb29sdGlwPVwiTm90aWZpY2F0aW9uXCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCJcclxuICAgICAgICAgICAgKm5nSWY9XCIhbnMuc2hvd05vdGlmaWNhdGlvbkxvYWRlciAmJiAhdXRpbC5pc1N0YXRlKCdNRScpXCIgW25nQ2xhc3NdPVwibGVnYWN5TWVudSA9PSAnZmFsc2UnICYmIGxzLmlzQ2xhaW1hbnQoKSA/ICdoaWRlLXhzIGhpZGUtbWQnIDogJydcIj5cclxuICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJub3RpZmljYXRpb25zLW91dGxpbmVcIj48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICA8aW9uLWJhZGdlIGNvbG9yPVwiZGFya1wiICpuZ0lmPVwibnMubm90aWZpY2F0aW9uQ291bnQuZ2V0VmFsdWUoKSA+IDBcIj5cclxuICAgICAgICAgICAgICAgIDxpb24tbGFiZWw+e3tucy5ub3RpZmljYXRpb25Db3VudC5nZXRWYWx1ZSgpfX08L2lvbi1sYWJlbD5cclxuICAgICAgICAgICAgPC9pb24tYmFkZ2U+XHJcbiAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgIDxpb24tc3Bpbm5lciBuYW1lPVwiY3Jlc2NlbnRcIiAqbmdJZj1cIm5zLnNob3dOb3RpZmljYXRpb25Mb2FkZXJcIj48L2lvbi1zcGlubmVyPlxyXG5cclxuICAgICAgICA8aW9uLWJ1dHRvbiAoY2xpY2spPVwidGhpcy5ocy5zaG93KClcIiBwVG9vbHRpcD1cIkhlbHBcIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiAqbmdJZj1cImxzLmlzQ2xhaW1hbnQoKSAmJiBsZWdhY3lNZW51ID09ICdmYWxzZScgJiYgKGhzLnNob3VsZERpc3BsYXlIZWxwQnV0dG9uKCkgfCBhc3luYylcIj5cclxuICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJoZWxwLWNpcmNsZS1vdXRsaW5lXCI+PC9pb24taWNvbj5cclxuICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICA8L2lvbi1idXR0b25zPlxyXG5cclxuICAgIDxpb24tYnV0dG9ucyBzbG90PVwic2Vjb25kYXJ5XCIgKm5nSWY9XCIhbHMuaXNMb2dnZWRJbigpICYmIGxzLmdldFVzZXIoKVwiPlxyXG4gICAgICAgIDxpb24tYnV0dG9uIChjbGljayk9XCJsb2dvdXQoKVwiIHBUb29sdGlwPVwiTG9nb3V0XCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCI+XHJcbiAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwibG9nLW91dC1zaGFycFwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgPC9pb24tYnV0dG9ucz5cclxuXHJcbiAgICA8aW9uLWJ1dHRvbnMgc2xvdD1cImVuZFwiICpuZ0lmPVwic2hvd0xhbmd1YWdlT3B0aW9uID09PSAndHJ1ZScgJiYgKCFscy5nZXRVc2VyKCkgJiYgbGVnYWN5TWVudSA9PSAnZmFsc2UnKVwiPlxyXG4gICAgICAgIDxwLW1lbnUgI21lbnUgW3BvcHVwXT1cInRydWVcIiBbbW9kZWxdPVwiaXRlbXNcIiBhcHBlbmRUbz1cImJvZHlcIj48L3AtbWVudT5cclxuICAgICAgICA8aW9uLWJ1dHRvbiAoY2xpY2spPVwibWVudS50b2dnbGUoJGV2ZW50KVwiIHBUb29sdGlwPVwiTGFuZ3VhZ2VcIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIj5cclxuICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwibGFuZ3VhZ2VcIiBzbG90PVwiZW5kXCI+PC9pb24taWNvbj5cclxuICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgIDwvaW9uLWJ1dHRvbnM+XHJcblxyXG48L2lvbi10b29sYmFyPlxyXG48aW9uLXRvb2xiYXIgY29sb3I9XCJsaWdodFwiIGlkPVwic2Vjb25kVG9vbGJhclwiICpuZ0lmPVwic2Vjb25kVG9vbGJhclwiPlxyXG4gICAgPGlvbi1idXR0b25zIHNsb3Q9XCJzdGFydFwiPlxyXG4gICAgICAgIDxpb24tYmFjay1idXR0b24gcFRvb2x0aXA9XCJCYWNrXCIgYWx0PVwiQmFja1wiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiIFtkZWZhdWx0SHJlZl09XCJiYWNrUGFnZSA/IGJhY2tQYWdlIDogJy93ZWxjb21lJ1wiPjwvaW9uLWJhY2stYnV0dG9uPlxyXG4gICAgICAgIDxpb24tdGl0bGUgY29sb3I9XCJwcmltYXJ5XCIgKm5nSWY9XCJ0aXRsZVwiIHN0eWxlPVwiZm9udC1zaXplOiAxOHB4XCI+e3t0aXRsZX19PC9pb24tdGl0bGU+XHJcbiAgICA8L2lvbi1idXR0b25zPlxyXG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgPGlvbi1idXR0b25zIHNsb3Q9XCJlbmRcIj5cclxuICAgICAgICA8aW9uLXRpdGxlIGNvbG9yPVwicHJpbWFyeVwiIHN0eWxlPVwiZm9udC1zaXplOiB4eC1zbWFsbDsgZmxvYXQ6IHJpZ2h0OyBwYWRkaW5nLXJpZ2h0OiA4cHg7XCIgKm5nSWY9XCJwYWdlSWRcIj5cclxuICAgICAgICAgICAge3twYWdlSWR9fTwvaW9uLXRpdGxlPlxyXG4gICAgPC9pb24tYnV0dG9ucz5cclxuPC9pb24tdG9vbGJhcj5cclxuPHAtdG9hc3Q+XHJcbiAgICA8bmctdGVtcGxhdGUgbGV0LW1lc3NhZ2UgcFRlbXBsYXRlPVwibWVzc2FnZVwiPlxyXG4gICAgICAgIDxpICpuZ0lmPVwibWVzc2FnZS5zZXZlcml0eSA9PT0gJ2Vycm9yJ1wiIGNsYXNzPVwicGkgcGktdGltZXMtY2lyY2xlXCIgc3R5bGU9XCJtYXJnaW4tcmlnaHQ6IDE0cHg7IGZvbnQtc2l6ZTogMzhweCBcIj48L2k+XHJcbiAgICAgICAgPGkgKm5nSWY9XCJtZXNzYWdlLnNldmVyaXR5ID09PSAnc3VjY2VzcydcIiBjbGFzcz1cInBpIHBpLWNoZWNrLWNpcmNsZVwiIHN0eWxlPVwibWFyZ2luLXJpZ2h0OiAxNHB4OyBmb250LXNpemU6IDM4cHggXCI+PC9pPlxyXG4gICAgICAgIDxpICpuZ0lmPVwibWVzc2FnZS5zZXZlcml0eSA9PT0gJ3dhcm4nXCIgY2xhc3M9XCJwaSBwaS1leGNsYW1hdGlvbi1jaXJjbGVcInN0eWxlPVwibWFyZ2luLXJpZ2h0OiAxNHB4OyBmb250LXNpemU6IDM4cHggXCI+PC9pPlxyXG4gICAgICAgIDxpICpuZ0lmPVwibWVzc2FnZS5zZXZlcml0eSA9PT0gJ2luZm8nXCIgY2xhc3M9XCJwaSBwaS1pbmZvLWNpcmNsZVwiIHN0eWxlPVwibWFyZ2luLXJpZ2h0OiAxNHB4OyBmb250LXNpemU6IDM4cHggXCI+PC9pPlxyXG5cclxuICAgICAgICA8ZGl2IFtpbm5lckhUTUxdPVwiJzxzdHJvbmcgc3R5bGU9XFwnZm9udC1zaXplOiAyMnB4O2ZvbnQtd2VpZ2h0OiBib2xkO1xcJz4nICsgbWVzc2FnZS5zdW1tYXJ5ICsgJzwvc3Ryb25nPjxicj48YnI+JyArIFxyXG4gICAgICAgICAgICAnPHNwYW4gc3R5bGU9XFwnZm9udC1zaXplOiAxOHB4O1xcJz4nICsgbWVzc2FnZS5kZXRhaWwgKyAnPC9zcGFuPidcIj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICA8L3AtdG9hc3Q+XHJcblxyXG48bmctY29udGFpbmVyICpuZ0lmPVwic2hvd1Byb2ZpbGVQb3B1cFwiPlxyXG4gICAgPGFwcC1wcm9maWxlICpuZ0lmPVwic2hvd1Byb2ZpbGVQb3B1cFwiIChvbkNhbmNlbCk9XCJzaG93UHJvZmlsZVBvcHVwID0gIXNob3dQcm9maWxlUG9wdXBcIj48L2FwcC1wcm9maWxlPlxyXG48L25nLWNvbnRhaW5lcj5cclxuXHJcbjxhcHAtam9iLXNlYXJjaC1yZXN1bHQtcGFnZSAqbmdJZj1cInNob3dqb2JTZWFyY2hSZXN1bHRQb3B1cFwiIChvbkNhbmNlbCk9XCJzaG93am9iU2VhcmNoUmVzdWx0UG9wdXAgPSAhc2hvd2pvYlNlYXJjaFJlc3VsdFBvcHVwXCI+PC9hcHAtam9iLXNlYXJjaC1yZXN1bHQtcGFnZT5cclxuXHJcblxyXG5cclxuIl19