general-library-union 2.4.23 → 2.4.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/src/app/core/componentes/breadcrumb/breadcrumb.component.mjs +7 -2
- package/esm2022/src/app/core/plantilla-general/plantilla-general.template.mjs +7 -2
- package/esm2022/src/app/core/servicios/auth.service.mjs +7 -2
- package/esm2022/src/app/core/servicios/error-interceptor.service.mjs +3 -2
- package/esm2022/src/app/core/servicios/guardias/publico.guard.mjs +7 -2
- package/esm2022/src/app/core/servicios/menu.service.mjs +80 -22
- package/esm2022/src/app/core/servicios/utils.service.mjs +18 -3
- package/esm2022/src/app/layout/app.breadcrumb.component.mjs +7 -2
- package/esm2022/src/app/layout/app.menu.component.mjs +19 -8
- package/esm2022/src/app/layout/app.menuitem.component.mjs +4 -3
- package/esm2022/src/app/layout/app.sidebar.component.mjs +4 -3
- package/esm2022/src/app/layout/app.topbar.component.mjs +16 -5
- package/esm2022/src/app/publico/pages/login/login.page.mjs +7 -2
- package/esm2022/src/app/publico/pages/not-found/not-found.page.mjs +7 -3
- package/esm2022/src/app/publico/pages/seleccion-rol/seleccion-rol.component.mjs +12 -4
- package/esm2022/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.mjs +15 -13
- package/fesm2022/general-library-union.mjs +200 -59
- package/fesm2022/general-library-union.mjs.map +1 -1
- package/package.json +2 -2
- package/src/app/core/servicios/menu.service.d.ts +1 -0
- package/src/app/core/servicios/utils.service.d.ts +1 -0
- package/src/app/layout/app.menuitem.component.d.ts +2 -1
- package/src/app/layout/app.sidebar.component.d.ts +1 -0
- package/src/app/layout/app.topbar.component.d.ts +1 -0
- package/src/app/publico/pages/not-found/not-found.page.d.ts +1 -0
- package/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.d.ts +2 -2
- package/src/assets/images/personaje.png +0 -0
- package/src/assets/layout/styles/theme/extensions/_progressbar.scss +1 -1
- package/src/assets/layout/styles/theme/theme-dark/amber/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-dark/blue/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-dark/bluegrey/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-dark/brown/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-dark/cyan/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-dark/deeporange/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-dark/deeppurple/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-dark/green/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-dark/indigo/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-dark/lightblue/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-dark/lightgreen/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-dark/lime/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-dark/orange/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-dark/pink/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-dark/purple/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-dark/teal/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-dark/yellow/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-light/amber/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-light/blue/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-light/bluegrey/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-light/brown/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-light/cyan/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-light/deeporange/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-light/deeppurple/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-light/green/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-light/indigo/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-light/lightblue/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-light/lightgreen/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-light/lime/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-light/orange/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-light/pink/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-light/purple/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-light/teal/theme.css +1 -1
- package/src/assets/layout/styles/theme/theme-light/yellow/theme.css +1 -1
- package/src/assets/theme/uniondinamic/theme-light.css +1 -1
- package/src/styles/primeng/sass/overrides/_theme_styles.scss +223 -26
- package/src/styles/primeng/sass/overrides/_theme_styles_dark.scss +209 -25
- package/src/styles/primeng/sass/theme/designer/components/overlay/_dialog.scss +1 -1
- package/src/styles/primeng/sass/theme/extensions/_progressbar.scss +1 -1
|
@@ -104,7 +104,6 @@ export class SeleccionRolComponent {
|
|
|
104
104
|
this.rolSeleccionado.aplicacion = this.codigoAplicacion;
|
|
105
105
|
this.storageService.setRolSeleccionado(this.rolSeleccionado);
|
|
106
106
|
this.authService.seleccionRol(this.rolSeleccionado).subscribe((data) => {
|
|
107
|
-
console.log(data);
|
|
108
107
|
/*let rol: any = {}
|
|
109
108
|
rol.codigoRol = this.authService.getTokenKey('llaveRol');
|
|
110
109
|
this.authService.generarTokenPublico().subscribe(data2 => {
|
|
@@ -133,10 +132,19 @@ export class SeleccionRolComponent {
|
|
|
133
132
|
this.storageService.setItem('moduloSeleccionado', this.storageService.getItem('moduloFavorito'));
|
|
134
133
|
}
|
|
135
134
|
else {
|
|
136
|
-
|
|
135
|
+
let modulodefecto = data?.modulodefecto;
|
|
136
|
+
if (!modulodefecto) {
|
|
137
|
+
modulodefecto = modulos[0].llave;
|
|
138
|
+
}
|
|
139
|
+
this.storageService.setItem('moduloSeleccionado', modulodefecto);
|
|
137
140
|
}
|
|
138
141
|
this.regresarRegistro();
|
|
139
|
-
|
|
142
|
+
if (window.location.href.toString().includes('admonPortal')) {
|
|
143
|
+
this.router.navigateByUrl(this.utilsService.obtenerBase() + '/admonPortal/inicio');
|
|
144
|
+
}
|
|
145
|
+
else {
|
|
146
|
+
this.router.navigateByUrl(this.utilsService.obtenerBase() + '/inicio');
|
|
147
|
+
}
|
|
140
148
|
});
|
|
141
149
|
}
|
|
142
150
|
regresarRegistro() {
|
|
@@ -156,4 +164,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImpor
|
|
|
156
164
|
}], regresar: [{
|
|
157
165
|
type: Output
|
|
158
166
|
}] } });
|
|
159
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWNjaW9uLXJvbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3B1YmxpY28vcGFnZXMvc2VsZWNjaW9uLXJvbC9zZWxlY2Npb24tcm9sLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvcHVibGljby9wYWdlcy9zZWxlY2Npb24tcm9sL3NlbGVjY2lvbi1yb2wuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVUvRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7Ozs7O0FBUzVDLE1BQU0sT0FBTyxxQkFBcUI7SUFpQnRCO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQXJCRCxPQUFPLENBQVU7SUFDakIsZ0JBQWdCLENBQVM7SUFDeEIsUUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFFeEMsU0FBUyxDQUFhO0lBQ3RCLGVBQWUsQ0FBVztJQUMxQixnQkFBZ0IsQ0FBTTtJQUN0QixvQkFBb0IsQ0FBYTtJQUNqQywyQkFBMkIsQ0FBYTtJQUN4QyxZQUFZLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUN6QixhQUFhLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUMxQixlQUFlLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUM1QixpQkFBaUIsR0FBVyxJQUFJLENBQUM7SUFDakMsV0FBVyxHQUFZLEtBQUssQ0FBQztJ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QUFDO3VHQWhKVSxxQkFBcUI7MkZBQXJCLHFCQUFxQixzTEN0QmxDLDR3R0F5RFcsbWlDRHhDRyxZQUFZLDgwQkFBRSxXQUFXLDhtQkFBRSxZQUFZLGlNQUFFLFdBQVc7OzJGQUtyRCxxQkFBcUI7a0JBUGpDLFNBQVM7K0JBQ0UsbUJBQW1CLFdBQ2xCLENBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLGNBQ3BELElBQUk7eU9BS1QsT0FBTztzQkFBZixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDSSxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBSb2xNb2RlbCB9IGZyb20gJy4uLy4uLy4uL3NlZ3VyaWRhZC9tb2RlbG9zL1JvbE1vZGVsJztcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3NlcnZpY2lvcy9hdXRoLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdG9yYWdlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvc2VydmljaW9zL3N0b3JhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IENvb2tpZVNlcnZpY2UgfSBmcm9tICduZ3gtY29va2llLXNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDYXJnYXJDb250cm9sRnVuY2lvbmFsaWRhZFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3NlcnZpY2lvcy9jYXJnYXItY29udHJvbC1mdW5jaW9uYWxpZGFkLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNb2R1bG9zTW9kZWwgfSBmcm9tICcuLi8uLi8uLi9zZWd1cmlkYWQvbW9kZWxvcy9Nb2R1bG9zTW9kZWwnO1xyXG5pbXBvcnQgeyBUYXJlYXNNb2RlbCB9IGZyb20gJy4uLy4uLy4uL3NlZ3VyaWRhZC9tb2RlbG9zL1RhcmVhc01vZGVsJztcclxuaW1wb3J0IHsgVXRpbHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zZXJ2aWNpb3MvdXRpbHMuc2VydmljZSc7XHJcbmltcG9ydCB7IERpYWxvZ01vZHVsZSB9IGZyb20gJ3ByaW1lbmcvZGlhbG9nJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFRhYmxlTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90YWJsZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1zZWxlY2Npb24tcm9sJyxcclxuICAgIGltcG9ydHM6IFtEaWFsb2dNb2R1bGUsIEZvcm1zTW9kdWxlLCBDb21tb25Nb2R1bGUsIFRhYmxlTW9kdWxlLF0sXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NlbGVjY2lvbi1yb2wuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NlbGVjY2lvbi1yb2wuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNlbGVjY2lvblJvbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgbW9zdHJhcjogYm9vbGVhbjtcclxuICBASW5wdXQoKSBjb2RpZ29BcGxpY2FjaW9uOiBzdHJpbmc7XHJcbiAgQE91dHB1dCgpIHJlZ3Jlc2FyID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBsaXN0Um9sZXM6IFJvbE1vZGVsW107XHJcbiAgcm9sU2VsZWNjaW9uYWRvOiBSb2xNb2RlbDtcclxuICByb3dHcm91cE1ldGFkYXRhOiBhbnk7XHJcbiAgcm9sZXNDb25leGlvbkVtcHJlc2E6IFJvbE1vZGVsW107XHJcbiAgZmlsdHJvbFJvbGVzQ29uZXhpb25FbXByZXNhOiBSb2xNb2RlbFtdO1xyXG4gIGxpc3RhRW1wcmVzYSA9IG5ldyBNYXAoKTtcclxuICBsaXN0YVBlcmZpbGVzID0gbmV3IE1hcCgpO1xyXG4gIGxpc3RhQ29uZXhpb25lcyA9IG5ldyBNYXAoKTtcclxuICBwYXJhbWV0cm9CdXNxdWVkYTogc3RyaW5nID0gbnVsbDtcclxuICBhZG1vblBvcnRhbDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgY29va2llU2VydmljZTogQ29va2llU2VydmljZSxcclxuICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB1dGlsc1NlcnZpY2U6IFV0aWxzU2VydmljZSxcclxuICAgIHByaXZhdGUgY29udHJvbEZ1bmNpb25hbGlkYWQ6IENhcmdhckNvbnRyb2xGdW5jaW9uYWxpZGFkU2VydmljZVxyXG4gICkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5wYXJhbWV0cm9CdXNxdWVkYSA9ICcnO1xyXG4gICAgdGhpcy5yb2xlc0NvbmV4aW9uRW1wcmVzYSA9IFtdO1xyXG4gICAgdGhpcy5saXN0Um9sZXMgPSBbXTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjYXJnYXIobGlzdGFSb2xlcywgYWRtb25Qb3J0YWwpIHtcclxuXHJcbiAgICB0aGlzLnJvbFNlbGVjY2lvbmFkbyA9IG51bGw7XHJcbiAgICB0aGlzLmFkbW9uUG9ydGFsID0gYWRtb25Qb3J0YWw7XHJcblxyXG4gICAgdGhpcy5saXN0Um9sZXMgPSBsaXN0YVJvbGVzO1xyXG5cclxuICAgIHRoaXMucm9sZXNDb25leGlvbkVtcHJlc2EgPSBbXTtcclxuXHJcbiAgICBmb3IgKGxldCByb2wgb2YgdGhpcy5saXN0Um9sZXMpIHtcclxuXHJcbiAgICAgIGlmICghdGhpcy5yb2xlc0NvbmV4aW9uRW1wcmVzYS5zb21lKHIgPT5cclxuICAgICAgICByLmNvZGlnb0NvbmV4aW9uID09PSByb2wuY29kaWdvQ29uZXhpb24gJiZcclxuICAgICAgICByLm5vbWJyZUNvbmV4aW9uID09PSByb2wubm9tYnJlQ29uZXhpb24gJiZcclxuICAgICAgICByLmNvZGlnb0VtcHJlc2EgPT09IHJvbC5jb2RpZ29FbXByZXNhICYmXHJcbiAgICAgICAgci5ub21icmVFbXByZXNhID09PSByb2wubm9tYnJlRW1wcmVzYSAmJlxyXG4gICAgICAgIHIubnVtZXJvRW1wcmVzYSA9PT0gcm9sLm51bWVyb0VtcHJlc2EgJiZcclxuICAgICAgICByLmxsYXZlUm9sID09PSByb2wubGxhdmVSb2wgJiZcclxuICAgICAgICByLm5vbWJyZVJvbCA9PT0gcm9sLm5vbWJyZVJvbCkpIHtcclxuICAgICAgICB0aGlzLnJvbGVzQ29uZXhpb25FbXByZXNhLnB1c2gocm9sKTtcclxuICAgICAgICB0aGlzLmxpc3RhRW1wcmVzYS5zZXQocm9sLmNvZGlnb0VtcHJlc2EsIHJvbC5ub21icmVFbXByZXNhKTtcclxuICAgICAgICB0aGlzLmxpc3RhUGVyZmlsZXMuc2V0KHJvbC5sbGF2ZVJvbCwgcm9sLm5vbWJyZVJvbCk7XHJcbiAgICAgICAgdGhpcy5saXN0YUNvbmV4aW9uZXMuc2V0KHJvbC5jb2RpZ29Db25leGlvbiwgcm9sLm5vbWJyZUNvbmV4aW9uKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuZmlsdHJvbFJvbGVzQ29uZXhpb25FbXByZXNhID0gWy4uLnRoaXMucm9sZXNDb25leGlvbkVtcHJlc2FdO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldE5vbWJyZVJvbCgpOiBzdHJpbmcgfCBudWxsIHtcclxuICAgIGlmICh0aGlzLmxpc3RhUGVyZmlsZXMuc2l6ZSA+IDEgfHwgdGhpcy5yb2xlc0NvbmV4aW9uRW1wcmVzYS5sZW5ndGggPT09IDApIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5yb2xlc0NvbmV4aW9uRW1wcmVzYVswXS5ub21icmVSb2w7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0Tm9tYnJlRW1wcmVzYSgpOiBzdHJpbmcgfCBudWxsIHtcclxuICAgIGlmICh0aGlzLmxpc3RhRW1wcmVzYS5zaXplID4gMSB8fCB0aGlzLnJvbGVzQ29uZXhpb25FbXByZXNhLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLnJvbGVzQ29uZXhpb25FbXByZXNhWzBdLm5vbWJyZUVtcHJlc2E7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0Tm9tYnJlQ29uZXhpb24oKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICBpZiAodGhpcy5saXN0YUNvbmV4aW9uZXMuc2l6ZSA+IDEgfHwgdGhpcy5yb2xlc0NvbmV4aW9uRW1wcmVzYS5sZW5ndGggPT09IDApIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5yb2xlc0NvbmV4aW9uRW1wcmVzYVswXS5ub21icmVDb25leGlvbjtcclxuICB9XHJcblxyXG4gIGNhcmdhckxpc3RhZG9GaWx0cm8oKSB7XHJcblxyXG4gICAgaWYgKHRoaXMucGFyYW1ldHJvQnVzcXVlZGEudHJpbSgpID09PSAnJykge1xyXG4gICAgICB0aGlzLmZpbHRyb2xSb2xlc0NvbmV4aW9uRW1wcmVzYSA9IFsuLi50aGlzLnJvbGVzQ29uZXhpb25FbXByZXNhXTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZmlsdHJvbFJvbGVzQ29uZXhpb25FbXByZXNhID0gdGhpcy5yb2xlc0NvbmV4aW9uRW1wcmVzYS5maWx0ZXIocm9sID0+XHJcbiAgICAgICAgcm9sLm5vbWJyZUVtcHJlc2EudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0aGlzLnBhcmFtZXRyb0J1c3F1ZWRhLnRvTG93ZXJDYXNlKCkpIHx8XHJcbiAgICAgICAgcm9sLm5vbWJyZUNvbmV4aW9uLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGhpcy5wYXJhbWV0cm9CdXNxdWVkYS50b0xvd2VyQ2FzZSgpKSB8fFxyXG4gICAgICAgIHJvbC5ub21icmVSb2wudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0aGlzLnBhcmFtZXRyb0J1c3F1ZWRhLnRvTG93ZXJDYXNlKCkpXHJcbiAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgdmVyQWN0aW9uKCkge1xyXG4gICAgdmFyIHVybGFwaW51Y2xlbyA9IHRoaXMuY29va2llU2VydmljZS5nZXQoJ3VybG51Y2xlbycpXHJcbiAgICB0aGlzLnJvbFNlbGVjY2lvbmFkby5hZG1vblBvcnRhbCA9IHRoaXMuYWRtb25Qb3J0YWxcclxuICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0SXRlbShcclxuICAgICAgJ3JvbF9zZWxlY2Npb25hZG8nLFxyXG4gICAgICBKU09OLnN0cmluZ2lmeSh0aGlzLnJvbFNlbGVjY2lvbmFkbylcclxuICAgICk7XHJcbiAgICB0aGlzLnJvbFNlbGVjY2lvbmFkby5hcGxpY2FjaW9uID0gdGhpcy5jb2RpZ29BcGxpY2FjaW9uO1xyXG4gICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXRSb2xTZWxlY2Npb25hZG8odGhpcy5yb2xTZWxlY2Npb25hZG8pO1xyXG4gICAgdGhpcy5hdXRoU2VydmljZS5zZWxlY2Npb25Sb2wodGhpcy5yb2xTZWxlY2Npb25hZG8pLnN1YnNjcmliZSgoZGF0YSkgPT4ge1xyXG4gICAgICBjb25zb2xlLmxvZyhkYXRhKVxyXG4gICAgICAvKmxldCByb2w6IGFueSA9IHt9XHJcbiAgICAgICAgcm9sLmNvZGlnb1JvbCA9IHRoaXMuYXV0aFNlcnZpY2UuZ2V0VG9rZW5LZXkoJ2xsYXZlUm9sJyk7XHJcbiAgICAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZ2VuZXJhclRva2VuUHVibGljbygpLnN1YnNjcmliZShkYXRhMiA9PiB7XHJcbiAgICAgICAgdGhpcy5jb250cm9sRnVuY2lvbmFsaWRhZC5jYXJnYXJGdW5jaW9uYWxpZGFkKHJvbCwgYCR7dXJsYXBpbnVjbGVvfS9hdXRoZW50aWNhdGlvbi9mdW5jaW9uYWxpZGFkZXNgLCBkYXRhMi50b2tlbikuc3Vic2NyaWJlKHt9KTsqL1xyXG4gICAgICBjb25zdCB0b2tlbiA9IChkYXRhIGFzIGFueSk/LnRva2VuIGFzIHN0cmluZztcclxuICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXRJdGVtKCd0b2tlbicsIHRva2VuKTtcclxuICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXRJdGVtKCdjb250cm9sRnVuY2lvbmFsaWRhZGVzJywgKGRhdGEgYXMgYW55KS5jb250cm9sZXNmdW5jaW9uYWxpZGFkZXMpO1xyXG4gICAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgICAgIC8qIENvZGlnbyB0ZW1wb3JhbCBwYXJhIG1hbnRlbmVyIGxhcyB0YXJlYXMsIHBlcm8gZXN0YXMgZGViZW4gc2VyIG9idGVuaWRhcyBwb3IgdW4gc2VydmljaW8gKi9cclxuICAgICAgdmFyIHRhcmVhczogVGFyZWFzTW9kZWxbXSA9IChkYXRhIGFzIGFueSkudGFyZWFzbW9kdWxvO1xyXG4gICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldEl0ZW0oJ19fdGFyZWFzJywgSlNPTi5zdHJpbmdpZnkodGFyZWFzKSk7XHJcbiAgICAgIHZhciBtb2R1bG9zRGVUYXJlYXMgPSB0YXJlYXMuZmlsdGVyKChvYmosIGluZGV4LCBzZWxmKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIGluZGV4ID09PSBzZWxmLmZpbmRJbmRleCgobykgPT4gby5tb2R1bG8gPT09IG9iai5tb2R1bG8pO1xyXG4gICAgICB9KTtcclxuICAgICAgdmFyIG1vZHVsb3M6IE1vZHVsb3NNb2RlbFtdID0gW107XHJcbiAgICAgIG1vZHVsb3NEZVRhcmVhcy5mb3JFYWNoKGRhdGEgPT4ge1xyXG4gICAgICAgIGxldCBtb2R1bG86IE1vZHVsb3NNb2RlbCA9IHtcclxuICAgICAgICAgIGxsYXZlOiBkYXRhLm1vZHVsbyxcclxuICAgICAgICAgIGRlc2NyaXBjaW9uOiBkYXRhLm5vbWJyZU1vZHVsbyxcclxuICAgICAgICAgIGljb25vOiBkYXRhLmljb25vTW9kdWxvXHJcbiAgICAgICAgfVxyXG4gICAgICAgIG1vZHVsb3MucHVzaChtb2R1bG8pXHJcbiAgICAgIH0pXHJcbiAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0SXRlbSgnbW9kdWxvcycsIEpTT04uc3RyaW5naWZ5KG1vZHVsb3MpKTtcclxuICAgICAgaWYgKHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0SXRlbSgnbW9kdWxvRmF2b3JpdG8nKSAhPT0gdW5kZWZpbmVkICYmIHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0SXRlbSgnbW9kdWxvRmF2b3JpdG8nKSkge1xyXG4gICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0SXRlbSgnbW9kdWxvU2VsZWNjaW9uYWRvJywgdGhpcy5zdG9yYWdlU2VydmljZS5nZXRJdGVtKCdtb2R1bG9GYXZvcml0bycpKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldEl0ZW0oJ21vZHVsb1NlbGVjY2lvbmFkbycsIChkYXRhIGFzIGFueSk/Lm1vZHVsb2RlZmVjdG8pO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMucmVncmVzYXJSZWdpc3RybygpXHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoIHRoaXMudXRpbHNTZXJ2aWNlLm9idGVuZXJCYXNlKCkgKyAnL2luaWNpbycpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuXHJcbiAgcmVncmVzYXJSZWdpc3RybygpIHtcclxuICAgIHRoaXMubW9zdHJhciA9IGZhbHNlO1xyXG4gICAgdGhpcy5yZWdyZXNhci5lbWl0KCk7XHJcbiAgfVxyXG5cclxufSIsIjxwLWRpYWxvZyBpZD0ncG9wdXBTZWxlY2Npb25QbGFudGlsbGEnIGhlYWRlcj1cIlBlcmZpbFwiIFsodmlzaWJsZSldPVwibW9zdHJhclwiIGFwcGVuZFRvPVwiYm9keVwiXHJcbiAgICAob25IaWRlKT1cInJlZ3Jlc2FyUmVnaXN0cm8oKVwiIFticmVha3BvaW50c109XCJ7Jzk2MHB4JzogJzc1dncnLCAnNjQwcHgnOiAnMTAwdncnfVwiIFtzdHlsZV09XCJ7J21pbi13aWR0aCc6JzIwdncnfVwiXHJcbiAgICBbbW9kYWxdPVwidHJ1ZVwiIFtkcmFnZ2FibGVdPVwiZmFsc2VcIj5cclxuXHJcbiAgICA8c3BhbiBjbGFzcz1cInAtaW5wdXQtaWNvbi1sZWZ0IG1iLTMgdy1mdWxsXCI+XHJcbiAgICAgICAgPGkgY2xhc3M9XCJwaSBwaS1zZWFyY2hcIj48L2k+XHJcbiAgICAgICAgPGlucHV0IGNsYXNzPVwiIHctZnVsbCBwLWlucHV0dGV4dFwiIHR5cGU9XCJ0ZXh0XCIgcElucHV0VGV4dCBbKG5nTW9kZWwpXT1cInBhcmFtZXRyb0J1c3F1ZWRhXCIgKGtleXVwLmVudGVyKT1cImNhcmdhckxpc3RhZG9GaWx0cm8oKVwiIC8+XHJcbiAgICA8L3NwYW4+XHJcblxyXG4gICAgPCEtLSBDb250ZW5pZG8gLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBtYi0zXCI+XHJcbiAgICAgICAgPCEtLUVtcHJlc2EgLS0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggYWxpZ24taXRlbXMtY2VudGVyIG1yLTRcIiBwVG9vbHRpcD1cIkVtcHJlc2FcIiB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxyXG4gICAgICAgICAgICAqbmdJZj1cImdldE5vbWJyZUVtcHJlc2EoKSAhPSBudWxsXCI+XHJcbiAgICAgICAgICAgIDxpIHN0eWxlPVwiZm9udC1zaXplOiAxLjJyZW0gIWltcG9ydGFudFwiIGNsYXNzPVwiZ2x5cGhpY29ucyBnbHlwaGljb25zLWJ1aWxkaW5nIGNvbG9yLTQwMFwiPjwvaT5cclxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9udC1zZW1pYm9sZFwiIGh0bWxGb3I9XCJpZF9lbXByZXNhXCI+IHt7Z2V0Tm9tYnJlRW1wcmVzYSgpIHwgdXBwZXJjYXNlfX08L2xhYmVsPlxyXG4gICAgICAgICAgICA8IS0tIDxsYWJlbCBodG1sRm9yPVwiZW1wcmVzYVwiPnt7J2VtcHJlc2EnIHwgdHJhbnNsYXRlfX08L2xhYmVsPiAtLT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8IS0tQ29uZXhpb24gLS0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggYWxpZ24taXRlbXMtY2VudGVyIG1yLTRcIiBwVG9vbHRpcD1cIkNvbmV4acOzblwiIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXHJcbiAgICAgICAgICAgICpuZ0lmPVwiZ2V0Tm9tYnJlQ29uZXhpb24oKSAhPSBudWxsXCI+XHJcbiAgICAgICAgICAgIDxpIHN0eWxlPVwiZm9udC1zaXplOiAxLjJyZW0gIWltcG9ydGFudFwiIGNsYXNzPVwiZ2x5cGhpY29ucyBnbHlwaGljb25zLWJvb2sgY29sb3ItNDAwIGZvbnQtc2VtaWJvbGRcIj48L2k+XHJcbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvbnQtc2VtaWJvbGRcIiBodG1sRm9yPVwiaWRfcm9sXCI+IHt7Z2V0Tm9tYnJlQ29uZXhpb24oKSB8IHVwcGVyY2FzZX19PC9sYWJlbD5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPCEtLVJvbCAtLT5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIiBwVG9vbHRpcD1cIlJvbFwiIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiICpuZ0lmPVwiZ2V0Tm9tYnJlUm9sKCkgIT0gbnVsbFwiPlxyXG4gICAgICAgICAgICA8aSBzdHlsZT1cImZvbnQtc2l6ZTogMS4ycmVtICFpbXBvcnRhbnRcIiBjbGFzcz1cImdseXBoaWNvbnMgZ2x5cGhpY29ucy11c2VyIGNvbG9yLTQwMFwiPjwvaT5cclxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9udC1zZW1pYm9sZFwiIGh0bWxGb3I9XCJpZF9yb2xcIj4ge3tnZXROb21icmVSb2woKX19PC9sYWJlbD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxwLXRhYmxlIFt2YWx1ZV09XCJmaWx0cm9sUm9sZXNDb25leGlvbkVtcHJlc2FcIiByZXNwb25zaXZlTGF5b3V0PVwic2Nyb2xsXCIgW3BhZ2luYXRvcl09XCJsaXN0Um9sZXMubGVuZ3RoID4gMTBcIiBbcm93c109XCIxMFwiXHJcbiAgICAgICAgWyhzZWxlY3Rpb24pXT1cInJvbFNlbGVjY2lvbmFkb1wiIGRhdGFLZXk9XCJsbGF2ZVRhYmxhXCIgKG9uUm93U2VsZWN0KT1cInZlckFjdGlvbigpXCIgc2VsZWN0aW9uTW9kZT1cInNpbmdsZVwiPlxyXG4gICAgICAgIDwhLS0gaGVhZGVyIGRlIGxhIHRhYmxhIGRlIHNlbGVjY2lvbiByb2wgLS0+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxyXG4gICAgICAgICAgICA8dHIgY2xhc3M9XCJmb25kb1RhYmxhUGluY2lwYWxcIj5cclxuICAgICAgICAgICAgICAgIDx0aCAqbmdJZj1cImdldE5vbWJyZUVtcHJlc2EoKSAgPT0gbnVsbFwiPk5vbWJyZSBFbXByZXNhPC90aD5cclxuICAgICAgICAgICAgICAgIDx0aCAqbmdJZj1cImdldE5vbWJyZUNvbmV4aW9uKCkgID09IG51bGxcIj5Db25leGnDs248L3RoPlxyXG4gICAgICAgICAgICAgICAgPHRoICpuZ0lmPVwiZ2V0Tm9tYnJlUm9sKCkgID09IG51bGxcIj5Sb2w8L3RoPlxyXG4gICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPCEtLSBjdWVycG8gZGUgbGEgdGFibGEgLS0+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIiBsZXQtcm9sIGxldC1yb3dJbmRleD1cInJvd0luZGV4XCI+XHJcbiAgICAgICAgICAgIDx0ciBbcFNlbGVjdGFibGVSb3ddPVwicm9sXCI+XHJcbiAgICAgICAgICAgICAgICA8dGQgKm5nSWY9XCJnZXROb21icmVFbXByZXNhKCkgPT0gbnVsbFwiIHN0eWxlPVwibWluLXdpZHRoOiAyMDBweFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7cm9sLm5vbWJyZUVtcHJlc2F9fVxyXG4gICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cImdldE5vbWJyZUNvbmV4aW9uKCkgID09IG51bGxcIiBzdHlsZT1cIm1pbi13aWR0aDogMjAwcHhcIj5cclxuICAgICAgICAgICAgICAgICAgICB7eyByb2wubm9tYnJlQ29uZXhpb259fVxyXG4gICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cImdldE5vbWJyZVJvbCgpICA9PSBudWxsXCIgc3R5bGU9XCJtaW4td2lkdGg6IDIwMHB4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3sgcm9sLm5vbWJyZVJvbCB9fVxyXG4gICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgPC90cj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPC9wLXRhYmxlPlxyXG48L3AtZGlhbG9nPiJdfQ==
|
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWNjaW9uLXJvbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3B1YmxpY28vcGFnZXMvc2VsZWNjaW9uLXJvbC9zZWxlY2Npb24tcm9sLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvcHVibGljby9wYWdlcy9zZWxlY2Npb24tcm9sL3NlbGVjY2lvbi1yb2wuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVUvRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7Ozs7O0FBUzVDLE1BQU0sT0FBTyxxQkFBcUI7SUFpQnRCO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQXJCRCxPQUFPLENBQVU7SUFDakIsZ0JBQWdCLENBQVM7SUFDeEIsUUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFFeEMsU0FBUyxDQUFhO0lBQ3RCLGVBQWUsQ0FBVztJQUMxQixnQkFBZ0IsQ0FBTTtJQUN0QixvQkFBb0IsQ0FBYTtJQUNqQywyQkFBMkIsQ0FBYTtJQUN4QyxZQUFZLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUN6QixhQUFhLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUMxQixlQUFlLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUM1QixpQkFBaUIsR0FBVyxJQUFJLENBQUM7SUFDakMsV0FBVyxHQUFZLEtBQUssQ0FBQztJ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SSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsR0FBRyxxQkFBcUIsQ0FBQyxDQUFDO1lBQ3JGLENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxHQUFHLFNBQVMsQ0FBQyxDQUFDO1lBQ3pFLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFHRCxnQkFBZ0I7UUFDZCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7dUdBdkpVLHFCQUFxQjsyRkFBckIscUJBQXFCLHNMQ3RCbEMsNHdHQXlEVyxtaUNEeENHLFlBQVksODBCQUFFLFdBQVcsOG1CQUFFLFlBQVksaU1BQUUsV0FBVzs7MkZBS3JELHFCQUFxQjtrQkFQakMsU0FBUzsrQkFDRSxtQkFBbUIsV0FDbEIsQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsY0FDcEQsSUFBSTt5T0FLVCxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNJLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFJvbE1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vc2VndXJpZGFkL21vZGVsb3MvUm9sTW9kZWwnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvc2VydmljaW9zL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zZXJ2aWNpb3Mvc3RvcmFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29va2llU2VydmljZSB9IGZyb20gJ25neC1jb29raWUtc2VydmljZSc7XHJcbmltcG9ydCB7IENhcmdhckNvbnRyb2xGdW5jaW9uYWxpZGFkU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvc2VydmljaW9zL2Nhcmdhci1jb250cm9sLWZ1bmNpb25hbGlkYWQuc2VydmljZSc7XHJcbmltcG9ydCB7IE1vZHVsb3NNb2RlbCB9IGZyb20gJy4uLy4uLy4uL3NlZ3VyaWRhZC9tb2RlbG9zL01vZHVsb3NNb2RlbCc7XHJcbmltcG9ydCB7IFRhcmVhc01vZGVsIH0gZnJvbSAnLi4vLi4vLi4vc2VndXJpZGFkL21vZGVsb3MvVGFyZWFzTW9kZWwnO1xyXG5pbXBvcnQgeyBVdGlsc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3NlcnZpY2lvcy91dGlscy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRGlhbG9nTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9kaWFsb2cnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgVGFibGVNb2R1bGUgfSBmcm9tICdwcmltZW5nL3RhYmxlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXNlbGVjY2lvbi1yb2wnLFxyXG4gICAgaW1wb3J0czogW0RpYWxvZ01vZHVsZSwgRm9ybXNNb2R1bGUsIENvbW1vbk1vZHVsZSwgVGFibGVNb2R1bGUsXSxcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2VsZWNjaW9uLXJvbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vc2VsZWNjaW9uLXJvbC5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VsZWNjaW9uUm9sQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBtb3N0cmFyOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGNvZGlnb0FwbGljYWNpb246IHN0cmluZztcclxuICBAT3V0cHV0KCkgcmVncmVzYXIgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIGxpc3RSb2xlczogUm9sTW9kZWxbXTtcclxuICByb2xTZWxlY2Npb25hZG86IFJvbE1vZGVsO1xyXG4gIHJvd0dyb3VwTWV0YWRhdGE6IGFueTtcclxuICByb2xlc0NvbmV4aW9uRW1wcmVzYTogUm9sTW9kZWxbXTtcclxuICBmaWx0cm9sUm9sZXNDb25leGlvbkVtcHJlc2E6IFJvbE1vZGVsW107XHJcbiAgbGlzdGFFbXByZXNhID0gbmV3IE1hcCgpO1xyXG4gIGxpc3RhUGVyZmlsZXMgPSBuZXcgTWFwKCk7XHJcbiAgbGlzdGFDb25leGlvbmVzID0gbmV3IE1hcCgpO1xyXG4gIHBhcmFtZXRyb0J1c3F1ZWRhOiBzdHJpbmcgPSBudWxsO1xyXG4gIGFkbW9uUG9ydGFsOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgIHByaXZhdGUgc3RvcmFnZVNlcnZpY2U6IFN0b3JhZ2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjb29raWVTZXJ2aWNlOiBDb29raWVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHV0aWxzU2VydmljZTogVXRpbHNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjb250cm9sRnVuY2lvbmFsaWRhZDogQ2FyZ2FyQ29udHJvbEZ1bmNpb25hbGlkYWRTZXJ2aWNlXHJcbiAgKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnBhcmFtZXRyb0J1c3F1ZWRhID0gJyc7XHJcbiAgICB0aGlzLnJvbGVzQ29uZXhpb25FbXByZXNhID0gW107XHJcbiAgICB0aGlzLmxpc3RSb2xlcyA9IFtdO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNhcmdhcihsaXN0YVJvbGVzLCBhZG1vblBvcnRhbCkge1xyXG5cclxuICAgIHRoaXMucm9sU2VsZWNjaW9uYWRvID0gbnVsbDtcclxuICAgIHRoaXMuYWRtb25Qb3J0YWwgPSBhZG1vblBvcnRhbDtcclxuXHJcbiAgICB0aGlzLmxpc3RSb2xlcyA9IGxpc3RhUm9sZXM7XHJcblxyXG4gICAgdGhpcy5yb2xlc0NvbmV4aW9uRW1wcmVzYSA9IFtdO1xyXG5cclxuICAgIGZvciAobGV0IHJvbCBvZiB0aGlzLmxpc3RSb2xlcykge1xyXG5cclxuICAgICAgaWYgKCF0aGlzLnJvbGVzQ29uZXhpb25FbXByZXNhLnNvbWUociA9PlxyXG4gICAgICAgIHIuY29kaWdvQ29uZXhpb24gPT09IHJvbC5jb2RpZ29Db25leGlvbiAmJlxyXG4gICAgICAgIHIubm9tYnJlQ29uZXhpb24gPT09IHJvbC5ub21icmVDb25leGlvbiAmJlxyXG4gICAgICAgIHIuY29kaWdvRW1wcmVzYSA9PT0gcm9sLmNvZGlnb0VtcHJlc2EgJiZcclxuICAgICAgICByLm5vbWJyZUVtcHJlc2EgPT09IHJvbC5ub21icmVFbXByZXNhICYmXHJcbiAgICAgICAgci5udW1lcm9FbXByZXNhID09PSByb2wubnVtZXJvRW1wcmVzYSAmJlxyXG4gICAgICAgIHIubGxhdmVSb2wgPT09IHJvbC5sbGF2ZVJvbCAmJlxyXG4gICAgICAgIHIubm9tYnJlUm9sID09PSByb2wubm9tYnJlUm9sKSkge1xyXG4gICAgICAgIHRoaXMucm9sZXNDb25leGlvbkVtcHJlc2EucHVzaChyb2wpO1xyXG4gICAgICAgIHRoaXMubGlzdGFFbXByZXNhLnNldChyb2wuY29kaWdvRW1wcmVzYSwgcm9sLm5vbWJyZUVtcHJlc2EpO1xyXG4gICAgICAgIHRoaXMubGlzdGFQZXJmaWxlcy5zZXQocm9sLmxsYXZlUm9sLCByb2wubm9tYnJlUm9sKTtcclxuICAgICAgICB0aGlzLmxpc3RhQ29uZXhpb25lcy5zZXQocm9sLmNvZGlnb0NvbmV4aW9uLCByb2wubm9tYnJlQ29uZXhpb24pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5maWx0cm9sUm9sZXNDb25leGlvbkVtcHJlc2EgPSBbLi4udGhpcy5yb2xlc0NvbmV4aW9uRW1wcmVzYV07XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0Tm9tYnJlUm9sKCk6IHN0cmluZyB8IG51bGwge1xyXG4gICAgaWYgKHRoaXMubGlzdGFQZXJmaWxlcy5zaXplID4gMSB8fCB0aGlzLnJvbGVzQ29uZXhpb25FbXByZXNhLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLnJvbGVzQ29uZXhpb25FbXByZXNhWzBdLm5vbWJyZVJvbDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXROb21icmVFbXByZXNhKCk6IHN0cmluZyB8IG51bGwge1xyXG4gICAgaWYgKHRoaXMubGlzdGFFbXByZXNhLnNpemUgPiAxIHx8IHRoaXMucm9sZXNDb25leGlvbkVtcHJlc2EubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMucm9sZXNDb25leGlvbkVtcHJlc2FbMF0ubm9tYnJlRW1wcmVzYTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXROb21icmVDb25leGlvbigpOiBzdHJpbmcgfCBudWxsIHtcclxuICAgIGlmICh0aGlzLmxpc3RhQ29uZXhpb25lcy5zaXplID4gMSB8fCB0aGlzLnJvbGVzQ29uZXhpb25FbXByZXNhLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLnJvbGVzQ29uZXhpb25FbXByZXNhWzBdLm5vbWJyZUNvbmV4aW9uO1xyXG4gIH1cclxuXHJcbiAgY2FyZ2FyTGlzdGFkb0ZpbHRybygpIHtcclxuXHJcbiAgICBpZiAodGhpcy5wYXJhbWV0cm9CdXNxdWVkYS50cmltKCkgPT09ICcnKSB7XHJcbiAgICAgIHRoaXMuZmlsdHJvbFJvbGVzQ29uZXhpb25FbXByZXNhID0gWy4uLnRoaXMucm9sZXNDb25leGlvbkVtcHJlc2FdO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5maWx0cm9sUm9sZXNDb25leGlvbkVtcHJlc2EgPSB0aGlzLnJvbGVzQ29uZXhpb25FbXByZXNhLmZpbHRlcihyb2wgPT5cclxuICAgICAgICByb2wubm9tYnJlRW1wcmVzYS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRoaXMucGFyYW1ldHJvQnVzcXVlZGEudG9Mb3dlckNhc2UoKSkgfHxcclxuICAgICAgICByb2wubm9tYnJlQ29uZXhpb24udG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0aGlzLnBhcmFtZXRyb0J1c3F1ZWRhLnRvTG93ZXJDYXNlKCkpIHx8XHJcbiAgICAgICAgcm9sLm5vbWJyZVJvbC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRoaXMucGFyYW1ldHJvQnVzcXVlZGEudG9Mb3dlckNhc2UoKSlcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICB2ZXJBY3Rpb24oKSB7XHJcbiAgICB2YXIgdXJsYXBpbnVjbGVvID0gdGhpcy5jb29raWVTZXJ2aWNlLmdldCgndXJsbnVjbGVvJylcclxuICAgIHRoaXMucm9sU2VsZWNjaW9uYWRvLmFkbW9uUG9ydGFsID0gdGhpcy5hZG1vblBvcnRhbFxyXG4gICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXRJdGVtKFxyXG4gICAgICAncm9sX3NlbGVjY2lvbmFkbycsXHJcbiAgICAgIEpTT04uc3RyaW5naWZ5KHRoaXMucm9sU2VsZWNjaW9uYWRvKVxyXG4gICAgKTtcclxuICAgIHRoaXMucm9sU2VsZWNjaW9uYWRvLmFwbGljYWNpb24gPSB0aGlzLmNvZGlnb0FwbGljYWNpb247XHJcbiAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldFJvbFNlbGVjY2lvbmFkbyh0aGlzLnJvbFNlbGVjY2lvbmFkbyk7XHJcbiAgICB0aGlzLmF1dGhTZXJ2aWNlLnNlbGVjY2lvblJvbCh0aGlzLnJvbFNlbGVjY2lvbmFkbykuc3Vic2NyaWJlKChkYXRhKSA9PiB7XHJcbiAgICAgIC8qbGV0IHJvbDogYW55ID0ge31cclxuICAgICAgICByb2wuY29kaWdvUm9sID0gdGhpcy5hdXRoU2VydmljZS5nZXRUb2tlbktleSgnbGxhdmVSb2wnKTtcclxuICAgICAgICAgdGhpcy5hdXRoU2VydmljZS5nZW5lcmFyVG9rZW5QdWJsaWNvKCkuc3Vic2NyaWJlKGRhdGEyID0+IHtcclxuICAgICAgICB0aGlzLmNvbnRyb2xGdW5jaW9uYWxpZGFkLmNhcmdhckZ1bmNpb25hbGlkYWQocm9sLCBgJHt1cmxhcGludWNsZW99L2F1dGhlbnRpY2F0aW9uL2Z1bmNpb25hbGlkYWRlc2AsIGRhdGEyLnRva2VuKS5zdWJzY3JpYmUoe30pOyovXHJcbiAgICAgIGNvbnN0IHRva2VuID0gKGRhdGEgYXMgYW55KT8udG9rZW4gYXMgc3RyaW5nO1xyXG4gICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldEl0ZW0oJ3Rva2VuJywgdG9rZW4pO1xyXG4gICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldEl0ZW0oJ2NvbnRyb2xGdW5jaW9uYWxpZGFkZXMnLCAoZGF0YSBhcyBhbnkpLmNvbnRyb2xlc2Z1bmNpb25hbGlkYWRlcyk7XHJcbiAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICAgICAgLyogQ29kaWdvIHRlbXBvcmFsIHBhcmEgbWFudGVuZXIgbGFzIHRhcmVhcywgcGVybyBlc3RhcyBkZWJlbiBzZXIgb2J0ZW5pZGFzIHBvciB1biBzZXJ2aWNpbyAqL1xyXG4gICAgICB2YXIgdGFyZWFzOiBUYXJlYXNNb2RlbFtdID0gKGRhdGEgYXMgYW55KS50YXJlYXNtb2R1bG87XHJcbiAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0SXRlbSgnX190YXJlYXMnLCBKU09OLnN0cmluZ2lmeSh0YXJlYXMpKTtcclxuICAgICAgdmFyIG1vZHVsb3NEZVRhcmVhcyA9IHRhcmVhcy5maWx0ZXIoKG9iaiwgaW5kZXgsIHNlbGYpID0+IHtcclxuICAgICAgICByZXR1cm4gaW5kZXggPT09IHNlbGYuZmluZEluZGV4KChvKSA9PiBvLm1vZHVsbyA9PT0gb2JqLm1vZHVsbyk7XHJcbiAgICAgIH0pO1xyXG4gICAgICB2YXIgbW9kdWxvczogTW9kdWxvc01vZGVsW10gPSBbXTtcclxuICAgICAgbW9kdWxvc0RlVGFyZWFzLmZvckVhY2goZGF0YSA9PiB7XHJcbiAgICAgICAgbGV0IG1vZHVsbzogTW9kdWxvc01vZGVsID0ge1xyXG4gICAgICAgICAgbGxhdmU6IGRhdGEubW9kdWxvLFxyXG4gICAgICAgICAgZGVzY3JpcGNpb246IGRhdGEubm9tYnJlTW9kdWxvLFxyXG4gICAgICAgICAgaWNvbm86IGRhdGEuaWNvbm9Nb2R1bG9cclxuICAgICAgICB9XHJcbiAgICAgICAgbW9kdWxvcy5wdXNoKG1vZHVsbylcclxuICAgICAgfSlcclxuICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXRJdGVtKCdtb2R1bG9zJywgSlNPTi5zdHJpbmdpZnkobW9kdWxvcykpO1xyXG4gICAgICBpZiAodGhpcy5zdG9yYWdlU2VydmljZS5nZXRJdGVtKCdtb2R1bG9GYXZvcml0bycpICE9PSB1bmRlZmluZWQgJiYgdGhpcy5zdG9yYWdlU2VydmljZS5nZXRJdGVtKCdtb2R1bG9GYXZvcml0bycpKSB7XHJcbiAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXRJdGVtKCdtb2R1bG9TZWxlY2Npb25hZG8nLCB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0oJ21vZHVsb0Zhdm9yaXRvJykpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGxldCBtb2R1bG9kZWZlY3RvID0gKGRhdGEgYXMgYW55KT8ubW9kdWxvZGVmZWN0bztcclxuICAgICAgICBpZiAoIW1vZHVsb2RlZmVjdG8pIHtcclxuICAgICAgICAgIG1vZHVsb2RlZmVjdG8gPSBtb2R1bG9zWzBdLmxsYXZlO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldEl0ZW0oJ21vZHVsb1NlbGVjY2lvbmFkbycsIG1vZHVsb2RlZmVjdG8pO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMucmVncmVzYXJSZWdpc3RybygpXHJcbiAgICAgIGlmICh3aW5kb3cubG9jYXRpb24uaHJlZi50b1N0cmluZygpLmluY2x1ZGVzKCdhZG1vblBvcnRhbCcpKSB7XHJcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybCh0aGlzLnV0aWxzU2VydmljZS5vYnRlbmVyQmFzZSgpICsgJy9hZG1vblBvcnRhbC9pbmljaW8nKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKHRoaXMudXRpbHNTZXJ2aWNlLm9idGVuZXJCYXNlKCkgKyAnL2luaWNpbycpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG5cclxuICByZWdyZXNhclJlZ2lzdHJvKCkge1xyXG4gICAgdGhpcy5tb3N0cmFyID0gZmFsc2U7XHJcbiAgICB0aGlzLnJlZ3Jlc2FyLmVtaXQoKTtcclxuICB9XHJcblxyXG59IiwiPHAtZGlhbG9nIGlkPSdwb3B1cFNlbGVjY2lvblBsYW50aWxsYScgaGVhZGVyPVwiUGVyZmlsXCIgWyh2aXNpYmxlKV09XCJtb3N0cmFyXCIgYXBwZW5kVG89XCJib2R5XCJcclxuICAgIChvbkhpZGUpPVwicmVncmVzYXJSZWdpc3RybygpXCIgW2JyZWFrcG9pbnRzXT1cInsnOTYwcHgnOiAnNzV2dycsICc2NDBweCc6ICcxMDB2dyd9XCIgW3N0eWxlXT1cInsnbWluLXdpZHRoJzonMjB2dyd9XCJcclxuICAgIFttb2RhbF09XCJ0cnVlXCIgW2RyYWdnYWJsZV09XCJmYWxzZVwiPlxyXG5cclxuICAgIDxzcGFuIGNsYXNzPVwicC1pbnB1dC1pY29uLWxlZnQgbWItMyB3LWZ1bGxcIj5cclxuICAgICAgICA8aSBjbGFzcz1cInBpIHBpLXNlYXJjaFwiPjwvaT5cclxuICAgICAgICA8aW5wdXQgY2xhc3M9XCIgdy1mdWxsIHAtaW5wdXR0ZXh0XCIgdHlwZT1cInRleHRcIiBwSW5wdXRUZXh0IFsobmdNb2RlbCldPVwicGFyYW1ldHJvQnVzcXVlZGFcIiAoa2V5dXAuZW50ZXIpPVwiY2FyZ2FyTGlzdGFkb0ZpbHRybygpXCIgLz5cclxuICAgIDwvc3Bhbj5cclxuXHJcbiAgICA8IS0tIENvbnRlbmlkbyAtLT5cclxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IG1iLTNcIj5cclxuICAgICAgICA8IS0tRW1wcmVzYSAtLT5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXItNFwiIHBUb29sdGlwPVwiRW1wcmVzYVwiIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXHJcbiAgICAgICAgICAgICpuZ0lmPVwiZ2V0Tm9tYnJlRW1wcmVzYSgpICE9IG51bGxcIj5cclxuICAgICAgICAgICAgPGkgc3R5bGU9XCJmb250LXNpemU6IDEuMnJlbSAhaW1wb3J0YW50XCIgY2xhc3M9XCJnbHlwaGljb25zIGdseXBoaWNvbnMtYnVpbGRpbmcgY29sb3ItNDAwXCI+PC9pPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb250LXNlbWlib2xkXCIgaHRtbEZvcj1cImlkX2VtcHJlc2FcIj4ge3tnZXROb21icmVFbXByZXNhKCkgfCB1cHBlcmNhc2V9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgIDwhLS0gPGxhYmVsIGh0bWxGb3I9XCJlbXByZXNhXCI+e3snZW1wcmVzYScgfCB0cmFuc2xhdGV9fTwvbGFiZWw+IC0tPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwhLS1Db25leGlvbiAtLT5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXItNFwiIHBUb29sdGlwPVwiQ29uZXhpw7NuXCIgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCJcclxuICAgICAgICAgICAgKm5nSWY9XCJnZXROb21icmVDb25leGlvbigpICE9IG51bGxcIj5cclxuICAgICAgICAgICAgPGkgc3R5bGU9XCJmb250LXNpemU6IDEuMnJlbSAhaW1wb3J0YW50XCIgY2xhc3M9XCJnbHlwaGljb25zIGdseXBoaWNvbnMtYm9vayBjb2xvci00MDAgZm9udC1zZW1pYm9sZFwiPjwvaT5cclxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9udC1zZW1pYm9sZFwiIGh0bWxGb3I9XCJpZF9yb2xcIj4ge3tnZXROb21icmVDb25leGlvbigpIHwgdXBwZXJjYXNlfX08L2xhYmVsPlxyXG5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8IS0tUm9sIC0tPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiIHBUb29sdGlwPVwiUm9sXCIgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCIgKm5nSWY9XCJnZXROb21icmVSb2woKSAhPSBudWxsXCI+XHJcbiAgICAgICAgICAgIDxpIHN0eWxlPVwiZm9udC1zaXplOiAxLjJyZW0gIWltcG9ydGFudFwiIGNsYXNzPVwiZ2x5cGhpY29ucyBnbHlwaGljb25zLXVzZXIgY29sb3ItNDAwXCI+PC9pPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb250LXNlbWlib2xkXCIgaHRtbEZvcj1cImlkX3JvbFwiPiB7e2dldE5vbWJyZVJvbCgpfX08L2xhYmVsPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPHAtdGFibGUgW3ZhbHVlXT1cImZpbHRyb2xSb2xlc0NvbmV4aW9uRW1wcmVzYVwiIHJlc3BvbnNpdmVMYXlvdXQ9XCJzY3JvbGxcIiBbcGFnaW5hdG9yXT1cImxpc3RSb2xlcy5sZW5ndGggPiAxMFwiIFtyb3dzXT1cIjEwXCJcclxuICAgICAgICBbKHNlbGVjdGlvbildPVwicm9sU2VsZWNjaW9uYWRvXCIgZGF0YUtleT1cImxsYXZlVGFibGFcIiAob25Sb3dTZWxlY3QpPVwidmVyQWN0aW9uKClcIiBzZWxlY3Rpb25Nb2RlPVwic2luZ2xlXCI+XHJcbiAgICAgICAgPCEtLSBoZWFkZXIgZGUgbGEgdGFibGEgZGUgc2VsZWNjaW9uIHJvbCAtLT5cclxuICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCI+XHJcbiAgICAgICAgICAgIDx0ciBjbGFzcz1cImZvbmRvVGFibGFQaW5jaXBhbFwiPlxyXG4gICAgICAgICAgICAgICAgPHRoICpuZ0lmPVwiZ2V0Tm9tYnJlRW1wcmVzYSgpICA9PSBudWxsXCI+Tm9tYnJlIEVtcHJlc2E8L3RoPlxyXG4gICAgICAgICAgICAgICAgPHRoICpuZ0lmPVwiZ2V0Tm9tYnJlQ29uZXhpb24oKSAgPT0gbnVsbFwiPkNvbmV4acOzbjwvdGg+XHJcbiAgICAgICAgICAgICAgICA8dGggKm5nSWY9XCJnZXROb21icmVSb2woKSAgPT0gbnVsbFwiPlJvbDwvdGg+XHJcbiAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8IS0tIGN1ZXJwbyBkZSBsYSB0YWJsYSAtLT5cclxuICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiYm9keVwiIGxldC1yb2wgbGV0LXJvd0luZGV4PVwicm93SW5kZXhcIj5cclxuICAgICAgICAgICAgPHRyIFtwU2VsZWN0YWJsZVJvd109XCJyb2xcIj5cclxuICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cImdldE5vbWJyZUVtcHJlc2EoKSA9PSBudWxsXCIgc3R5bGU9XCJtaW4td2lkdGg6IDIwMHB4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3tyb2wubm9tYnJlRW1wcmVzYX19XHJcbiAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwiZ2V0Tm9tYnJlQ29uZXhpb24oKSAgPT0gbnVsbFwiIHN0eWxlPVwibWluLXdpZHRoOiAyMDBweFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7IHJvbC5ub21icmVDb25leGlvbn19XHJcbiAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwiZ2V0Tm9tYnJlUm9sKCkgID09IG51bGxcIiBzdHlsZT1cIm1pbi13aWR0aDogMjAwcHhcIj5cclxuICAgICAgICAgICAgICAgICAgICB7eyByb2wubm9tYnJlUm9sIH19XHJcbiAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8L3AtdGFibGU+XHJcbjwvcC1kaWFsb2c+Il19
|