ca-components 1.0.91 → 1.0.92
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/lib/components/ca-input/directives/restrict-input.directive.mjs +3 -1
- package/esm2022/lib/components/ca-input/input-test/input-test.component.mjs +4 -3
- package/esm2022/lib/components/ca-input/pipes/input-pattern.pipe.mjs +5 -8
- package/fesm2022/ca-components.mjs +9 -9
- package/fesm2022/ca-components.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -14,13 +14,13 @@ export class InputPatternPipe {
|
|
|
14
14
|
return {
|
|
15
15
|
regex: /^[0-9.]*$/,
|
|
16
16
|
restrictMultipeDots: true,
|
|
17
|
-
isDecimalAndDotOnly: true
|
|
17
|
+
isDecimalAndDotOnly: true,
|
|
18
18
|
};
|
|
19
19
|
//return /^[0-9.]*$/;
|
|
20
20
|
}
|
|
21
21
|
else if (['phone', 'fax'].includes(inputName)) {
|
|
22
22
|
return {
|
|
23
|
-
regex: /^[0-9() -]*$/g
|
|
23
|
+
regex: /^[0-9() -]*$/g,
|
|
24
24
|
};
|
|
25
25
|
}
|
|
26
26
|
else if ([
|
|
@@ -145,10 +145,7 @@ export class InputPatternPipe {
|
|
|
145
145
|
}
|
|
146
146
|
else if ('year' === inputName) {
|
|
147
147
|
return {
|
|
148
|
-
regex: /^[
|
|
149
|
-
restrictConsecutiveSpaces: false,
|
|
150
|
-
restrictConsecutiveDots: false,
|
|
151
|
-
restrictMultipeDots: false,
|
|
148
|
+
regex: /^(|0|[1-9]\d*)$/,
|
|
152
149
|
};
|
|
153
150
|
//return /^[0-9]$/;
|
|
154
151
|
}
|
|
@@ -310,7 +307,7 @@ export class InputPatternPipe {
|
|
|
310
307
|
restrictConsecutiveSpaces: false,
|
|
311
308
|
restrictConsecutiveDots: false,
|
|
312
309
|
restrictMultipeDots: false,
|
|
313
|
-
isDecimalAndDotOnly: false
|
|
310
|
+
isDecimalAndDotOnly: false,
|
|
314
311
|
};
|
|
315
312
|
}
|
|
316
313
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InputPatternPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
@@ -323,4 +320,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
323
320
|
standalone: true,
|
|
324
321
|
}]
|
|
325
322
|
}] });
|
|
326
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtcGF0dGVybi5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtaW5wdXQvcGlwZXMvaW5wdXQtcGF0dGVybi5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQU1wRCxNQUFNLE9BQU8sZ0JBQWdCO0lBQ3pCLFNBQVMsQ0FBQyxTQUFpQixFQUFFLEdBQUcsSUFBVztRQUN2QyxJQUFJLENBQUMsZUFBZSxFQUFFLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztZQUNsRSxPQUFPO2dCQUNILEtBQUssRUFBRSx1REFBdUQ7Z0JBQzlELHlCQUF5QixFQUFFLEtBQUs7Z0JBQ2hDLHVCQUF1QixFQUFFLEtBQUs7Z0JBQzlCLG1CQUFtQixFQUFFLEtBQUs7YUFDN0IsQ0FBQztRQUNOLENBQUM7YUFBTSxJQUFJLGlCQUFpQixLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3pDLE9BQU87Z0JBQ0gsS0FBSyxFQUFFLFdBQVc7Z0JBQ2xCLG1CQUFtQixFQUFFLElBQUk7Z0JBQ3pCLG1CQUFtQixFQUFFLElBQUk7YUFDNUIsQ0FBQztZQUNGLHFCQUFxQjtRQUN6QixDQUFDO2FBQU0sSUFBRyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUMsQ0FBQztZQUM1QyxPQUFPO2dCQUNILEtBQUssRUFBRSxlQUFlO2FBQ3pCLENBQUE7UUFDTCxDQUFDO2FBQ0ksSUFDRDtZQUNJLEtBQUs7WUFDTCxPQUFPO1lBQ1AsaUJBQWlCO1lBQ2pCLGNBQWM7WUFDZCxjQUFjO1lBQ2QsS0FBSztZQUNMLFdBQVc7WUFDWCxjQUFjO1lBQ2QsY0FBYztZQUNkLFFBQVE7WUFDUixP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RUFBRSxJQUFJO1lBQ1gseUJBQXlCLEVBQUUsS0FBSztZQUNoQyx1QkFBdUIsRUFBRSxLQUFLO1lBQzlCLG1CQUFtQixFQUFFLEtBQUs7WUFDMUIsbUJBQW1CLEVBQUUsS0FBSztTQUM3QixDQUFDO0lBQ04sQ0FBQzsrR0EzU1EsZ0JBQWdCOzZHQUFoQixnQkFBZ0I7OzRGQUFoQixnQkFBZ0I7a0JBSjVCLElBQUk7bUJBQUM7b0JBQ0YsSUFBSSxFQUFFLGNBQWM7b0JBQ3BCLFVBQVUsRUFBRSxJQUFJO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQFBpcGUoe1xuICAgIG5hbWU6ICdpbnB1dFBhdHRlcm4nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIElucHV0UGF0dGVyblBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICB0cmFuc2Zvcm0oaW5wdXROYW1lOiBzdHJpbmcsIC4uLmFyZ3M6IGFueVtdKSB7XG4gICAgICAgIGlmIChbJ2J1c2luZXNzIG5hbWUnLCAnc2hvcCBuYW1lJywgJ2Z1ZWwgc3RvcCddLmluY2x1ZGVzKGlucHV0TmFtZSkpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVnZXg6IC9eW0EtWmEtejAtOSEjJyQmJSgpKissLi9bOjs9PD4/w6fDqcOiw6rDrsO0w7vDoMOow6zDssO5w6vDr8O8XFxzLV0qJC9nLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVTcGFjZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0gZWxzZSBpZiAoJ3ByaWNlLXNlcGFyYXRvcicgPT09IGlucHV0TmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWdleDogL15bMC05Ll0qJC8sXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogdHJ1ZSxcbiAgICAgICAgICAgICAgICBpc0RlY2ltYWxBbmREb3RPbmx5OiB0cnVlXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bMC05Ll0qJC87XG4gICAgICAgIH0gZWxzZSBpZihbJ3Bob25lJywgJ2ZheCddLmluY2x1ZGVzKGlucHV0TmFtZSkpe1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWdleDogL15bMC05KCkgLV0qJC9nXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoXG4gICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgJ2VpbicsXG4gICAgICAgICAgICAgICAgJ21jL2ZmJyxcbiAgICAgICAgICAgICAgICAncGhvbmUtZXh0ZW5zaW9uJyxcbiAgICAgICAgICAgICAgICAnYWNjb3VudC1iYW5rJyxcbiAgICAgICAgICAgICAgICAncm91dGluZy1iYW5rJyxcbiAgICAgICAgICAgICAgICAnc3NuJyxcbiAgICAgICAgICAgICAgICAnZnVlbC1jYXJkJyxcbiAgICAgICAgICAgICAgICAnZW1wdHktd2VpZ2h0JyxcbiAgICAgICAgICAgICAgICAnY3JlZGl0IGxpbWl0JyxcbiAgICAgICAgICAgICAgICAncG8gYm94JyxcbiAgICAgICAgICAgICAgICAncHJpY2UnLFxuICAgICAgICAgICAgICAgICd0cmFpbGVyLXZvbHVtZScsXG4gICAgICAgICAgICAgICAgJ3JlcGFpci1vZG9tZXRlcicsXG4gICAgICAgICAgICAgICAgJ3VzZG90JyxcbiAgICAgICAgICAgICAgICAnaXJwJyxcbiAgICAgICAgICAgICAgICAnc3RhcnRpbmcnLFxuICAgICAgICAgICAgICAgICdjdXN0b21lciBwYXkgdGVybScsXG4gICAgICAgICAgICAgICAgJ2N1c3RvbWVyIGNyZWRpdCcsXG4gICAgICAgICAgICAgICAgJ2RlZmF1bHQgYmFzZScsXG4gICAgICAgICAgICAgICAgJ2VhY2ggb2NjdXJyZW5jZScsXG4gICAgICAgICAgICAgICAgJ2RhbWFnZScsXG4gICAgICAgICAgICAgICAgJ3BlcnNvbmFsLWFkdmVyLWluaicsXG4gICAgICAgICAgICAgICAgJ21lZGljYWwgZXhwZW5zZXMnLFxuICAgICAgICAgICAgICAgICdib2RpbHkgaW5qdXJ5JyxcbiAgICAgICAgICAgICAgICAnZ2VuZXJhbCBhZ2dyZWdhdGUnLFxuICAgICAgICAgICAgICAgICdwcm9kdWN0cy1jb21wLW9wLWFnZycsXG4gICAgICAgICAgICAgICAgJ2NvbWJpbmVkLXNpbmdsZS1saW1pdCcsXG4gICAgICAgICAgICAgICAgJ3NpbmdsZS1jb252ZXlhbmNlJyxcbiAgICAgICAgICAgICAgICAnZGVkdWN0YWJsZScsXG4gICAgICAgICAgICAgICAgJ2NvbXByZWgtY29sbGlzaW9uJyxcbiAgICAgICAgICAgICAgICAndHJhaWxlci12YWx1ZS1pbnN1cmFuY2UtcG9saWN5JyxcbiAgICAgICAgICAgICAgICAncmVudCcsXG4gICAgICAgICAgICAgICAgJ3NhbGFyeScsXG4gICAgICAgICAgICAgICAgJ21pbGVhZ2UnLFxuICAgICAgICAgICAgICAgICdtb250aHMnLFxuICAgICAgICAgICAgICAgICdlbXB0eSB3ZWlnaHQnLFxuICAgICAgICAgICAgICAgICdxdHknLFxuICAgICAgICAgICAgICAgICdwdXJjaGFzZSBwcmljZScsXG4gICAgICAgICAgICBdLmluY2x1ZGVzKGlucHV0TmFtZSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXlswLTldKiQvZyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bMC05XSokL2c7XG4gICAgICAgIH0gZWxzZSBpZiAoJ2VtYWlsJyA9PT0gaW5wdXROYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXltBLVphLXowLTkhIyQlJicqKy89P15fYHt8fX5ALi1dKiQvZyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogdHJ1ZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvL3JldHVybiAvXltBLVphLXowLTkhIyQlJicqKy89P15fYHt8fX5ALi1dKiQvZztcbiAgICAgICAgfSBlbHNlIGlmICgnaW52b2ljZScgPT09IGlucHV0TmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWdleDogL15bQS1aYS16MC05Ly1dKiQvZyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bQS1aYS16MC05Ly1dKiQvZztcbiAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAgIFsnYWRkcmVzcy11bml0JywgJ2RlcGFydG1lbnQnLCAndmVoaWNsZS11bml0J10uaW5jbHVkZXMoaW5wdXROYW1lKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVnZXg6IC9eW0EtWmEtejAtOV0qJC8sXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0TXVsdGlwZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vcmV0dXJuIC9eW0EtWmEtejAtOV0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ2ZpcnN0IG5hbWUnID09PSBpbnB1dE5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVnZXg6IC9eW0EtWmEteicsXFxzLi1dKiQvLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVTcGFjZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvL3JldHVybiAvXltBLVphLXonLFxccy4tXSokLztcbiAgICAgICAgfSBlbHNlIGlmICgnbGFzdCBuYW1lJyA9PT0gaW5wdXROYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXltBLVphLXonLFxccy4tXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bQS1aYS16JyxcXHMuLV0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ2JhbmsgbmFtZScgPT09IGlucHV0TmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWdleDogL15bQS1aYS16MC05ISMnJCYlKCkqKywuLzo7PTw+Py1eW10qJC8sXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0TXVsdGlwZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vcmV0dXJuIC9eW0EtWmEtejAtOSEjJyQmJSgpKissLi86Oz08Pj8tXltdKiQvO1xuICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgWyd2aW4tbnVtYmVyJywgJ2luc3VyYW5jZS1wb2xpY3knLCAnaWZ0YSddLmluY2x1ZGVzKGlucHV0TmFtZSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXltBLVphLXowLTktXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bQS1aYS16MC05LV0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ3RydWNrLXRyYWlsZXItbW9kZWwnID09PSBpbnB1dE5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVnZXg6IC9eW0EtWmEtejAtOVxccy1dKiQvLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVTcGFjZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvL3JldHVybiAvXltBLVphLXowLTlcXHMtXSokLztcbiAgICAgICAgfSBlbHNlIGlmICgneWVhcicgPT09IGlucHV0TmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWdleDogL15bMC05XSQvLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVTcGFjZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvL3JldHVybiAvXlswLTldJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ2xpY2Vuc2UgcGxhdGUnID09PSBpbnB1dE5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVnZXg6IC9eW0EtWmEtejAtOVxcc10qJC8sXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0TXVsdGlwZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vcmV0dXJuIC9eW0EtWmEtejAtOVxcc10qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ2Rlc2NyaXB0aW9uJyA9PT0gaW5wdXROYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXltBLVphLXowLTktLiwvXFxzXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bQS1aYS16MC05LS4sL1xcc10qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ2RiYSBuYW1lJyA9PT0gaW5wdXROYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXltBLVphLXowLTkhIyckJiUoKSorLC4vOjs9PD4/XlstXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bQS1aYS16MC05ISMnJCYlKCkqKywuLzo7PTw+P15bLV0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ3BlciBtaWxlJyA9PT0gaW5wdXROYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXlswLTkuXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bMC05Ll0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ3BlciBzdG9wJyA9PT0gaW5wdXROYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXlswLTldKiQvLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVTcGFjZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvL3JldHVybiAvXlswLTldKiQvO1xuICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgWydlbWVyZ2VuY3kgbmFtZScsICdyZWxhdGlvbnNoaXAnLCAnc2NhYyddLmluY2x1ZGVzKGlucHV0TmFtZSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXltBLVphLXonLFxccy4tXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bQS1aYS16JyxcXHMuLV0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ2Z1ZWwgc3RvcmUnID09PSBpbnB1dE5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVnZXg6IC9eW0EtWmEtejAtOS1dKiQvLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVTcGFjZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvL3JldHVybiAvXltBLVphLXowLTktXSokLztcbiAgICAgICAgfSBlbHNlIGlmICgnaG9zJyA9PT0gaW5wdXROYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXlswLTldKiQvLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVTcGFjZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvL3JldHVybiAvXlswLTldKiQvO1xuICAgICAgICB9IGVsc2UgaWYgKFsnZnVsbCBwYXJraW5nIHNsb3QnLCAncGFya2luZyBzbG90J10uaW5jbHVkZXMoaW5wdXROYW1lKSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWdleDogL15bMC05LC1dKiQvLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVTcGFjZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvL3JldHVybiAvXlswLTksLV0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ2NkbC1udW1iZXInID09PSBpbnB1dE5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVnZXg6IC9eW0EtWmEtejAtOVxccyotXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bQS1aYS16MC05XFxzKi1dKiQvO1xuICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgWyd1c2VybmFtZScsICduaWNrbmFtZScsICd0ZXJtaW5hbCBuYW1lJywgJ3Bhc3N3b3JkJ10uaW5jbHVkZXMoXG4gICAgICAgICAgICAgICAgaW5wdXROYW1lXG4gICAgICAgICAgICApXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWdleDogL15bQS1aYS16MC05LixfISNefls/LzxgQCQlKis9fXt8OlwiOz4mJygpLV0qJC8sXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0TXVsdGlwZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vcmV0dXJuIC9eW0EtWmEtejAtOS4sXyEjXn5bPy88YEAkJSorPX17fDpcIjs+JicoKS1dKiQvO1xuICAgICAgICB9IGVsc2UgaWYgKCdmdWxsIG5hbWUnID09PSBpbnB1dE5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVnZXg6IC9eW0EtWmEtejAtOS4sLyFAIyQlXiYqKClfKz17fVwiJzo+Pzw7XFxzLV0qJC8sXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0TXVsdGlwZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vcmV0dXJuIC9eW0EtWmEtejAtOS4sLyFAIyQlXiYqKClfKz17fVwiJzo+Pzw7XFxzLV0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ3RvbGx2YWxpZGF0aW9uJyA9PT0gaW5wdXROYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXlswLTktXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bMC05LV0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoWydwcmVmaXgnLCAnc3VmZml4JywgJ3BhcmtpbmcgbmFtZSddLmluY2x1ZGVzKGlucHV0TmFtZSkpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVnZXg6IC9eW0EtWmEtejAtOV0qJC8sXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0TXVsdGlwZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vcmV0dXJuIC9eW0EtWmEtejAtOV0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ2ZpbGUgbmFtZScgPT09IGlucHV0TmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWdleDogL15bOio/XCI8PnwvXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bOio/XCI8PnwvXSokLztcbiAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAgIFsncHJvZHVjZXIgbmFtZScsICdpbnN1cmVyIG5hbWUnLCAnb2ZmaWNlIG5hbWUnXS5pbmNsdWRlcyhpbnB1dE5hbWUpXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWdleDogL15bQS1aYS16MC05ISMnJCYlKCkqKywuLzs6PTw+P1teLV0qJC8sXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0TXVsdGlwZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vcmV0dXJuIC9eW0EtWmEtejAtOSEjJyQmJSgpKissLi87Oj08Pj9bXi1dKiQvO1xuICAgICAgICB9IGVsc2UgaWYgKFsnZnVsbCBjb250YWN0IG5hbWUnXS5pbmNsdWRlcyhpbnB1dE5hbWUpKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXltBLVphLXpcXHNdKyQvLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVTcGFjZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvL3JldHVybiAvXltBLVphLXpcXHNdKyQvO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHJlZ2V4OiAvLiovLFxuICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIGlzRGVjaW1hbEFuZERvdE9ubHk6IGZhbHNlXG4gICAgICAgIH07XG4gICAgfVxufVxuIl19
|
|
323
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtcGF0dGVybi5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtaW5wdXQvcGlwZXMvaW5wdXQtcGF0dGVybi5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQU1wRCxNQUFNLE9BQU8sZ0JBQWdCO0lBQ3pCLFNBQVMsQ0FBQyxTQUFpQixFQUFFLEdBQUcsSUFBVztRQUN2QyxJQUFJLENBQUMsZUFBZSxFQUFFLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztZQUNsRSxPQUFPO2dCQUNILEtBQUssRUFBRSx1REFBdUQ7Z0JBQzlELHlCQUF5QixFQUFFLEtBQUs7Z0JBQ2hDLHVCQUF1QixFQUFFLEtBQUs7Z0JBQzlCLG1CQUFtQixFQUFFLEtBQUs7YUFDN0IsQ0FBQztRQUNOLENBQUM7YUFBTSxJQUFJLGlCQUFpQixLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3pDLE9BQU87Z0JBQ0gsS0FBSyxFQUFFLFdBQVc7Z0JBQ2xCLG1CQUFtQixFQUFFLElBQUk7Z0JBQ3pCLG1CQUFtQixFQUFFLElBQUk7YUFDNUIsQ0FBQztZQUNGLHFCQUFxQjtRQUN6QixDQUFDO2FBQU0sSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztZQUM5QyxPQUFPO2dCQUNILEtBQUssRUFBRSxlQUFlO2FBQ3pCLENBQUM7UUFDTixDQUFDO2FBQU0sSUFDSDtZQUNJLEtBQUs7WUFDTCxPQUFPO1lBQ1AsaUJBQWlCO1lBQ2pCLGNBQWM7WUFDZCxjQUFjO1lBQ2QsS0FBSztZQUNMLFdBQVc7WUFDWCxjQUFjO1lBQ2QsY0FBYztZQUNkLFFBQVE7WUFDUixP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QUUsS0FBSztZQUMxQixtQkFBbUIsRUFBRSxLQUFLO1NBQzdCLENBQUM7SUFDTixDQUFDOytHQXZTUSxnQkFBZ0I7NkdBQWhCLGdCQUFnQjs7NEZBQWhCLGdCQUFnQjtrQkFKNUIsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsY0FBYztvQkFDcEIsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AUGlwZSh7XG4gICAgbmFtZTogJ2lucHV0UGF0dGVybicsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRQYXR0ZXJuUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybShpbnB1dE5hbWU6IHN0cmluZywgLi4uYXJnczogYW55W10pIHtcbiAgICAgICAgaWYgKFsnYnVzaW5lc3MgbmFtZScsICdzaG9wIG5hbWUnLCAnZnVlbCBzdG9wJ10uaW5jbHVkZXMoaW5wdXROYW1lKSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWdleDogL15bQS1aYS16MC05ISMnJCYlKCkqKywuL1s6Oz08Pj/Dp8Opw6LDqsOuw7TDu8Ogw6jDrMOyw7nDq8Ovw7xcXHMtXSokL2csXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0TXVsdGlwZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSBlbHNlIGlmICgncHJpY2Utc2VwYXJhdG9yJyA9PT0gaW5wdXROYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXlswLTkuXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiB0cnVlLFxuICAgICAgICAgICAgICAgIGlzRGVjaW1hbEFuZERvdE9ubHk6IHRydWUsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bMC05Ll0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoWydwaG9uZScsICdmYXgnXS5pbmNsdWRlcyhpbnB1dE5hbWUpKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXlswLTkoKSAtXSokL2csXG4gICAgICAgICAgICB9O1xuICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICdlaW4nLFxuICAgICAgICAgICAgICAgICdtYy9mZicsXG4gICAgICAgICAgICAgICAgJ3Bob25lLWV4dGVuc2lvbicsXG4gICAgICAgICAgICAgICAgJ2FjY291bnQtYmFuaycsXG4gICAgICAgICAgICAgICAgJ3JvdXRpbmctYmFuaycsXG4gICAgICAgICAgICAgICAgJ3NzbicsXG4gICAgICAgICAgICAgICAgJ2Z1ZWwtY2FyZCcsXG4gICAgICAgICAgICAgICAgJ2VtcHR5LXdlaWdodCcsXG4gICAgICAgICAgICAgICAgJ2NyZWRpdCBsaW1pdCcsXG4gICAgICAgICAgICAgICAgJ3BvIGJveCcsXG4gICAgICAgICAgICAgICAgJ3ByaWNlJyxcbiAgICAgICAgICAgICAgICAndHJhaWxlci12b2x1bWUnLFxuICAgICAgICAgICAgICAgICdyZXBhaXItb2RvbWV0ZXInLFxuICAgICAgICAgICAgICAgICd1c2RvdCcsXG4gICAgICAgICAgICAgICAgJ2lycCcsXG4gICAgICAgICAgICAgICAgJ3N0YXJ0aW5nJyxcbiAgICAgICAgICAgICAgICAnY3VzdG9tZXIgcGF5IHRlcm0nLFxuICAgICAgICAgICAgICAgICdjdXN0b21lciBjcmVkaXQnLFxuICAgICAgICAgICAgICAgICdkZWZhdWx0IGJhc2UnLFxuICAgICAgICAgICAgICAgICdlYWNoIG9jY3VycmVuY2UnLFxuICAgICAgICAgICAgICAgICdkYW1hZ2UnLFxuICAgICAgICAgICAgICAgICdwZXJzb25hbC1hZHZlci1pbmonLFxuICAgICAgICAgICAgICAgICdtZWRpY2FsIGV4cGVuc2VzJyxcbiAgICAgICAgICAgICAgICAnYm9kaWx5IGluanVyeScsXG4gICAgICAgICAgICAgICAgJ2dlbmVyYWwgYWdncmVnYXRlJyxcbiAgICAgICAgICAgICAgICAncHJvZHVjdHMtY29tcC1vcC1hZ2cnLFxuICAgICAgICAgICAgICAgICdjb21iaW5lZC1zaW5nbGUtbGltaXQnLFxuICAgICAgICAgICAgICAgICdzaW5nbGUtY29udmV5YW5jZScsXG4gICAgICAgICAgICAgICAgJ2RlZHVjdGFibGUnLFxuICAgICAgICAgICAgICAgICdjb21wcmVoLWNvbGxpc2lvbicsXG4gICAgICAgICAgICAgICAgJ3RyYWlsZXItdmFsdWUtaW5zdXJhbmNlLXBvbGljeScsXG4gICAgICAgICAgICAgICAgJ3JlbnQnLFxuICAgICAgICAgICAgICAgICdzYWxhcnknLFxuICAgICAgICAgICAgICAgICdtaWxlYWdlJyxcbiAgICAgICAgICAgICAgICAnbW9udGhzJyxcbiAgICAgICAgICAgICAgICAnZW1wdHkgd2VpZ2h0JyxcbiAgICAgICAgICAgICAgICAncXR5JyxcbiAgICAgICAgICAgICAgICAncHVyY2hhc2UgcHJpY2UnLFxuICAgICAgICAgICAgXS5pbmNsdWRlcyhpbnB1dE5hbWUpXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWdleDogL15bMC05XSokL2csXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0TXVsdGlwZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vcmV0dXJuIC9eWzAtOV0qJC9nO1xuICAgICAgICB9IGVsc2UgaWYgKCdlbWFpbCcgPT09IGlucHV0TmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWdleDogL15bQS1aYS16MC05ISMkJSYnKisvPT9eX2B7fH1+QC4tXSokL2csXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZURvdHM6IHRydWUsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bQS1aYS16MC05ISMkJSYnKisvPT9eX2B7fH1+QC4tXSokL2c7XG4gICAgICAgIH0gZWxzZSBpZiAoJ2ludm9pY2UnID09PSBpbnB1dE5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVnZXg6IC9eW0EtWmEtejAtOS8tXSokL2csXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0TXVsdGlwZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vcmV0dXJuIC9eW0EtWmEtejAtOS8tXSokL2c7XG4gICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgICBbJ2FkZHJlc3MtdW5pdCcsICdkZXBhcnRtZW50JywgJ3ZlaGljbGUtdW5pdCddLmluY2x1ZGVzKGlucHV0TmFtZSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXltBLVphLXowLTldKiQvLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVTcGFjZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvL3JldHVybiAvXltBLVphLXowLTldKiQvO1xuICAgICAgICB9IGVsc2UgaWYgKCdmaXJzdCBuYW1lJyA9PT0gaW5wdXROYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXltBLVphLXonLFxccy4tXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bQS1aYS16JyxcXHMuLV0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ2xhc3QgbmFtZScgPT09IGlucHV0TmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWdleDogL15bQS1aYS16JyxcXHMuLV0qJC8sXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0TXVsdGlwZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vcmV0dXJuIC9eW0EtWmEteicsXFxzLi1dKiQvO1xuICAgICAgICB9IGVsc2UgaWYgKCdiYW5rIG5hbWUnID09PSBpbnB1dE5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVnZXg6IC9eW0EtWmEtejAtOSEjJyQmJSgpKissLi86Oz08Pj8tXltdKiQvLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVTcGFjZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvL3JldHVybiAvXltBLVphLXowLTkhIyckJiUoKSorLC4vOjs9PD4/LV5bXSokLztcbiAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAgIFsndmluLW51bWJlcicsICdpbnN1cmFuY2UtcG9saWN5JywgJ2lmdGEnXS5pbmNsdWRlcyhpbnB1dE5hbWUpXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWdleDogL15bQS1aYS16MC05LV0qJC8sXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0TXVsdGlwZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vcmV0dXJuIC9eW0EtWmEtejAtOS1dKiQvO1xuICAgICAgICB9IGVsc2UgaWYgKCd0cnVjay10cmFpbGVyLW1vZGVsJyA9PT0gaW5wdXROYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXltBLVphLXowLTlcXHMtXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bQS1aYS16MC05XFxzLV0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ3llYXInID09PSBpbnB1dE5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVnZXg6IC9eKHwwfFsxLTldXFxkKikkLyxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvL3JldHVybiAvXlswLTldJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ2xpY2Vuc2UgcGxhdGUnID09PSBpbnB1dE5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVnZXg6IC9eW0EtWmEtejAtOVxcc10qJC8sXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0TXVsdGlwZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vcmV0dXJuIC9eW0EtWmEtejAtOVxcc10qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ2Rlc2NyaXB0aW9uJyA9PT0gaW5wdXROYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXltBLVphLXowLTktLiwvXFxzXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bQS1aYS16MC05LS4sL1xcc10qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ2RiYSBuYW1lJyA9PT0gaW5wdXROYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXltBLVphLXowLTkhIyckJiUoKSorLC4vOjs9PD4/XlstXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bQS1aYS16MC05ISMnJCYlKCkqKywuLzo7PTw+P15bLV0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ3BlciBtaWxlJyA9PT0gaW5wdXROYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXlswLTkuXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bMC05Ll0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ3BlciBzdG9wJyA9PT0gaW5wdXROYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXlswLTldKiQvLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVTcGFjZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvL3JldHVybiAvXlswLTldKiQvO1xuICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgWydlbWVyZ2VuY3kgbmFtZScsICdyZWxhdGlvbnNoaXAnLCAnc2NhYyddLmluY2x1ZGVzKGlucHV0TmFtZSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXltBLVphLXonLFxccy4tXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bQS1aYS16JyxcXHMuLV0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ2Z1ZWwgc3RvcmUnID09PSBpbnB1dE5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVnZXg6IC9eW0EtWmEtejAtOS1dKiQvLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVTcGFjZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvL3JldHVybiAvXltBLVphLXowLTktXSokLztcbiAgICAgICAgfSBlbHNlIGlmICgnaG9zJyA9PT0gaW5wdXROYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXlswLTldKiQvLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVTcGFjZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvL3JldHVybiAvXlswLTldKiQvO1xuICAgICAgICB9IGVsc2UgaWYgKFsnZnVsbCBwYXJraW5nIHNsb3QnLCAncGFya2luZyBzbG90J10uaW5jbHVkZXMoaW5wdXROYW1lKSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWdleDogL15bMC05LC1dKiQvLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVTcGFjZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvL3JldHVybiAvXlswLTksLV0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ2NkbC1udW1iZXInID09PSBpbnB1dE5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVnZXg6IC9eW0EtWmEtejAtOVxccyotXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bQS1aYS16MC05XFxzKi1dKiQvO1xuICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgWyd1c2VybmFtZScsICduaWNrbmFtZScsICd0ZXJtaW5hbCBuYW1lJywgJ3Bhc3N3b3JkJ10uaW5jbHVkZXMoXG4gICAgICAgICAgICAgICAgaW5wdXROYW1lXG4gICAgICAgICAgICApXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWdleDogL15bQS1aYS16MC05LixfISNefls/LzxgQCQlKis9fXt8OlwiOz4mJygpLV0qJC8sXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0TXVsdGlwZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vcmV0dXJuIC9eW0EtWmEtejAtOS4sXyEjXn5bPy88YEAkJSorPX17fDpcIjs+JicoKS1dKiQvO1xuICAgICAgICB9IGVsc2UgaWYgKCdmdWxsIG5hbWUnID09PSBpbnB1dE5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVnZXg6IC9eW0EtWmEtejAtOS4sLyFAIyQlXiYqKClfKz17fVwiJzo+Pzw7XFxzLV0qJC8sXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0TXVsdGlwZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vcmV0dXJuIC9eW0EtWmEtejAtOS4sLyFAIyQlXiYqKClfKz17fVwiJzo+Pzw7XFxzLV0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ3RvbGx2YWxpZGF0aW9uJyA9PT0gaW5wdXROYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXlswLTktXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bMC05LV0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoWydwcmVmaXgnLCAnc3VmZml4JywgJ3BhcmtpbmcgbmFtZSddLmluY2x1ZGVzKGlucHV0TmFtZSkpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcmVnZXg6IC9eW0EtWmEtejAtOV0qJC8sXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0TXVsdGlwZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vcmV0dXJuIC9eW0EtWmEtejAtOV0qJC87XG4gICAgICAgIH0gZWxzZSBpZiAoJ2ZpbGUgbmFtZScgPT09IGlucHV0TmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWdleDogL15bOio/XCI8PnwvXSokLyxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlU3BhY2VzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RNdWx0aXBlRG90czogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy9yZXR1cm4gL15bOio/XCI8PnwvXSokLztcbiAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAgIFsncHJvZHVjZXIgbmFtZScsICdpbnN1cmVyIG5hbWUnLCAnb2ZmaWNlIG5hbWUnXS5pbmNsdWRlcyhpbnB1dE5hbWUpXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICByZWdleDogL15bQS1aYS16MC05ISMnJCYlKCkqKywuLzs6PTw+P1teLV0qJC8sXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0TXVsdGlwZURvdHM6IGZhbHNlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vcmV0dXJuIC9eW0EtWmEtejAtOSEjJyQmJSgpKissLi87Oj08Pj9bXi1dKiQvO1xuICAgICAgICB9IGVsc2UgaWYgKFsnZnVsbCBjb250YWN0IG5hbWUnXS5pbmNsdWRlcyhpbnB1dE5hbWUpKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlZ2V4OiAvXltBLVphLXpcXHNdKyQvLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVTcGFjZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlc3RyaWN0Q29uc2VjdXRpdmVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvL3JldHVybiAvXltBLVphLXpcXHNdKyQvO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHJlZ2V4OiAvLiovLFxuICAgICAgICAgICAgcmVzdHJpY3RDb25zZWN1dGl2ZVNwYWNlczogZmFsc2UsXG4gICAgICAgICAgICByZXN0cmljdENvbnNlY3V0aXZlRG90czogZmFsc2UsXG4gICAgICAgICAgICByZXN0cmljdE11bHRpcGVEb3RzOiBmYWxzZSxcbiAgICAgICAgICAgIGlzRGVjaW1hbEFuZERvdE9ubHk6IGZhbHNlLFxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==
|