@hitsoft/kadooglu.kalite 1.0.1 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/config/providers/route.provider.mjs +10 -10
- package/esm2020/lib/components/intake-form.component.mjs +2 -2
- package/esm2020/lib/components/intake-list.component.mjs +2 -2
- package/esm2020/lib/components/process-analysis.component.mjs +3 -3
- package/esm2020/lib/components/quality-definitions.component.mjs +3 -3
- package/esm2020/lib/components/quality-parameters.component.mjs +4 -4
- package/esm2020/lib/components/quality-reports.component.mjs +2 -2
- package/fesm2015/hitsoft-kadooglu.kalite-config.mjs +9 -9
- package/fesm2015/hitsoft-kadooglu.kalite-config.mjs.map +1 -1
- package/fesm2015/hitsoft-kadooglu.kalite.mjs +10 -10
- package/fesm2015/hitsoft-kadooglu.kalite.mjs.map +1 -1
- package/fesm2020/hitsoft-kadooglu.kalite-config.mjs +9 -9
- package/fesm2020/hitsoft-kadooglu.kalite-config.mjs.map +1 -1
- package/fesm2020/hitsoft-kadooglu.kalite.mjs +10 -10
- package/fesm2020/hitsoft-kadooglu.kalite.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -17,7 +17,7 @@ export function configureRoutes(routes) {
|
|
|
17
17
|
iconClass: 'fas fa-flask',
|
|
18
18
|
layout: "application" /* eLayoutType.application */,
|
|
19
19
|
order: 3,
|
|
20
|
-
requiredPolicy: 'Kalite.ProcessAnalysis || Kalite.Parameters || Kalite.Definitions || Kalite.Reports || Kalite.Notifications.Configure',
|
|
20
|
+
requiredPolicy: 'Hitsoft.Kadooglu.Kalite.ProcessAnalysis || Hitsoft.Kadooglu.Kalite.Parameters || Hitsoft.Kadooglu.Kalite.Definitions || Hitsoft.Kadooglu.Kalite.Reports || Hitsoft.Kadooglu.Kalite.Notifications.Configure',
|
|
21
21
|
},
|
|
22
22
|
{
|
|
23
23
|
path: '/kalite/process-analysis',
|
|
@@ -25,7 +25,7 @@ export function configureRoutes(routes) {
|
|
|
25
25
|
name: "Kalite::Menu:ProcessAnalysis" /* eKaliteRouteNames.ProcessAnalysis */,
|
|
26
26
|
layout: "application" /* eLayoutType.application */,
|
|
27
27
|
order: 1,
|
|
28
|
-
requiredPolicy: 'Kalite.ProcessAnalysis',
|
|
28
|
+
requiredPolicy: 'Hitsoft.Kadooglu.Kalite.ProcessAnalysis',
|
|
29
29
|
},
|
|
30
30
|
{
|
|
31
31
|
path: '/kalite/parameters',
|
|
@@ -33,25 +33,25 @@ export function configureRoutes(routes) {
|
|
|
33
33
|
name: "Kalite::Menu:Parameters" /* eKaliteRouteNames.Parameters */,
|
|
34
34
|
layout: "application" /* eLayoutType.application */,
|
|
35
35
|
order: 2,
|
|
36
|
-
requiredPolicy: 'Kalite.Parameters',
|
|
36
|
+
requiredPolicy: 'Hitsoft.Kadooglu.Kalite.Parameters',
|
|
37
37
|
},
|
|
38
38
|
{
|
|
39
39
|
path: '/kalite/intake',
|
|
40
40
|
parentName: 'KadoogluTartim::Menu:KadoogluTartim',
|
|
41
41
|
name: 'Kalite::Menu:Intake', layout: "application" /* eLayoutType.application */,
|
|
42
|
-
order: 4, requiredPolicy: 'Kalite.Intake',
|
|
42
|
+
order: 4, requiredPolicy: 'Hitsoft.Kadooglu.Kalite.Intake',
|
|
43
43
|
},
|
|
44
44
|
{ path: '/kalite/definitions', parentName: "Kalite::Menu:Kalite" /* eKaliteRouteNames.Kalite */, name: 'Kalite::Menu:Definitions',
|
|
45
|
-
layout: "application" /* eLayoutType.application */, order: 3, requiredPolicy: 'Kalite.Definitions' },
|
|
45
|
+
layout: "application" /* eLayoutType.application */, order: 3, requiredPolicy: 'Hitsoft.Kadooglu.Kalite.Definitions' },
|
|
46
46
|
{ path: '/kalite/reports/input', parentName: "Kalite::Menu:Kalite" /* eKaliteRouteNames.Kalite */, name: 'Kalite::Menu:InputReports',
|
|
47
|
-
layout: "application" /* eLayoutType.application */, order: 4, requiredPolicy: 'Kalite.Reports' },
|
|
47
|
+
layout: "application" /* eLayoutType.application */, order: 4, requiredPolicy: 'Hitsoft.Kadooglu.Kalite.Reports' },
|
|
48
48
|
{ path: '/kalite/reports/process', parentName: "Kalite::Menu:Kalite" /* eKaliteRouteNames.Kalite */, name: 'Kalite::Menu:ProcessReports',
|
|
49
|
-
layout: "application" /* eLayoutType.application */, order: 5, requiredPolicy: 'Kalite.Reports' },
|
|
49
|
+
layout: "application" /* eLayoutType.application */, order: 5, requiredPolicy: 'Hitsoft.Kadooglu.Kalite.Reports' },
|
|
50
50
|
{ path: '/kalite/reports/rejected', parentName: "Kalite::Menu:Kalite" /* eKaliteRouteNames.Kalite */, name: 'Kalite::Menu:RejectionReports',
|
|
51
|
-
layout: "application" /* eLayoutType.application */, order: 6, requiredPolicy: 'Kalite.Reports' },
|
|
51
|
+
layout: "application" /* eLayoutType.application */, order: 6, requiredPolicy: 'Hitsoft.Kadooglu.Kalite.Reports' },
|
|
52
52
|
{ path: '/kalite/notification-settings', parentName: "Kalite::Menu:Kalite" /* eKaliteRouteNames.Kalite */, name: 'Kalite::Menu:NotificationSettings',
|
|
53
|
-
layout: "application" /* eLayoutType.application */, order: 7, requiredPolicy: 'Kalite.Notifications.Configure' },
|
|
53
|
+
layout: "application" /* eLayoutType.application */, order: 7, requiredPolicy: 'Hitsoft.Kadooglu.Kalite.Notifications.Configure' },
|
|
54
54
|
]);
|
|
55
55
|
};
|
|
56
56
|
}
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWxpdGUvY29uZmlnL3NyYy9wcm92aWRlcnMvcm91dGUucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFlLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBRzFELE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFlO0lBQ2hEO1FBQ0UsT0FBTyxFQUFFLGVBQWU7UUFDeEIsVUFBVSxFQUFFLGVBQWU7UUFDM0IsSUFBSSxFQUFFLENBQUMsYUFBYSxDQUFDO1FBQ3JCLEtBQUssRUFBRSxJQUFJO0tBQ1o7Q0FDRixDQUFDO0FBRUYsTUFBTSxVQUFVLGVBQWUsQ0FBQyxNQUFxQjtJQUNuRCxPQUFPLEdBQUcsRUFBRTtRQUNWLE1BQU0sQ0FBQyxHQUFHLENBQUM7WUFDVDtnQkFDRSxJQUFJLEVBQUUsU0FBUztnQkFDZixJQUFJLHNEQUEwQjtnQkFDOUIsU0FBUyxFQUFFLGNBQWM7Z0JBQ3pCLE1BQU0sNkNBQXlCO2dCQUMvQixLQUFLLEVBQUUsQ0FBQztnQkFDUixjQUFjLEVBQUUsNE1BQTRNO2FBQzdOO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLDBCQUEwQjtnQkFDaEMsVUFBVSxzREFBMEI7Z0JBQ3BDLElBQUksd0VBQW1DO2dCQUN2QyxNQUFNLDZDQUF5QjtnQkFDL0IsS0FBSyxFQUFFLENBQUM7Z0JBQ1IsY0FBYyxFQUFFLHlDQUF5QzthQUMxRDtZQUNEO2dCQUNFLElBQUksRUFBRSxvQkFBb0I7Z0JBQzFCLFVBQVUsc0RBQTBCO2dCQUNwQyxJQUFJLDhEQUE4QjtnQkFDbEMsTUFBTSw2Q0FBeUI7Z0JBQy9CLEtBQUssRUFBRSxDQUFDO2dCQUNSLGNBQWMsRUFBRSxvQ0FBb0M7YUFDckQ7WUFDRDtnQkFDRSxJQUFJLEVBQUUsZ0JBQWdCO2dCQUN0QixVQUFVLEVBQUUscUNBQXFDO2dCQUNqRCxJQUFJLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2Q0FBeUI7Z0JBQzVELEtBQUssRUFBRSxDQUFDLEVBQUUsY0FBYyxFQUFFLGdDQUFnQzthQUMzRDtZQUNELEVBQUUsSUFBSSxFQUFFLHFCQUFxQixFQUFFLFVBQVUsc0RBQTBCLEVBQUUsSUFBSSxFQUFFLDBCQUEwQjtnQkFDbkcsTUFBTSw2Q0FBeUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLGNBQWMsRUFBRSxxQ0FBcUMsRUFBRTtZQUNwRyxFQUFFLElBQUksRUFBRSx1QkFBdUIsRUFBRSxVQUFVLHNEQUEwQixFQUFFLElBQUksRUFBRSwyQkFBMkI7Z0JBQ3RHLE1BQU0sNkNBQXlCLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxjQUFjLEVBQUUsaUNBQWlDLEVBQUU7WUFDaEcsRUFBRSxJQUFJLEVBQUUseUJBQXlCLEVBQUUsVUFBVSxzREFBMEIsRUFBRSxJQUFJLEVBQUUsNkJBQTZCO2dCQUMxRyxNQUFNLDZDQUF5QixFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsY0FBYyxFQUFFLGlDQUFpQyxFQUFFO1lBQ2hHLEVBQUUsSUFBSSxFQUFFLDBCQUEwQixFQUFFLFVBQVUsc0RBQTBCLEVBQUUsSUFBSSxFQUFFLCtCQUErQjtnQkFDN0csTUFBTSw2Q0FBeUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLGNBQWMsRUFBRSxpQ0FBaUMsRUFBRTtZQUNoRyxFQUFFLElBQUksRUFBRSwrQkFBK0IsRUFBRSxVQUFVLHNEQUEwQixFQUFFLElBQUksRUFBRSxtQ0FBbUM7Z0JBQ3RILE1BQU0sNkNBQXlCLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxjQUFjLEVBQUUsaURBQWlELEVBQUU7U0FDakgsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGVMYXlvdXRUeXBlLCBSb3V0ZXNTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IEFQUF9JTklUSUFMSVpFUiwgUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGVLYWxpdGVSb3V0ZU5hbWVzIH0gZnJvbSAnLi4vZW51bXMvcm91dGUtbmFtZXMnO1xuXG5leHBvcnQgY29uc3QgS0FMSVRFX1JPVVRFX1BST1ZJREVSUzogUHJvdmlkZXJbXSA9IFtcbiAge1xuICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcbiAgICB1c2VGYWN0b3J5OiBjb25maWd1cmVSb3V0ZXMsXG4gICAgZGVwczogW1JvdXRlc1NlcnZpY2VdLFxuICAgIG11bHRpOiB0cnVlLFxuICB9LFxuXTtcblxuZXhwb3J0IGZ1bmN0aW9uIGNvbmZpZ3VyZVJvdXRlcyhyb3V0ZXM6IFJvdXRlc1NlcnZpY2UpIHtcbiAgcmV0dXJuICgpID0+IHtcbiAgICByb3V0ZXMuYWRkKFtcbiAgICAgIHtcbiAgICAgICAgcGF0aDogJy9rYWxpdGUnLFxuICAgICAgICBuYW1lOiBlS2FsaXRlUm91dGVOYW1lcy5LYWxpdGUsXG4gICAgICAgIGljb25DbGFzczogJ2ZhcyBmYS1mbGFzaycsXG4gICAgICAgIGxheW91dDogZUxheW91dFR5cGUuYXBwbGljYXRpb24sXG4gICAgICAgIG9yZGVyOiAzLFxuICAgICAgICByZXF1aXJlZFBvbGljeTogJ0hpdHNvZnQuS2Fkb29nbHUuS2FsaXRlLlByb2Nlc3NBbmFseXNpcyB8fCBIaXRzb2Z0LkthZG9vZ2x1LkthbGl0ZS5QYXJhbWV0ZXJzIHx8IEhpdHNvZnQuS2Fkb29nbHUuS2FsaXRlLkRlZmluaXRpb25zIHx8IEhpdHNvZnQuS2Fkb29nbHUuS2FsaXRlLlJlcG9ydHMgfHwgSGl0c29mdC5LYWRvb2dsdS5LYWxpdGUuTm90aWZpY2F0aW9ucy5Db25maWd1cmUnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcGF0aDogJy9rYWxpdGUvcHJvY2Vzcy1hbmFseXNpcycsXG4gICAgICAgIHBhcmVudE5hbWU6IGVLYWxpdGVSb3V0ZU5hbWVzLkthbGl0ZSxcbiAgICAgICAgbmFtZTogZUthbGl0ZVJvdXRlTmFtZXMuUHJvY2Vzc0FuYWx5c2lzLFxuICAgICAgICBsYXlvdXQ6IGVMYXlvdXRUeXBlLmFwcGxpY2F0aW9uLFxuICAgICAgICBvcmRlcjogMSxcbiAgICAgICAgcmVxdWlyZWRQb2xpY3k6ICdIaXRzb2Z0LkthZG9vZ2x1LkthbGl0ZS5Qcm9jZXNzQW5hbHlzaXMnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcGF0aDogJy9rYWxpdGUvcGFyYW1ldGVycycsXG4gICAgICAgIHBhcmVudE5hbWU6IGVLYWxpdGVSb3V0ZU5hbWVzLkthbGl0ZSxcbiAgICAgICAgbmFtZTogZUthbGl0ZVJvdXRlTmFtZXMuUGFyYW1ldGVycyxcbiAgICAgICAgbGF5b3V0OiBlTGF5b3V0VHlwZS5hcHBsaWNhdGlvbixcbiAgICAgICAgb3JkZXI6IDIsXG4gICAgICAgIHJlcXVpcmVkUG9saWN5OiAnSGl0c29mdC5LYWRvb2dsdS5LYWxpdGUuUGFyYW1ldGVycycsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBwYXRoOiAnL2thbGl0ZS9pbnRha2UnLFxuICAgICAgICBwYXJlbnROYW1lOiAnS2Fkb29nbHVUYXJ0aW06Ok1lbnU6S2Fkb29nbHVUYXJ0aW0nLFxuICAgICAgICBuYW1lOiAnS2FsaXRlOjpNZW51OkludGFrZScsIGxheW91dDogZUxheW91dFR5cGUuYXBwbGljYXRpb24sXG4gICAgICAgIG9yZGVyOiA0LCByZXF1aXJlZFBvbGljeTogJ0hpdHNvZnQuS2Fkb29nbHUuS2FsaXRlLkludGFrZScsXG4gICAgICB9LFxuICAgICAgeyBwYXRoOiAnL2thbGl0ZS9kZWZpbml0aW9ucycsIHBhcmVudE5hbWU6IGVLYWxpdGVSb3V0ZU5hbWVzLkthbGl0ZSwgbmFtZTogJ0thbGl0ZTo6TWVudTpEZWZpbml0aW9ucycsXG4gICAgICAgIGxheW91dDogZUxheW91dFR5cGUuYXBwbGljYXRpb24sIG9yZGVyOiAzLCByZXF1aXJlZFBvbGljeTogJ0hpdHNvZnQuS2Fkb29nbHUuS2FsaXRlLkRlZmluaXRpb25zJyB9LFxuICAgICAgeyBwYXRoOiAnL2thbGl0ZS9yZXBvcnRzL2lucHV0JywgcGFyZW50TmFtZTogZUthbGl0ZVJvdXRlTmFtZXMuS2FsaXRlLCBuYW1lOiAnS2FsaXRlOjpNZW51OklucHV0UmVwb3J0cycsXG4gICAgICAgIGxheW91dDogZUxheW91dFR5cGUuYXBwbGljYXRpb24sIG9yZGVyOiA0LCByZXF1aXJlZFBvbGljeTogJ0hpdHNvZnQuS2Fkb29nbHUuS2FsaXRlLlJlcG9ydHMnIH0sXG4gICAgICB7IHBhdGg6ICcva2FsaXRlL3JlcG9ydHMvcHJvY2VzcycsIHBhcmVudE5hbWU6IGVLYWxpdGVSb3V0ZU5hbWVzLkthbGl0ZSwgbmFtZTogJ0thbGl0ZTo6TWVudTpQcm9jZXNzUmVwb3J0cycsXG4gICAgICAgIGxheW91dDogZUxheW91dFR5cGUuYXBwbGljYXRpb24sIG9yZGVyOiA1LCByZXF1aXJlZFBvbGljeTogJ0hpdHNvZnQuS2Fkb29nbHUuS2FsaXRlLlJlcG9ydHMnIH0sXG4gICAgICB7IHBhdGg6ICcva2FsaXRlL3JlcG9ydHMvcmVqZWN0ZWQnLCBwYXJlbnROYW1lOiBlS2FsaXRlUm91dGVOYW1lcy5LYWxpdGUsIG5hbWU6ICdLYWxpdGU6Ok1lbnU6UmVqZWN0aW9uUmVwb3J0cycsXG4gICAgICAgIGxheW91dDogZUxheW91dFR5cGUuYXBwbGljYXRpb24sIG9yZGVyOiA2LCByZXF1aXJlZFBvbGljeTogJ0hpdHNvZnQuS2Fkb29nbHUuS2FsaXRlLlJlcG9ydHMnIH0sXG4gICAgICB7IHBhdGg6ICcva2FsaXRlL25vdGlmaWNhdGlvbi1zZXR0aW5ncycsIHBhcmVudE5hbWU6IGVLYWxpdGVSb3V0ZU5hbWVzLkthbGl0ZSwgbmFtZTogJ0thbGl0ZTo6TWVudTpOb3RpZmljYXRpb25TZXR0aW5ncycsXG4gICAgICAgIGxheW91dDogZUxheW91dFR5cGUuYXBwbGljYXRpb24sIG9yZGVyOiA3LCByZXF1aXJlZFBvbGljeTogJ0hpdHNvZnQuS2Fkb29nbHUuS2FsaXRlLk5vdGlmaWNhdGlvbnMuQ29uZmlndXJlJyB9LFxuICAgIF0pO1xuICB9O1xufVxuIl19
|
|
@@ -33,7 +33,7 @@ export class IntakeFormComponent {
|
|
|
33
33
|
this.api.tanks().subscribe({ next: tanks => this.tanks = tanks.filter(x => x.active), error: e => this.error = errorMessage(e) });
|
|
34
34
|
}
|
|
35
35
|
ngOnDestroy() { this.destroy.next(); this.destroy.complete(); }
|
|
36
|
-
allowed(action) { return this.permissions.getGrantedPolicy('Kalite.Intake.' + action); }
|
|
36
|
+
allowed(action) { return this.permissions.getGrantedPolicy('Hitsoft.Kadooglu.Kalite.Intake.' + action); }
|
|
37
37
|
get editable() { return !!this.form?.canEdit && !this.viewOnly && this.allowed('Edit'); }
|
|
38
38
|
get parameters() { return this.form?.inspection.templateSnapshot?.parameters.filter(x => x.active).sort((a, b) => a.order - b.order) || []; }
|
|
39
39
|
get palm() { return this.form?.details.find(x => x.code === this.form?.inspection.movementDetailCode)?.profile === 'PALM'; }
|
|
@@ -159,4 +159,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
159
159
|
type: ViewChild,
|
|
160
160
|
args: ['printArea']
|
|
161
161
|
}] } });
|
|
162
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50YWtlLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2FsaXRlL3NyYy9saWIvY29tcG9uZW50cy9pbnRha2UtZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWxpdGUvc3JjL2xpYi9jb21wb25lbnRzL2ludGFrZS1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWlDLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdwRixPQUFPLEVBQUUsT0FBTyxFQUFZLE1BQU0sTUFBTSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUkzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3RILE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7OztBQUduRCxNQUFNLE9BQU8sbUJBQW1CO0lBSzlCLFlBQW9CLEdBQXNCLEVBQVUsS0FBcUIsRUFBVSxNQUFjLEVBQVUsV0FBOEI7UUFBckgsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBbUI7UUFIekksU0FBSSxHQUFzQixJQUFJLENBQUM7UUFBQyxVQUFLLEdBQWtCLEVBQUUsQ0FBQztRQUFDLFNBQUksR0FBRyxLQUFLLENBQUM7UUFBQyxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQUMsWUFBTyxHQUFHLEVBQUUsQ0FBQztRQUFDLG9CQUFlLEdBQUcsRUFBRSxDQUFDO1FBQUMsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUFDLGFBQVEsR0FBRyxLQUFLLENB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QUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3RNLENBQUM7SUFDRCxLQUFLLENBQUMsS0FBSztRQUNULElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7WUFBRSxPQUFPO1FBQ2pGLElBQUk7WUFBRSxNQUFNLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxpQkFBaUIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztTQUFFO1FBQ3JHLE9BQU8sQ0FBQyxFQUFFO1lBQUUsSUFBSSxDQUFDLEtBQUssR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FBRTtJQUM3QyxDQUFDO0lBQ0QsSUFBSSxLQUFXLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzs7Z0hBN0UvQyxtQkFBbUI7b0dBQW5CLG1CQUFtQiwrSkNaaEMsbXZXQWtFQTsyRkR0RGEsbUJBQW1CO2tCQUQvQixTQUFTOytCQUFhLGlCQUFpQjswTEFFZCxTQUFTO3NCQUFoQyxTQUFTO3VCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgUGVybWlzc2lvblNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgZm9ya0pvaW4gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEludGFrZUZvcm0sIFF1YWxpdHlUYW5rIH0gZnJvbSAnLi4vbW9kZWxzL2ludGFrZS5tb2RlbHMnO1xuaW1wb3J0IHsgUXVhbGl0eU1lYXN1cmVtZW50LCBRdWFsaXR5UGFyYW1ldGVyIH0gZnJvbSAnLi4vbW9kZWxzL3F1YWxpdHkubW9kZWxzJztcbmltcG9ydCB7IFF1YWxpdHlBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvcXVhbGl0eS1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBhcHBsaWNhYmxlTGltaXQsIGVycm9yTWVzc2FnZSwgbG9jYWxEYXRlLCByZWNhbGN1bGF0ZSwgc3RhdHVzTGFiZWwgfSBmcm9tICcuLi9zZXJ2aWNlcy9xdWFsaXR5LW1lYXN1cmVtZW50cyc7XG5pbXBvcnQgeyBwcmludEZvcm0gfSBmcm9tICcuLi9zZXJ2aWNlcy9wcmludC1mb3JtJztcblxuQENvbXBvbmVudCh7IHNlbGVjdG9yOiAnbGliLWludGFrZS1mb3JtJywgdGVtcGxhdGVVcmw6ICcuL2ludGFrZS1mb3JtLmNvbXBvbmVudC5odG1sJywgc3R5bGVVcmxzOiBbJy4vaW50YWtlLmNvbXBvbmVudC5zY3NzJ10gfSlcbmV4cG9ydCBjbGFzcyBJbnRha2VGb3JtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBAVmlld0NoaWxkKCdwcmludEFyZWEnKSBwcmludEFyZWE/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcbiAgZm9ybTogSW50YWtlRm9ybSB8IG51bGwgPSBudWxsOyB0YW5rczogUXVhbGl0eVRhbmtbXSA9IFtdOyBidXN5ID0gZmFsc2U7IGVycm9yID0gJyc7IHN1Y2Nlc3MgPSAnJzsgdmFsaWRhdGlvbkVycm9yID0gJyc7IGRlY2lzaW9uID0gJyc7IHZpZXdPbmx5ID0gZmFsc2U7XG4gIGNvbXBvc2l0ZUVkaXRvciA9IGZhbHNlOyBjb21wb3NpdGVNZWFzdXJlbWVudHM6IFF1YWxpdHlNZWFzdXJlbWVudFtdID0gW107IHN0YXR1c0xhYmVsID0gc3RhdHVzTGFiZWw7XG4gIHByaXZhdGUgZGVzdHJveSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXBpOiBRdWFsaXR5QXBpU2VydmljZSwgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsIHByaXZhdGUgcGVybWlzc2lvbnM6IFBlcm1pc3Npb25TZXJ2aWNlKSB7fVxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnJvdXRlLnBhcmFtTWFwLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSkpLnN1YnNjcmliZShwYXJhbXMgPT4geyB0aGlzLnZpZXdPbmx5ID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtTWFwLmdldCgnbW9kZScpID09PSAndmlldyc7IHRoaXMubG9hZChOdW1iZXIocGFyYW1zLmdldCgnaWQnKSkpOyB9KTtcbiAgICB0aGlzLmFwaS50YW5rcygpLnN1YnNjcmliZSh7IG5leHQ6IHRhbmtzID0+IHRoaXMudGFua3MgPSB0YW5rcy5maWx0ZXIoeCA9PiB4LmFjdGl2ZSksIGVycm9yOiBlID0+IHRoaXMuZXJyb3IgPSBlcnJvck1lc3NhZ2UoZSkgfSk7XG4gIH1cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7IHRoaXMuZGVzdHJveS5uZXh0KCk7IHRoaXMuZGVzdHJveS5jb21wbGV0ZSgpOyB9XG4gIGFsbG93ZWQoYWN0aW9uOiBzdHJpbmcpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMucGVybWlzc2lvbnMuZ2V0R3JhbnRlZFBvbGljeSgnS2FsaXRlLkludGFrZS4nICsgYWN0aW9uKTsgfVxuICBnZXQgZWRpdGFibGUoKTogYm9vbGVhbiB7IHJldHVybiAhIXRoaXMuZm9ybT8uY2FuRWRpdCAmJiAhdGhpcy52aWV3T25seSAmJiB0aGlzLmFsbG93ZWQoJ0VkaXQnKTsgfVxuICBnZXQgcGFyYW1ldGVycygpOiBRdWFsaXR5UGFyYW1ldGVyW10geyByZXR1cm4gdGhpcy5mb3JtPy5pbnNwZWN0aW9uLnRlbXBsYXRlU25hcHNob3Q/LnBhcmFtZXRlcnMuZmlsdGVyKHggPT4geC5hY3RpdmUpLnNvcnQoKGEsIGIpID0+IGEub3JkZXIgLSBiLm9yZGVyKSB8fCBbXTsgfVxuICBnZXQgcGFsbSgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuZm9ybT8uZGV0YWlscy5maW5kKHggPT4geC5jb2RlID09PSB0aGlzLmZvcm0/Lmluc3BlY3Rpb24ubW92ZW1lbnREZXRhaWxDb2RlKT8ucHJvZmlsZSA9PT0gJ1BBTE0nOyB9XG4gIHByaXZhdGUgbG9jYWxUaW1lKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcgeyBjb25zdCBkID0gbmV3IERhdGUodmFsdWUpOyByZXR1cm4gbG9jYWxEYXRlKGQpICsgJ1QnICsgU3RyaW5nKGQuZ2V0SG91cnMoKSkucGFkU3RhcnQoMiwgJzAnKSArICc6JyArIFN0cmluZyhkLmdldE1pbnV0ZXMoKSkucGFkU3RhcnQoMiwgJzAnKTsgfVxuICBsb2FkKGlkOiBudW1iZXIpOiB2b2lkIHtcbiAgICBpZiAoIU51bWJlci5pc0ludGVnZXIoaWQpIHx8IGlkIDw9IDApIHsgdGhpcy5lcnJvciA9ICdHZcOnZXJsaSBiaXIgYXJhw6cga2F5ZMSxIHNlw6dpbi4nOyByZXR1cm47IH1cbiAgICB0aGlzLmJ1c3kgPSB0cnVlOyB0aGlzLmVycm9yID0gJyc7XG4gICAgdGhpcy5hcGkuaW50YWtlKGlkKS5zdWJzY3JpYmUoeyBuZXh0OiBmb3JtID0+IHsgdGhpcy5mb3JtID0gZm9ybTsgZm9ybS5pbnNwZWN0aW9uLmluc3BlY3RlZEF0ID0gdGhpcy5sb2NhbFRpbWUoZm9ybS5pbnNwZWN0aW9uLmluc3BlY3RlZEF0KTsgdGhpcy5kZWNpc2lvbiA9ICcnOyB0aGlzLmJ1c3kgPSBmYWxzZTsgfSwgZXJyb3I6IGUgPT4geyB0aGlzLmVycm9yID0gZXJyb3JNZXNzYWdlKGUpOyB0aGlzLmJ1c3kgPSBmYWxzZTsgfSB9KTtcbiAgfVxuICBkZXRhaWxDaGFuZ2VkKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5mb3JtKSByZXR1cm47XG4gICAgdGhpcy5idXN5ID0gdHJ1ZTtcbiAgICB0aGlzLmFwaS5pbnRha2VUZW1wbGF0ZSh0aGlzLmZvcm0uaW5zcGVjdGlvbi5tb3ZlbWVudERldGFpbENvZGUpLnN1YnNjcmliZSh7IG5leHQ6IHQgPT4geyBpZiAodGhpcy5mb3JtKSB7IHRoaXMuZm9ybS5pbnNwZWN0aW9uLnRlbXBsYXRlU25hcHNob3QgPSB0OyB0aGlzLmZvcm0uaW5zcGVjdGlvbi5tZWFzdXJlbWVudHMgPSBbXTsgdGhpcy5mb3JtLmNvbXBvc2l0ZVNhbXBsZSA9IG51bGw7IHRoaXMuY29tcG9zaXRlRWRpdG9yID0gZmFsc2U7IH0gdGhpcy5idXN5ID0gZmFsc2U7IHRoaXMuY2hhbmdlZCgpOyB9LCBlcnJvcjogZSA9PiB7IHRoaXMuZXJyb3IgPSBlcnJvck1lc3NhZ2UoZSk7IHRoaXMuYnVzeSA9IGZhbHNlOyB9IH0pO1xuICB9XG4gIG1lYXN1cmVtZW50KHA6IFF1YWxpdHlQYXJhbWV0ZXIsIGNvbXBvc2l0ZSA9IGZhbHNlKTogUXVhbGl0eU1lYXN1cmVtZW50IHtcbiAgICBjb25zdCB2YWx1ZXMgPSBjb21wb3NpdGUgPyB0aGlzLmNvbXBvc2l0ZU1lYXN1cmVtZW50cyA6IHRoaXMuZm9ybSEuaW5zcGVjdGlvbi5tZWFzdXJlbWVudHM7XG4gICAgbGV0IHZhbHVlID0gdmFsdWVzLmZpbmQoeCA9PiB4LnBhcmFtZXRlckNvZGUgPT09IHAuY29kZSk7XG4gICAgaWYgKCF2YWx1ZSkgeyB2YWx1ZSA9IHsgcGFyYW1ldGVyQ29kZTogcC5jb2RlLCBudW1iZXI6IG51bGwsIHRleHQ6ICcnIH07IHZhbHVlcy5wdXNoKHZhbHVlKTsgfVxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuICBsaW1pdExhYmVsKHA6IFF1YWxpdHlQYXJhbWV0ZXIpOiBzdHJpbmcge1xuICAgIGNvbnN0IGkgPSB0aGlzLmZvcm0/Lmluc3BlY3Rpb247IGlmICghaSkgcmV0dXJuICfigJQnO1xuICAgIGNvbnN0IGwgPSBhcHBsaWNhYmxlTGltaXQoaS50ZW1wbGF0ZVNuYXBzaG90Py5saW1pdHMgfHwgW10sIHAuY29kZSwgaS5pbnNwZWN0ZWRBdC5zbGljZSgwLCAxMCksIGkub2lsVHlwZSwgaS5vcmlnaW4pO1xuICAgIGlmICghbCkgcmV0dXJuICfigJQnO1xuICAgIGNvbnN0IHJhbmdlID0gbC5leHBlY3RlZFRleHQgfHwgKGwubWluaW11bSAhPSBudWxsICYmIGwubWF4aW11bSAhPSBudWxsID8gYCR7bC5taW5pbXVtfSDigJMgJHtsLm1heGltdW19YCA6IGwubWluaW11bSAhPSBudWxsID8gYOKJpSAke2wubWluaW11bX1gIDogbC5tYXhpbXVtICE9IG51bGwgPyBg4omkICR7bC5tYXhpbXVtfWAgOiAn4oCUJyk7XG4gICAgcmV0dXJuIHJhbmdlICsgKGwubm9taW5hbCAhPSBudWxsID8gYCDCtyBOb21pbmFsOiAke2wubm9taW5hbH1gIDogJycpO1xuICB9XG4gIGlucHV0U3RlcChwOiBRdWFsaXR5UGFyYW1ldGVyKTogbnVtYmVyIHsgcmV0dXJuIE1hdGgucG93KDEwLCAtcC5kZWNpbWFsUGxhY2VzKTsgfVxuICBjaGFuZ2VkKGNvbXBvc2l0ZSA9IGZhbHNlKTogdm9pZCB7XG4gICAgY29uc3QgaSA9IHRoaXMuZm9ybT8uaW5zcGVjdGlvbjsgaWYgKCFpPy50ZW1wbGF0ZVNuYXBzaG90KSByZXR1cm47XG4gICAgdHJ5IHsgcmVjYWxjdWxhdGUodGhpcy5wYXJhbWV0ZXJzLCBjb21wb3NpdGUgPyB0aGlzLmNvbXBvc2l0ZU1lYXN1cmVtZW50cyA6IGkubWVhc3VyZW1lbnRzLCBpLnRlbXBsYXRlU25hcHNob3QubGltaXRzLCBpLmluc3BlY3RlZEF0LnNsaWNlKDAsIDEwKSwgaS5vaWxUeXBlLCBpLm9yaWdpbik7IHRoaXMuZXJyb3IgPSAnJzsgfVxuICAgIGNhdGNoIChlKSB7IHRoaXMuZXJyb3IgPSBlIGluc3RhbmNlb2YgRXJyb3IgPyBlLm1lc3NhZ2UgOiAnSGVzYXBsYW1hIHlhcMSxbGFtYWTEsS4nOyB9XG4gIH1cbiAgcGF5bG9hZCgpOiBvYmplY3Qge1xuICAgIGNvbnN0IGkgPSB0aGlzLmZvcm0hLmluc3BlY3Rpb247XG4gICAgcmV0dXJuIHsgdmVoaWNsZUVudHJ5SWQ6IGkudmVoaWNsZUVudHJ5SWQsIG1vdmVtZW50RGV0YWlsQ29kZTogaS5tb3ZlbWVudERldGFpbENvZGUsIG9yaWdpbjogaS5vcmlnaW4gfHwgJycsIHRhbmtDb2RlOiBpLnRhbmtDb2RlIHx8ICcnLCBvaWxUeXBlOiBpLm9pbFR5cGUgfHwgJycsXG4gICAgICBiYXRjaE51bWJlcjogaS5iYXRjaE51bWJlciB8fCAnJywgbm90ZXM6IGkubm90ZXMgfHwgJycsIGFuYWx5c3Q6IGkuYW5hbHlzdCwgaW5zcGVjdGVkQXQ6IG5ldyBEYXRlKGkuaW5zcGVjdGVkQXQpLnRvSVNPU3RyaW5nKCksIHJldmlzaW9uOiBpLnJldmlzaW9uLFxuICAgICAgbWVhc3VyZW1lbnRzOiBpLm1lYXN1cmVtZW50cywgZGVjaXNpb246IHRoaXMuZGVjaXNpb24gfHwgdW5kZWZpbmVkIH07XG4gIH1cbiAgc2F2ZShhcHByb3ZlOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmZvcm0gfHwgIXRoaXMuZWRpdGFibGUpIHJldHVybjtcbiAgICBpZiAoIXRoaXMuZm9ybS5pbnNwZWN0aW9uLmluc3BlY3RlZEF0IHx8IE51bWJlci5pc05hTihEYXRlLnBhcnNlKHRoaXMuZm9ybS5pbnNwZWN0aW9uLmluc3BlY3RlZEF0KSkpIHsgdGhpcy52YWxpZGF0aW9uRXJyb3IgPSAnS29udHJvbCB0YXJpaGkgdmUgc2FhdGluaSBnaXJpbi4nOyB0aGlzLmVycm9yID0gdGhpcy52YWxpZGF0aW9uRXJyb3I7IHJldHVybjsgfVxuICAgIGlmIChhcHByb3ZlICYmICF0aGlzLmRlY2lzaW9uKSB7IHRoaXMudmFsaWRhdGlvbkVycm9yID0gJ0thYnVsIHZleWEgUmV0IHNlw6dpbi4nOyB0aGlzLmVycm9yID0gdGhpcy52YWxpZGF0aW9uRXJyb3I7IHJldHVybjsgfVxuICAgIGlmIChhcHByb3ZlICYmIHRoaXMuZGVjaXNpb24gPT09ICdSZWplY3RlZCcgJiYgIXRoaXMuZm9ybS5pbnNwZWN0aW9uLm5vdGVzPy50cmltKCkpIHsgdGhpcy52YWxpZGF0aW9uRXJyb3IgPSAnUmV0IGdlcmVrw6dlc2kgZ2lyaW4uJzsgdGhpcy5lcnJvciA9IHRoaXMudmFsaWRhdGlvbkVycm9yOyByZXR1cm47IH1cbiAgICBpZiAoIWFwcHJvdmUpIHRoaXMuZGVjaXNpb24gPSAnJztcbiAgICB0aGlzLmJ1c3kgPSB0cnVlOyB0aGlzLmVycm9yID0gJyc7IHRoaXMudmFsaWRhdGlvbkVycm9yID0gJyc7XG4gICAgdGhpcy5hcGkuc2F2ZUludGFrZSh0aGlzLnBheWxvYWQoKSkuc3Vic2NyaWJlKHsgbmV4dDogaSA9PiB7IHRoaXMuc3VjY2VzcyA9IGFwcHJvdmUgPyAnS2FsaXRlIGthcmFyxLEga2F5ZGVkaWxkaS4nIDogJ1Rhc2xhayBrYXlkZWRpbGRpLic7IHRoaXMuZm9ybSEuaW5zcGVjdGlvbiA9IGk7IGkuaW5zcGVjdGVkQXQgPSB0aGlzLmxvY2FsVGltZShpLmluc3BlY3RlZEF0KTsgdGhpcy5idXN5ID0gZmFsc2U7IH0sIGVycm9yOiBlID0+IHsgdGhpcy5lcnJvciA9IGVycm9yTWVzc2FnZShlKTsgdGhpcy5idXN5ID0gZmFsc2U7IH0gfSk7XG4gIH1cbiAgYmVnaW5Db21wb3NpdGUoKTogdm9pZCB7IHRoaXMuY29tcG9zaXRlRWRpdG9yID0gdHJ1ZTsgdGhpcy5jb21wb3NpdGVNZWFzdXJlbWVudHMgPSBbXTsgfVxuICBzYXZlQ29tcG9zaXRlKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5mb3JtKSByZXR1cm47XG4gICAgaWYgKCF0aGlzLmZvcm0uaW5zcGVjdGlvbi5pbnNwZWN0ZWRBdCB8fCBOdW1iZXIuaXNOYU4oRGF0ZS5wYXJzZSh0aGlzLmZvcm0uaW5zcGVjdGlvbi5pbnNwZWN0ZWRBdCkpKSB7IHRoaXMuZXJyb3IgPSAnTnVtdW5lIHRhcmloaSB2ZSBzYWF0aW5pIGdpcmluLic7IHJldHVybjsgfVxuICAgIHRoaXMuYnVzeSA9IHRydWU7XG4gICAgdGhpcy5hcGkuc2F2ZUNvbXBvc2l0ZSh7IC4uLnRoaXMucGF5bG9hZCgpLCByZXZpc2lvbjogMCwgbWVhc3VyZW1lbnRzOiB0aGlzLmNvbXBvc2l0ZU1lYXN1cmVtZW50cyB9KS5zdWJzY3JpYmUoeyBuZXh0OiBzYW1wbGUgPT4geyB0aGlzLmZvcm0hLmNvbXBvc2l0ZVNhbXBsZSA9IHNhbXBsZTsgdGhpcy5jb21wb3NpdGVFZGl0b3IgPSBmYWxzZTsgdGhpcy5idXN5ID0gZmFsc2U7IH0sIGVycm9yOiBlID0+IHsgdGhpcy5lcnJvciA9IGVycm9yTWVzc2FnZShlKTsgdGhpcy5idXN5ID0gZmFsc2U7IH0gfSk7XG4gIH1cbiAgcmVmcmVzaENvbXBvc2l0ZSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZm9ybSkgcmV0dXJuO1xuICAgIGNvbnN0IGkgPSB0aGlzLmZvcm0uaW5zcGVjdGlvbjtcbiAgICB0aGlzLmFwaS5pbnRha2UoaS52ZWhpY2xlRW50cnlJZCwgaS5tb3ZlbWVudERldGFpbENvZGUsIGkuYmF0Y2hOdW1iZXIpLnN1YnNjcmliZSh7IG5leHQ6IHJlc3VsdCA9PiB0aGlzLmZvcm0hLmNvbXBvc2l0ZVNhbXBsZSA9IHJlc3VsdC5jb21wb3NpdGVTYW1wbGUsIGVycm9yOiBlID0+IHRoaXMuZXJyb3IgPSBlcnJvck1lc3NhZ2UoZSkgfSk7XG4gIH1cbiAgYXN5bmMgcHJpbnQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCF0aGlzLmZvcm0gfHwgIXRoaXMucHJpbnRBcmVhIHx8IHRoaXMuYnVzeSB8fCAhdGhpcy5hbGxvd2VkKCdQcmludCcpKSByZXR1cm47XG4gICAgdHJ5IHsgYXdhaXQgcHJpbnRGb3JtKHRoaXMucHJpbnRBcmVhLm5hdGl2ZUVsZW1lbnQsIGBHaXJkaS1Lb250cm9sLSR7dGhpcy5mb3JtLnZlaGljbGUuZG9jRW50cnl9YCk7IH1cbiAgICBjYXRjaCAoZSkgeyB0aGlzLmVycm9yID0gZXJyb3JNZXNzYWdlKGUpOyB9XG4gIH1cbiAgYmFjaygpOiB2b2lkIHsgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycva2FsaXRlL2ludGFrZSddKTsgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNvbnRhaW5lci1mbHVpZFwiICNwcmludEFyZWE+XG4gIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyIG1iLTNcIj48aDM+SGFtIFlhxJ8gR2lyacWfIEthbGl0ZSBLb250cm9sPC9oMz48YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lLXNlY29uZGFyeVwiIChjbGljayk9XCJiYWNrKClcIj5MaXN0ZXllIETDtm48L2J1dHRvbj48L2Rpdj5cbiAgPGRpdiAqbmdJZj1cImVycm9yXCIgY2xhc3M9XCJhbGVydCBhbGVydC1kYW5nZXJcIiByb2xlPVwiYWxlcnRcIj57eyBlcnJvciB9fTwvZGl2PjxkaXYgKm5nSWY9XCJzdWNjZXNzXCIgY2xhc3M9XCJhbGVydCBhbGVydC1zdWNjZXNzXCI+e3sgc3VjY2VzcyB9fTwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiYnVzeVwiIGNsYXNzPVwicXVhbGl0eS1sb2FkaW5nXCIgcm9sZT1cInN0YXR1c1wiPjxzcGFuIGNsYXNzPVwic3Bpbm5lci1ib3JkZXIgc3Bpbm5lci1ib3JkZXItc20gbXItMlwiPjwvc3Bhbj4gxLDFn2xlbSBzw7xyw7x5b3LigKY8L2Rpdj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZvcm0gYXMgZlwiPlxuICAgIDxkaXYgY2xhc3M9XCJjYXJkIG1iLTNcIj48ZGl2IGNsYXNzPVwiY2FyZC1ib2R5XCI+PGg1PkFyYcOnIC8gU2V2a2l5YXQgQmlsZ2lsZXJpPC9oNT5cbiAgICAgIDxkaXYgY2xhc3M9XCJ2ZWhpY2xlLWluZm9cIj5cbiAgICAgICAgPGRpdj48bGFiZWw+U8SxcmEgLyBCZWxnZSBObzwvbGFiZWw+PHA+e3sgZi52ZWhpY2xlLnNlcXVlbmNlTnVtYmVyIH19IC8ge3sgZi52ZWhpY2xlLmRvY051bSB9fTwvcD48L2Rpdj48ZGl2PjxsYWJlbD5HaXJpxZ8gVGFyaWhpIC8gU2FhdGk8L2xhYmVsPjxwPnt7IGYudmVoaWNsZS5lbnRyeURhdGUgfCBkYXRlOidkZC5NTS55eXl5IEhIOm1tJyB9fTwvcD48L2Rpdj5cbiAgICAgICAgPGRpdj48bGFiZWw+S2FwxLEgLyBIYXJla2V0IFTDvHLDvDwvbGFiZWw+PHA+e3sgZi52ZWhpY2xlLmdhdGVDb2RlIH19IC8ge3sgZi52ZWhpY2xlLm1vdmVtZW50VHlwZU5hbWUgfX08L3A+PC9kaXY+PGRpdj48bGFiZWw+S2FteW9uIC8gRG9yc2U8L2xhYmVsPjxwPnt7IGYudmVoaWNsZS5wbGF0ZSB9fSAvIHt7IGYudmVoaWNsZS50cmFpbGVyUGxhdGUgfHwgJ+KAlCcgfX08L3A+PC9kaXY+XG4gICAgICAgIDxkaXY+PGxhYmVsPsWeb2bDtnIgLyBUZWxlZm9uPC9sYWJlbD48cD57eyBmLnZlaGljbGUuZHJpdmVyIH19IC8ge3sgZi52ZWhpY2xlLmRyaXZlclBob25lIHx8ICfigJQnIH19PC9wPjwvZGl2PjxkaXY+PGxhYmVsPlQuQy4gS2ltbGlrIC8gTcO8aMO8cjwvbGFiZWw+PHA+e3sgZi52ZWhpY2xlLmlkZW50aXR5TnVtYmVyIHx8ICfigJQnIH19IC8ge3sgZi52ZWhpY2xlLnNlYWxOdW1iZXIgfHwgJ+KAlCcgfX08L3A+PC9kaXY+XG4gICAgICAgIDxkaXY+PGxhYmVsPk11aGF0YXAgLyBHZW1pPC9sYWJlbD48cD57eyBmLnZlaGljbGUucGFydG5lck5hbWUgfHwgJ+KAlCcgfX0gLyB7eyBmLnZlaGljbGUuc2hpcE5hbWUgfHwgJ+KAlCcgfX08L3A+PC9kaXY+PGRpdj48bGFiZWw+U3RvayBOYWtsaSAvIE1hbCBHaXJpxZ9pIC8gU2lwYXJpxZ88L2xhYmVsPjxwPnt7IGYudmVoaWNsZS5zdG9ja1RyYW5zZmVyTnVtYmVyIHx8ICfigJQnIH19IC8ge3sgZi52ZWhpY2xlLnJlY2VpcHROdW1iZXIgfHwgJ+KAlCcgfX0gLyB7eyBmLnZlaGljbGUub3JkZXJOdW1iZXIgfHwgJ+KAlCcgfX08L3A+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC00XCI+PGxhYmVsPkFyYcOnIEhhcmVrZXQgVMO8csO8IERldGF5xLE8L2xhYmVsPjxzZWxlY3QgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cImYuaW5zcGVjdGlvbi5tb3ZlbWVudERldGFpbENvZGVcIiAoY2hhbmdlKT1cImRldGFpbENoYW5nZWQoKVwiIFtkaXNhYmxlZF09XCIhZWRpdGFibGUgfHwgYnVzeSB8fCAoZi5kZXRhaWxzLmxlbmd0aCA9PT0gMSAmJiAhZi5kZXRhaWxzWzBdLmRldGFpbENvZGUpXCI+PG9wdGlvbiB2YWx1ZT1cIlwiPlNlw6dpbjwvb3B0aW9uPjxvcHRpb24gKm5nRm9yPVwibGV0IGQgb2YgZi5kZXRhaWxzXCIgW3ZhbHVlXT1cImQuY29kZVwiPnt7IGQubmFtZSB8fCBmLnZlaGljbGUubW92ZW1lbnRUeXBlTmFtZSB9fXt7ICFkLmRldGFpbENvZGUgPyAnIChkZXRheXPEsXopJyA6ICcnIH19PC9vcHRpb24+PC9zZWxlY3Q+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNFwiPjxsYWJlbD5NZW7Fn2VpPC9sYWJlbD48c2VsZWN0IGNsYXNzPVwiZm9ybS1jb250cm9sXCIgWyhuZ01vZGVsKV09XCJmLmluc3BlY3Rpb24ub3JpZ2luXCIgKGNoYW5nZSk9XCJjaGFuZ2VkKClcIiBbZGlzYWJsZWRdPVwiIWVkaXRhYmxlIHx8IGJ1c3lcIj48b3B0aW9uIHZhbHVlPVwiXCI+U2XDp2luPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT1cIkRvbWVzdGljXCI+xLDDpyBQaXlhc2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPVwiSW1wb3J0ZWRcIj7EsHRoYWw8L29wdGlvbj48L3NlbGVjdD48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC00XCI+PGxhYmVsPkthbGl0ZSBEdXJ1bXU8L2xhYmVsPjxwIGNsYXNzPVwibXQtMlwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwicXVhbGl0eS1zdGF0dXNcIiByb2xlPVwic3RhdHVzXCJcbiAgICAgICAgICAgIFtjbGFzcy5xdWFsaXR5LXN0YXR1cy1hY2NlcHRlZF09XCJmLmluc3BlY3Rpb24ucmV2aXNpb24gJiYgZi5pbnNwZWN0aW9uLnN0YXR1cyA9PT0gJ0FjY2VwdGVkJ1wiXG4gICAgICAgICAgICBbY2xhc3MucXVhbGl0eS1zdGF0dXMtcmVqZWN0ZWRdPVwiZi5pbnNwZWN0aW9uLnJldmlzaW9uICYmIGYuaW5zcGVjdGlvbi5zdGF0dXMgPT09ICdSZWplY3RlZCdcIlxuICAgICAgICAgICAgW2NsYXNzLnF1YWxpdHktc3RhdHVzLWRyYWZ0XT1cImYuaW5zcGVjdGlvbi5yZXZpc2lvbiAmJiBmLmluc3BlY3Rpb24uc3RhdHVzID09PSAnRHJhZnQnXCJcbiAgICAgICAgICAgIFtjbGFzcy5xdWFsaXR5LXN0YXR1cy13YWl0aW5nXT1cIiFmLmluc3BlY3Rpb24ucmV2aXNpb24gfHwgZi5pbnNwZWN0aW9uLnN0YXR1cyA9PT0gJ1dhaXRpbmcnXCI+XG4gICAgICAgICAgICA8aSBjbGFzcz1cImZhXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmZhLWNoZWNrLWNpcmNsZV09XCJmLmluc3BlY3Rpb24ucmV2aXNpb24gJiYgZi5pbnNwZWN0aW9uLnN0YXR1cyA9PT0gJ0FjY2VwdGVkJ1wiXG4gICAgICAgICAgICAgIFtjbGFzcy5mYS10aW1lcy1jaXJjbGVdPVwiZi5pbnNwZWN0aW9uLnJldmlzaW9uICYmIGYuaW5zcGVjdGlvbi5zdGF0dXMgPT09ICdSZWplY3RlZCdcIlxuICAgICAgICAgICAgICBbY2xhc3MuZmEtZWRpdF09XCJmLmluc3BlY3Rpb24ucmV2aXNpb24gJiYgZi5pbnNwZWN0aW9uLnN0YXR1cyA9PT0gJ0RyYWZ0J1wiXG4gICAgICAgICAgICAgIFtjbGFzcy5mYS1jbG9ja109XCIhZi5pbnNwZWN0aW9uLnJldmlzaW9uIHx8IGYuaW5zcGVjdGlvbi5zdGF0dXMgPT09ICdXYWl0aW5nJ1wiPjwvaT5cbiAgICAgICAgICAgIHt7IHN0YXR1c0xhYmVsKGYuaW5zcGVjdGlvbi5yZXZpc2lvbiA/IGYuaW5zcGVjdGlvbi5zdGF0dXMgOiAnV2FpdGluZycpIH19XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L3A+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY2FyZCBtYi0zXCI+PGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPlxuICAgICAgPGg1Pnt7IGYuaW5zcGVjdGlvbi50ZW1wbGF0ZVNuYXBzaG90Py5mb3JtPy5uYW1lIHx8ICfDlmzDp8O8bSAvIFBhcmFtZXRyZWxlcicgfX0gPHNtYWxsPnt7IGYuaW5zcGVjdGlvbi50ZW1wbGF0ZVNuYXBzaG90Py5mb3JtPy5kb2N1bWVudENvZGUgfX08L3NtYWxsPjwvaDU+XG4gICAgICA8cCBjbGFzcz1cInByaW50LW9ubHkgdGV4dC1tdXRlZFwiPllhecSxbjoge3sgZi5pbnNwZWN0aW9uLnRlbXBsYXRlU25hcHNob3Q/LmZvcm0/LnB1YmxpY2F0aW9uRGF0ZSB8IGRhdGU6J2RkLk1NLnl5eXknIH19IMK3IFJldml6eW9uOiB7eyBmLmluc3BlY3Rpb24udGVtcGxhdGVTbmFwc2hvdD8uZm9ybT8ucmV2aXNpb25EYXRlIHwgZGF0ZTonZGQuTU0ueXl5eScgfX0gLyB7eyBmLmluc3BlY3Rpb24udGVtcGxhdGVTbmFwc2hvdD8uZm9ybT8ucmV2aXNpb25OdW1iZXIgfX08L3A+XG4gICAgICA8cCAqbmdJZj1cIiFwYXJhbWV0ZXJzLmxlbmd0aFwiIGNsYXNzPVwidGV4dC1tdXRlZFwiPkRldGF5IHNlw6dpbi4gQnUga2FsZW1lIGFpdCBmb3JtIHZlIHNvcnVsYXIgS2FsaXRlIFBhcmFtZXRyZWxlcmkgZWtyYW7EsW5kYW4gdGFuxLFtbGFubWFsxLFkxLFyLjwvcD5cbiAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1yZXNwb25zaXZlXCI+PHRhYmxlIGNsYXNzPVwidGFibGUgdGFibGUtYm9yZGVyZWQgdGFibGUtc20gbWVhc3VyZW1lbnQtdGFibGVcIiAqbmdJZj1cInBhcmFtZXRlcnMubGVuZ3RoXCI+XG4gICAgICAgIDx0aGVhZD48dHI+PHRoPlNvcnUgLyBQYXJhbWV0cmU8L3RoPjx0aD5CaXJpbTwvdGg+PHRoPk5vbWluYWwgLyBMaW1pdDwvdGg+PHRoPsOWbMOnw7xtIERlxJ9lcmkgLyBZYW7EsXQ8L3RoPjx0aD5VeWd1bmx1azwvdGg+PC90cj48L3RoZWFkPlxuICAgICAgICA8dGJvZHk+PHRyICpuZ0Zvcj1cImxldCBwIG9mIHBhcmFtZXRlcnNcIiBbY2xhc3Mub3V0LW9mLWxpbWl0XT1cIm1lYXN1cmVtZW50KHApLm91dE9mTGltaXRcIj5cbiAgICAgICAgICA8dGQ+e3sgcC5uYW1lIH19PHNwYW4gKm5nSWY9XCJwLnJlcXVpcmVkXCIgY2xhc3M9XCJ0ZXh0LWRhbmdlclwiPiAqPC9zcGFuPjwvdGQ+PHRkPnt7IHAudW5pdCB8fCAn4oCUJyB9fTwvdGQ+PHRkPnt7IGxpbWl0TGFiZWwocCkgfX08L3RkPlxuICAgICAgICAgIDx0ZD48aW5wdXQgKm5nSWY9XCJwLnZhbHVlVHlwZSA9PT0gJ051bWJlcidcIiB0eXBlPVwibnVtYmVyXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZm9ybS1jb250cm9sLXNtXCIgWyhuZ01vZGVsKV09XCJtZWFzdXJlbWVudChwKS5udW1iZXJcIiAobmdNb2RlbENoYW5nZSk9XCJjaGFuZ2VkKClcIiBbYXR0ci5zdGVwXT1cImlucHV0U3RlcChwKVwiIFtkaXNhYmxlZF09XCIhZWRpdGFibGUgfHwgcC5jYWxjdWxhdGVkIHx8IGJ1c3lcIiBbYXR0ci5hcmlhLWxhYmVsXT1cInAubmFtZVwiIC8+XG4gICAgICAgICAgICA8c2VsZWN0ICpuZ0lmPVwicC52YWx1ZVR5cGUgPT09ICdDaG9pY2UnXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZm9ybS1jb250cm9sLXNtXCIgWyhuZ01vZGVsKV09XCJtZWFzdXJlbWVudChwKS50ZXh0XCIgKGNoYW5nZSk9XCJjaGFuZ2VkKClcIiBbZGlzYWJsZWRdPVwiIWVkaXRhYmxlIHx8IGJ1c3lcIj48b3B0aW9uIHZhbHVlPVwiXCI+U2XDp2luPC9vcHRpb24+PG9wdGlvbiAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIHAub3B0aW9uc1wiIFt2YWx1ZV09XCJvcHRpb25cIj57eyBvcHRpb24gfX08L29wdGlvbj48L3NlbGVjdD5cbiAgICAgICAgICAgIDxpbnB1dCAqbmdJZj1cInAudmFsdWVUeXBlID09PSAnVGV4dCdcIiBjbGFzcz1cImZvcm0tY29udHJvbCBmb3JtLWNvbnRyb2wtc21cIiBbKG5nTW9kZWwpXT1cIm1lYXN1cmVtZW50KHApLnRleHRcIiAobmdNb2RlbENoYW5nZSk9XCJjaGFuZ2VkKClcIiBbZGlzYWJsZWRdPVwiIWVkaXRhYmxlIHx8IGJ1c3lcIiBbYXR0ci5hcmlhLWxhYmVsXT1cInAubmFtZVwiIC8+XG4gICAgICAgICAgPC90ZD48dGQ+PHNwYW4gKm5nSWY9XCJtZWFzdXJlbWVudChwKS5vdXRPZkxpbWl0XCIgY2xhc3M9XCJiYWRnZSBiYWRnZS1kYW5nZXJcIj5MaW1pdCBExLHFn8SxPC9zcGFuPjxzcGFuICpuZ0lmPVwiIW1lYXN1cmVtZW50KHApLm91dE9mTGltaXQgJiYgKG1lYXN1cmVtZW50KHApLm51bWJlciAhPSBudWxsIHx8IG1lYXN1cmVtZW50KHApLnRleHQpXCIgY2xhc3M9XCJiYWRnZSBiYWRnZS1zdWNjZXNzXCI+e3sgcC5jYWxjdWxhdGVkID8gJ090b21hdGlrJyA6ICdVeWd1bicgfX08L3NwYW4+PC90ZD5cbiAgICAgICAgPC90cj48L3Rib2R5PlxuICAgICAgPC90YWJsZT48L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJwYWxtXCIgY2xhc3M9XCJib3JkZXIgcm91bmRlZCBwLTMgbXQtM1wiPlxuICAgICAgICA8aDY+R2VtaSAvIFBhcnRpIEtvbXBveml0IE51bXVuZXNpPC9oNj48bGFiZWw+UGFydGkgS29kdTwvbGFiZWw+PGRpdiBjbGFzcz1cImQtZmxleFwiPjxpbnB1dCBjbGFzcz1cImZvcm0tY29udHJvbFwiIFsobmdNb2RlbCldPVwiZi5pbnNwZWN0aW9uLmJhdGNoTnVtYmVyXCIgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZSB8fCBidXN5XCIgLz48YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lLXNlY29uZGFyeSBtbC0yXCIgKGNsaWNrKT1cInJlZnJlc2hDb21wb3NpdGUoKVwiPk51bXVuZXlpIEdldGlyPC9idXR0b24+PC9kaXY+XG4gICAgICAgIDxwIGNsYXNzPVwidGV4dC1tdXRlZCBtdC0yXCI+S2F5bmFrIG1hbCBnaXJpxZ9pIHZleWEgcGFydGkga29kdXlsYSBpbGnFn2tpbGVuZGlyaWxlbiBudW11bmUgZGnEn2VyIGFyYcOnbGFyZGEgc2FsdCBva3VudXIgZ8O2c3RlcmlsaXIuPC9wPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZi5jb21wb3NpdGVTYW1wbGUgYXMgc2FtcGxlXCI+PHA+e3sgc2FtcGxlLmFuYWx5c3QgfX0gwrcge3sgc2FtcGxlLnNhbXBsZWRBdCB8IGRhdGU6J2RkLk1NLnl5eXkgSEg6bW0nIH19PC9wPjxkaXYgY2xhc3M9XCJyb3dcIj48ZGl2IGNsYXNzPVwiY29sLW1kLTMgbWItMlwiICpuZ0Zvcj1cImxldCB2YWx1ZSBvZiBzYW1wbGUubWVhc3VyZW1lbnRzXCI+PHN0cm9uZz57eyB2YWx1ZS5wYXJhbWV0ZXJOYW1lIH19PC9zdHJvbmc+OiB7eyB2YWx1ZS5udW1iZXIgIT0gbnVsbCA/IHZhbHVlLm51bWJlciA6IHZhbHVlLnRleHQgfX0ge3sgdmFsdWUudW5pdCB9fTwvZGl2PjwvZGl2PjwvbmctY29udGFpbmVyPlxuICAgICAgICA8YnV0dG9uICpuZ0lmPVwiIWYuY29tcG9zaXRlU2FtcGxlICYmIGVkaXRhYmxlICYmIGFsbG93ZWQoJ0NvbXBvc2l0ZScpICYmICFjb21wb3NpdGVFZGl0b3JcIiBjbGFzcz1cImJ0biBidG4tb3V0bGluZS1wcmltYXJ5XCIgKGNsaWNrKT1cImJlZ2luQ29tcG9zaXRlKClcIj5Lb21wb3ppdCBOdW11bmUgR2lyPC9idXR0b24+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJjb21wb3NpdGVFZGl0b3JcIiBjbGFzcz1cInByaW50LWV4Y2x1ZGVcIj48ZGl2IGNsYXNzPVwicm93XCI+PGRpdiBjbGFzcz1cImNvbC1tZC0zIG1iLTJcIiAqbmdGb3I9XCJsZXQgcCBvZiBwYXJhbWV0ZXJzXCI+PGxhYmVsPnt7IHAubmFtZSB9fTwvbGFiZWw+PGlucHV0ICpuZ0lmPVwicC52YWx1ZVR5cGUgPT09ICdOdW1iZXInXCIgdHlwZT1cIm51bWJlclwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgWyhuZ01vZGVsKV09XCJtZWFzdXJlbWVudChwLCB0cnVlKS5udW1iZXJcIiAobmdNb2RlbENoYW5nZSk9XCJjaGFuZ2VkKHRydWUpXCIgW2Rpc2FibGVkXT1cInAuY2FsY3VsYXRlZCB8fCBidXN5XCIgLz48c2VsZWN0ICpuZ0lmPVwicC52YWx1ZVR5cGUgPT09ICdDaG9pY2UnXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cIm1lYXN1cmVtZW50KHAsIHRydWUpLnRleHRcIiAoY2hhbmdlKT1cImNoYW5nZWQodHJ1ZSlcIj48b3B0aW9uIHZhbHVlPVwiXCI+PC9vcHRpb24+PG9wdGlvbiAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIHAub3B0aW9uc1wiIFt2YWx1ZV09XCJvcHRpb25cIj57eyBvcHRpb24gfX08L29wdGlvbj48L3NlbGVjdD48aW5wdXQgKm5nSWY9XCJwLnZhbHVlVHlwZSA9PT0gJ1RleHQnXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cIm1lYXN1cmVtZW50KHAsIHRydWUpLnRleHRcIiAvPjwvZGl2PjwvZGl2PjxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIiAoY2xpY2spPVwic2F2ZUNvbXBvc2l0ZSgpXCIgW2Rpc2FibGVkXT1cImJ1c3lcIj5OdW11bmV5aSBLYXlkZXQ8L2J1dHRvbj48YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnkgbWwtMlwiIChjbGljayk9XCJjb21wb3NpdGVFZGl0b3IgPSBmYWxzZVwiPlZhemdlw6c8L2J1dHRvbj48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PjwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjYXJkXCI+PGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPjxoNT5EZcSfZXJsZW5kaXJtZTwvaDU+PGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0zXCI+PGxhYmVsPkdlbmVsIERlxJ9lcmxlbmRpcm1lPC9sYWJlbD48c2VsZWN0IGNsYXNzPVwiZm9ybS1jb250cm9sXCIgWyhuZ01vZGVsKV09XCJkZWNpc2lvblwiIFthdHRyLmRhdGEtcHJpbnQtdmFsdWVdPVwic3RhdHVzTGFiZWwoZGVjaXNpb24gfHwgKGYuaW5zcGVjdGlvbi5yZXZpc2lvbiA/IGYuaW5zcGVjdGlvbi5zdGF0dXMgOiAnV2FpdGluZycpKVwiIFtkaXNhYmxlZF09XCIhZWRpdGFibGUgfHwgYnVzeVwiPjxvcHRpb24gdmFsdWU9XCJcIj5TZcOnaW48L29wdGlvbj48b3B0aW9uICpuZ0lmPVwiYWxsb3dlZCgnQWNjZXB0JylcIiB2YWx1ZT1cIkFjY2VwdGVkXCI+S2FidWw8L29wdGlvbj48b3B0aW9uICpuZ0lmPVwiYWxsb3dlZCgnUmVqZWN0JylcIiB2YWx1ZT1cIlJlamVjdGVkXCI+UmV0PC9vcHRpb24+PC9zZWxlY3Q+PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTNcIj48bGFiZWw+QW5hbGl6aSBZYXBhbiAqPC9sYWJlbD48aW5wdXQgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cImYuaW5zcGVjdGlvbi5hbmFseXN0XCIgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZSB8fCBidXN5XCIgLz48L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtM1wiPjxsYWJlbD5Lb250cm9sIFRhcmloaSAvIFNhYXRpICo8L2xhYmVsPjxpbnB1dCB0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIFsobmdNb2RlbCldPVwiZi5pbnNwZWN0aW9uLmluc3BlY3RlZEF0XCIgKGNoYW5nZSk9XCJjaGFuZ2VkKClcIiBbZGlzYWJsZWRdPVwiIWVkaXRhYmxlIHx8IGJ1c3lcIiAvPjwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0zXCI+PGxhYmVsPk1pa3RhciAoa2cpPC9sYWJlbD48aW5wdXQgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbdmFsdWVdPVwiZi5pbnNwZWN0aW9uLnF1YW50aXR5S2cgPT0gbnVsbCA/ICdUYXJ0xLFtIHNvbnJhc8SxIGdlbGlyJyA6IGYuaW5zcGVjdGlvbi5xdWFudGl0eUtnXCIgZGlzYWJsZWQgLz48L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNCBtdC0zXCI+PGxhYmVsPlRhbmsgTm88L2xhYmVsPjxzZWxlY3QgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cImYuaW5zcGVjdGlvbi50YW5rQ29kZVwiIFtkaXNhYmxlZF09XCIhZWRpdGFibGUgfHwgYnVzeVwiPjxvcHRpb24gdmFsdWU9XCJcIj5TZcOnaW48L29wdGlvbj48b3B0aW9uICpuZ0Zvcj1cImxldCB0YW5rIG9mIHRhbmtzXCIgW3ZhbHVlXT1cInRhbmsuY29kZVwiPnt7IHRhbmsubmFtZSB9fTwvb3B0aW9uPjwvc2VsZWN0PjwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC00IG10LTNcIj48bGFiZWw+WWHEnyBDaW5zaTwvbGFiZWw+PHNlbGVjdCBjbGFzcz1cImZvcm0tY29udHJvbFwiIFsobmdNb2RlbCldPVwiZi5pbnNwZWN0aW9uLm9pbFR5cGVcIiAoY2hhbmdlKT1cImNoYW5nZWQoKVwiIFtkaXNhYmxlZF09XCIhZWRpdGFibGUgfHwgYnVzeVwiPjxvcHRpb24gdmFsdWU9XCJcIj5TZcOnaW48L29wdGlvbj48b3B0aW9uPkF5w6dpw6dlazwvb3B0aW9uPjxvcHRpb24+UmFmaW5lIEF5w6dpw6dlazwvb3B0aW9uPjxvcHRpb24+UGFsbSBPaWw8L29wdGlvbj48b3B0aW9uPlBhbG0gT2xlaW48L29wdGlvbj48L3NlbGVjdD48L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgbXQtM1wiPjxsYWJlbD5Bw6fEsWtsYW1hIC8gRGnEn2VyIDxzcGFuICpuZ0lmPVwiZGVjaXNpb24gPT09ICdSZWplY3RlZCdcIj4qPC9zcGFuPjwvbGFiZWw+PHRleHRhcmVhIHJvd3M9XCIzXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cImYuaW5zcGVjdGlvbi5ub3Rlc1wiIFtkaXNhYmxlZF09XCIhZWRpdGFibGUgfHwgYnVzeVwiPjwvdGV4dGFyZWE+PC9kaXY+XG4gICAgPC9kaXY+PGRpdiAqbmdJZj1cInZhbGlkYXRpb25FcnJvclwiIGNsYXNzPVwiYWxlcnQgYWxlcnQtZGFuZ2VyIG10LTMgbWItMlwiIHJvbGU9XCJhbGVydFwiPnt7IHZhbGlkYXRpb25FcnJvciB9fTwvZGl2PjxkaXYgY2xhc3M9XCJtdC0zXCI+PGJ1dHRvbiAqbmdJZj1cImVkaXRhYmxlXCIgY2xhc3M9XCJidG4gYnRuLW91dGxpbmUtcHJpbWFyeSBtci0yXCIgKGNsaWNrKT1cInNhdmUoZmFsc2UpXCIgW2Rpc2FibGVkXT1cImJ1c3kgfHwgIXBhcmFtZXRlcnMubGVuZ3RoXCI+S2F5ZGV0PC9idXR0b24+PGJ1dHRvbiAqbmdJZj1cImVkaXRhYmxlICYmIChhbGxvd2VkKCdBY2NlcHQnKSB8fCBhbGxvd2VkKCdSZWplY3QnKSlcIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBtci0yXCIgKGNsaWNrKT1cInNhdmUodHJ1ZSlcIiBbZGlzYWJsZWRdPVwiYnVzeSB8fCAhcGFyYW1ldGVycy5sZW5ndGhcIj5LYXlkZXQgdmUgT25heWxhPC9idXR0b24+PGJ1dHRvbiAqbmdJZj1cImFsbG93ZWQoJ1ByaW50JylcIiBjbGFzcz1cImJ0biBidG4tb3V0bGluZS1zZWNvbmRhcnkgbXItMlwiIChjbGljayk9XCJwcmludCgpXCIgW2Rpc2FibGVkXT1cImJ1c3kgfHwgIWYuaW5zcGVjdGlvbi5yZXZpc2lvblwiPkZvcm11IFlhemTEsXI8L2J1dHRvbj48YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnlcIiAoY2xpY2spPVwiYmFjaygpXCI+VmF6Z2XDpzwvYnV0dG9uPjwvZGl2PlxuICAgIDxwICpuZ0lmPVwiIWYuY2FuRWRpdFwiIGNsYXNzPVwidGV4dC1tdXRlZCBtdC0zXCI+QXJhw6cgdGFydMSxbWEgZ2lyZGnEn2ksIMOnxLFrdMSxxJ/EsSB2ZXlhIGlwdGFsIGVkaWxkacSfaSBpw6dpbiBrYXnEsXQgc2FsdCBva3VudXIuPC9wPlxuICAgIDwvZGl2PjwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
|
|
162
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50YWtlLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2FsaXRlL3NyYy9saWIvY29tcG9uZW50cy9pbnRha2UtZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWxpdGUvc3JjL2xpYi9jb21wb25lbnRzL2ludGFrZS1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWlDLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdwRixPQUFPLEVBQUUsT0FBTyxFQUFZLE1BQU0sTUFBTSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUkzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3RILE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7OztBQUduRCxNQUFNLE9BQU8sbUJBQW1CO0lBSzlCLFlBQW9CLEdBQXNCLEVBQVUsS0FBcUIsRUFBVSxNQUFjLEVBQVUsV0FBOEI7UUFBckgsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBbUI7UUFIekksU0FBSSxHQUFzQixJQUFJLENBQUM7UUFBQyxVQUFLLEdBQWtCLEVBQUUsQ0FBQztRQUFDLFNBQUksR0FBRyxLQUFLLENBQUM7UUFBQyxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQUMsWUFBTyxHQUFHLEVBQUUsQ0FBQztRQUFDLG9CQUFlLEdBQUcsRUFBRSxDQUFDO1FBQUMsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUFDLGFBQVEsR0FBRyxLQUFLLENB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QUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3RNLENBQUM7SUFDRCxLQUFLLENBQUMsS0FBSztRQUNULElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7WUFBRSxPQUFPO1FBQ2pGLElBQUk7WUFBRSxNQUFNLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxpQkFBaUIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztTQUFFO1FBQ3JHLE9BQU8sQ0FBQyxFQUFFO1lBQUUsSUFBSSxDQUFDLEtBQUssR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FBRTtJQUM3QyxDQUFDO0lBQ0QsSUFBSSxLQUFXLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzs7Z0hBN0UvQyxtQkFBbUI7b0dBQW5CLG1CQUFtQiwrSkNaaEMsbXZXQWtFQTsyRkR0RGEsbUJBQW1CO2tCQUQvQixTQUFTOytCQUFhLGlCQUFpQjswTEFFZCxTQUFTO3NCQUFoQyxTQUFTO3VCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgUGVybWlzc2lvblNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgZm9ya0pvaW4gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEludGFrZUZvcm0sIFF1YWxpdHlUYW5rIH0gZnJvbSAnLi4vbW9kZWxzL2ludGFrZS5tb2RlbHMnO1xuaW1wb3J0IHsgUXVhbGl0eU1lYXN1cmVtZW50LCBRdWFsaXR5UGFyYW1ldGVyIH0gZnJvbSAnLi4vbW9kZWxzL3F1YWxpdHkubW9kZWxzJztcbmltcG9ydCB7IFF1YWxpdHlBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvcXVhbGl0eS1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBhcHBsaWNhYmxlTGltaXQsIGVycm9yTWVzc2FnZSwgbG9jYWxEYXRlLCByZWNhbGN1bGF0ZSwgc3RhdHVzTGFiZWwgfSBmcm9tICcuLi9zZXJ2aWNlcy9xdWFsaXR5LW1lYXN1cmVtZW50cyc7XG5pbXBvcnQgeyBwcmludEZvcm0gfSBmcm9tICcuLi9zZXJ2aWNlcy9wcmludC1mb3JtJztcblxuQENvbXBvbmVudCh7IHNlbGVjdG9yOiAnbGliLWludGFrZS1mb3JtJywgdGVtcGxhdGVVcmw6ICcuL2ludGFrZS1mb3JtLmNvbXBvbmVudC5odG1sJywgc3R5bGVVcmxzOiBbJy4vaW50YWtlLmNvbXBvbmVudC5zY3NzJ10gfSlcbmV4cG9ydCBjbGFzcyBJbnRha2VGb3JtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBAVmlld0NoaWxkKCdwcmludEFyZWEnKSBwcmludEFyZWE/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcbiAgZm9ybTogSW50YWtlRm9ybSB8IG51bGwgPSBudWxsOyB0YW5rczogUXVhbGl0eVRhbmtbXSA9IFtdOyBidXN5ID0gZmFsc2U7IGVycm9yID0gJyc7IHN1Y2Nlc3MgPSAnJzsgdmFsaWRhdGlvbkVycm9yID0gJyc7IGRlY2lzaW9uID0gJyc7IHZpZXdPbmx5ID0gZmFsc2U7XG4gIGNvbXBvc2l0ZUVkaXRvciA9IGZhbHNlOyBjb21wb3NpdGVNZWFzdXJlbWVudHM6IFF1YWxpdHlNZWFzdXJlbWVudFtdID0gW107IHN0YXR1c0xhYmVsID0gc3RhdHVzTGFiZWw7XG4gIHByaXZhdGUgZGVzdHJveSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXBpOiBRdWFsaXR5QXBpU2VydmljZSwgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsIHByaXZhdGUgcGVybWlzc2lvbnM6IFBlcm1pc3Npb25TZXJ2aWNlKSB7fVxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnJvdXRlLnBhcmFtTWFwLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSkpLnN1YnNjcmliZShwYXJhbXMgPT4geyB0aGlzLnZpZXdPbmx5ID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtTWFwLmdldCgnbW9kZScpID09PSAndmlldyc7IHRoaXMubG9hZChOdW1iZXIocGFyYW1zLmdldCgnaWQnKSkpOyB9KTtcbiAgICB0aGlzLmFwaS50YW5rcygpLnN1YnNjcmliZSh7IG5leHQ6IHRhbmtzID0+IHRoaXMudGFua3MgPSB0YW5rcy5maWx0ZXIoeCA9PiB4LmFjdGl2ZSksIGVycm9yOiBlID0+IHRoaXMuZXJyb3IgPSBlcnJvck1lc3NhZ2UoZSkgfSk7XG4gIH1cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7IHRoaXMuZGVzdHJveS5uZXh0KCk7IHRoaXMuZGVzdHJveS5jb21wbGV0ZSgpOyB9XG4gIGFsbG93ZWQoYWN0aW9uOiBzdHJpbmcpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMucGVybWlzc2lvbnMuZ2V0R3JhbnRlZFBvbGljeSgnSGl0c29mdC5LYWRvb2dsdS5LYWxpdGUuSW50YWtlLicgKyBhY3Rpb24pOyB9XG4gIGdldCBlZGl0YWJsZSgpOiBib29sZWFuIHsgcmV0dXJuICEhdGhpcy5mb3JtPy5jYW5FZGl0ICYmICF0aGlzLnZpZXdPbmx5ICYmIHRoaXMuYWxsb3dlZCgnRWRpdCcpOyB9XG4gIGdldCBwYXJhbWV0ZXJzKCk6IFF1YWxpdHlQYXJhbWV0ZXJbXSB7IHJldHVybiB0aGlzLmZvcm0/Lmluc3BlY3Rpb24udGVtcGxhdGVTbmFwc2hvdD8ucGFyYW1ldGVycy5maWx0ZXIoeCA9PiB4LmFjdGl2ZSkuc29ydCgoYSwgYikgPT4gYS5vcmRlciAtIGIub3JkZXIpIHx8IFtdOyB9XG4gIGdldCBwYWxtKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5mb3JtPy5kZXRhaWxzLmZpbmQoeCA9PiB4LmNvZGUgPT09IHRoaXMuZm9ybT8uaW5zcGVjdGlvbi5tb3ZlbWVudERldGFpbENvZGUpPy5wcm9maWxlID09PSAnUEFMTSc7IH1cbiAgcHJpdmF0ZSBsb2NhbFRpbWUodmFsdWU6IHN0cmluZyk6IHN0cmluZyB7IGNvbnN0IGQgPSBuZXcgRGF0ZSh2YWx1ZSk7IHJldHVybiBsb2NhbERhdGUoZCkgKyAnVCcgKyBTdHJpbmcoZC5nZXRIb3VycygpKS5wYWRTdGFydCgyLCAnMCcpICsgJzonICsgU3RyaW5nKGQuZ2V0TWludXRlcygpKS5wYWRTdGFydCgyLCAnMCcpOyB9XG4gIGxvYWQoaWQ6IG51bWJlcik6IHZvaWQge1xuICAgIGlmICghTnVtYmVyLmlzSW50ZWdlcihpZCkgfHwgaWQgPD0gMCkgeyB0aGlzLmVycm9yID0gJ0dlw6dlcmxpIGJpciBhcmHDpyBrYXlkxLEgc2XDp2luLic7IHJldHVybjsgfVxuICAgIHRoaXMuYnVzeSA9IHRydWU7IHRoaXMuZXJyb3IgPSAnJztcbiAgICB0aGlzLmFwaS5pbnRha2UoaWQpLnN1YnNjcmliZSh7IG5leHQ6IGZvcm0gPT4geyB0aGlzLmZvcm0gPSBmb3JtOyBmb3JtLmluc3BlY3Rpb24uaW5zcGVjdGVkQXQgPSB0aGlzLmxvY2FsVGltZShmb3JtLmluc3BlY3Rpb24uaW5zcGVjdGVkQXQpOyB0aGlzLmRlY2lzaW9uID0gJyc7IHRoaXMuYnVzeSA9IGZhbHNlOyB9LCBlcnJvcjogZSA9PiB7IHRoaXMuZXJyb3IgPSBlcnJvck1lc3NhZ2UoZSk7IHRoaXMuYnVzeSA9IGZhbHNlOyB9IH0pO1xuICB9XG4gIGRldGFpbENoYW5nZWQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmZvcm0pIHJldHVybjtcbiAgICB0aGlzLmJ1c3kgPSB0cnVlO1xuICAgIHRoaXMuYXBpLmludGFrZVRlbXBsYXRlKHRoaXMuZm9ybS5pbnNwZWN0aW9uLm1vdmVtZW50RGV0YWlsQ29kZSkuc3Vic2NyaWJlKHsgbmV4dDogdCA9PiB7IGlmICh0aGlzLmZvcm0pIHsgdGhpcy5mb3JtLmluc3BlY3Rpb24udGVtcGxhdGVTbmFwc2hvdCA9IHQ7IHRoaXMuZm9ybS5pbnNwZWN0aW9uLm1lYXN1cmVtZW50cyA9IFtdOyB0aGlzLmZvcm0uY29tcG9zaXRlU2FtcGxlID0gbnVsbDsgdGhpcy5jb21wb3NpdGVFZGl0b3IgPSBmYWxzZTsgfSB0aGlzLmJ1c3kgPSBmYWxzZTsgdGhpcy5jaGFuZ2VkKCk7IH0sIGVycm9yOiBlID0+IHsgdGhpcy5lcnJvciA9IGVycm9yTWVzc2FnZShlKTsgdGhpcy5idXN5ID0gZmFsc2U7IH0gfSk7XG4gIH1cbiAgbWVhc3VyZW1lbnQocDogUXVhbGl0eVBhcmFtZXRlciwgY29tcG9zaXRlID0gZmFsc2UpOiBRdWFsaXR5TWVhc3VyZW1lbnQge1xuICAgIGNvbnN0IHZhbHVlcyA9IGNvbXBvc2l0ZSA/IHRoaXMuY29tcG9zaXRlTWVhc3VyZW1lbnRzIDogdGhpcy5mb3JtIS5pbnNwZWN0aW9uLm1lYXN1cmVtZW50cztcbiAgICBsZXQgdmFsdWUgPSB2YWx1ZXMuZmluZCh4ID0+IHgucGFyYW1ldGVyQ29kZSA9PT0gcC5jb2RlKTtcbiAgICBpZiAoIXZhbHVlKSB7IHZhbHVlID0geyBwYXJhbWV0ZXJDb2RlOiBwLmNvZGUsIG51bWJlcjogbnVsbCwgdGV4dDogJycgfTsgdmFsdWVzLnB1c2godmFsdWUpOyB9XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG4gIGxpbWl0TGFiZWwocDogUXVhbGl0eVBhcmFtZXRlcik6IHN0cmluZyB7XG4gICAgY29uc3QgaSA9IHRoaXMuZm9ybT8uaW5zcGVjdGlvbjsgaWYgKCFpKSByZXR1cm4gJ+KAlCc7XG4gICAgY29uc3QgbCA9IGFwcGxpY2FibGVMaW1pdChpLnRlbXBsYXRlU25hcHNob3Q/LmxpbWl0cyB8fCBbXSwgcC5jb2RlLCBpLmluc3BlY3RlZEF0LnNsaWNlKDAsIDEwKSwgaS5vaWxUeXBlLCBpLm9yaWdpbik7XG4gICAgaWYgKCFsKSByZXR1cm4gJ+KAlCc7XG4gICAgY29uc3QgcmFuZ2UgPSBsLmV4cGVjdGVkVGV4dCB8fCAobC5taW5pbXVtICE9IG51bGwgJiYgbC5tYXhpbXVtICE9IG51bGwgPyBgJHtsLm1pbmltdW19IOKAkyAke2wubWF4aW11bX1gIDogbC5taW5pbXVtICE9IG51bGwgPyBg4omlICR7bC5taW5pbXVtfWAgOiBsLm1heGltdW0gIT0gbnVsbCA/IGDiiaQgJHtsLm1heGltdW19YCA6ICfigJQnKTtcbiAgICByZXR1cm4gcmFuZ2UgKyAobC5ub21pbmFsICE9IG51bGwgPyBgIMK3IE5vbWluYWw6ICR7bC5ub21pbmFsfWAgOiAnJyk7XG4gIH1cbiAgaW5wdXRTdGVwKHA6IFF1YWxpdHlQYXJhbWV0ZXIpOiBudW1iZXIgeyByZXR1cm4gTWF0aC5wb3coMTAsIC1wLmRlY2ltYWxQbGFjZXMpOyB9XG4gIGNoYW5nZWQoY29tcG9zaXRlID0gZmFsc2UpOiB2b2lkIHtcbiAgICBjb25zdCBpID0gdGhpcy5mb3JtPy5pbnNwZWN0aW9uOyBpZiAoIWk/LnRlbXBsYXRlU25hcHNob3QpIHJldHVybjtcbiAgICB0cnkgeyByZWNhbGN1bGF0ZSh0aGlzLnBhcmFtZXRlcnMsIGNvbXBvc2l0ZSA/IHRoaXMuY29tcG9zaXRlTWVhc3VyZW1lbnRzIDogaS5tZWFzdXJlbWVudHMsIGkudGVtcGxhdGVTbmFwc2hvdC5saW1pdHMsIGkuaW5zcGVjdGVkQXQuc2xpY2UoMCwgMTApLCBpLm9pbFR5cGUsIGkub3JpZ2luKTsgdGhpcy5lcnJvciA9ICcnOyB9XG4gICAgY2F0Y2ggKGUpIHsgdGhpcy5lcnJvciA9IGUgaW5zdGFuY2VvZiBFcnJvciA/IGUubWVzc2FnZSA6ICdIZXNhcGxhbWEgeWFwxLFsYW1hZMSxLic7IH1cbiAgfVxuICBwYXlsb2FkKCk6IG9iamVjdCB7XG4gICAgY29uc3QgaSA9IHRoaXMuZm9ybSEuaW5zcGVjdGlvbjtcbiAgICByZXR1cm4geyB2ZWhpY2xlRW50cnlJZDogaS52ZWhpY2xlRW50cnlJZCwgbW92ZW1lbnREZXRhaWxDb2RlOiBpLm1vdmVtZW50RGV0YWlsQ29kZSwgb3JpZ2luOiBpLm9yaWdpbiB8fCAnJywgdGFua0NvZGU6IGkudGFua0NvZGUgfHwgJycsIG9pbFR5cGU6IGkub2lsVHlwZSB8fCAnJyxcbiAgICAgIGJhdGNoTnVtYmVyOiBpLmJhdGNoTnVtYmVyIHx8ICcnLCBub3RlczogaS5ub3RlcyB8fCAnJywgYW5hbHlzdDogaS5hbmFseXN0LCBpbnNwZWN0ZWRBdDogbmV3IERhdGUoaS5pbnNwZWN0ZWRBdCkudG9JU09TdHJpbmcoKSwgcmV2aXNpb246IGkucmV2aXNpb24sXG4gICAgICBtZWFzdXJlbWVudHM6IGkubWVhc3VyZW1lbnRzLCBkZWNpc2lvbjogdGhpcy5kZWNpc2lvbiB8fCB1bmRlZmluZWQgfTtcbiAgfVxuICBzYXZlKGFwcHJvdmU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZm9ybSB8fCAhdGhpcy5lZGl0YWJsZSkgcmV0dXJuO1xuICAgIGlmICghdGhpcy5mb3JtLmluc3BlY3Rpb24uaW5zcGVjdGVkQXQgfHwgTnVtYmVyLmlzTmFOKERhdGUucGFyc2UodGhpcy5mb3JtLmluc3BlY3Rpb24uaW5zcGVjdGVkQXQpKSkgeyB0aGlzLnZhbGlkYXRpb25FcnJvciA9ICdLb250cm9sIHRhcmloaSB2ZSBzYWF0aW5pIGdpcmluLic7IHRoaXMuZXJyb3IgPSB0aGlzLnZhbGlkYXRpb25FcnJvcjsgcmV0dXJuOyB9XG4gICAgaWYgKGFwcHJvdmUgJiYgIXRoaXMuZGVjaXNpb24pIHsgdGhpcy52YWxpZGF0aW9uRXJyb3IgPSAnS2FidWwgdmV5YSBSZXQgc2XDp2luLic7IHRoaXMuZXJyb3IgPSB0aGlzLnZhbGlkYXRpb25FcnJvcjsgcmV0dXJuOyB9XG4gICAgaWYgKGFwcHJvdmUgJiYgdGhpcy5kZWNpc2lvbiA9PT0gJ1JlamVjdGVkJyAmJiAhdGhpcy5mb3JtLmluc3BlY3Rpb24ubm90ZXM/LnRyaW0oKSkgeyB0aGlzLnZhbGlkYXRpb25FcnJvciA9ICdSZXQgZ2VyZWvDp2VzaSBnaXJpbi4nOyB0aGlzLmVycm9yID0gdGhpcy52YWxpZGF0aW9uRXJyb3I7IHJldHVybjsgfVxuICAgIGlmICghYXBwcm92ZSkgdGhpcy5kZWNpc2lvbiA9ICcnO1xuICAgIHRoaXMuYnVzeSA9IHRydWU7IHRoaXMuZXJyb3IgPSAnJzsgdGhpcy52YWxpZGF0aW9uRXJyb3IgPSAnJztcbiAgICB0aGlzLmFwaS5zYXZlSW50YWtlKHRoaXMucGF5bG9hZCgpKS5zdWJzY3JpYmUoeyBuZXh0OiBpID0+IHsgdGhpcy5zdWNjZXNzID0gYXBwcm92ZSA/ICdLYWxpdGUga2FyYXLEsSBrYXlkZWRpbGRpLicgOiAnVGFzbGFrIGtheWRlZGlsZGkuJzsgdGhpcy5mb3JtIS5pbnNwZWN0aW9uID0gaTsgaS5pbnNwZWN0ZWRBdCA9IHRoaXMubG9jYWxUaW1lKGkuaW5zcGVjdGVkQXQpOyB0aGlzLmJ1c3kgPSBmYWxzZTsgfSwgZXJyb3I6IGUgPT4geyB0aGlzLmVycm9yID0gZXJyb3JNZXNzYWdlKGUpOyB0aGlzLmJ1c3kgPSBmYWxzZTsgfSB9KTtcbiAgfVxuICBiZWdpbkNvbXBvc2l0ZSgpOiB2b2lkIHsgdGhpcy5jb21wb3NpdGVFZGl0b3IgPSB0cnVlOyB0aGlzLmNvbXBvc2l0ZU1lYXN1cmVtZW50cyA9IFtdOyB9XG4gIHNhdmVDb21wb3NpdGUoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmZvcm0pIHJldHVybjtcbiAgICBpZiAoIXRoaXMuZm9ybS5pbnNwZWN0aW9uLmluc3BlY3RlZEF0IHx8IE51bWJlci5pc05hTihEYXRlLnBhcnNlKHRoaXMuZm9ybS5pbnNwZWN0aW9uLmluc3BlY3RlZEF0KSkpIHsgdGhpcy5lcnJvciA9ICdOdW11bmUgdGFyaWhpIHZlIHNhYXRpbmkgZ2lyaW4uJzsgcmV0dXJuOyB9XG4gICAgdGhpcy5idXN5ID0gdHJ1ZTtcbiAgICB0aGlzLmFwaS5zYXZlQ29tcG9zaXRlKHsgLi4udGhpcy5wYXlsb2FkKCksIHJldmlzaW9uOiAwLCBtZWFzdXJlbWVudHM6IHRoaXMuY29tcG9zaXRlTWVhc3VyZW1lbnRzIH0pLnN1YnNjcmliZSh7IG5leHQ6IHNhbXBsZSA9PiB7IHRoaXMuZm9ybSEuY29tcG9zaXRlU2FtcGxlID0gc2FtcGxlOyB0aGlzLmNvbXBvc2l0ZUVkaXRvciA9IGZhbHNlOyB0aGlzLmJ1c3kgPSBmYWxzZTsgfSwgZXJyb3I6IGUgPT4geyB0aGlzLmVycm9yID0gZXJyb3JNZXNzYWdlKGUpOyB0aGlzLmJ1c3kgPSBmYWxzZTsgfSB9KTtcbiAgfVxuICByZWZyZXNoQ29tcG9zaXRlKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5mb3JtKSByZXR1cm47XG4gICAgY29uc3QgaSA9IHRoaXMuZm9ybS5pbnNwZWN0aW9uO1xuICAgIHRoaXMuYXBpLmludGFrZShpLnZlaGljbGVFbnRyeUlkLCBpLm1vdmVtZW50RGV0YWlsQ29kZSwgaS5iYXRjaE51bWJlcikuc3Vic2NyaWJlKHsgbmV4dDogcmVzdWx0ID0+IHRoaXMuZm9ybSEuY29tcG9zaXRlU2FtcGxlID0gcmVzdWx0LmNvbXBvc2l0ZVNhbXBsZSwgZXJyb3I6IGUgPT4gdGhpcy5lcnJvciA9IGVycm9yTWVzc2FnZShlKSB9KTtcbiAgfVxuICBhc3luYyBwcmludCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoIXRoaXMuZm9ybSB8fCAhdGhpcy5wcmludEFyZWEgfHwgdGhpcy5idXN5IHx8ICF0aGlzLmFsbG93ZWQoJ1ByaW50JykpIHJldHVybjtcbiAgICB0cnkgeyBhd2FpdCBwcmludEZvcm0odGhpcy5wcmludEFyZWEubmF0aXZlRWxlbWVudCwgYEdpcmRpLUtvbnRyb2wtJHt0aGlzLmZvcm0udmVoaWNsZS5kb2NFbnRyeX1gKTsgfVxuICAgIGNhdGNoIChlKSB7IHRoaXMuZXJyb3IgPSBlcnJvck1lc3NhZ2UoZSk7IH1cbiAgfVxuICBiYWNrKCk6IHZvaWQgeyB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9rYWxpdGUvaW50YWtlJ10pOyB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWZsdWlkXCIgI3ByaW50QXJlYT5cbiAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBhbGlnbi1pdGVtcy1jZW50ZXIgbWItM1wiPjxoMz5IYW0gWWHEnyBHaXJpxZ8gS2FsaXRlIEtvbnRyb2w8L2gzPjxidXR0b24gY2xhc3M9XCJidG4gYnRuLW91dGxpbmUtc2Vjb25kYXJ5XCIgKGNsaWNrKT1cImJhY2soKVwiPkxpc3RleWUgRMO2bjwvYnV0dG9uPjwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiZXJyb3JcIiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWRhbmdlclwiIHJvbGU9XCJhbGVydFwiPnt7IGVycm9yIH19PC9kaXY+PGRpdiAqbmdJZj1cInN1Y2Nlc3NcIiBjbGFzcz1cImFsZXJ0IGFsZXJ0LXN1Y2Nlc3NcIj57eyBzdWNjZXNzIH19PC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJidXN5XCIgY2xhc3M9XCJxdWFsaXR5LWxvYWRpbmdcIiByb2xlPVwic3RhdHVzXCI+PHNwYW4gY2xhc3M9XCJzcGlubmVyLWJvcmRlciBzcGlubmVyLWJvcmRlci1zbSBtci0yXCI+PC9zcGFuPiDEsMWfbGVtIHPDvHLDvHlvcuKApjwvZGl2PlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiZm9ybSBhcyBmXCI+XG4gICAgPGRpdiBjbGFzcz1cImNhcmQgbWItM1wiPjxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIj48aDU+QXJhw6cgLyBTZXZraXlhdCBCaWxnaWxlcmk8L2g1PlxuICAgICAgPGRpdiBjbGFzcz1cInZlaGljbGUtaW5mb1wiPlxuICAgICAgICA8ZGl2PjxsYWJlbD5TxLFyYSAvIEJlbGdlIE5vPC9sYWJlbD48cD57eyBmLnZlaGljbGUuc2VxdWVuY2VOdW1iZXIgfX0gLyB7eyBmLnZlaGljbGUuZG9jTnVtIH19PC9wPjwvZGl2PjxkaXY+PGxhYmVsPkdpcmnFnyBUYXJpaGkgLyBTYWF0aTwvbGFiZWw+PHA+e3sgZi52ZWhpY2xlLmVudHJ5RGF0ZSB8IGRhdGU6J2RkLk1NLnl5eXkgSEg6bW0nIH19PC9wPjwvZGl2PlxuICAgICAgICA8ZGl2PjxsYWJlbD5LYXDEsSAvIEhhcmVrZXQgVMO8csO8PC9sYWJlbD48cD57eyBmLnZlaGljbGUuZ2F0ZUNvZGUgfX0gLyB7eyBmLnZlaGljbGUubW92ZW1lbnRUeXBlTmFtZSB9fTwvcD48L2Rpdj48ZGl2PjxsYWJlbD5LYW15b24gLyBEb3JzZTwvbGFiZWw+PHA+e3sgZi52ZWhpY2xlLnBsYXRlIH19IC8ge3sgZi52ZWhpY2xlLnRyYWlsZXJQbGF0ZSB8fCAn4oCUJyB9fTwvcD48L2Rpdj5cbiAgICAgICAgPGRpdj48bGFiZWw+xZ5vZsO2ciAvIFRlbGVmb248L2xhYmVsPjxwPnt7IGYudmVoaWNsZS5kcml2ZXIgfX0gLyB7eyBmLnZlaGljbGUuZHJpdmVyUGhvbmUgfHwgJ+KAlCcgfX08L3A+PC9kaXY+PGRpdj48bGFiZWw+VC5DLiBLaW1saWsgLyBNw7xow7xyPC9sYWJlbD48cD57eyBmLnZlaGljbGUuaWRlbnRpdHlOdW1iZXIgfHwgJ+KAlCcgfX0gLyB7eyBmLnZlaGljbGUuc2VhbE51bWJlciB8fCAn4oCUJyB9fTwvcD48L2Rpdj5cbiAgICAgICAgPGRpdj48bGFiZWw+TXVoYXRhcCAvIEdlbWk8L2xhYmVsPjxwPnt7IGYudmVoaWNsZS5wYXJ0bmVyTmFtZSB8fCAn4oCUJyB9fSAvIHt7IGYudmVoaWNsZS5zaGlwTmFtZSB8fCAn4oCUJyB9fTwvcD48L2Rpdj48ZGl2PjxsYWJlbD5TdG9rIE5ha2xpIC8gTWFsIEdpcmnFn2kgLyBTaXBhcmnFnzwvbGFiZWw+PHA+e3sgZi52ZWhpY2xlLnN0b2NrVHJhbnNmZXJOdW1iZXIgfHwgJ+KAlCcgfX0gLyB7eyBmLnZlaGljbGUucmVjZWlwdE51bWJlciB8fCAn4oCUJyB9fSAvIHt7IGYudmVoaWNsZS5vcmRlck51bWJlciB8fCAn4oCUJyB9fTwvcD48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTRcIj48bGFiZWw+QXJhw6cgSGFyZWtldCBUw7xyw7wgRGV0YXnEsTwvbGFiZWw+PHNlbGVjdCBjbGFzcz1cImZvcm0tY29udHJvbFwiIFsobmdNb2RlbCldPVwiZi5pbnNwZWN0aW9uLm1vdmVtZW50RGV0YWlsQ29kZVwiIChjaGFuZ2UpPVwiZGV0YWlsQ2hhbmdlZCgpXCIgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZSB8fCBidXN5IHx8IChmLmRldGFpbHMubGVuZ3RoID09PSAxICYmICFmLmRldGFpbHNbMF0uZGV0YWlsQ29kZSlcIj48b3B0aW9uIHZhbHVlPVwiXCI+U2XDp2luPC9vcHRpb24+PG9wdGlvbiAqbmdGb3I9XCJsZXQgZCBvZiBmLmRldGFpbHNcIiBbdmFsdWVdPVwiZC5jb2RlXCI+e3sgZC5uYW1lIHx8IGYudmVoaWNsZS5tb3ZlbWVudFR5cGVOYW1lIH19e3sgIWQuZGV0YWlsQ29kZSA/ICcgKGRldGF5c8SxeiknIDogJycgfX08L29wdGlvbj48L3NlbGVjdD48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC00XCI+PGxhYmVsPk1lbsWfZWk8L2xhYmVsPjxzZWxlY3QgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cImYuaW5zcGVjdGlvbi5vcmlnaW5cIiAoY2hhbmdlKT1cImNoYW5nZWQoKVwiIFtkaXNhYmxlZF09XCIhZWRpdGFibGUgfHwgYnVzeVwiPjxvcHRpb24gdmFsdWU9XCJcIj5TZcOnaW48L29wdGlvbj48b3B0aW9uIHZhbHVlPVwiRG9tZXN0aWNcIj7EsMOnIFBpeWFzYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9XCJJbXBvcnRlZFwiPsSwdGhhbDwvb3B0aW9uPjwvc2VsZWN0PjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTRcIj48bGFiZWw+S2FsaXRlIER1cnVtdTwvbGFiZWw+PHAgY2xhc3M9XCJtdC0yXCI+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJxdWFsaXR5LXN0YXR1c1wiIHJvbGU9XCJzdGF0dXNcIlxuICAgICAgICAgICAgW2NsYXNzLnF1YWxpdHktc3RhdHVzLWFjY2VwdGVkXT1cImYuaW5zcGVjdGlvbi5yZXZpc2lvbiAmJiBmLmluc3BlY3Rpb24uc3RhdHVzID09PSAnQWNjZXB0ZWQnXCJcbiAgICAgICAgICAgIFtjbGFzcy5xdWFsaXR5LXN0YXR1cy1yZWplY3RlZF09XCJmLmluc3BlY3Rpb24ucmV2aXNpb24gJiYgZi5pbnNwZWN0aW9uLnN0YXR1cyA9PT0gJ1JlamVjdGVkJ1wiXG4gICAgICAgICAgICBbY2xhc3MucXVhbGl0eS1zdGF0dXMtZHJhZnRdPVwiZi5pbnNwZWN0aW9uLnJldmlzaW9uICYmIGYuaW5zcGVjdGlvbi5zdGF0dXMgPT09ICdEcmFmdCdcIlxuICAgICAgICAgICAgW2NsYXNzLnF1YWxpdHktc3RhdHVzLXdhaXRpbmddPVwiIWYuaW5zcGVjdGlvbi5yZXZpc2lvbiB8fCBmLmluc3BlY3Rpb24uc3RhdHVzID09PSAnV2FpdGluZydcIj5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFcIiBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgICAgICBbY2xhc3MuZmEtY2hlY2stY2lyY2xlXT1cImYuaW5zcGVjdGlvbi5yZXZpc2lvbiAmJiBmLmluc3BlY3Rpb24uc3RhdHVzID09PSAnQWNjZXB0ZWQnXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmZhLXRpbWVzLWNpcmNsZV09XCJmLmluc3BlY3Rpb24ucmV2aXNpb24gJiYgZi5pbnNwZWN0aW9uLnN0YXR1cyA9PT0gJ1JlamVjdGVkJ1wiXG4gICAgICAgICAgICAgIFtjbGFzcy5mYS1lZGl0XT1cImYuaW5zcGVjdGlvbi5yZXZpc2lvbiAmJiBmLmluc3BlY3Rpb24uc3RhdHVzID09PSAnRHJhZnQnXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmZhLWNsb2NrXT1cIiFmLmluc3BlY3Rpb24ucmV2aXNpb24gfHwgZi5pbnNwZWN0aW9uLnN0YXR1cyA9PT0gJ1dhaXRpbmcnXCI+PC9pPlxuICAgICAgICAgICAge3sgc3RhdHVzTGFiZWwoZi5pbnNwZWN0aW9uLnJldmlzaW9uID8gZi5pbnNwZWN0aW9uLnN0YXR1cyA6ICdXYWl0aW5nJykgfX1cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvcD48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PjwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjYXJkIG1iLTNcIj48ZGl2IGNsYXNzPVwiY2FyZC1ib2R5XCI+XG4gICAgICA8aDU+e3sgZi5pbnNwZWN0aW9uLnRlbXBsYXRlU25hcHNob3Q/LmZvcm0/Lm5hbWUgfHwgJ8OWbMOnw7xtIC8gUGFyYW1ldHJlbGVyJyB9fSA8c21hbGw+e3sgZi5pbnNwZWN0aW9uLnRlbXBsYXRlU25hcHNob3Q/LmZvcm0/LmRvY3VtZW50Q29kZSB9fTwvc21hbGw+PC9oNT5cbiAgICAgIDxwIGNsYXNzPVwicHJpbnQtb25seSB0ZXh0LW11dGVkXCI+WWF5xLFuOiB7eyBmLmluc3BlY3Rpb24udGVtcGxhdGVTbmFwc2hvdD8uZm9ybT8ucHVibGljYXRpb25EYXRlIHwgZGF0ZTonZGQuTU0ueXl5eScgfX0gwrcgUmV2aXp5b246IHt7IGYuaW5zcGVjdGlvbi50ZW1wbGF0ZVNuYXBzaG90Py5mb3JtPy5yZXZpc2lvbkRhdGUgfCBkYXRlOidkZC5NTS55eXl5JyB9fSAvIHt7IGYuaW5zcGVjdGlvbi50ZW1wbGF0ZVNuYXBzaG90Py5mb3JtPy5yZXZpc2lvbk51bWJlciB9fTwvcD5cbiAgICAgIDxwICpuZ0lmPVwiIXBhcmFtZXRlcnMubGVuZ3RoXCIgY2xhc3M9XCJ0ZXh0LW11dGVkXCI+RGV0YXkgc2XDp2luLiBCdSBrYWxlbWUgYWl0IGZvcm0gdmUgc29ydWxhciBLYWxpdGUgUGFyYW1ldHJlbGVyaSBla3JhbsSxbmRhbiB0YW7EsW1sYW5tYWzEsWTEsXIuPC9wPlxuICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLXJlc3BvbnNpdmVcIj48dGFibGUgY2xhc3M9XCJ0YWJsZSB0YWJsZS1ib3JkZXJlZCB0YWJsZS1zbSBtZWFzdXJlbWVudC10YWJsZVwiICpuZ0lmPVwicGFyYW1ldGVycy5sZW5ndGhcIj5cbiAgICAgICAgPHRoZWFkPjx0cj48dGg+U29ydSAvIFBhcmFtZXRyZTwvdGg+PHRoPkJpcmltPC90aD48dGg+Tm9taW5hbCAvIExpbWl0PC90aD48dGg+w5Zsw6fDvG0gRGXEn2VyaSAvIFlhbsSxdDwvdGg+PHRoPlV5Z3VubHVrPC90aD48L3RyPjwvdGhlYWQ+XG4gICAgICAgIDx0Ym9keT48dHIgKm5nRm9yPVwibGV0IHAgb2YgcGFyYW1ldGVyc1wiIFtjbGFzcy5vdXQtb2YtbGltaXRdPVwibWVhc3VyZW1lbnQocCkub3V0T2ZMaW1pdFwiPlxuICAgICAgICAgIDx0ZD57eyBwLm5hbWUgfX08c3BhbiAqbmdJZj1cInAucmVxdWlyZWRcIiBjbGFzcz1cInRleHQtZGFuZ2VyXCI+ICo8L3NwYW4+PC90ZD48dGQ+e3sgcC51bml0IHx8ICfigJQnIH19PC90ZD48dGQ+e3sgbGltaXRMYWJlbChwKSB9fTwvdGQ+XG4gICAgICAgICAgPHRkPjxpbnB1dCAqbmdJZj1cInAudmFsdWVUeXBlID09PSAnTnVtYmVyJ1wiIHR5cGU9XCJudW1iZXJcIiBjbGFzcz1cImZvcm0tY29udHJvbCBmb3JtLWNvbnRyb2wtc21cIiBbKG5nTW9kZWwpXT1cIm1lYXN1cmVtZW50KHApLm51bWJlclwiIChuZ01vZGVsQ2hhbmdlKT1cImNoYW5nZWQoKVwiIFthdHRyLnN0ZXBdPVwiaW5wdXRTdGVwKHApXCIgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZSB8fCBwLmNhbGN1bGF0ZWQgfHwgYnVzeVwiIFthdHRyLmFyaWEtbGFiZWxdPVwicC5uYW1lXCIgLz5cbiAgICAgICAgICAgIDxzZWxlY3QgKm5nSWY9XCJwLnZhbHVlVHlwZSA9PT0gJ0Nob2ljZSdcIiBjbGFzcz1cImZvcm0tY29udHJvbCBmb3JtLWNvbnRyb2wtc21cIiBbKG5nTW9kZWwpXT1cIm1lYXN1cmVtZW50KHApLnRleHRcIiAoY2hhbmdlKT1cImNoYW5nZWQoKVwiIFtkaXNhYmxlZF09XCIhZWRpdGFibGUgfHwgYnVzeVwiPjxvcHRpb24gdmFsdWU9XCJcIj5TZcOnaW48L29wdGlvbj48b3B0aW9uICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgcC5vcHRpb25zXCIgW3ZhbHVlXT1cIm9wdGlvblwiPnt7IG9wdGlvbiB9fTwvb3B0aW9uPjwvc2VsZWN0PlxuICAgICAgICAgICAgPGlucHV0ICpuZ0lmPVwicC52YWx1ZVR5cGUgPT09ICdUZXh0J1wiIGNsYXNzPVwiZm9ybS1jb250cm9sIGZvcm0tY29udHJvbC1zbVwiIFsobmdNb2RlbCldPVwibWVhc3VyZW1lbnQocCkudGV4dFwiIChuZ01vZGVsQ2hhbmdlKT1cImNoYW5nZWQoKVwiIFtkaXNhYmxlZF09XCIhZWRpdGFibGUgfHwgYnVzeVwiIFthdHRyLmFyaWEtbGFiZWxdPVwicC5uYW1lXCIgLz5cbiAgICAgICAgICA8L3RkPjx0ZD48c3BhbiAqbmdJZj1cIm1lYXN1cmVtZW50KHApLm91dE9mTGltaXRcIiBjbGFzcz1cImJhZGdlIGJhZGdlLWRhbmdlclwiPkxpbWl0IETEscWfxLE8L3NwYW4+PHNwYW4gKm5nSWY9XCIhbWVhc3VyZW1lbnQocCkub3V0T2ZMaW1pdCAmJiAobWVhc3VyZW1lbnQocCkubnVtYmVyICE9IG51bGwgfHwgbWVhc3VyZW1lbnQocCkudGV4dClcIiBjbGFzcz1cImJhZGdlIGJhZGdlLXN1Y2Nlc3NcIj57eyBwLmNhbGN1bGF0ZWQgPyAnT3RvbWF0aWsnIDogJ1V5Z3VuJyB9fTwvc3Bhbj48L3RkPlxuICAgICAgICA8L3RyPjwvdGJvZHk+XG4gICAgICA8L3RhYmxlPjwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cInBhbG1cIiBjbGFzcz1cImJvcmRlciByb3VuZGVkIHAtMyBtdC0zXCI+XG4gICAgICAgIDxoNj5HZW1pIC8gUGFydGkgS29tcG96aXQgTnVtdW5lc2k8L2g2PjxsYWJlbD5QYXJ0aSBLb2R1PC9sYWJlbD48ZGl2IGNsYXNzPVwiZC1mbGV4XCI+PGlucHV0IGNsYXNzPVwiZm9ybS1jb250cm9sXCIgWyhuZ01vZGVsKV09XCJmLmluc3BlY3Rpb24uYmF0Y2hOdW1iZXJcIiBbZGlzYWJsZWRdPVwiIWVkaXRhYmxlIHx8IGJ1c3lcIiAvPjxidXR0b24gY2xhc3M9XCJidG4gYnRuLW91dGxpbmUtc2Vjb25kYXJ5IG1sLTJcIiAoY2xpY2spPVwicmVmcmVzaENvbXBvc2l0ZSgpXCI+TnVtdW5leWkgR2V0aXI8L2J1dHRvbj48L2Rpdj5cbiAgICAgICAgPHAgY2xhc3M9XCJ0ZXh0LW11dGVkIG10LTJcIj5LYXluYWsgbWFsIGdpcmnFn2kgdmV5YSBwYXJ0aSBrb2R1eWxhIGlsacWfa2lsZW5kaXJpbGVuIG51bXVuZSBkacSfZXIgYXJhw6dsYXJkYSBzYWx0IG9rdW51ciBnw7ZzdGVyaWxpci48L3A+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmLmNvbXBvc2l0ZVNhbXBsZSBhcyBzYW1wbGVcIj48cD57eyBzYW1wbGUuYW5hbHlzdCB9fSDCtyB7eyBzYW1wbGUuc2FtcGxlZEF0IHwgZGF0ZTonZGQuTU0ueXl5eSBISDptbScgfX08L3A+PGRpdiBjbGFzcz1cInJvd1wiPjxkaXYgY2xhc3M9XCJjb2wtbWQtMyBtYi0yXCIgKm5nRm9yPVwibGV0IHZhbHVlIG9mIHNhbXBsZS5tZWFzdXJlbWVudHNcIj48c3Ryb25nPnt7IHZhbHVlLnBhcmFtZXRlck5hbWUgfX08L3N0cm9uZz46IHt7IHZhbHVlLm51bWJlciAhPSBudWxsID8gdmFsdWUubnVtYmVyIDogdmFsdWUudGV4dCB9fSB7eyB2YWx1ZS51bml0IH19PC9kaXY+PC9kaXY+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDxidXR0b24gKm5nSWY9XCIhZi5jb21wb3NpdGVTYW1wbGUgJiYgZWRpdGFibGUgJiYgYWxsb3dlZCgnQ29tcG9zaXRlJykgJiYgIWNvbXBvc2l0ZUVkaXRvclwiIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lLXByaW1hcnlcIiAoY2xpY2spPVwiYmVnaW5Db21wb3NpdGUoKVwiPktvbXBveml0IE51bXVuZSBHaXI8L2J1dHRvbj5cbiAgICAgICAgPGRpdiAqbmdJZj1cImNvbXBvc2l0ZUVkaXRvclwiIGNsYXNzPVwicHJpbnQtZXhjbHVkZVwiPjxkaXYgY2xhc3M9XCJyb3dcIj48ZGl2IGNsYXNzPVwiY29sLW1kLTMgbWItMlwiICpuZ0Zvcj1cImxldCBwIG9mIHBhcmFtZXRlcnNcIj48bGFiZWw+e3sgcC5uYW1lIH19PC9sYWJlbD48aW5wdXQgKm5nSWY9XCJwLnZhbHVlVHlwZSA9PT0gJ051bWJlcidcIiB0eXBlPVwibnVtYmVyXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cIm1lYXN1cmVtZW50KHAsIHRydWUpLm51bWJlclwiIChuZ01vZGVsQ2hhbmdlKT1cImNoYW5nZWQodHJ1ZSlcIiBbZGlzYWJsZWRdPVwicC5jYWxjdWxhdGVkIHx8IGJ1c3lcIiAvPjxzZWxlY3QgKm5nSWY9XCJwLnZhbHVlVHlwZSA9PT0gJ0Nob2ljZSdcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIFsobmdNb2RlbCldPVwibWVhc3VyZW1lbnQocCwgdHJ1ZSkudGV4dFwiIChjaGFuZ2UpPVwiY2hhbmdlZCh0cnVlKVwiPjxvcHRpb24gdmFsdWU9XCJcIj48L29wdGlvbj48b3B0aW9uICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgcC5vcHRpb25zXCIgW3ZhbHVlXT1cIm9wdGlvblwiPnt7IG9wdGlvbiB9fTwvb3B0aW9uPjwvc2VsZWN0PjxpbnB1dCAqbmdJZj1cInAudmFsdWVUeXBlID09PSAnVGV4dCdcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIFsobmdNb2RlbCldPVwibWVhc3VyZW1lbnQocCwgdHJ1ZSkudGV4dFwiIC8+PC9kaXY+PC9kaXY+PGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiIChjbGljayk9XCJzYXZlQ29tcG9zaXRlKClcIiBbZGlzYWJsZWRdPVwiYnVzeVwiPk51bXVuZXlpIEtheWRldDwvYnV0dG9uPjxidXR0b24gY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeSBtbC0yXCIgKGNsaWNrKT1cImNvbXBvc2l0ZUVkaXRvciA9IGZhbHNlXCI+VmF6Z2XDpzwvYnV0dG9uPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNhcmRcIj48ZGl2IGNsYXNzPVwiY2FyZC1ib2R5XCI+PGg1PkRlxJ9lcmxlbmRpcm1lPC9oNT48ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTNcIj48bGFiZWw+R2VuZWwgRGXEn2VybGVuZGlybWU8L2xhYmVsPjxzZWxlY3QgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cImRlY2lzaW9uXCIgW2F0dHIuZGF0YS1wcmludC12YWx1ZV09XCJzdGF0dXNMYWJlbChkZWNpc2lvbiB8fCAoZi5pbnNwZWN0aW9uLnJldmlzaW9uID8gZi5pbnNwZWN0aW9uLnN0YXR1cyA6ICdXYWl0aW5nJykpXCIgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZSB8fCBidXN5XCI+PG9wdGlvbiB2YWx1ZT1cIlwiPlNlw6dpbjwvb3B0aW9uPjxvcHRpb24gKm5nSWY9XCJhbGxvd2VkKCdBY2NlcHQnKVwiIHZhbHVlPVwiQWNjZXB0ZWRcIj5LYWJ1bDwvb3B0aW9uPjxvcHRpb24gKm5nSWY9XCJhbGxvd2VkKCdSZWplY3QnKVwiIHZhbHVlPVwiUmVqZWN0ZWRcIj5SZXQ8L29wdGlvbj48L3NlbGVjdD48L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtM1wiPjxsYWJlbD5BbmFsaXppIFlhcGFuICo8L2xhYmVsPjxpbnB1dCBjbGFzcz1cImZvcm0tY29udHJvbFwiIFsobmdNb2RlbCldPVwiZi5pbnNwZWN0aW9uLmFuYWx5c3RcIiBbZGlzYWJsZWRdPVwiIWVkaXRhYmxlIHx8IGJ1c3lcIiAvPjwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0zXCI+PGxhYmVsPktvbnRyb2wgVGFyaWhpIC8gU2FhdGkgKjwvbGFiZWw+PGlucHV0IHR5cGU9XCJkYXRldGltZS1sb2NhbFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgWyhuZ01vZGVsKV09XCJmLmluc3BlY3Rpb24uaW5zcGVjdGVkQXRcIiAoY2hhbmdlKT1cImNoYW5nZWQoKVwiIFtkaXNhYmxlZF09XCIhZWRpdGFibGUgfHwgYnVzeVwiIC8+PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTNcIj48bGFiZWw+TWlrdGFyIChrZyk8L2xhYmVsPjxpbnB1dCBjbGFzcz1cImZvcm0tY29udHJvbFwiIFt2YWx1ZV09XCJmLmluc3BlY3Rpb24ucXVhbnRpdHlLZyA9PSBudWxsID8gJ1RhcnTEsW0gc29ucmFzxLEgZ2VsaXInIDogZi5pbnNwZWN0aW9uLnF1YW50aXR5S2dcIiBkaXNhYmxlZCAvPjwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC00IG10LTNcIj48bGFiZWw+VGFuayBObzwvbGFiZWw+PHNlbGVjdCBjbGFzcz1cImZvcm0tY29udHJvbFwiIFsobmdNb2RlbCldPVwiZi5pbnNwZWN0aW9uLnRhbmtDb2RlXCIgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZSB8fCBidXN5XCI+PG9wdGlvbiB2YWx1ZT1cIlwiPlNlw6dpbjwvb3B0aW9uPjxvcHRpb24gKm5nRm9yPVwibGV0IHRhbmsgb2YgdGFua3NcIiBbdmFsdWVdPVwidGFuay5jb2RlXCI+e3sgdGFuay5uYW1lIH19PC9vcHRpb24+PC9zZWxlY3Q+PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTQgbXQtM1wiPjxsYWJlbD5ZYcSfIENpbnNpPC9sYWJlbD48c2VsZWN0IGNsYXNzPVwiZm9ybS1jb250cm9sXCIgWyhuZ01vZGVsKV09XCJmLmluc3BlY3Rpb24ub2lsVHlwZVwiIChjaGFuZ2UpPVwiY2hhbmdlZCgpXCIgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZSB8fCBidXN5XCI+PG9wdGlvbiB2YWx1ZT1cIlwiPlNlw6dpbjwvb3B0aW9uPjxvcHRpb24+QXnDp2nDp2VrPC9vcHRpb24+PG9wdGlvbj5SYWZpbmUgQXnDp2nDp2VrPC9vcHRpb24+PG9wdGlvbj5QYWxtIE9pbDwvb3B0aW9uPjxvcHRpb24+UGFsbSBPbGVpbjwvb3B0aW9uPjwvc2VsZWN0PjwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBtdC0zXCI+PGxhYmVsPkHDp8Sxa2xhbWEgLyBEacSfZXIgPHNwYW4gKm5nSWY9XCJkZWNpc2lvbiA9PT0gJ1JlamVjdGVkJ1wiPio8L3NwYW4+PC9sYWJlbD48dGV4dGFyZWEgcm93cz1cIjNcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIFsobmdNb2RlbCldPVwiZi5pbnNwZWN0aW9uLm5vdGVzXCIgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZSB8fCBidXN5XCI+PC90ZXh0YXJlYT48L2Rpdj5cbiAgICA8L2Rpdj48ZGl2ICpuZ0lmPVwidmFsaWRhdGlvbkVycm9yXCIgY2xhc3M9XCJhbGVydCBhbGVydC1kYW5nZXIgbXQtMyBtYi0yXCIgcm9sZT1cImFsZXJ0XCI+e3sgdmFsaWRhdGlvbkVycm9yIH19PC9kaXY+PGRpdiBjbGFzcz1cIm10LTNcIj48YnV0dG9uICpuZ0lmPVwiZWRpdGFibGVcIiBjbGFzcz1cImJ0biBidG4tb3V0bGluZS1wcmltYXJ5IG1yLTJcIiAoY2xpY2spPVwic2F2ZShmYWxzZSlcIiBbZGlzYWJsZWRdPVwiYnVzeSB8fCAhcGFyYW1ldGVycy5sZW5ndGhcIj5LYXlkZXQ8L2J1dHRvbj48YnV0dG9uICpuZ0lmPVwiZWRpdGFibGUgJiYgKGFsbG93ZWQoJ0FjY2VwdCcpIHx8IGFsbG93ZWQoJ1JlamVjdCcpKVwiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IG1yLTJcIiAoY2xpY2spPVwic2F2ZSh0cnVlKVwiIFtkaXNhYmxlZF09XCJidXN5IHx8ICFwYXJhbWV0ZXJzLmxlbmd0aFwiPktheWRldCB2ZSBPbmF5bGE8L2J1dHRvbj48YnV0dG9uICpuZ0lmPVwiYWxsb3dlZCgnUHJpbnQnKVwiIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lLXNlY29uZGFyeSBtci0yXCIgKGNsaWNrKT1cInByaW50KClcIiBbZGlzYWJsZWRdPVwiYnVzeSB8fCAhZi5pbnNwZWN0aW9uLnJldmlzaW9uXCI+Rm9ybXUgWWF6ZMSxcjwvYnV0dG9uPjxidXR0b24gY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIChjbGljayk9XCJiYWNrKClcIj5WYXpnZcOnPC9idXR0b24+PC9kaXY+XG4gICAgPHAgKm5nSWY9XCIhZi5jYW5FZGl0XCIgY2xhc3M9XCJ0ZXh0LW11dGVkIG10LTNcIj5BcmHDpyB0YXJ0xLFtYSBnaXJkacSfaSwgw6fEsWt0xLHEn8SxIHZleWEgaXB0YWwgZWRpbGRpxJ9pIGnDp2luIGthecSxdCBzYWx0IG9rdW51ci48L3A+XG4gICAgPC9kaXY+PC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
|
|
@@ -44,7 +44,7 @@ export class IntakeListComponent {
|
|
|
44
44
|
this.statusLabel = statusLabel;
|
|
45
45
|
}
|
|
46
46
|
ngOnInit() { this.api.qualityMovementTypes().subscribe({ next: types => this.types = types, error: e => this.error = errorMessage(e) }); this.load(); }
|
|
47
|
-
allowed(policy) { return this.permissions.getGrantedPolicy('Kalite.Intake.' + policy); }
|
|
47
|
+
allowed(policy) { return this.permissions.getGrantedPolicy('Hitsoft.Kadooglu.Kalite.Intake.' + policy); }
|
|
48
48
|
editable(row) { return row.vehicleStatus === '0' && !row.firstWeight && !row.hasExited; }
|
|
49
49
|
load(reset = false) {
|
|
50
50
|
this.busy = false;
|
|
@@ -77,4 +77,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
77
77
|
type: ViewChild,
|
|
78
78
|
args: ['grid']
|
|
79
79
|
}] } });
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50YWtlLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2FsaXRlL3NyYy9saWIvY29tcG9uZW50cy9pbnRha2UtbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWxpdGUvc3JjL2xpYi9jb21wb25lbnRzL2ludGFrZS1ncmlkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdELE9BQU8sV0FBVyxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJdEMsT0FBTyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7Ozs7Ozs7OztBQUd2RixNQUFNLE9BQU8sbUJBQW1CO0lBZ0I5QixZQUFvQixHQUFzQixFQUFVLFdBQThCO1FBQTlELFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQW1CO1FBZHpFLGFBQVEsR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUNsSyxlQUFVLEdBQUcsSUFBSSxXQUFXLENBQUMsRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUMsT0FBTyxFQUFDLEVBQUU7Z0JBQzdFLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO2dCQUNoQixJQUFJO29CQUNGLE1BQU0sTUFBTSxHQUFHLE1BQU0sY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVcsSUFBSSxFQUFFLENBQUM7d0JBQ2hILFNBQVMsRUFBRSxPQUFPLENBQUMsSUFBSSxJQUFJLENBQUMsRUFBRSxjQUFjLEVBQUUsT0FBTyxDQUFDLElBQUksSUFBSSxFQUFFO3dCQUNoRSxNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztvQkFDM0gsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO29CQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztvQkFDekQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7aUJBQzlEO2dCQUFDLE9BQU8sQ0FBQyxFQUFFO29CQUFFLElBQUksQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUFDLE1BQU0sSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2lCQUFFO1lBQzVFLENBQUMsRUFBQyxDQUFDLENBQUM7UUFDSixTQUFJLEdBQW9CLEVBQUUsQ0FBQztRQUFDLFVBQUssR0FBbUIsRUFBRSxDQUFDO1FBQUMsVUFBSyxHQUFHLENBQUMsQ0FBQztRQUFDLFNBQUksR0FBRyxLQUFLLENBQUM7UUFBQyxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQzVGLFVBQUssR0FBRyxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxjQUFjLEVBQUUsRUFBRSxFQUFFLENBQUM7UUFDbkksY0FBUyxHQUF5QixJQUFJLENBQUM7UUFBQyxXQUFNLEdBQUcsRUFBRSxDQUFDO1FBQUMsZ0JBQVcsR0FBRyxXQUFXLENBQUM7SUFDTSxDQUFDO0lBQ3RGLFFBQVEsS0FBVyxJQUFJLENBQUMsR0FBRyxDQUFDLG9CQUFvQixFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM3SixPQUFPLENBQUMsTUFBYyxJQUFhLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDekcsUUFBUSxDQUFDLEdBQWtCLElBQWEsT0FBTyxHQUFHLENBQUMsYUFBYSxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUNqSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUs7UUFDaEIsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDbEIsSUFBSSxLQUFLO1lBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFDRCxHQUFHLENBQUMsT0FBZ0IsSUFBVSxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNsRixJQUFJLENBQUMsU0FBaUIsSUFBVSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsSUFBSSxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzdHLElBQUksVUFBVSxLQUFhLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDckcsS0FBSyxDQUFDLEdBQWtCLElBQVUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsaUJBQWlCLEdBQUcsQ0FBQyxRQUFRLE1BQU0sQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDaE0sTUFBTTtRQUNKLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUFFLElBQUksQ0FBQyxLQUFLLEdBQUcsd0JBQXdCLENBQUM7WUFBQyxPQUFPO1NBQUU7UUFDOUYsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUM7UUFDbkMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLENBQUM7Z0JBQ3ZILElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO2FBQ3hJLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMxRSxDQUFDOztnSEFwQ1UsbUJBQW1CO29HQUFuQixtQkFBbUIscUpDVmhDLG92TUE4QkE7MkZEcEJhLG1CQUFtQjtrQkFEL0IsU0FBUzsrQkFBYSxpQkFBaUI7d0lBRW5CLElBQUk7c0JBQXRCLFNBQVM7dUJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IER4RGF0YUdyaWRDb21wb25lbnQgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXInO1xuaW1wb3J0IEN1c3RvbVN0b3JlIGZyb20gJ2RldmV4dHJlbWUvZGF0YS9jdXN0b21fc3RvcmUnO1xuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFBlcm1pc3Npb25TZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IEludGFrZVZlaGljbGUsIE1vdmVtZW50VHlwZSB9IGZyb20gJy4uL21vZGVscy9pbnRha2UubW9kZWxzJztcbmltcG9ydCB7IFF1YWxpdHlBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvcXVhbGl0eS1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBkb3dubG9hZCwgZXJyb3JNZXNzYWdlLCBzdGF0dXNMYWJlbCB9IGZyb20gJy4uL3NlcnZpY2VzL3F1YWxpdHktbWVhc3VyZW1lbnRzJztcblxuQENvbXBvbmVudCh7IHNlbGVjdG9yOiAnbGliLWludGFrZS1saXN0JywgdGVtcGxhdGVVcmw6ICcuL2ludGFrZS1ncmlkLmNvbXBvbmVudC5odG1sJywgc3R5bGVVcmxzOiBbJy4vaW50YWtlLmNvbXBvbmVudC5zY3NzJ10gfSlcbmV4cG9ydCBjbGFzcyBJbnRha2VMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQFZpZXdDaGlsZCgnZ3JpZCcpIGdyaWQ/OiBEeERhdGFHcmlkQ29tcG9uZW50O1xuICByZWFkb25seSBzdGF0dXNlcyA9IFt7IHZhbHVlOiAnV2FpdGluZycsIHRleHQ6ICdCZWtsaXlvcicgfSwgeyB2YWx1ZTogJ0RyYWZ0JywgdGV4dDogJ1Rhc2xhaycgfSwgeyB2YWx1ZTogJ0FjY2VwdGVkJywgdGV4dDogJ0thYnVsJyB9LCB7IHZhbHVlOiAnUmVqZWN0ZWQnLCB0ZXh0OiAnUmV0JyB9XTtcbiAgcmVhZG9ubHkgZGF0YVNvdXJjZSA9IG5ldyBDdXN0b21TdG9yZSh7IGtleTogJ2RvY0VudHJ5JywgbG9hZDogYXN5bmMgb3B0aW9ucyA9PiB7XG4gICAgdGhpcy5lcnJvciA9ICcnO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmFwaS5pbnRha2VMaXN0KHsgLi4udGhpcy5xdWVyeSwgc2VhcmNoOiBTdHJpbmcob3B0aW9ucy5zZWFyY2hWYWx1ZSB8fCAnJyksXG4gICAgICAgIHNraXBDb3VudDogb3B0aW9ucy5za2lwIHx8IDAsIG1heFJlc3VsdENvdW50OiBvcHRpb25zLnRha2UgfHwgMjAsXG4gICAgICAgIGZpbHRlcjogb3B0aW9ucy5maWx0ZXIgPyBKU09OLnN0cmluZ2lmeShvcHRpb25zLmZpbHRlcikgOiAnJywgc29ydDogb3B0aW9ucy5zb3J0ID8gSlNPTi5zdHJpbmdpZnkob3B0aW9ucy5zb3J0KSA6ICcnIH0pKTtcbiAgICAgIHRoaXMucm93cyA9IHJlc3VsdC5pdGVtczsgdGhpcy50b3RhbCA9IHJlc3VsdC50b3RhbENvdW50O1xuICAgICAgcmV0dXJuIHsgZGF0YTogcmVzdWx0Lml0ZW1zLCB0b3RhbENvdW50OiByZXN1bHQudG90YWxDb3VudCB9O1xuICAgIH0gY2F0Y2ggKGUpIHsgdGhpcy5lcnJvciA9IGVycm9yTWVzc2FnZShlKTsgdGhyb3cgbmV3IEVycm9yKHRoaXMuZXJyb3IpOyB9XG4gIH19KTtcbiAgcm93czogSW50YWtlVmVoaWNsZVtdID0gW107IHR5cGVzOiBNb3ZlbWVudFR5cGVbXSA9IFtdOyB0b3RhbCA9IDA7IGJ1c3kgPSBmYWxzZTsgZXJyb3IgPSAnJztcbiAgcXVlcnkgPSB7IHBlbmRpbmdPbmx5OiB0cnVlLCBmcm9tOiAnJywgdW50aWw6ICcnLCBzZWFyY2g6ICcnLCBtb3ZlbWVudFR5cGVDb2RlOiAnJywgc3RhdHVzOiAnJywgc2tpcENvdW50OiAwLCBtYXhSZXN1bHRDb3VudDogMjAgfTtcbiAgY2FuY2VsUm93OiBJbnRha2VWZWhpY2xlIHwgbnVsbCA9IG51bGw7IHJlYXNvbiA9ICcnOyBzdGF0dXNMYWJlbCA9IHN0YXR1c0xhYmVsO1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFwaTogUXVhbGl0eUFwaVNlcnZpY2UsIHByaXZhdGUgcGVybWlzc2lvbnM6IFBlcm1pc3Npb25TZXJ2aWNlKSB7fVxuICBuZ09uSW5pdCgpOiB2b2lkIHsgdGhpcy5hcGkucXVhbGl0eU1vdmVtZW50VHlwZXMoKS5zdWJzY3JpYmUoeyBuZXh0OiB0eXBlcyA9PiB0aGlzLnR5cGVzID0gdHlwZXMsIGVycm9yOiBlID0+IHRoaXMuZXJyb3IgPSBlcnJvck1lc3NhZ2UoZSkgfSk7IHRoaXMubG9hZCgpOyB9XG4gIGFsbG93ZWQocG9saWN5OiBzdHJpbmcpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMucGVybWlzc2lvbnMuZ2V0R3JhbnRlZFBvbGljeSgnS2FsaXRlLkludGFrZS4nICsgcG9saWN5KTsgfVxuICBlZGl0YWJsZShyb3c6IEludGFrZVZlaGljbGUpOiBib29sZWFuIHsgcmV0dXJuIHJvdy52ZWhpY2xlU3RhdHVzID09PSAnMCcgJiYgIXJvdy5maXJzdFdlaWdodCAmJiAhcm93Lmhhc0V4aXRlZDsgfVxuICBsb2FkKHJlc2V0ID0gZmFsc2UpOiB2b2lkIHtcbiAgICB0aGlzLmJ1c3kgPSBmYWxzZTtcbiAgICBpZiAocmVzZXQpIHRoaXMuZ3JpZD8uaW5zdGFuY2UucGFnZUluZGV4KDApO1xuICAgIHRoaXMuZ3JpZD8uaW5zdGFuY2UucmVmcmVzaCgpO1xuICB9XG4gIHRhYihwZW5kaW5nOiBib29sZWFuKTogdm9pZCB7IHRoaXMucXVlcnkucGVuZGluZ09ubHkgPSBwZW5kaW5nOyB0aGlzLmxvYWQodHJ1ZSk7IH1cbiAgcGFnZShkaXJlY3Rpb246IG51bWJlcik6IHZvaWQgeyB0aGlzLnF1ZXJ5LnNraXBDb3VudCArPSBkaXJlY3Rpb24gKiB0aGlzLnF1ZXJ5Lm1heFJlc3VsdENvdW50OyB0aGlzLmxvYWQoKTsgfVxuICBnZXQgcGFnZU51bWJlcigpOiBudW1iZXIgeyByZXR1cm4gTWF0aC5mbG9vcih0aGlzLnF1ZXJ5LnNraXBDb3VudCAvIHRoaXMucXVlcnkubWF4UmVzdWx0Q291bnQpICsgMTsgfVxuICBwcmludChyb3c6IEludGFrZVZlaGljbGUpOiB2b2lkIHsgdGhpcy5hcGkuaW50YWtlUGRmKHJvdy5kb2NFbnRyeSkuc3Vic2NyaWJlKHsgbmV4dDogYmxvYiA9PiBkb3dubG9hZChibG9iLCBgR2lyZGktS29udHJvbC0ke3Jvdy5kb2NFbnRyeX0ucGRmYCksIGVycm9yOiBlID0+IHRoaXMuZXJyb3IgPSBlcnJvck1lc3NhZ2UoZSkgfSk7IH1cbiAgY2FuY2VsKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5jYW5jZWxSb3cgfHwgIXRoaXMucmVhc29uLnRyaW0oKSkgeyB0aGlzLmVycm9yID0gJ8SwcHRhbCBnZXJla8OnZXNpIGdpcmluLic7IHJldHVybjsgfVxuICAgIHRoaXMuYnVzeSA9IHRydWU7XG4gICAgY29uc3QgaWQgPSB0aGlzLmNhbmNlbFJvdy5kb2NFbnRyeTtcbiAgICB0aGlzLmFwaS5pbnRha2UoaWQpLnN1YnNjcmliZSh7IG5leHQ6IGZvcm0gPT4gdGhpcy5hcGkuY2FuY2VsSW50YWtlKGlkLCBmb3JtLmluc3BlY3Rpb24ucmV2aXNpb24sIHRoaXMucmVhc29uKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKCkgPT4geyB0aGlzLmNhbmNlbFJvdyA9IG51bGw7IHRoaXMucmVhc29uID0gJyc7IHRoaXMubG9hZCgpOyB9LCBlcnJvcjogZSA9PiB7IHRoaXMuZXJyb3IgPSBlcnJvck1lc3NhZ2UoZSk7IHRoaXMuYnVzeSA9IGZhbHNlOyB9XG4gICAgfSksIGVycm9yOiBlID0+IHsgdGhpcy5lcnJvciA9IGVycm9yTWVzc2FnZShlKTsgdGhpcy5idXN5ID0gZmFsc2U7IH0gfSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjb250YWluZXItZmx1aWRcIj48aDM+SGFtIFlhxJ8gR2lyacWfIEthbGl0ZSBLb250cm9sPC9oMz48ZGl2IGNsYXNzPVwiY2FyZFwiPjxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIj5cbiAgPGRpdiBjbGFzcz1cImJ0bi1ncm91cCBtYi0zXCIgcm9sZT1cInRhYmxpc3RcIj48YnV0dG9uIGNsYXNzPVwiYnRuXCIgW2NsYXNzLmJ0bi1zdWNjZXNzXT1cInF1ZXJ5LnBlbmRpbmdPbmx5XCIgW2NsYXNzLmJ0bi1vdXRsaW5lLXNlY29uZGFyeV09XCIhcXVlcnkucGVuZGluZ09ubHlcIiAoY2xpY2spPVwidGFiKHRydWUpXCI+S2FsaXRlIEtvbnRyb2wgQmVrbGV5ZW5sZXI8L2J1dHRvbj48YnV0dG9uIGNsYXNzPVwiYnRuXCIgW2NsYXNzLmJ0bi1zdWNjZXNzXT1cIiFxdWVyeS5wZW5kaW5nT25seVwiIFtjbGFzcy5idG4tb3V0bGluZS1zZWNvbmRhcnldPVwicXVlcnkucGVuZGluZ09ubHlcIiAoY2xpY2spPVwidGFiKGZhbHNlKVwiPlTDvG0gS2F5xLF0bGFyPC9idXR0b24+PC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJyb3cgbWItM1wiPjxkaXYgY2xhc3M9XCJjb2wtbWQtM1wiPjxsYWJlbD5CYcWfbGFuZ8Sxw6c8L2xhYmVsPjxpbnB1dCB0eXBlPVwiZGF0ZVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgWyhuZ01vZGVsKV09XCJxdWVyeS5mcm9tXCIgLz48L2Rpdj48ZGl2IGNsYXNzPVwiY29sLW1kLTNcIj48bGFiZWw+Qml0acWfPC9sYWJlbD48aW5wdXQgdHlwZT1cImRhdGVcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIFsobmdNb2RlbCldPVwicXVlcnkudW50aWxcIiAvPjwvZGl2PjxkaXYgY2xhc3M9XCJjb2wtbWQtM1wiPjxsYWJlbD5BcmHDpyBIYXJla2V0IFTDvHLDvDwvbGFiZWw+PHNlbGVjdCBjbGFzcz1cImZvcm0tY29udHJvbFwiIFsobmdNb2RlbCldPVwicXVlcnkubW92ZW1lbnRUeXBlQ29kZVwiPjxvcHRpb24gdmFsdWU9XCJcIj5Uw7xtw7w8L29wdGlvbj48b3B0aW9uICpuZ0Zvcj1cImxldCB0eXBlIG9mIHR5cGVzXCIgW3ZhbHVlXT1cInR5cGUuY29kZVwiPnt7dHlwZS5uYW1lfX08L29wdGlvbj48L3NlbGVjdD48L2Rpdj48ZGl2IGNsYXNzPVwiY29sLW1kLTMgZC1mbGV4IGFsaWduLWl0ZW1zLWVuZFwiPjxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIiAoY2xpY2spPVwibG9hZCh0cnVlKVwiPkZpbHRyZWxlPC9idXR0b24+PC9kaXY+PC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJlcnJvclwiIGNsYXNzPVwiYWxlcnQgYWxlcnQtZGFuZ2VyXCIgcm9sZT1cImFsZXJ0XCI+e3tlcnJvcn19PC9kaXY+XG4gIDxkeC1kYXRhLWdyaWQgI2dyaWQgY2xhc3M9XCJpbnRha2UtZ3JpZFwiIFtkYXRhU291cmNlXT1cImRhdGFTb3VyY2VcIiBbcmVtb3RlT3BlcmF0aW9uc109XCJ7cGFnaW5nOiB0cnVlLCBmaWx0ZXJpbmc6IHRydWUsIHNvcnRpbmc6IHRydWV9XCIgW3Nob3dCb3JkZXJzXT1cInRydWVcIiBbcm93QWx0ZXJuYXRpb25FbmFibGVkXT1cInRydWVcIiBbY29sdW1uQXV0b1dpZHRoXT1cInRydWVcIiBbYWxsb3dDb2x1bW5SZXNpemluZ109XCJ0cnVlXCIgY29sdW1uUmVzaXppbmdNb2RlPVwid2lkZ2V0XCIgc3R5bGU9XCJoZWlnaHQ6IGNhbGMoMTAwdmggLSAzNTBweClcIj5cbiAgICA8ZHhvLWZpbHRlci1yb3cgW3Zpc2libGVdPVwidHJ1ZVwiPjwvZHhvLWZpbHRlci1yb3c+PGR4by1zZWFyY2gtcGFuZWwgW3Zpc2libGVdPVwidHJ1ZVwiIFt3aWR0aF09XCIyMjBcIiBwbGFjZWhvbGRlcj1cIkFyYeKAplwiPjwvZHhvLXNlYXJjaC1wYW5lbD5cbiAgICA8ZHhvLXBhZ2luZyBbcGFnZVNpemVdPVwiMjBcIj48L2R4by1wYWdpbmc+PGR4by1wYWdlciBbdmlzaWJsZV09XCJ0cnVlXCIgW3Nob3dJbmZvXT1cInRydWVcIiBbYWxsb3dlZFBhZ2VTaXplc109XCJbMTAsMjAsNTBdXCIgW3Nob3dQYWdlU2l6ZVNlbGVjdG9yXT1cInRydWVcIiBbc2hvd05hdmlnYXRpb25CdXR0b25zXT1cInRydWVcIj48L2R4by1wYWdlcj5cbiAgICA8ZHhpLWNvbHVtbiBjYXB0aW9uPVwixLDFn2xlbWxlclwiIGNlbGxUZW1wbGF0ZT1cImFjdGlvbnNcIiBbYWxsb3dGaWx0ZXJpbmddPVwiZmFsc2VcIiBbYWxsb3dTb3J0aW5nXT1cImZhbHNlXCIgW2ZpeGVkXT1cInRydWVcIiBbd2lkdGhdPVwiMTQ1XCI+PC9keGktY29sdW1uPlxuICAgIDxkeGktY29sdW1uIGRhdGFGaWVsZD1cInF1YWxpdHlTdGF0dXNcIiBjYXB0aW9uPVwiS2FsaXRlIER1cnVtdVwiIGNlbGxUZW1wbGF0ZT1cInN0YXR1c1wiPjxkeG8tbG9va3VwIFtkYXRhU291cmNlXT1cInN0YXR1c2VzXCIgdmFsdWVFeHByPVwidmFsdWVcIiBkaXNwbGF5RXhwcj1cInRleHRcIj48L2R4by1sb29rdXA+PC9keGktY29sdW1uPlxuICAgIDxkeGktY29sdW1uIGRhdGFGaWVsZD1cInNlcXVlbmNlTnVtYmVyXCIgY2FwdGlvbj1cIlPEsXJhIE5vXCI+PC9keGktY29sdW1uPjxkeGktY29sdW1uIGRhdGFGaWVsZD1cImRvY051bVwiIGNhcHRpb249XCJCZWxnZSBOb1wiIGRhdGFUeXBlPVwibnVtYmVyXCI+PC9keGktY29sdW1uPjxkeGktY29sdW1uIGRhdGFGaWVsZD1cImdhdGVDb2RlXCIgY2FwdGlvbj1cIkthcMSxXCI+PC9keGktY29sdW1uPlxuICAgIDxkeGktY29sdW1uIGRhdGFGaWVsZD1cImVudHJ5RGF0ZVwiIGNhcHRpb249XCJHaXJpxZ8gVGFyaWhpIC8gU2FhdGlcIiBkYXRhVHlwZT1cImRhdGV0aW1lXCIgZm9ybWF0PVwiZGQuTU0ueXl5eSBISDptbVwiPjwvZHhpLWNvbHVtbj48ZHhpLWNvbHVtbiBkYXRhRmllbGQ9XCJtb3ZlbWVudFR5cGVOYW1lXCIgY2FwdGlvbj1cIkFyYcOnIEhhcmVrZXQgVMO8csO8XCI+PC9keGktY29sdW1uPjxkeGktY29sdW1uIGRhdGFGaWVsZD1cIm1vdmVtZW50RGV0YWlsTmFtZVwiIGNhcHRpb249XCJEZXRheVwiPjwvZHhpLWNvbHVtbj5cbiAgICA8ZHhpLWNvbHVtbiBkYXRhRmllbGQ9XCJwbGF0ZVwiIGNhcHRpb249XCJLYW15b24gUGxha2FzxLFcIj48L2R4aS1jb2x1bW4+PGR4aS1jb2x1bW4gZGF0YUZpZWxkPVwidHJhaWxlclBsYXRlXCIgY2FwdGlvbj1cIkRvcnNlIFBsYWthc8SxXCI+PC9keGktY29sdW1uPjxkeGktY29sdW1uIGRhdGFGaWVsZD1cImRyaXZlclwiIGNhcHRpb249XCLFnm9mw7ZyXCI+PC9keGktY29sdW1uPlxuICAgIDxkeGktY29sdW1uIGRhdGFGaWVsZD1cInBhcnRuZXJOYW1lXCIgY2FwdGlvbj1cIk11aGF0YXBcIj48L2R4aS1jb2x1bW4+PGR4aS1jb2x1bW4gZGF0YUZpZWxkPVwic2hpcE5hbWVcIiBjYXB0aW9uPVwiR2VtaVwiPjwvZHhpLWNvbHVtbj48ZHhpLWNvbHVtbiBkYXRhRmllbGQ9XCJzdG9ja1RyYW5zZmVyTnVtYmVyXCIgY2FwdGlvbj1cIlN0b2sgTmFrbGlcIj48L2R4aS1jb2x1bW4+XG4gICAgPGR4aS1jb2x1bW4gZGF0YUZpZWxkPVwib3JpZ2luXCIgY2FwdGlvbj1cIk1lbsWfZWlcIj48ZHhvLWxvb2t1cCBbZGF0YVNvdXJjZV09XCJbe2NvZGU6J0RvbWVzdGljJyxuYW1lOifEsMOnIFBpeWFzYSd9LHtjb2RlOidJbXBvcnRlZCcsbmFtZTonxLB0aGFsJ31dXCIgdmFsdWVFeHByPVwiY29kZVwiIGRpc3BsYXlFeHByPVwibmFtZVwiPjwvZHhvLWxvb2t1cD48L2R4aS1jb2x1bW4+XG4gICAgPGR4aS1jb2x1bW4gZGF0YUZpZWxkPVwic2VhbE51bWJlclwiIGNhcHRpb249XCJNw7xow7xyIE5vXCI+PC9keGktY29sdW1uPjxkeGktY29sdW1uIGRhdGFGaWVsZD1cImFuYWx5c3RcIiBjYXB0aW9uPVwiQW5hbGl6aSBZYXBhblwiPjwvZHhpLWNvbHVtbj48ZHhpLWNvbHVtbiBkYXRhRmllbGQ9XCJpbnNwZWN0ZWRBdFwiIGNhcHRpb249XCJLb250cm9sIFRhcmloaVwiIGRhdGFUeXBlPVwiZGF0ZXRpbWVcIiBmb3JtYXQ9XCJkZC5NTS55eXl5IEhIOm1tXCI+PC9keGktY29sdW1uPjxkeGktY29sdW1uIGRhdGFGaWVsZD1cIm5vdGVzXCIgY2FwdGlvbj1cIkHDp8Sxa2xhbWFcIj48L2R4aS1jb2x1bW4+XG4gICAgPGRpdiAqZHhUZW1wbGF0ZT1cImxldCBjZWxsIG9mICdzdGF0dXMnXCI+PHNwYW4gY2xhc3M9XCJiYWRnZVwiIFtjbGFzcy5iYWRnZS1zdWNjZXNzXT1cImNlbGwuZGF0YS5xdWFsaXR5U3RhdHVzID09PSAnQWNjZXB0ZWQnXCIgW2NsYXNzLmJhZGdlLWRhbmdlcl09XCJjZWxsLmRhdGEucXVhbGl0eVN0YXR1cyA9PT0gJ1JlamVjdGVkJ1wiIFtjbGFzcy5iYWRnZS13YXJuaW5nXT1cImNlbGwuZGF0YS5xdWFsaXR5U3RhdHVzID09PSAnV2FpdGluZycgfHwgY2VsbC5kYXRhLnF1YWxpdHlTdGF0dXMgPT09ICdEcmFmdCdcIj57e3N0YXR1c0xhYmVsKGNlbGwuZGF0YS5xdWFsaXR5U3RhdHVzKX19PC9zcGFuPjwvZGl2PlxuICAgIDxkaXYgKmR4VGVtcGxhdGU9XCJsZXQgY2VsbCBvZiAnYWN0aW9ucydcIiBjbGFzcz1cImludGFrZS1hY3Rpb25zLWNlbGxcIj5cbiAgICAgIDxkaXYgbmdiRHJvcGRvd24gY29udGFpbmVyPVwiYm9keVwiIGNsYXNzPVwiZC1pbmxpbmUtYmxvY2tcIiBwbGFjZW1lbnQ9XCJib3R0b20tc3RhcnQgdG9wLXN0YXJ0XCI+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIG5nYkRyb3Bkb3duVG9nZ2xlIGNsYXNzPVwiYnRuIGJ0bi1zbSBidG4tcHJpbWFyeSBpbnRha2UtYWN0aW9ucy10b2dnbGVcIj48aSBjbGFzcz1cImZhIGZhLWNvZ1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT48c3Bhbj7EsMWfbGVtbGVyPC9zcGFuPjwvYnV0dG9uPlxuICAgICAgICA8ZGl2IG5nYkRyb3Bkb3duTWVudSBjbGFzcz1cImludGFrZS1hY3Rpb24tbWVudVwiPlxuICAgICAgICAgIDxhIG5nYkRyb3Bkb3duSXRlbSAqbmdJZj1cImVkaXRhYmxlKGNlbGwuZGF0YSkgJiYgYWxsb3dlZCgnRWRpdCcpXCIgW3JvdXRlckxpbmtdPVwiWycva2FsaXRlL2ludGFrZScsY2VsbC5kYXRhLmRvY0VudHJ5XVwiPnt7Y2VsbC5kYXRhLnF1YWxpdHlTdGF0dXMgPT09ICdXYWl0aW5nJyA/ICdLYWxpdGUgS29udHJvbCBZYXAnIDogJ0TDvHplbmxlJ319PC9hPlxuICAgICAgICAgIDxhIG5nYkRyb3Bkb3duSXRlbSBbcm91dGVyTGlua109XCJbJy9rYWxpdGUvaW50YWtlJyxjZWxsLmRhdGEuZG9jRW50cnldXCIgW3F1ZXJ5UGFyYW1zXT1cInttb2RlOid2aWV3J31cIj7DlnpldGkgR8O2csO8bnTDvGxlPC9hPlxuICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIG5nYkRyb3Bkb3duSXRlbSAqbmdJZj1cImNlbGwuZGF0YS5xdWFsaXR5U3RhdHVzICE9PSAnV2FpdGluZycgJiYgYWxsb3dlZCgnUHJpbnQnKVwiIChjbGljayk9XCJwcmludChjZWxsLmRhdGEpXCI+R2lyZGkgS29udHJvbCBGb3JtdSBZYXpkxLFyPC9idXR0b24+XG4gICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbmdiRHJvcGRvd25JdGVtICpuZ0lmPVwiZWRpdGFibGUoY2VsbC5kYXRhKSAmJiBjZWxsLmRhdGEucXVhbGl0eVN0YXR1cyAhPT0gJ1dhaXRpbmcnICYmIGFsbG93ZWQoJ0NhbmNlbCcpXCIgKGNsaWNrKT1cImNhbmNlbFJvdyA9IGNlbGwuZGF0YTsgcmVhc29uID0gJydcIj7EsHB0YWwgRXQ8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9keC1kYXRhLWdyaWQ+XG48L2Rpdj48L2Rpdj48L2Rpdj5cbjxhYnAtbW9kYWwgW3Zpc2libGVdPVwiISFjYW5jZWxSb3dcIiAodmlzaWJsZUNoYW5nZSk9XCIhJGV2ZW50ICYmIChjYW5jZWxSb3cgPSBudWxsKVwiIFtidXN5XT1cImJ1c3lcIj48bmctdGVtcGxhdGUgI2FicEhlYWRlcj48aDU+S2FsaXRlIEtvbnRyb2zDvG7DvCDEsHB0YWwgRXQ8L2g1PjwvbmctdGVtcGxhdGU+PG5nLXRlbXBsYXRlICNhYnBCb2R5PjxsYWJlbD7EsHB0YWwgR2VyZWvDp2VzaTwvbGFiZWw+PHRleHRhcmVhIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgcm93cz1cIjNcIiBbKG5nTW9kZWwpXT1cInJlYXNvblwiPjwvdGV4dGFyZWE+PHAgY2xhc3M9XCJ0ZXh0LW11dGVkIG10LTJcIj5LYXnEsXQgeWVuaWRlbiBrYWxpdGUga29udHJvbCBiZWtsZXllbmxlcmUgYWzEsW7EsXIuPC9wPjwvbmctdGVtcGxhdGU+PG5nLXRlbXBsYXRlICNhYnBGb290ZXI+PGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5XCIgKGNsaWNrKT1cImNhbmNlbFJvdyA9IG51bGxcIiBbZGlzYWJsZWRdPVwiYnVzeVwiPlZhemdlw6c8L2J1dHRvbj48YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1kYW5nZXJcIiAoY2xpY2spPVwiY2FuY2VsKClcIiBbZGlzYWJsZWRdPVwiYnVzeSB8fCAhcmVhc29uLnRyaW0oKVwiPsSwcHRhbCBFdDwvYnV0dG9uPjwvbmctdGVtcGxhdGU+PC9hYnAtbW9kYWw+XG4iXX0=
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50YWtlLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2FsaXRlL3NyYy9saWIvY29tcG9uZW50cy9pbnRha2UtbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWxpdGUvc3JjL2xpYi9jb21wb25lbnRzL2ludGFrZS1ncmlkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdELE9BQU8sV0FBVyxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJdEMsT0FBTyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7Ozs7Ozs7OztBQUd2RixNQUFNLE9BQU8sbUJBQW1CO0lBZ0I5QixZQUFvQixHQUFzQixFQUFVLFdBQThCO1FBQTlELFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQW1CO1FBZHpFLGFBQVEsR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUNsSyxlQUFVLEdBQUcsSUFBSSxXQUFXLENBQUMsRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUMsT0FBTyxFQUFDLEVBQUU7Z0JBQzdFLElBQUksQ0FBQyxLQUFLLEdB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ICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IER4RGF0YUdyaWRDb21wb25lbnQgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXInO1xuaW1wb3J0IEN1c3RvbVN0b3JlIGZyb20gJ2RldmV4dHJlbWUvZGF0YS9jdXN0b21fc3RvcmUnO1xuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFBlcm1pc3Npb25TZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IEludGFrZVZlaGljbGUsIE1vdmVtZW50VHlwZSB9IGZyb20gJy4uL21vZGVscy9pbnRha2UubW9kZWxzJztcbmltcG9ydCB7IFF1YWxpdHlBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvcXVhbGl0eS1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBkb3dubG9hZCwgZXJyb3JNZXNzYWdlLCBzdGF0dXNMYWJlbCB9IGZyb20gJy4uL3NlcnZpY2VzL3F1YWxpdHktbWVhc3VyZW1lbnRzJztcblxuQENvbXBvbmVudCh7IHNlbGVjdG9yOiAnbGliLWludGFrZS1saXN0JywgdGVtcGxhdGVVcmw6ICcuL2ludGFrZS1ncmlkLmNvbXBvbmVudC5odG1sJywgc3R5bGVVcmxzOiBbJy4vaW50YWtlLmNvbXBvbmVudC5zY3NzJ10gfSlcbmV4cG9ydCBjbGFzcyBJbnRha2VMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQFZpZXdDaGlsZCgnZ3JpZCcpIGdyaWQ/OiBEeERhdGFHcmlkQ29tcG9uZW50O1xuICByZWFkb25seSBzdGF0dXNlcyA9IFt7IHZhbHVlOiAnV2FpdGluZycsIHRleHQ6ICdCZWtsaXlvcicgfSwgeyB2YWx1ZTogJ0RyYWZ0JywgdGV4dDogJ1Rhc2xhaycgfSwgeyB2YWx1ZTogJ0FjY2VwdGVkJywgdGV4dDogJ0thYnVsJyB9LCB7IHZhbHVlOiAnUmVqZWN0ZWQnLCB0ZXh0OiAnUmV0JyB9XTtcbiAgcmVhZG9ubHkgZGF0YVNvdXJjZSA9IG5ldyBDdXN0b21TdG9yZSh7IGtleTogJ2RvY0VudHJ5JywgbG9hZDogYXN5bmMgb3B0aW9ucyA9PiB7XG4gICAgdGhpcy5lcnJvciA9ICcnO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmFwaS5pbnRha2VMaXN0KHsgLi4udGhpcy5xdWVyeSwgc2VhcmNoOiBTdHJpbmcob3B0aW9ucy5zZWFyY2hWYWx1ZSB8fCAnJyksXG4gICAgICAgIHNraXBDb3VudDogb3B0aW9ucy5za2lwIHx8IDAsIG1heFJlc3VsdENvdW50OiBvcHRpb25zLnRha2UgfHwgMjAsXG4gICAgICAgIGZpbHRlcjogb3B0aW9ucy5maWx0ZXIgPyBKU09OLnN0cmluZ2lmeShvcHRpb25zLmZpbHRlcikgOiAnJywgc29ydDogb3B0aW9ucy5zb3J0ID8gSlNPTi5zdHJpbmdpZnkob3B0aW9ucy5zb3J0KSA6ICcnIH0pKTtcbiAgICAgIHRoaXMucm93cyA9IHJlc3VsdC5pdGVtczsgdGhpcy50b3RhbCA9IHJlc3VsdC50b3RhbENvdW50O1xuICAgICAgcmV0dXJuIHsgZGF0YTogcmVzdWx0Lml0ZW1zLCB0b3RhbENvdW50OiByZXN1bHQudG90YWxDb3VudCB9O1xuICAgIH0gY2F0Y2ggKGUpIHsgdGhpcy5lcnJvciA9IGVycm9yTWVzc2FnZShlKTsgdGhyb3cgbmV3IEVycm9yKHRoaXMuZXJyb3IpOyB9XG4gIH19KTtcbiAgcm93czogSW50YWtlVmVoaWNsZVtdID0gW107IHR5cGVzOiBNb3ZlbWVudFR5cGVbXSA9IFtdOyB0b3RhbCA9IDA7IGJ1c3kgPSBmYWxzZTsgZXJyb3IgPSAnJztcbiAgcXVlcnkgPSB7IHBlbmRpbmdPbmx5OiB0cnVlLCBmcm9tOiAnJywgdW50aWw6ICcnLCBzZWFyY2g6ICcnLCBtb3ZlbWVudFR5cGVDb2RlOiAnJywgc3RhdHVzOiAnJywgc2tpcENvdW50OiAwLCBtYXhSZXN1bHRDb3VudDogMjAgfTtcbiAgY2FuY2VsUm93OiBJbnRha2VWZWhpY2xlIHwgbnVsbCA9IG51bGw7IHJlYXNvbiA9ICcnOyBzdGF0dXNMYWJlbCA9IHN0YXR1c0xhYmVsO1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFwaTogUXVhbGl0eUFwaVNlcnZpY2UsIHByaXZhdGUgcGVybWlzc2lvbnM6IFBlcm1pc3Npb25TZXJ2aWNlKSB7fVxuICBuZ09uSW5pdCgpOiB2b2lkIHsgdGhpcy5hcGkucXVhbGl0eU1vdmVtZW50VHlwZXMoKS5zdWJzY3JpYmUoeyBuZXh0OiB0eXBlcyA9PiB0aGlzLnR5cGVzID0gdHlwZXMsIGVycm9yOiBlID0+IHRoaXMuZXJyb3IgPSBlcnJvck1lc3NhZ2UoZSkgfSk7IHRoaXMubG9hZCgpOyB9XG4gIGFsbG93ZWQocG9saWN5OiBzdHJpbmcpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMucGVybWlzc2lvbnMuZ2V0R3JhbnRlZFBvbGljeSgnSGl0c29mdC5LYWRvb2dsdS5LYWxpdGUuSW50YWtlLicgKyBwb2xpY3kpOyB9XG4gIGVkaXRhYmxlKHJvdzogSW50YWtlVmVoaWNsZSk6IGJvb2xlYW4geyByZXR1cm4gcm93LnZlaGljbGVTdGF0dXMgPT09ICcwJyAmJiAhcm93LmZpcnN0V2VpZ2h0ICYmICFyb3cuaGFzRXhpdGVkOyB9XG4gIGxvYWQocmVzZXQgPSBmYWxzZSk6IHZvaWQge1xuICAgIHRoaXMuYnVzeSA9IGZhbHNlO1xuICAgIGlmIChyZXNldCkgdGhpcy5ncmlkPy5pbnN0YW5jZS5wYWdlSW5kZXgoMCk7XG4gICAgdGhpcy5ncmlkPy5pbnN0YW5jZS5yZWZyZXNoKCk7XG4gIH1cbiAgdGFiKHBlbmRpbmc6IGJvb2xlYW4pOiB2b2lkIHsgdGhpcy5xdWVyeS5wZW5kaW5nT25seSA9IHBlbmRpbmc7IHRoaXMubG9hZCh0cnVlKTsgfVxuICBwYWdlKGRpcmVjdGlvbjogbnVtYmVyKTogdm9pZCB7IHRoaXMucXVlcnkuc2tpcENvdW50ICs9IGRpcmVjdGlvbiAqIHRoaXMucXVlcnkubWF4UmVzdWx0Q291bnQ7IHRoaXMubG9hZCgpOyB9XG4gIGdldCBwYWdlTnVtYmVyKCk6IG51bWJlciB7IHJldHVybiBNYXRoLmZsb29yKHRoaXMucXVlcnkuc2tpcENvdW50IC8gdGhpcy5xdWVyeS5tYXhSZXN1bHRDb3VudCkgKyAxOyB9XG4gIHByaW50KHJvdzogSW50YWtlVmVoaWNsZSk6IHZvaWQgeyB0aGlzLmFwaS5pbnRha2VQZGYocm93LmRvY0VudHJ5KS5zdWJzY3JpYmUoeyBuZXh0OiBibG9iID0+IGRvd25sb2FkKGJsb2IsIGBHaXJkaS1Lb250cm9sLSR7cm93LmRvY0VudHJ5fS5wZGZgKSwgZXJyb3I6IGUgPT4gdGhpcy5lcnJvciA9IGVycm9yTWVzc2FnZShlKSB9KTsgfVxuICBjYW5jZWwoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNhbmNlbFJvdyB8fCAhdGhpcy5yZWFzb24udHJpbSgpKSB7IHRoaXMuZXJyb3IgPSAnxLBwdGFsIGdlcmVrw6dlc2kgZ2lyaW4uJzsgcmV0dXJuOyB9XG4gICAgdGhpcy5idXN5ID0gdHJ1ZTtcbiAgICBjb25zdCBpZCA9IHRoaXMuY2FuY2VsUm93LmRvY0VudHJ5O1xuICAgIHRoaXMuYXBpLmludGFrZShpZCkuc3Vic2NyaWJlKHsgbmV4dDogZm9ybSA9PiB0aGlzLmFwaS5jYW5jZWxJbnRha2UoaWQsIGZvcm0uaW5zcGVjdGlvbi5yZXZpc2lvbiwgdGhpcy5yZWFzb24pLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAoKSA9PiB7IHRoaXMuY2FuY2VsUm93ID0gbnVsbDsgdGhpcy5yZWFzb24gPSAnJzsgdGhpcy5sb2FkKCk7IH0sIGVycm9yOiBlID0+IHsgdGhpcy5lcnJvciA9IGVycm9yTWVzc2FnZShlKTsgdGhpcy5idXN5ID0gZmFsc2U7IH1cbiAgICB9KSwgZXJyb3I6IGUgPT4geyB0aGlzLmVycm9yID0gZXJyb3JNZXNzYWdlKGUpOyB0aGlzLmJ1c3kgPSBmYWxzZTsgfSB9KTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNvbnRhaW5lci1mbHVpZFwiPjxoMz5IYW0gWWHEnyBHaXJpxZ8gS2FsaXRlIEtvbnRyb2w8L2gzPjxkaXYgY2xhc3M9XCJjYXJkXCI+PGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPlxuICA8ZGl2IGNsYXNzPVwiYnRuLWdyb3VwIG1iLTNcIiByb2xlPVwidGFibGlzdFwiPjxidXR0b24gY2xhc3M9XCJidG5cIiBbY2xhc3MuYnRuLXN1Y2Nlc3NdPVwicXVlcnkucGVuZGluZ09ubHlcIiBbY2xhc3MuYnRuLW91dGxpbmUtc2Vjb25kYXJ5XT1cIiFxdWVyeS5wZW5kaW5nT25seVwiIChjbGljayk9XCJ0YWIodHJ1ZSlcIj5LYWxpdGUgS29udHJvbCBCZWtsZXllbmxlcjwvYnV0dG9uPjxidXR0b24gY2xhc3M9XCJidG5cIiBbY2xhc3MuYnRuLXN1Y2Nlc3NdPVwiIXF1ZXJ5LnBlbmRpbmdPbmx5XCIgW2NsYXNzLmJ0bi1vdXRsaW5lLXNlY29uZGFyeV09XCJxdWVyeS5wZW5kaW5nT25seVwiIChjbGljayk9XCJ0YWIoZmFsc2UpXCI+VMO8bSBLYXnEsXRsYXI8L2J1dHRvbj48L2Rpdj5cbiAgPGRpdiBjbGFzcz1cInJvdyBtYi0zXCI+PGRpdiBjbGFzcz1cImNvbC1tZC0zXCI+PGxhYmVsPkJhxZ9sYW5nxLHDpzwvbGFiZWw+PGlucHV0IHR5cGU9XCJkYXRlXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cInF1ZXJ5LmZyb21cIiAvPjwvZGl2PjxkaXYgY2xhc3M9XCJjb2wtbWQtM1wiPjxsYWJlbD5CaXRpxZ88L2xhYmVsPjxpbnB1dCB0eXBlPVwiZGF0ZVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgWyhuZ01vZGVsKV09XCJxdWVyeS51bnRpbFwiIC8+PC9kaXY+PGRpdiBjbGFzcz1cImNvbC1tZC0zXCI+PGxhYmVsPkFyYcOnIEhhcmVrZXQgVMO8csO8PC9sYWJlbD48c2VsZWN0IGNsYXNzPVwiZm9ybS1jb250cm9sXCIgWyhuZ01vZGVsKV09XCJxdWVyeS5tb3ZlbWVudFR5cGVDb2RlXCI+PG9wdGlvbiB2YWx1ZT1cIlwiPlTDvG3DvDwvb3B0aW9uPjxvcHRpb24gKm5nRm9yPVwibGV0IHR5cGUgb2YgdHlwZXNcIiBbdmFsdWVdPVwidHlwZS5jb2RlXCI+e3t0eXBlLm5hbWV9fTwvb3B0aW9uPjwvc2VsZWN0PjwvZGl2PjxkaXYgY2xhc3M9XCJjb2wtbWQtMyBkLWZsZXggYWxpZ24taXRlbXMtZW5kXCI+PGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiIChjbGljayk9XCJsb2FkKHRydWUpXCI+RmlsdHJlbGU8L2J1dHRvbj48L2Rpdj48L2Rpdj5cbiAgPGRpdiAqbmdJZj1cImVycm9yXCIgY2xhc3M9XCJhbGVydCBhbGVydC1kYW5nZXJcIiByb2xlPVwiYWxlcnRcIj57e2Vycm9yfX08L2Rpdj5cbiAgPGR4LWRhdGEtZ3JpZCAjZ3JpZCBjbGFzcz1cImludGFrZS1ncmlkXCIgW2RhdGFTb3VyY2VdPVwiZGF0YVNvdXJjZVwiIFtyZW1vdGVPcGVyYXRpb25zXT1cIntwYWdpbmc6IHRydWUsIGZpbHRlcmluZzogdHJ1ZSwgc29ydGluZzogdHJ1ZX1cIiBbc2hvd0JvcmRlcnNdPVwidHJ1ZVwiIFtyb3dBbHRlcm5hdGlvbkVuYWJsZWRdPVwidHJ1ZVwiIFtjb2x1bW5BdXRvV2lkdGhdPVwidHJ1ZVwiIFthbGxvd0NvbHVtblJlc2l6aW5nXT1cInRydWVcIiBjb2x1bW5SZXNpemluZ01vZGU9XCJ3aWRnZXRcIiBzdHlsZT1cImhlaWdodDogY2FsYygxMDB2aCAtIDM1MHB4KVwiPlxuICAgIDxkeG8tZmlsdGVyLXJvdyBbdmlzaWJsZV09XCJ0cnVlXCI+PC9keG8tZmlsdGVyLXJvdz48ZHhvLXNlYXJjaC1wYW5lbCBbdmlzaWJsZV09XCJ0cnVlXCIgW3dpZHRoXT1cIjIyMFwiIHBsYWNlaG9sZGVyPVwiQXJh4oCmXCI+PC9keG8tc2VhcmNoLXBhbmVsPlxuICAgIDxkeG8tcGFnaW5nIFtwYWdlU2l6ZV09XCIyMFwiPjwvZHhvLXBhZ2luZz48ZHhvLXBhZ2VyIFt2aXNpYmxlXT1cInRydWVcIiBbc2hvd0luZm9dPVwidHJ1ZVwiIFthbGxvd2VkUGFnZVNpemVzXT1cIlsxMCwyMCw1MF1cIiBbc2hvd1BhZ2VTaXplU2VsZWN0b3JdPVwidHJ1ZVwiIFtzaG93TmF2aWdhdGlvbkJ1dHRvbnNdPVwidHJ1ZVwiPjwvZHhvLXBhZ2VyPlxuICAgIDxkeGktY29sdW1uIGNhcHRpb249XCLEsMWfbGVtbGVyXCIgY2VsbFRlbXBsYXRlPVwiYWN0aW9uc1wiIFthbGxvd0ZpbHRlcmluZ109XCJmYWxzZVwiIFthbGxvd1NvcnRpbmddPVwiZmFsc2VcIiBbZml4ZWRdPVwidHJ1ZVwiIFt3aWR0aF09XCIxNDVcIj48L2R4aS1jb2x1bW4+XG4gICAgPGR4aS1jb2x1bW4gZGF0YUZpZWxkPVwicXVhbGl0eVN0YXR1c1wiIGNhcHRpb249XCJLYWxpdGUgRHVydW11XCIgY2VsbFRlbXBsYXRlPVwic3RhdHVzXCI+PGR4by1sb29rdXAgW2RhdGFTb3VyY2VdPVwic3RhdHVzZXNcIiB2YWx1ZUV4cHI9XCJ2YWx1ZVwiIGRpc3BsYXlFeHByPVwidGV4dFwiPjwvZHhvLWxvb2t1cD48L2R4aS1jb2x1bW4+XG4gICAgPGR4aS1jb2x1bW4gZGF0YUZpZWxkPVwic2VxdWVuY2VOdW1iZXJcIiBjYXB0aW9uPVwiU8SxcmEgTm9cIj48L2R4aS1jb2x1bW4+PGR4aS1jb2x1bW4gZGF0YUZpZWxkPVwiZG9jTnVtXCIgY2FwdGlvbj1cIkJlbGdlIE5vXCIgZGF0YVR5cGU9XCJudW1iZXJcIj48L2R4aS1jb2x1bW4+PGR4aS1jb2x1bW4gZGF0YUZpZWxkPVwiZ2F0ZUNvZGVcIiBjYXB0aW9uPVwiS2FwxLFcIj48L2R4aS1jb2x1bW4+XG4gICAgPGR4aS1jb2x1bW4gZGF0YUZpZWxkPVwiZW50cnlEYXRlXCIgY2FwdGlvbj1cIkdpcmnFnyBUYXJpaGkgLyBTYWF0aVwiIGRhdGFUeXBlPVwiZGF0ZXRpbWVcIiBmb3JtYXQ9XCJkZC5NTS55eXl5IEhIOm1tXCI+PC9keGktY29sdW1uPjxkeGktY29sdW1uIGRhdGFGaWVsZD1cIm1vdmVtZW50VHlwZU5hbWVcIiBjYXB0aW9uPVwiQXJhw6cgSGFyZWtldCBUw7xyw7xcIj48L2R4aS1jb2x1bW4+PGR4aS1jb2x1bW4gZGF0YUZpZWxkPVwibW92ZW1lbnREZXRhaWxOYW1lXCIgY2FwdGlvbj1cIkRldGF5XCI+PC9keGktY29sdW1uPlxuICAgIDxkeGktY29sdW1uIGRhdGFGaWVsZD1cInBsYXRlXCIgY2FwdGlvbj1cIkthbXlvbiBQbGFrYXPEsVwiPjwvZHhpLWNvbHVtbj48ZHhpLWNvbHVtbiBkYXRhRmllbGQ9XCJ0cmFpbGVyUGxhdGVcIiBjYXB0aW9uPVwiRG9yc2UgUGxha2FzxLFcIj48L2R4aS1jb2x1bW4+PGR4aS1jb2x1bW4gZGF0YUZpZWxkPVwiZHJpdmVyXCIgY2FwdGlvbj1cIsWeb2bDtnJcIj48L2R4aS1jb2x1bW4+XG4gICAgPGR4aS1jb2x1bW4gZGF0YUZpZWxkPVwicGFydG5lck5hbWVcIiBjYXB0aW9uPVwiTXVoYXRhcFwiPjwvZHhpLWNvbHVtbj48ZHhpLWNvbHVtbiBkYXRhRmllbGQ9XCJzaGlwTmFtZVwiIGNhcHRpb249XCJHZW1pXCI+PC9keGktY29sdW1uPjxkeGktY29sdW1uIGRhdGFGaWVsZD1cInN0b2NrVHJhbnNmZXJOdW1iZXJcIiBjYXB0aW9uPVwiU3RvayBOYWtsaVwiPjwvZHhpLWNvbHVtbj5cbiAgICA8ZHhpLWNvbHVtbiBkYXRhRmllbGQ9XCJvcmlnaW5cIiBjYXB0aW9uPVwiTWVuxZ9laVwiPjxkeG8tbG9va3VwIFtkYXRhU291cmNlXT1cIlt7Y29kZTonRG9tZXN0aWMnLG5hbWU6J8Sww6cgUGl5YXNhJ30se2NvZGU6J0ltcG9ydGVkJyxuYW1lOifEsHRoYWwnfV1cIiB2YWx1ZUV4cHI9XCJjb2RlXCIgZGlzcGxheUV4cHI9XCJuYW1lXCI+PC9keG8tbG9va3VwPjwvZHhpLWNvbHVtbj5cbiAgICA8ZHhpLWNvbHVtbiBkYXRhRmllbGQ9XCJzZWFsTnVtYmVyXCIgY2FwdGlvbj1cIk3DvGjDvHIgTm9cIj48L2R4aS1jb2x1bW4+PGR4aS1jb2x1bW4gZGF0YUZpZWxkPVwiYW5hbHlzdFwiIGNhcHRpb249XCJBbmFsaXppIFlhcGFuXCI+PC9keGktY29sdW1uPjxkeGktY29sdW1uIGRhdGFGaWVsZD1cImluc3BlY3RlZEF0XCIgY2FwdGlvbj1cIktvbnRyb2wgVGFyaWhpXCIgZGF0YVR5cGU9XCJkYXRldGltZVwiIGZvcm1hdD1cImRkLk1NLnl5eXkgSEg6bW1cIj48L2R4aS1jb2x1bW4+PGR4aS1jb2x1bW4gZGF0YUZpZWxkPVwibm90ZXNcIiBjYXB0aW9uPVwiQcOnxLFrbGFtYVwiPjwvZHhpLWNvbHVtbj5cbiAgICA8ZGl2ICpkeFRlbXBsYXRlPVwibGV0IGNlbGwgb2YgJ3N0YXR1cydcIj48c3BhbiBjbGFzcz1cImJhZGdlXCIgW2NsYXNzLmJhZGdlLXN1Y2Nlc3NdPVwiY2VsbC5kYXRhLnF1YWxpdHlTdGF0dXMgPT09ICdBY2NlcHRlZCdcIiBbY2xhc3MuYmFkZ2UtZGFuZ2VyXT1cImNlbGwuZGF0YS5xdWFsaXR5U3RhdHVzID09PSAnUmVqZWN0ZWQnXCIgW2NsYXNzLmJhZGdlLXdhcm5pbmddPVwiY2VsbC5kYXRhLnF1YWxpdHlTdGF0dXMgPT09ICdXYWl0aW5nJyB8fCBjZWxsLmRhdGEucXVhbGl0eVN0YXR1cyA9PT0gJ0RyYWZ0J1wiPnt7c3RhdHVzTGFiZWwoY2VsbC5kYXRhLnF1YWxpdHlTdGF0dXMpfX08L3NwYW4+PC9kaXY+XG4gICAgPGRpdiAqZHhUZW1wbGF0ZT1cImxldCBjZWxsIG9mICdhY3Rpb25zJ1wiIGNsYXNzPVwiaW50YWtlLWFjdGlvbnMtY2VsbFwiPlxuICAgICAgPGRpdiBuZ2JEcm9wZG93biBjb250YWluZXI9XCJib2R5XCIgY2xhc3M9XCJkLWlubGluZS1ibG9ja1wiIHBsYWNlbWVudD1cImJvdHRvbS1zdGFydCB0b3Atc3RhcnRcIj5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbmdiRHJvcGRvd25Ub2dnbGUgY2xhc3M9XCJidG4gYnRuLXNtIGJ0bi1wcmltYXJ5IGludGFrZS1hY3Rpb25zLXRvZ2dsZVwiPjxpIGNsYXNzPVwiZmEgZmEtY29nXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPjxzcGFuPsSwxZ9sZW1sZXI8L3NwYW4+PC9idXR0b24+XG4gICAgICAgIDxkaXYgbmdiRHJvcGRvd25NZW51IGNsYXNzPVwiaW50YWtlLWFjdGlvbi1tZW51XCI+XG4gICAgICAgICAgPGEgbmdiRHJvcGRvd25JdGVtICpuZ0lmPVwiZWRpdGFibGUoY2VsbC5kYXRhKSAmJiBhbGxvd2VkKCdFZGl0JylcIiBbcm91dGVyTGlua109XCJbJy9rYWxpdGUvaW50YWtlJyxjZWxsLmRhdGEuZG9jRW50cnldXCI+e3tjZWxsLmRhdGEucXVhbGl0eVN0YXR1cyA9PT0gJ1dhaXRpbmcnID8gJ0thbGl0ZSBLb250cm9sIFlhcCcgOiAnRMO8emVubGUnfX08L2E+XG4gICAgICAgICAgPGEgbmdiRHJvcGRvd25JdGVtIFtyb3V0ZXJMaW5rXT1cIlsnL2thbGl0ZS9pbnRha2UnLGNlbGwuZGF0YS5kb2NFbnRyeV1cIiBbcXVlcnlQYXJhbXNdPVwie21vZGU6J3ZpZXcnfVwiPsOWemV0aSBHw7Zyw7xudMO8bGU8L2E+XG4gICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbmdiRHJvcGRvd25JdGVtICpuZ0lmPVwiY2VsbC5kYXRhLnF1YWxpdHlTdGF0dXMgIT09ICdXYWl0aW5nJyAmJiBhbGxvd2VkKCdQcmludCcpXCIgKGNsaWNrKT1cInByaW50KGNlbGwuZGF0YSlcIj5HaXJkaSBLb250cm9sIEZvcm11IFlhemTEsXI8L2J1dHRvbj5cbiAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBuZ2JEcm9wZG93bkl0ZW0gKm5nSWY9XCJlZGl0YWJsZShjZWxsLmRhdGEpICYmIGNlbGwuZGF0YS5xdWFsaXR5U3RhdHVzICE9PSAnV2FpdGluZycgJiYgYWxsb3dlZCgnQ2FuY2VsJylcIiAoY2xpY2spPVwiY2FuY2VsUm93ID0gY2VsbC5kYXRhOyByZWFzb24gPSAnJ1wiPsSwcHRhbCBFdDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2R4LWRhdGEtZ3JpZD5cbjwvZGl2PjwvZGl2PjwvZGl2PlxuPGFicC1tb2RhbCBbdmlzaWJsZV09XCIhIWNhbmNlbFJvd1wiICh2aXNpYmxlQ2hhbmdlKT1cIiEkZXZlbnQgJiYgKGNhbmNlbFJvdyA9IG51bGwpXCIgW2J1c3ldPVwiYnVzeVwiPjxuZy10ZW1wbGF0ZSAjYWJwSGVhZGVyPjxoNT5LYWxpdGUgS29udHJvbMO8bsO8IMSwcHRhbCBFdDwvaDU+PC9uZy10ZW1wbGF0ZT48bmctdGVtcGxhdGUgI2FicEJvZHk+PGxhYmVsPsSwcHRhbCBHZXJla8OnZXNpPC9sYWJlbD48dGV4dGFyZWEgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiByb3dzPVwiM1wiIFsobmdNb2RlbCldPVwicmVhc29uXCI+PC90ZXh0YXJlYT48cCBjbGFzcz1cInRleHQtbXV0ZWQgbXQtMlwiPkthecSxdCB5ZW5pZGVuIGthbGl0ZSBrb250cm9sIGJla2xleWVubGVyZSBhbMSxbsSxci48L3A+PC9uZy10ZW1wbGF0ZT48bmctdGVtcGxhdGUgI2FicEZvb3Rlcj48YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnlcIiAoY2xpY2spPVwiY2FuY2VsUm93ID0gbnVsbFwiIFtkaXNhYmxlZF09XCJidXN5XCI+VmF6Z2XDpzwvYnV0dG9uPjxidXR0b24gY2xhc3M9XCJidG4gYnRuLWRhbmdlclwiIChjbGljayk9XCJjYW5jZWwoKVwiIFtkaXNhYmxlZF09XCJidXN5IHx8ICFyZWFzb24udHJpbSgpXCI+xLBwdGFsIEV0PC9idXR0b24+PC9uZy10ZW1wbGF0ZT48L2FicC1tb2RhbD5cbiJdfQ==
|
|
@@ -38,7 +38,7 @@ export class ProcessAnalysisComponent {
|
|
|
38
38
|
}
|
|
39
39
|
get editable() {
|
|
40
40
|
return !this.busy && this.analysis?.status === 'Draft' &&
|
|
41
|
-
this.permissions.getGrantedPolicy('Kalite.ProcessAnalysis.Create');
|
|
41
|
+
this.permissions.getGrantedPolicy('Hitsoft.Kadooglu.Kalite.ProcessAnalysis.Create');
|
|
42
42
|
}
|
|
43
43
|
get hasOutOfLimit() {
|
|
44
44
|
return this.analysis?.hours.some(h => h.measurements.some(v => v.outOfLimit)) || false;
|
|
@@ -48,7 +48,7 @@ export class ProcessAnalysisComponent {
|
|
|
48
48
|
Checked: 'Mühendis kontrol etti', Approved: 'Onaylı' }[this.analysis?.status || ''] || '';
|
|
49
49
|
}
|
|
50
50
|
allowed(permission) {
|
|
51
|
-
return this.permissions.getGrantedPolicy(`Kalite.ProcessAnalysis.${permission}`);
|
|
51
|
+
return this.permissions.getGrantedPolicy(`Hitsoft.Kadooglu.Kalite.ProcessAnalysis.${permission}`);
|
|
52
52
|
}
|
|
53
53
|
load() {
|
|
54
54
|
if (!this.facilityCode || !this.businessDate)
|
|
@@ -194,4 +194,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
194
194
|
type: ViewChild,
|
|
195
195
|
args: ['reasonInput']
|
|
196
196
|
}] } });
|
|
197
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzcy1hbmFseXNpcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWxpdGUvc3JjL2xpYi9jb21wb25lbnRzL3Byb2Nlc3MtYW5hbHlzaXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2FsaXRlL3NyYy9saWIvY29tcG9uZW50cy9wcm9jZXNzLWFuYWx5c2lzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXNCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVF6RSxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7QUFPaEYsTUFBTSxPQUFPLHdCQUF3QjtJQWVuQyxZQUFvQixHQUFzQixFQUFVLFdBQThCO1FBQTlELFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQW1CO1FBZGxGLFVBQUssR0FBa0IsRUFBRSxDQUFDO1FBQzFCLGVBQVUsR0FBc0IsRUFBRSxDQUFDO1FBQ25DLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLGlCQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzVCLGFBQVEsR0FBMkIsSUFBSSxDQUFDO1FBQ3hDLFdBQU0sR0FBNEQsRUFBRSxDQUFDO1FBQ3JFLGVBQVUsR0FBdUIsRUFBRSxDQUFDO1FBQ3BDLFdBQU0sR0FBRyxFQUFFLENBQUM7UUFDWixTQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ1osYUFBUSxHQUFHLHNCQUFzQixDQUFDO1FBQ2xDLFVBQUssR0FBRyxFQUFFLENBQUM7UUFDWCxnQkFBVyxHQUFHLEVBQUUsQ0FBQztJQUdvRSxDQUFDO0lBRXRGLFFBQVE7UUFDTixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUks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QUMsR0FBRyxDQUFDLENBQUM7Z0JBQzNDLE1BQU0sQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDO2dCQUNsQixNQUFNLENBQUMsUUFBUSxHQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxNQUFNLENBQUM7Z0JBQzNGLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDZixVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNuRCxDQUFDO1lBQ0QsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcscUJBQXFCO1NBQ2hELENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxLQUFLO1FBQ1gsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN4QixPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDO0lBQzVILENBQUM7O3FIQXBMVSx3QkFBd0I7eUdBQXhCLHdCQUF3Qix3S0NmckMsOG9TQWlJQTsyRkRsSGEsd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNFLHNCQUFzQjt3SUFpQk4sV0FBVztzQkFBcEMsU0FBUzt1QkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBQZXJtaXNzaW9uU2VydmljZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgUXVhbGl0eUFuYWx5c2lzLCBRdWFsaXR5RmFjaWxpdHksIFF1YWxpdHlIb3VyLCBRdWFsaXR5TGltaXQsXHJcbiAgUXVhbGl0eU1lYXN1cmVtZW50LCBRdWFsaXR5UGFyYW1ldGVyLCBRdWFsaXR5U3RlcCxcclxufSBmcm9tICcuLi9tb2RlbHMvcXVhbGl0eS5tb2RlbHMnO1xyXG5pbXBvcnQgeyBRdWFsaXR5QXBpU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3F1YWxpdHktYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBRdWFsaXR5VGFuayB9IGZyb20gJy4uL21vZGVscy9pbnRha2UubW9kZWxzJztcclxuaW1wb3J0IHsgYXBwbGljYWJsZUxpbWl0LCByZWNhbGN1bGF0ZSB9IGZyb20gJy4uL3NlcnZpY2VzL3F1YWxpdHktbWVhc3VyZW1lbnRzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXByb2Nlc3MtYW5hbHlzaXMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9jZXNzLWFuYWx5c2lzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9wcm9jZXNzLWFuYWx5c2lzLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQcm9jZXNzQW5hbHlzaXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHRhbmtzOiBRdWFsaXR5VGFua1tdID0gW107XHJcbiAgZmFjaWxpdGllczogUXVhbGl0eUZhY2lsaXR5W10gPSBbXTtcclxuICBmYWNpbGl0eUNvZGUgPSAnJztcclxuICBidXNpbmVzc0RhdGUgPSB0aGlzLnRvZGF5KCk7XHJcbiAgYW5hbHlzaXM6IFF1YWxpdHlBbmFseXNpcyB8IG51bGwgPSBudWxsO1xyXG4gIGdyb3VwczogeyBzdGVwOiBRdWFsaXR5U3RlcDsgcGFyYW1ldGVyczogUXVhbGl0eVBhcmFtZXRlcltdIH1bXSA9IFtdO1xyXG4gIHBhcmFtZXRlcnM6IFF1YWxpdHlQYXJhbWV0ZXJbXSA9IFtdO1xyXG4gIHJlYXNvbiA9ICcnO1xyXG4gIGJ1c3kgPSB0cnVlO1xyXG4gIGJ1c3lUZXh0ID0gJ1Rlc2lzbGVyIHnDvGtsZW5peW9y4oCmJztcclxuICBlcnJvciA9ICcnO1xyXG4gIHJlYXNvbkVycm9yID0gJyc7XHJcbiAgQFZpZXdDaGlsZCgncmVhc29uSW5wdXQnKSByZWFzb25JbnB1dD86IEVsZW1lbnRSZWY8SFRNTFRleHRBcmVhRWxlbWVudD47XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXBpOiBRdWFsaXR5QXBpU2VydmljZSwgcHJpdmF0ZSBwZXJtaXNzaW9uczogUGVybWlzc2lvblNlcnZpY2UpIHt9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5hcGkudGFua3MoKS5zdWJzY3JpYmUoeyBuZXh0OiB4ID0+IHRoaXMudGFua3MgPSB4LmZpbHRlcih0ID0+IHQuYWN0aXZlKSwgZXJyb3I6ICgpID0+IHt9IH0pO1xyXG4gICAgdGhpcy5hcGkuZmFjaWxpdGllcygpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IGZhY2lsaXRpZXMgPT4ge1xyXG4gICAgICAgIHRoaXMuZmFjaWxpdGllcyA9IGZhY2lsaXRpZXM7XHJcbiAgICAgICAgdGhpcy5mYWNpbGl0eUNvZGUgPSBmYWNpbGl0aWVzWzBdPy5jb2RlIHx8ICcnO1xyXG4gICAgICAgIGlmICh0aGlzLmZhY2lsaXR5Q29kZSkgdGhpcy5sb2FkKCk7XHJcbiAgICAgICAgZWxzZSB0aGlzLmJ1c3kgPSBmYWxzZTtcclxuICAgICAgfSxcclxuICAgICAgZXJyb3I6ICgpID0+IHsgdGhpcy5lcnJvciA9ICdUZXNpc2xlciB5w7xrbGVuZW1lZGkuJzsgdGhpcy5idXN5ID0gZmFsc2U7IH0sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldCBlZGl0YWJsZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhdGhpcy5idXN5ICYmIHRoaXMuYW5hbHlzaXM/LnN0YXR1cyA9PT0gJ0RyYWZ0JyAmJlxyXG4gICAgICB0aGlzLnBlcm1pc3Npb25zLmdldEdyYW50ZWRQb2xpY3koJ0thbGl0ZS5Qcm9jZXNzQW5hbHlzaXMuQ3JlYXRlJyk7XHJcbiAgfVxyXG5cclxuICBnZXQgaGFzT3V0T2ZMaW1pdCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmFuYWx5c2lzPy5ob3Vycy5zb21lKGggPT4gaC5tZWFzdXJlbWVudHMuc29tZSh2ID0+IHYub3V0T2ZMaW1pdCkpIHx8IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHN0YXR1c1RleHQoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiAoeyBEcmFmdDogJ1Rhc2xhaycsIExhYm9yYW50U2lnbmVkOiAnTGFib3JhbnQgaW16YWxhZMSxJyxcclxuICAgICAgQ2hlY2tlZDogJ03DvGhlbmRpcyBrb250cm9sIGV0dGknLCBBcHByb3ZlZDogJ09uYXlsxLEnIH0gYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPilbdGhpcy5hbmFseXNpcz8uc3RhdHVzIHx8ICcnXSB8fCAnJztcclxuICB9XHJcblxyXG4gIGFsbG93ZWQocGVybWlzc2lvbjogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5wZXJtaXNzaW9ucy5nZXRHcmFudGVkUG9saWN5KGBLYWxpdGUuUHJvY2Vzc0FuYWx5c2lzLiR7cGVybWlzc2lvbn1gKTtcclxuICB9XHJcblxyXG4gIGxvYWQoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuZmFjaWxpdHlDb2RlIHx8ICF0aGlzLmJ1c2luZXNzRGF0ZSkgcmV0dXJuO1xyXG4gICAgdGhpcy5idXN5ID0gdHJ1ZTtcclxuICAgIHRoaXMuYnVzeVRleHQgPSAnQW5hbGl6IHZlcmlsZXJpIHnDvGtsZW5peW9y4oCmJztcclxuICAgIHRoaXMuZXJyb3IgPSAnJztcclxuICAgIHRoaXMuYXBpLnByb2Nlc3ModGhpcy5mYWNpbGl0eUNvZGUsIHRoaXMuYnVzaW5lc3NEYXRlKS5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiBhbmFseXNpcyA9PiB7XHJcbiAgICAgICAgdGhpcy5hcHBseUFuYWx5c2lzKGFuYWx5c2lzKTtcclxuICAgICAgICB0aGlzLmJ1c3kgPSBmYWxzZTtcclxuICAgICAgfSxcclxuICAgICAgZXJyb3I6ICgpID0+IHsgdGhpcy5lcnJvciA9ICdBbmFsaXogZm9ybXUgecO8a2xlbmVtZWRpLic7IHRoaXMuYnVzeSA9IGZhbHNlOyB9LFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFwcGx5QW5hbHlzaXMoYW5hbHlzaXM6IFF1YWxpdHlBbmFseXNpcyk6IHZvaWQge1xyXG4gICAgdGhpcy5hbmFseXNpcyA9IGFuYWx5c2lzO1xyXG4gICAgY29uc3QgdGVtcGxhdGUgPSBhbmFseXNpcy50ZW1wbGF0ZVNuYXBzaG90O1xyXG4gICAgdGhpcy5ncm91cHMgPSBbLi4udGVtcGxhdGUuc3RlcHNdLnNvcnQoKGEsIGIpID0+IGEub3JkZXIgLSBiLm9yZGVyKS5tYXAoc3RlcCA9PiAoe1xyXG4gICAgICBzdGVwLFxyXG4gICAgICBwYXJhbWV0ZXJzOiB0ZW1wbGF0ZS5wYXJhbWV0ZXJzLmZpbHRlcihwID0+IHAuYWN0aXZlICYmIHAuc3RlcENvZGUgPT09IHN0ZXAucHJvY2Vzc0NvZGUpXHJcbiAgICAgICAgLnNvcnQoKGEsIGIpID0+IGEub3JkZXIgLSBiLm9yZGVyKSxcclxuICAgIH0pKTtcclxuICAgIHRoaXMucGFyYW1ldGVycyA9IChbXSBhcyBRdWFsaXR5UGFyYW1ldGVyW10pLmNvbmNhdCguLi50aGlzLmdyb3Vwcy5tYXAoZ3JvdXAgPT4gZ3JvdXAucGFyYW1ldGVycykpO1xyXG4gICAgZm9yIChjb25zdCBob3VyIG9mIGFuYWx5c2lzLmhvdXJzKSB7XHJcbiAgICAgIGhvdXIubWVhc3VyZW1lbnRzIHx8PSBbXTtcclxuICAgICAgZm9yIChjb25zdCBwYXJhbWV0ZXIgb2YgdGhpcy5wYXJhbWV0ZXJzKSB7XHJcbiAgICAgICAgaWYgKCFob3VyLm1lYXN1cmVtZW50cy5zb21lKHYgPT4gdi5wYXJhbWV0ZXJDb2RlID09PSBwYXJhbWV0ZXIuY29kZSkpIHtcclxuICAgICAgICAgIGhvdXIubWVhc3VyZW1lbnRzLnB1c2goeyBwYXJhbWV0ZXJDb2RlOiBwYXJhbWV0ZXIuY29kZSwgbnVtYmVyOiBudWxsLCB0ZXh0OiAnJywgb3V0T2ZMaW1pdDogZmFsc2UgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBtZWFzdXJlbWVudChyb3c6IFF1YWxpdHlIb3VyLCBwYXJhbWV0ZXI6IFF1YWxpdHlQYXJhbWV0ZXIpOiBRdWFsaXR5TWVhc3VyZW1lbnQge1xyXG4gICAgcmV0dXJuIHJvdy5tZWFzdXJlbWVudHMuZmluZCh2ID0+IHYucGFyYW1ldGVyQ29kZSA9PT0gcGFyYW1ldGVyLmNvZGUpITtcclxuICB9XHJcblxyXG4gIGxpbWl0KHBhcmFtZXRlcjogUXVhbGl0eVBhcmFtZXRlcik6IFF1YWxpdHlMaW1pdCB8IHVuZGVmaW5lZCB7XHJcbiAgICByZXR1cm4gYXBwbGljYWJsZUxpbWl0KHRoaXMuYW5hbHlzaXM/LnRlbXBsYXRlU25hcHNob3QubGltaXRzIHx8IFtdLCBwYXJhbWV0ZXIuY29kZSwgdGhpcy5idXNpbmVzc0RhdGUsIHRoaXMuYW5hbHlzaXM/Lm9pbFR5cGUgfHwgJycpO1xyXG4gIH1cclxuXHJcbiAgbGltaXRMYWJlbChwYXJhbWV0ZXI6IFF1YWxpdHlQYXJhbWV0ZXIpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgbGltaXQgPSB0aGlzLmxpbWl0KHBhcmFtZXRlcik7XHJcbiAgICBpZiAoIWxpbWl0KSByZXR1cm4gJ+KAlCc7XHJcbiAgICBpZiAobGltaXQuZXhwZWN0ZWRUZXh0KSByZXR1cm4gbGltaXQuZXhwZWN0ZWRUZXh0O1xyXG4gICAgaWYgKGxpbWl0Lm1pbmltdW0gIT0gbnVsbCAmJiBsaW1pdC5tYXhpbXVtICE9IG51bGwpIHJldHVybiBgJHtsaW1pdC5taW5pbXVtfeKAkyR7bGltaXQubWF4aW11bX1gO1xyXG4gICAgaWYgKGxpbWl0Lm1pbmltdW0gIT0gbnVsbCkgcmV0dXJuIGDiiaUgJHtsaW1pdC5taW5pbXVtfWA7XHJcbiAgICBpZiAobGltaXQubWF4aW11bSAhPSBudWxsKSByZXR1cm4gYOKJpCAke2xpbWl0Lm1heGltdW19YDtcclxuICAgIHJldHVybiAn4oCUJztcclxuICB9XHJcblxyXG4gIGNoYW5nZWQocm93OiBRdWFsaXR5SG91ciwgcGFyYW1ldGVyOiBRdWFsaXR5UGFyYW1ldGVyKTogdm9pZCB7XHJcbiAgICB0cnkgeyByZWNhbGN1bGF0ZSh0aGlzLnBhcmFtZXRlcnMsIHJvdy5tZWFzdXJlbWVudHMsIHRoaXMuYW5hbHlzaXM/LnRlbXBsYXRlU25hcHNob3QubGltaXRzIHx8IFtdLCB0aGlzLmJ1c2luZXNzRGF0ZSwgdGhpcy5hbmFseXNpcz8ub2lsVHlwZSB8fCAnJyk7IH1cclxuICAgIGNhdGNoIChlKSB7IHRoaXMuZXJyb3IgPSBlIGluc3RhbmNlb2YgRXJyb3IgPyBlLm1lc3NhZ2UgOiAnSGVzYXBsYW1hIHlhcMSxbGFtYWTEsS4nOyB9XHJcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMubWVhc3VyZW1lbnQocm93LCBwYXJhbWV0ZXIpO1xyXG4gICAgY29uc3QgbGltaXQgPSB0aGlzLmxpbWl0KHBhcmFtZXRlcik7XHJcbiAgICB2YWx1ZS5vdXRPZkxpbWl0ID0gISFsaW1pdCAmJiAoXHJcbiAgICAgICh2YWx1ZS5udW1iZXIgIT0gbnVsbCAmJlxyXG4gICAgICAgICgobGltaXQubWluaW11bSAhPSBudWxsICYmIHZhbHVlLm51bWJlciA8IGxpbWl0Lm1pbmltdW0pIHx8XHJcbiAgICAgICAgIChsaW1pdC5tYXhpbXVtICE9IG51bGwgJiYgdmFsdWUubnVtYmVyID4gbGltaXQubWF4aW11bSkpKSB8fFxyXG4gICAgICAoISF2YWx1ZS50ZXh0ICYmICEhbGltaXQuZXhwZWN0ZWRUZXh0ICYmXHJcbiAgICAgICAgdmFsdWUudGV4dC50cmltKCkudG9Mb2NhbGVMb3dlckNhc2UoJ3RyLVRSJykgIT09IGxpbWl0LmV4cGVjdGVkVGV4dC50cmltKCkudG9Mb2NhbGVMb3dlckNhc2UoJ3RyLVRSJykpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgb2lsVHlwZUNoYW5nZWQoKTogdm9pZCB7XHJcbiAgICBmb3IgKGNvbnN0IHJvdyBvZiB0aGlzLmFuYWx5c2lzPy5ob3VycyB8fCBbXSlcclxuICAgICAgZm9yIChjb25zdCBwYXJhbWV0ZXIgb2YgdGhpcy5wYXJhbWV0ZXJzKVxyXG4gICAgICAgIHRoaXMuY2hhbmdlZChyb3csIHBhcmFtZXRlcik7XHJcbiAgfVxyXG5cclxuICBhdmVyYWdlKHBhcmFtZXRlcjogUXVhbGl0eVBhcmFtZXRlcik6IHN0cmluZyB7XHJcbiAgICBjb25zdCB2YWx1ZXMgPSB0aGlzLmFuYWx5c2lzPy5ob3Vycy5tYXAoaCA9PiB0aGlzLm1lYXN1cmVtZW50KGgsIHBhcmFtZXRlcikubnVtYmVyKVxyXG4gICAgICAuZmlsdGVyKCh2KTogdiBpcyBudW1iZXIgPT4gdiAhPSBudWxsKSB8fCBbXTtcclxuICAgIGlmICghdmFsdWVzLmxlbmd0aCkgcmV0dXJuICfigJQnO1xyXG4gICAgcmV0dXJuICh2YWx1ZXMucmVkdWNlKChhLCBiKSA9PiBhICsgYiwgMCkgLyB2YWx1ZXMubGVuZ3RoKS50b0ZpeGVkKHBhcmFtZXRlci5kZWNpbWFsUGxhY2VzKTtcclxuICB9XHJcblxyXG4gIHNhdmUoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuYW5hbHlzaXMgfHwgIXRoaXMuZWRpdGFibGUpIHJldHVybjtcclxuICAgIHRoaXMuYnVzeSA9IHRydWU7XHJcbiAgICB0aGlzLmJ1c3lUZXh0ID0gJ0Zvcm0ga2F5ZGVkaWxpeW9y4oCmJztcclxuICAgIHRoaXMuZXJyb3IgPSAnJztcclxuICAgIGNvbnN0IGlucHV0ID0ge1xyXG4gICAgICBmYWNpbGl0eUNvZGU6IHRoaXMuYW5hbHlzaXMuZmFjaWxpdHlDb2RlLFxyXG4gICAgICBidXNpbmVzc0RhdGU6IHRoaXMuYnVzaW5lc3NEYXRlLFxyXG4gICAgICBvaWxUeXBlOiB0aGlzLmFuYWx5c2lzLm9pbFR5cGUsXHJcbiAgICAgIG5vdGVzOiB0aGlzLmFuYWx5c2lzLm5vdGVzLFxyXG4gICAgICByZXZpc2lvbjogdGhpcy5hbmFseXNpcy5yZXZpc2lvbixcclxuICAgICAgaG91cnM6IHRoaXMuYW5hbHlzaXMuaG91cnMsXHJcbiAgICB9O1xyXG4gICAgdGhpcy5hcGkuc2F2ZVByb2Nlc3MoaW5wdXQpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IGFuYWx5c2lzID0+IHsgdGhpcy5hcHBseUFuYWx5c2lzKGFuYWx5c2lzKTsgdGhpcy5idXN5ID0gZmFsc2U7IH0sXHJcbiAgICAgIGVycm9yOiAoKSA9PiB7IHRoaXMuZXJyb3IgPSAnRm9ybSBrYXlkZWRpbGVtZWRpLiBBbGFubGFyxLEgdmUgYmHEn2xhbnTEsXnEsSBrb250cm9sIGVkaW4uJzsgdGhpcy5idXN5ID0gZmFsc2U7IH0sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGRlY2lzaW9uKGFjdGlvbjogJ3NpZ24nIHwgJ2NoZWNrJyB8ICdhcHByb3ZlJyB8ICdyZXZva2UnKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuYW5hbHlzaXMgfHwgIXRoaXMuYW5hbHlzaXMucmV2aXNpb24pIHJldHVybjtcclxuICAgIGlmICgoYWN0aW9uID09PSAncmV2b2tlJyB8fCAoYWN0aW9uID09PSAnYXBwcm92ZScgJiYgdGhpcy5oYXNPdXRPZkxpbWl0KSkgJiYgIXRoaXMucmVhc29uLnRyaW0oKSkge1xyXG4gICAgICB0aGlzLnJlYXNvbkVycm9yID0gJ0J1IGnFn2xlbSBpw6dpbiBnZXJla8OnZSBnaXJpbi4nO1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMucmVhc29uSW5wdXQ/Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKSk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuYnVzeSA9IHRydWU7XHJcbiAgICB0aGlzLmJ1c3lUZXh0ID0gJ8SwxZ9sZW0gdGFtYW1sYW7EsXlvcuKApic7XHJcbiAgICB0aGlzLmVycm9yID0gJyc7XHJcbiAgICB0aGlzLnJlYXNvbkVycm9yID0gJyc7XHJcbiAgICB0aGlzLmFwaS5kZWNpc2lvbih0aGlzLmFuYWx5c2lzLmNvZGUsIGFjdGlvbiwgdGhpcy5hbmFseXNpcy5yZXZpc2lvbiwgdGhpcy5yZWFzb24pLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IGFuYWx5c2lzID0+IHsgdGhpcy5yZWFzb24gPSAnJzsgdGhpcy5hcHBseUFuYWx5c2lzKGFuYWx5c2lzKTsgdGhpcy5idXN5ID0gZmFsc2U7IH0sXHJcbiAgICAgIGVycm9yOiAoKSA9PiB7IHRoaXMuZXJyb3IgPSAnxLDFn2xlbSB0YW1hbWxhbmFtYWTEsS4gRm9ybXVuIHNvbiBkdXJ1bXVudSBrb250cm9sIGVkaW4uJzsgdGhpcy5idXN5ID0gZmFsc2U7IH0sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGRvd25sb2FkUGRmKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmFuYWx5c2lzPy5yZXZpc2lvbikgcmV0dXJuO1xyXG4gICAgdGhpcy5hcGkucGRmKHRoaXMuYW5hbHlzaXMuY29kZSkuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogYmxvYiA9PiB7XHJcbiAgICAgICAgY29uc3QgdXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcclxuICAgICAgICBjb25zdCBhbmNob3IgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XHJcbiAgICAgICAgYW5jaG9yLmhyZWYgPSB1cmw7XHJcbiAgICAgICAgYW5jaG9yLmRvd25sb2FkID0gYCR7dGhpcy5hbmFseXNpcz8uZm9ybVNuYXBzaG90LmRvY3VtZW50Q29kZX0tJHt0aGlzLmFuYWx5c2lzPy5jb2RlfS5wZGZgO1xyXG4gICAgICAgIGFuY2hvci5jbGljaygpO1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gVVJMLnJldm9rZU9iamVjdFVSTCh1cmwpLCAxMDAwKTtcclxuICAgICAgfSxcclxuICAgICAgZXJyb3I6ICgpID0+IHRoaXMuZXJyb3IgPSAnUERGIG9sdcWfdHVydWxhbWFkxLEuJyxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB0b2RheSgpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgICByZXR1cm4gYCR7ZGF0ZS5nZXRGdWxsWWVhcigpfS0ke1N0cmluZyhkYXRlLmdldE1vbnRoKCkgKyAxKS5wYWRTdGFydCgyLCAnMCcpfS0ke1N0cmluZyhkYXRlLmdldERhdGUoKSkucGFkU3RhcnQoMiwgJzAnKX1gO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWZsdWlkXCI+XHJcbiAgPGRpdiBjbGFzcz1cIm1iLTJcIj5cclxuICAgIDxoMyBjbGFzcz1cInBhZ2UtdGl0bGVcIj5SYWZpbmVyaSBQcm9zZXMgQW5hbGl6IEtvbnRyb2w8L2gzPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwiY2FyZCBtdC0yXCI+PGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInJvdyBhbGlnbi1pdGVtcy1lbmQgbWItM1wiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTNcIj5cclxuICAgICAgICA8bGFiZWwgZm9yPVwiZmFjaWxpdHlcIj5UZXNpczwvbGFiZWw+XHJcbiAgICAgICAgPHNlbGVjdCBpZD1cImZhY2lsaXR5XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbZGlzYWJsZWRdPVwiYnVzeVwiIFsobmdNb2RlbCldPVwiZmFjaWxpdHlDb2RlXCIgKGNoYW5nZSk9XCJsb2FkKClcIj5cclxuICAgICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IGZhY2lsaXR5IG9mIGZhY2lsaXRpZXNcIiBbdmFsdWVdPVwiZmFjaWxpdHkuY29kZVwiPnt7IGZhY2lsaXR5Lm5hbWUgfX08L29wdGlvbj5cclxuICAgICAgICA8L3NlbGVjdD5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtM1wiPlxyXG4gICAgICAgIDxsYWJlbCBmb3I9XCJidXNpbmVzc0RhdGVcIj7EsMWfIGfDvG7DvDwvbGFiZWw+XHJcbiAgICAgICAgPGlucHV0IGlkPVwiYnVzaW5lc3NEYXRlXCIgdHlwZT1cImRhdGVcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIFtkaXNhYmxlZF09XCJidXN5XCIgWyhuZ01vZGVsKV09XCJidXNpbmVzc0RhdGVcIiAoY2hhbmdlKT1cImxvYWQoKVwiIC8+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTNcIiAqbmdJZj1cImFuYWx5c2lzPy5mYWNpbGl0eUNvZGUgPT09ICdERU8zJ1wiPlxyXG4gICAgICAgIDxsYWJlbCBmb3I9XCJvaWxUeXBlXCI+w5xyZXRpbGVuIHlhxJ8gY2luc2k8L2xhYmVsPlxyXG4gICAgICAgIDxzZWxlY3QgaWQ9XCJvaWxUeXBlXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cImFuYWx5c2lzIS5vaWxUeXBlXCIgKGNoYW5nZSk9XCJvaWxUeXBlQ2hhbmdlZCgpXCIgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZVwiPlxyXG4gICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIlwiPlNlw6dpbml6PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT1cIlBhbG0gT2lsXCI+UGFsbSBPaWw8L29wdGlvbj5cclxuICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJQYWxtIE9sZWluXCI+UGFsbSBPbGVpbjwvb3B0aW9uPlxyXG4gICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0zIHRleHQtbWQtcmlnaHQgbXQtMiBtdC1tZC0wXCI+XHJcbiAgICAgICAgPHNwYW4gKm5nSWY9XCJhbmFseXNpc1wiIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtaW5mbyBtci0yXCIgc3R5bGU9XCJtYXJnaW4tcmlnaHQ6IDZweDtcIj57eyBzdGF0dXNUZXh0IH19PC9zcGFuPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLW91dGxpbmUtcHJpbWFyeVwiIChjbGljayk9XCJkb3dubG9hZFBkZigpXCIgW2Rpc2FibGVkXT1cIiFhbmFseXNpcz8ucmV2aXNpb24gfHwgYnVzeVwiXHJcbiAgICAgICAgICAqbmdJZj1cImFsbG93ZWQoJ1ByaW50JylcIj5Gb3JtdSBZYXpkxLFyIChQREYpPC9idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiAqbmdJZj1cImVycm9yXCIgY2xhc3M9XCJhbGVydCBhbGVydC1kYW5nZXJcIiByb2xlPVwiYWxlcnRcIj57eyBlcnJvciB9fTwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInF1YWxpdHktZ3JpZC1sb2FkaW5nXCIgKm5nSWY9XCJidXN5XCIgcm9sZT1cInN0YXR1c1wiIGFyaWEtbGl2ZT1cInBvbGl0ZVwiIGFyaWEtYnVzeT1cInRydWVcIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJzcGlubmVyLWJvcmRlciB0ZXh0LXByaW1hcnlcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L3NwYW4+XHJcbiAgICAgIDxzcGFuPnt7IGJ1c3lUZXh0IH19PC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYW5hbHlzaXNcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInNtYWxsIHRleHQtbXV0ZWQgbWItMlwiPnt7IGFuYWx5c2lzLmZvcm1TbmFwc2hvdC5uYW1lIH19IMK3IHt7IGFuYWx5c2lzLmZvcm1TbmFwc2hvdC5kb2N1bWVudENvZGUgfX0gwrcgUmV2aXp5b24ge3sgYW5hbHlzaXMuZm9ybVNuYXBzaG90LnJldmlzaW9uTnVtYmVyIH19PC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJxdWFsaXR5LWdyaWQtc2Nyb2xsXCIgW2hpZGRlbl09XCJidXN5XCI+XHJcbiAgICAgICAgPHRhYmxlIGNsYXNzPVwidGFibGUgdGFibGUtYm9yZGVyZWQgdGFibGUtc20gcXVhbGl0eS1ncmlkXCI+XHJcbiAgICAgICAgICA8dGhlYWQ+XHJcbiAgICAgICAgICAgIDx0ciBjbGFzcz1cInRleHQtY2VudGVyIGJnLWxpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgPHRoIHJvd3NwYW49XCIzXCIgY2xhc3M9XCJzdGlja3ktaG91clwiPlNhYXQ8L3RoPjx0aCByb3dzcGFuPVwiM1wiPlZhcmRpeWEgLyBMYWJvcmFudDwvdGg+XHJcbiAgICAgICAgICAgICAgPHRoIHJvd3NwYW49XCIzXCI+QWzEsW5hbiBUYW5rIE5vPC90aD5cclxuICAgICAgICAgICAgICA8dGggKm5nRm9yPVwibGV0IGdyb3VwIG9mIGdyb3Vwc1wiIFthdHRyLmNvbHNwYW5dPVwiZ3JvdXAucGFyYW1ldGVycy5sZW5ndGhcIj57eyBncm91cC5zdGVwLm5hbWUgfX08L3RoPlxyXG4gICAgICAgICAgICAgIDx0aCByb3dzcGFuPVwiM1wiPkFrdGFyxLFsYW4gVGFuayBObzwvdGg+XHJcbiAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgIDx0ciBjbGFzcz1cInRleHQtY2VudGVyIGJnLWxpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZ3JvdXAgb2YgZ3JvdXBzXCI+XHJcbiAgICAgICAgICAgICAgICA8dGggKm5nRm9yPVwibGV0IHBhcmFtZXRlciBvZiBncm91cC5wYXJhbWV0ZXJzXCI+e3sgcGFyYW1ldGVyLm5hbWUgfX08c21hbGwgKm5nSWY9XCJwYXJhbWV0ZXIudW5pdFwiPiAoe3sgcGFyYW1ldGVyLnVuaXQgfX0pPC9zbWFsbD48L3RoPlxyXG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICA8dHIgY2xhc3M9XCJ0ZXh0LWNlbnRlciBsaW1pdC1yb3dcIj5cclxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBncm91cCBvZiBncm91cHNcIj5cclxuICAgICAgICAgICAgICAgIDx0aCAqbmdGb3I9XCJsZXQgcGFyYW1ldGVyIG9mIGdyb3VwLnBhcmFtZXRlcnNcIj57eyBsaW1pdExhYmVsKHBhcmFtZXRlcikgfX08L3RoPlxyXG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgPC90aGVhZD5cclxuICAgICAgICAgIDx0Ym9keT5cclxuICAgICAgICAgICAgPHRyICpuZ0Zvcj1cImxldCByb3cgb2YgYW5hbHlzaXMuaG91cnNcIj5cclxuICAgICAgICAgICAgICA8dGggY2xhc3M9XCJzdGlja3ktaG91clwiPnt7IHJvdy5ob3VyIHwgbnVtYmVyOicyLjAtMCcgfX06MDA8L3RoPjx0ZD48c21hbGw+e3tyb3cuc2hpZnRDb2RlfX08L3NtYWxsPjxpbnB1dCBjbGFzcz1cImZvcm0tY29udHJvbCBmb3JtLWNvbnRyb2wtc21cIiBbKG5nTW9kZWwpXT1cInJvdy5hbmFseXN0XCIgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZVwiIGFyaWEtbGFiZWw9XCJWYXJkaXlhIGxhYm9yYW50xLFcIiAvPjwvdGQ+XHJcbiAgICAgICAgICAgICAgPHRkPjxpbnB1dCBjbGFzcz1cImZvcm0tY29udHJvbCBmb3JtLWNvbnRyb2wtc20gdGFuay1pbnB1dFwiIGxpc3Q9XCJxdWFsaXR5VGFua3NcIiBbKG5nTW9kZWwpXT1cInJvdy5pbnRha2VUYW5rXCIgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZVwiIGFyaWEtbGFiZWw9XCJBbMSxbmFuIHRhbmtcIiAvPjwvdGQ+XHJcbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZ3JvdXAgb2YgZ3JvdXBzXCI+XHJcbiAgICAgICAgICAgICAgICA8dGQgKm5nRm9yPVwibGV0IHBhcmFtZXRlciBvZiBncm91cC5wYXJhbWV0ZXJzXCIgW2NsYXNzLm91dC1vZi1saW1pdF09XCJtZWFzdXJlbWVudChyb3csIHBhcmFtZXRlcikub3V0T2ZMaW1pdFwiPlxyXG4gICAgICAgICAgICAgICAgICA8aW5wdXQgKm5nSWY9XCJwYXJhbWV0ZXIudmFsdWVUeXBlID09PSAnTnVtYmVyJyB8fCBwYXJhbWV0ZXIuY2FsY3VsYXRlZFwiIHR5cGU9XCJudW1iZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIGZvcm0tY29udHJvbC1zbSB2YWx1ZS1pbnB1dFwiIFthdHRyLnN0ZXBdPVwiJ2FueSdcIlxyXG4gICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwibWVhc3VyZW1lbnQocm93LCBwYXJhbWV0ZXIpLm51bWJlclwiIChuZ01vZGVsQ2hhbmdlKT1cImNoYW5nZWQocm93LCBwYXJhbWV0ZXIpXCJcclxuICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRhYmxlIHx8IHBhcmFtZXRlci5jYWxjdWxhdGVkXCIgW2F0dHIuYXJpYS1sYWJlbF09XCJwYXJhbWV0ZXIubmFtZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgIDxzZWxlY3QgKm5nSWY9XCJwYXJhbWV0ZXIudmFsdWVUeXBlID09PSAnQ2hvaWNlJyAmJiAhcGFyYW1ldGVyLmNhbGN1bGF0ZWRcIiBjbGFzcz1cImZvcm0tY29udHJvbCBmb3JtLWNvbnRyb2wtc20gdmFsdWUtaW5wdXRcIlxyXG4gICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwibWVhc3VyZW1lbnQocm93LCBwYXJhbWV0ZXIpLnRleHRcIiAoY2hhbmdlKT1cImNoYW5nZWQocm93LCBwYXJhbWV0ZXIpXCIgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJcIj48L29wdGlvbj48b3B0aW9uICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgcGFyYW1ldGVyLm9wdGlvbnNcIiBbdmFsdWVdPVwib3B0aW9uXCI+e3sgb3B0aW9uIH19PC9vcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgICAgICAgICAgICA8aW5wdXQgKm5nSWY9XCJwYXJhbWV0ZXIudmFsdWVUeXBlID09PSAnVGV4dCcgJiYgIXBhcmFtZXRlci5jYWxjdWxhdGVkXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZm9ybS1jb250cm9sLXNtIHZhbHVlLWlucHV0XCJcclxuICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cIm1lYXN1cmVtZW50KHJvdywgcGFyYW1ldGVyKS50ZXh0XCIgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlZChyb3csIHBhcmFtZXRlcilcIiBbZGlzYWJsZWRdPVwiIWVkaXRhYmxlXCJcclxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInBhcmFtZXRlci5uYW1lXCIgLz5cclxuICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgPHRkPjxpbnB1dCBjbGFzcz1cImZvcm0tY29udHJvbCBmb3JtLWNvbnRyb2wtc20gdGFuay1pbnB1dFwiIGxpc3Q9XCJxdWFsaXR5VGFua3NcIiBbKG5nTW9kZWwpXT1cInJvdy5vdXRwdXRUYW5rXCIgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZVwiIGFyaWEtbGFiZWw9XCJBa3RhcsSxbGFuIHRhbmtcIiAvPjwvdGQ+XHJcbiAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgIDx0ciBjbGFzcz1cImF2ZXJhZ2Utcm93XCI+XHJcbiAgICAgICAgICAgICAgPHRoIGNvbHNwYW49XCIzXCI+T1JUQUxBTUE8L3RoPlxyXG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGdyb3VwIG9mIGdyb3Vwc1wiPlxyXG4gICAgICAgICAgICAgICAgPHRkICpuZ0Zvcj1cImxldCBwYXJhbWV0ZXIgb2YgZ3JvdXAucGFyYW1ldGVyc1wiPnt7IHBhcmFtZXRlci52YWx1ZVR5cGUgPT09ICdOdW1iZXInID8gYXZlcmFnZShwYXJhbWV0ZXIpIDogJ+KAlCcgfX08L3RkPlxyXG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgIDx0ZD48L3RkPlxyXG4gICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgPC90Ym9keT5cclxuICAgICAgICA8L3RhYmxlPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbXQtM1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgPGxhYmVsIGZvcj1cIm5vdGVzXCI+e3sgYW5hbHlzaXMuZm9ybVNuYXBzaG90LmNvZGUgPT09ICdGUjUyJyA/ICdBw6fEsWtsYW1hIC8gQmlsZ2knIDogJ05vdGxhcicgfX08L2xhYmVsPlxyXG4gICAgICAgICAgPHRleHRhcmVhIGlkPVwibm90ZXNcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIHJvd3M9XCIzXCIgWyhuZ01vZGVsKV09XCJhbmFseXNpcy5ub3Rlc1wiIFtkaXNhYmxlZF09XCIhZWRpdGFibGVcIj48L3RleHRhcmVhPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgPGxhYmVsIGZvcj1cInJlYXNvblwiPk9uYXkgLyBnZXJpIGFsbWEgZ2VyZWvDp2VzaTwvbGFiZWw+XHJcbiAgICAgICAgICA8dGV4dGFyZWEgI3JlYXNvbklucHV0IGlkPVwicmVhc29uXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiByb3dzPVwiM1wiIFsobmdNb2RlbCldPVwicmVhc29uXCIgKG5nTW9kZWxDaGFuZ2UpPVwicmVhc29uRXJyb3IgPSAnJ1wiXHJcbiAgICAgICAgICAgIFtjbGFzcy5pcy1pbnZhbGlkXT1cInJlYXNvbkVycm9yXCIgW2F0dHIuYXJpYS1pbnZhbGlkXT1cIiEhcmVhc29uRXJyb3JcIlxyXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiYnVzeSB8fCBhbmFseXNpcy5zdGF0dXMgPT09ICdMYWJvcmFudFNpZ25lZCdcIj48L3RleHRhcmVhPlxyXG4gICAgICAgICAgPGRpdiAqbmdJZj1cInJlYXNvbkVycm9yXCIgY2xhc3M9XCJpbnZhbGlkLWZlZWRiYWNrIGQtYmxvY2tcIiByb2xlPVwiYWxlcnRcIj57eyByZWFzb25FcnJvciB9fTwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm10LTMgZC1mbGV4IGZsZXgtd3JhcCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTJcIj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IG1yLTIgbWItMlwiIChjbGljayk9XCJzYXZlKClcIiBbZGlzYWJsZWRdPVwiIWVkaXRhYmxlIHx8IGJ1c3lcIj5LYXlkZXQ8L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lLXByaW1hcnkgbXItMiBtYi0yXCIgKm5nSWY9XCJhbmFseXNpcy5zdGF0dXMgPT09ICdEcmFmdCcgJiYgYWxsb3dlZCgnU2lnbicpXCJcclxuICAgICAgICAgIChjbGljayk9XCJkZWNpc2lvbignc2lnbicpXCIgW2Rpc2FibGVkXT1cIiFhbmFseXNpcy5yZXZpc2lvbiB8fCBidXN5XCI+TGFib3JhbnQgT2xhcmFrIMSwbXphbGE8L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lLXByaW1hcnkgbXItMiBtYi0yXCIgKm5nSWY9XCJhbmFseXNpcy5zdGF0dXMgPT09ICdMYWJvcmFudFNpZ25lZCcgJiYgYWxsb3dlZCgnQ2hlY2snKVwiXHJcbiAgICAgICAgICAoY2xpY2spPVwiZGVjaXNpb24oJ2NoZWNrJylcIiBbZGlzYWJsZWRdPVwiYnVzeVwiPk3DvGhlbmRpcyBLb250cm9sw7w8L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1zdWNjZXNzIG1yLTIgbWItMlwiICpuZ0lmPVwiYW5hbHlzaXMuc3RhdHVzID09PSAnQ2hlY2tlZCcgJiYgYWxsb3dlZCgnQXBwcm92ZScpXCJcclxuICAgICAgICAgIChjbGljayk9XCJkZWNpc2lvbignYXBwcm92ZScpXCIgW2Rpc2FibGVkXT1cImJ1c3lcIj5Tb24gT25heTwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLW91dGxpbmUtZGFuZ2VyIG1yLTIgbWItMlwiICpuZ0lmPVwiYW5hbHlzaXMuc3RhdHVzID09PSAnQXBwcm92ZWQnICYmIGFsbG93ZWQoJ1Jldm9rZScpXCJcclxuICAgICAgICAgIChjbGljayk9XCJkZWNpc2lvbigncmV2b2tlJylcIiBbZGlzYWJsZWRdPVwiYnVzeVwiPk9uYXnEsSBHZXJpIEFsPC9idXR0b24+XHJcbiAgICAgICAgPHNwYW4gKm5nSWY9XCJoYXNPdXRPZkxpbWl0XCIgY2xhc3M9XCJ0ZXh0LWRhbmdlciBtYi0yXCI+TGltaXQgZMSxxZ/EsSDDtmzDp8O8bSB2YXIuIFNvbiBvbmF5IGnDp2luIGdlcmVrw6dlIGdlcmVrbGkuPC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm10LTMgc21hbGwgdGV4dC1tdXRlZFwiPlxyXG4gICAgICAgIDxzcGFuPkxhYm9yYW50OiB7eyBhbmFseXNpcy5sYWJvcmFudD8udXNlck5hbWUgfHwgJ+KAlCcgfX08L3NwYW4+IMK3XHJcbiAgICAgICAgPHNwYW4+TcO8aGVuZGlzOiB7eyBhbmFseXNpcy5lbmdpbmVlcj8udXNlck5hbWUgfHwgJ+KAlCcgfX08L3NwYW4+IMK3XHJcbiAgICAgICAgPHNwYW4+T25heWxheWFuOiB7eyBhbmFseXNpcy5hcHByb3Zlcj8udXNlck5hbWUgfHwgJ+KAlCcgfX08L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGV0YWlscyBjbGFzcz1cIm10LTNcIiAqbmdJZj1cImFuYWx5c2lzLmhpc3Rvcnk/Lmxlbmd0aFwiPlxyXG4gICAgICAgIDxzdW1tYXJ5PsSwxZ9sZW0gZ2XDp21pxZ9pPC9zdW1tYXJ5PlxyXG4gICAgICAgIDx1bCBjbGFzcz1cIm10LTJcIj48bGkgKm5nRm9yPVwibGV0IGV2ZW50IG9mIGFuYWx5c2lzLmhpc3RvcnlcIj57eyBldmVudC5hY3Rpb24gfX0gwrcge3sgZXZlbnQudXNlck5hbWUgfX0gwrcge3sgZXZlbnQub2NjdXJyZWRBdCB8IGRhdGU6J2RkLk1NLnl5eXkgSEg6bW0nIH19PHNwYW4gKm5nSWY9XCJldmVudC5yZWFzb25cIj4gwrcge3sgZXZlbnQucmVhc29uIH19PC9zcGFuPjwvbGk+PC91bD5cclxuICAgICAgPC9kZXRhaWxzPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9kaXY+PC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPGRhdGFsaXN0IGlkPVwicXVhbGl0eVRhbmtzXCI+PG9wdGlvbiAqbmdGb3I9XCJsZXQgdGFuayBvZiB0YW5rc1wiIFt2YWx1ZV09XCJ0YW5rLmNvZGVcIj57e3RhbmsubmFtZX19PC9vcHRpb24+PC9kYXRhbGlzdD5cclxuIl19
|
|
197
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzcy1hbmFseXNpcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWxpdGUvc3JjL2xpYi9jb21wb25lbnRzL3Byb2Nlc3MtYW5hbHlzaXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2FsaXRlL3NyYy9saWIvY29tcG9uZW50cy9wcm9jZXNzLWFuYWx5c2lzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXNCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVF6RSxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7QUFPaEYsTUFBTSxPQUFPLHdCQUF3QjtJQWVuQyxZQUFvQixHQUFzQixFQUFVLFdBQThCO1FBQTlELFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQW1CO1FBZGxGLFVBQUssR0FBa0IsRUFBRSxDQUFDO1FBQzFCLGVBQVUsR0FBc0IsRUFBRSxDQUFDO1FBQ25DLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLGlCQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzVCLGFBQVEsR0FBMkIsSUFBSSxDQUFDO1FBQ3hDLFdBQU0sR0FBNEQsRUFBRSxDQUFDO1FBQ3JFLGVBQVUsR0FBdUIsRUFBRSxDQUFDO1FBQ3BDLFdBQU0sR0FBRyxFQUFFLENBQUM7UUFDWixTQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ1osYUFBUSxHQUFHLHNCQUFzQixDQUFDO1FBQ2xDLFVBQUssR0FBRyxFQUFFLENBQUM7UUFDWCxnQkFBVyxHQUFHLEVBQUUsQ0FBQztJQUdvRSxDQUFDO0lBRXRGLFFBQVE7UUFDTixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNqRyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxDQUFDLFNBQVMsQ0FBQztZQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO2dCQUM3QixJQUFJLENBQUMsWUFBWSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUM5QyxJQUFJLElBQUksQ0FBQyxZQUFZO29CQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQzs7b0JBQzlCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1lBQ3pCLENBQUM7WUFDRCxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssR0FBRyx1QkFBdUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUMxRSxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNLEtBQUssT0FBTztZQUNwRCxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLGdEQUFnRCxDQUFDLENBQUM7SUFDeEYsQ0FBQztJQUVELElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUM7SUFDekYsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQVEsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRSxtQkFBbUI7WUFDNUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQTZCLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNLElBQUksRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3pILENBQUM7SUFFRCxPQUFPLENBQUMsVUFBa0I7UUFDeEIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLDJDQUEyQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ3BHLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWTtZQUFFLE9BQU87UUFDckQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLFFBQVEsR0FBRyw2QkFBNkIsQ0FBQztRQUM5QyxJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUNoQixJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDL0QsSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFO2dCQUNmLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQzdCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1lBQ3BCLENBQUM7WUFDRCxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssR0FBRywyQkFBMkIsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUM5RSxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sYUFBYSxDQUFDLFFBQXlCO1FBQzdDLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQztRQUMzQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUMvRSxJQUFJO1lBQ0osVUFBVSxFQUFFLFFBQVEsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxXQUFXLENBQUM7aUJBQ3JGLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQztTQUNyQyxDQUFDLENBQUMsQ0FBQztRQUNKLElBQUksQ0FBQyxVQUFVLEdBQUksRUFBeUIsQ0FBQyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQ25HLEtBQUssTUFBTSxJQUFJLElBQUksUUFBUSxDQUFDLEtBQUssRUFBRTtZQUNqQyxJQUFJLENBQUMsWUFBWSxLQUFqQixJQUFJLENBQUMsWUFBWSxHQUFLLEVBQUUsRUFBQztZQUN6QixLQUFLLE1BQU0sU0FBUyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7Z0JBQ3ZDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxhQUFhLEtBQUssU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO29CQUNwRSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLGFBQWEsRUFBRSxTQUFTLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztpQkFDdEc7YUFDRjtTQUNGO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FBQyxHQUFnQixFQUFFLFNBQTJCO1FBQ3ZELE9BQU8sR0FBRyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsYUFBYSxLQUFLLFNBQVMsQ0FBQyxJQUFJLENBQUUsQ0FBQztJQUN6RSxDQUFDO0lBRUQsS0FBSyxDQUFDLFNBQTJCO1FBQy9CLE9BQU8sZUFBZSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxJQUFJLEVBQUUsRUFBRSxTQUFTLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxPQUFPLElBQUksRUFBRSxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUVELFVBQVUsQ0FBQyxTQUEyQjtRQUNwQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTyxHQUFHLENBQUM7UUFDdkIsSUFBSSxLQUFLLENBQUMsWUFBWTtZQUFFLE9BQU8sS0FBSyxDQUFDLFlBQVksQ0FBQztRQUNsRCxJQUFJLEtBQUssQ0FBQyxPQUFPLElBQUksSUFBSSxJQUFJLEtBQUssQ0FBQyxPQUFPLElBQUksSUFBSTtZQUFFLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUMvRixJQUFJLEtBQUssQ0FBQyxPQUFPLElBQUksSUFBSTtZQUFFLE9BQU8sS0FBSyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDdkQsSUFBSSxLQUFLLENBQUMsT0FBTyxJQUFJLElBQUk7WUFBRSxPQUFPLEtBQUssS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3ZELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVELE9BQU8sQ0FBQyxHQUFnQixFQUFFLFNBQTJCO1FBQ25ELElBQUk7WUFBRSxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxJQUFJLEVBQUUsRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQUU7UUFDdEosT0FBTyxDQUFDLEVBQUU7WUFBRSxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLHVCQUF1QixDQUFDO1NBQUU7UUFDcEYsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDL0MsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNwQyxLQUFLLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQyxLQUFLLElBQUksQ0FDNUIsQ0FBQyxLQUFLLENBQUMsTUFBTSxJQUFJLElBQUk7WUFDbkIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksSUFBSSxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztnQkFDdkQsQ0FBQyxLQUFLLENBQUMsT0FBTyxJQUFJLElBQUksSUFBSSxLQUFLLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQzVELENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxZQUFZO2dCQUNuQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxLQUFLLEtBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FDekcsQ0FBQztJQUNKLENBQUM7SUFFRCxjQUFjO1FBQ1osS0FBSyxNQUFNLEdBQUcsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQzFDLEtBQUssTUFBTSxTQUFTLElBQUksSUFBSSxDQUFDLFVBQVU7Z0JBQ3JDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxPQUFPLENBQUMsU0FBMkI7UUFDakMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUMsTUFBTSxDQUFDO2FBQ2hGLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBZSxFQUFFLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMvQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU07WUFBRSxPQUFPLEdBQUcsQ0FBQztRQUMvQixPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDOUYsQ0FBQztJQUVELElBQUk7UUFDRixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTztRQUM3QyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsUUFBUSxHQUFHLG9CQUFvQixDQUFDO1FBQ3JDLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLE1BQU0sS0FBSyxHQUFHO1lBQ1osWUFBWSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWTtZQUN4QyxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDL0IsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTztZQUM5QixLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLO1lBQzFCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVE7WUFDaEMsS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSztTQUMzQixDQUFDO1FBQ0YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQ3BDLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDdEUsS0FBSyxFQUFFLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLEdBQUcsMERBQTBELENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7U0FDN0csQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFFBQVEsQ0FBQyxNQUErQztRQUN0RCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUTtZQUFFLE9BQU87UUFDdEQsSUFBSSxDQUFDLE1BQU0sS0FBSyxRQUFRLElBQUksQ0FBQyxNQUFNLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNoRyxJQUFJLENBQUMsV0FBVyxHQUFHLDhCQUE4QixDQUFDO1lBQ2xELFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQzFELE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxRQUFRLEdBQUcscUJBQXFCLENBQUM7UUFDdEMsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDM0YsSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ3hGLEtBQUssRUFBRSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLHdEQUF3RCxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO1NBQzNHLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsUUFBUTtZQUFFLE9BQU87UUFDckMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDekMsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUFFO2dCQUNYLE1BQU0sR0FBRyxHQUFHLEdBQUcsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3RDLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzNDLE1BQU0sQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDO2dCQUNsQixNQUFNLENBQUMsUUFBUSxHQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxNQUFNLENBQUM7Z0JBQzNGLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDZixVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNuRCxDQUFDO1lBQ0QsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcscUJBQXFCO1NBQ2hELENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxLQUFLO1FBQ1gsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN4QixPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDO0lBQzVILENBQUM7O3FIQXBMVSx3QkFBd0I7eUdBQXhCLHdCQUF3Qix3S0NmckMsOG9TQWlJQTsyRkRsSGEsd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNFLHNCQUFzQjt3SUFpQk4sV0FBVztzQkFBcEMsU0FBUzt1QkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBQZXJtaXNzaW9uU2VydmljZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgUXVhbGl0eUFuYWx5c2lzLCBRdWFsaXR5RmFjaWxpdHksIFF1YWxpdHlIb3VyLCBRdWFsaXR5TGltaXQsXHJcbiAgUXVhbGl0eU1lYXN1cmVtZW50LCBRdWFsaXR5UGFyYW1ldGVyLCBRdWFsaXR5U3RlcCxcclxufSBmcm9tICcuLi9tb2RlbHMvcXVhbGl0eS5tb2RlbHMnO1xyXG5pbXBvcnQgeyBRdWFsaXR5QXBpU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3F1YWxpdHktYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBRdWFsaXR5VGFuayB9IGZyb20gJy4uL21vZGVscy9pbnRha2UubW9kZWxzJztcclxuaW1wb3J0IHsgYXBwbGljYWJsZUxpbWl0LCByZWNhbGN1bGF0ZSB9IGZyb20gJy4uL3NlcnZpY2VzL3F1YWxpdHktbWVhc3VyZW1lbnRzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXByb2Nlc3MtYW5hbHlzaXMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9jZXNzLWFuYWx5c2lzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9wcm9jZXNzLWFuYWx5c2lzLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQcm9jZXNzQW5hbHlzaXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHRhbmtzOiBRdWFsaXR5VGFua1tdID0gW107XHJcbiAgZmFjaWxpdGllczogUXVhbGl0eUZhY2lsaXR5W10gPSBbXTtcclxuICBmYWNpbGl0eUNvZGUgPSAnJztcclxuICBidXNpbmVzc0RhdGUgPSB0aGlzLnRvZGF5KCk7XHJcbiAgYW5hbHlzaXM6IFF1YWxpdHlBbmFseXNpcyB8IG51bGwgPSBudWxsO1xyXG4gIGdyb3VwczogeyBzdGVwOiBRdWFsaXR5U3RlcDsgcGFyYW1ldGVyczogUXVhbGl0eVBhcmFtZXRlcltdIH1bXSA9IFtdO1xyXG4gIHBhcmFtZXRlcnM6IFF1YWxpdHlQYXJhbWV0ZXJbXSA9IFtdO1xyXG4gIHJlYXNvbiA9ICcnO1xyXG4gIGJ1c3kgPSB0cnVlO1xyXG4gIGJ1c3lUZXh0ID0gJ1Rlc2lzbGVyIHnDvGtsZW5peW9y4oCmJztcclxuICBlcnJvciA9ICcnO1xyXG4gIHJlYXNvbkVycm9yID0gJyc7XHJcbiAgQFZpZXdDaGlsZCgncmVhc29uSW5wdXQnKSByZWFzb25JbnB1dD86IEVsZW1lbnRSZWY8SFRNTFRleHRBcmVhRWxlbWVudD47XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXBpOiBRdWFsaXR5QXBpU2VydmljZSwgcHJpdmF0ZSBwZXJtaXNzaW9uczogUGVybWlzc2lvblNlcnZpY2UpIHt9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5hcGkudGFua3MoKS5zdWJzY3JpYmUoeyBuZXh0OiB4ID0+IHRoaXMudGFua3MgPSB4LmZpbHRlcih0ID0+IHQuYWN0aXZlKSwgZXJyb3I6ICgpID0+IHt9IH0pO1xyXG4gICAgdGhpcy5hcGkuZmFjaWxpdGllcygpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IGZhY2lsaXRpZXMgPT4ge1xyXG4gICAgICAgIHRoaXMuZmFjaWxpdGllcyA9IGZhY2lsaXRpZXM7XHJcbiAgICAgICAgdGhpcy5mYWNpbGl0eUNvZGUgPSBmYWNpbGl0aWVzWzBdPy5jb2RlIHx8ICcnO1xyXG4gICAgICAgIGlmICh0aGlzLmZhY2lsaXR5Q29kZSkgdGhpcy5sb2FkKCk7XHJcbiAgICAgICAgZWxzZSB0aGlzLmJ1c3kgPSBmYWxzZTtcclxuICAgICAgfSxcclxuICAgICAgZXJyb3I6ICgpID0+IHsgdGhpcy5lcnJvciA9ICdUZXNpc2xlciB5w7xrbGVuZW1lZGkuJzsgdGhpcy5idXN5ID0gZmFsc2U7IH0sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldCBlZGl0YWJsZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhdGhpcy5idXN5ICYmIHRoaXMuYW5hbHlzaXM/LnN0YXR1cyA9PT0gJ0RyYWZ0JyAmJlxyXG4gICAgICB0aGlzLnBlcm1pc3Npb25zLmdldEdyYW50ZWRQb2xpY3koJ0hpdHNvZnQuS2Fkb29nbHUuS2FsaXRlLlByb2Nlc3NBbmFseXNpcy5DcmVhdGUnKTtcclxuICB9XHJcblxyXG4gIGdldCBoYXNPdXRPZkxpbWl0KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYW5hbHlzaXM/LmhvdXJzLnNvbWUoaCA9PiBoLm1lYXN1cmVtZW50cy5zb21lKHYgPT4gdi5vdXRPZkxpbWl0KSkgfHwgZmFsc2U7XHJcbiAgfVxyXG5cclxuICBnZXQgc3RhdHVzVGV4dCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuICh7IERyYWZ0OiAnVGFzbGFrJywgTGFib3JhbnRTaWduZWQ6ICdMYWJvcmFudCBpbXphbGFkxLEnLFxyXG4gICAgICBDaGVja2VkOiAnTcO8aGVuZGlzIGtvbnRyb2wgZXR0aScsIEFwcHJvdmVkOiAnT25heWzEsScgfSBhcyBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KVt0aGlzLmFuYWx5c2lzPy5zdGF0dXMgfHwgJyddIHx8ICcnO1xyXG4gIH1cclxuXHJcbiAgYWxsb3dlZChwZXJtaXNzaW9uOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnBlcm1pc3Npb25zLmdldEdyYW50ZWRQb2xpY3koYEhpdHNvZnQuS2Fkb29nbHUuS2FsaXRlLlByb2Nlc3NBbmFseXNpcy4ke3Blcm1pc3Npb259YCk7XHJcbiAgfVxyXG5cclxuICBsb2FkKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmZhY2lsaXR5Q29kZSB8fCAhdGhpcy5idXNpbmVzc0RhdGUpIHJldHVybjtcclxuICAgIHRoaXMuYnVzeSA9IHRydWU7XHJcbiAgICB0aGlzLmJ1c3lUZXh0ID0gJ0FuYWxpeiB2ZXJpbGVyaSB5w7xrbGVuaXlvcuKApic7XHJcbiAgICB0aGlzLmVycm9yID0gJyc7XHJcbiAgICB0aGlzLmFwaS5wcm9jZXNzKHRoaXMuZmFjaWxpdHlDb2RlLCB0aGlzLmJ1c2luZXNzRGF0ZSkuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogYW5hbHlzaXMgPT4ge1xyXG4gICAgICAgIHRoaXMuYXBwbHlBbmFseXNpcyhhbmFseXNpcyk7XHJcbiAgICAgICAgdGhpcy5idXN5ID0gZmFsc2U7XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOiAoKSA9PiB7IHRoaXMuZXJyb3IgPSAnQW5hbGl6IGZvcm11IHnDvGtsZW5lbWVkaS4nOyB0aGlzLmJ1c3kgPSBmYWxzZTsgfSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhcHBseUFuYWx5c2lzKGFuYWx5c2lzOiBRdWFsaXR5QW5hbHlzaXMpOiB2b2lkIHtcclxuICAgIHRoaXMuYW5hbHlzaXMgPSBhbmFseXNpcztcclxuICAgIGNvbnN0IHRlbXBsYXRlID0gYW5hbHlzaXMudGVtcGxhdGVTbmFwc2hvdDtcclxuICAgIHRoaXMuZ3JvdXBzID0gWy4uLnRlbXBsYXRlLnN0ZXBzXS5zb3J0KChhLCBiKSA9PiBhLm9yZGVyIC0gYi5vcmRlcikubWFwKHN0ZXAgPT4gKHtcclxuICAgICAgc3RlcCxcclxuICAgICAgcGFyYW1ldGVyczogdGVtcGxhdGUucGFyYW1ldGVycy5maWx0ZXIocCA9PiBwLmFjdGl2ZSAmJiBwLnN0ZXBDb2RlID09PSBzdGVwLnByb2Nlc3NDb2RlKVxyXG4gICAgICAgIC5zb3J0KChhLCBiKSA9PiBhLm9yZGVyIC0gYi5vcmRlciksXHJcbiAgICB9KSk7XHJcbiAgICB0aGlzLnBhcmFtZXRlcnMgPSAoW10gYXMgUXVhbGl0eVBhcmFtZXRlcltdKS5jb25jYXQoLi4udGhpcy5ncm91cHMubWFwKGdyb3VwID0+IGdyb3VwLnBhcmFtZXRlcnMpKTtcclxuICAgIGZvciAoY29uc3QgaG91ciBvZiBhbmFseXNpcy5ob3Vycykge1xyXG4gICAgICBob3VyLm1lYXN1cmVtZW50cyB8fD0gW107XHJcbiAgICAgIGZvciAoY29uc3QgcGFyYW1ldGVyIG9mIHRoaXMucGFyYW1ldGVycykge1xyXG4gICAgICAgIGlmICghaG91ci5tZWFzdXJlbWVudHMuc29tZSh2ID0+IHYucGFyYW1ldGVyQ29kZSA9PT0gcGFyYW1ldGVyLmNvZGUpKSB7XHJcbiAgICAgICAgICBob3VyLm1lYXN1cmVtZW50cy5wdXNoKHsgcGFyYW1ldGVyQ29kZTogcGFyYW1ldGVyLmNvZGUsIG51bWJlcjogbnVsbCwgdGV4dDogJycsIG91dE9mTGltaXQ6IGZhbHNlIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbWVhc3VyZW1lbnQocm93OiBRdWFsaXR5SG91ciwgcGFyYW1ldGVyOiBRdWFsaXR5UGFyYW1ldGVyKTogUXVhbGl0eU1lYXN1cmVtZW50IHtcclxuICAgIHJldHVybiByb3cubWVhc3VyZW1lbnRzLmZpbmQodiA9PiB2LnBhcmFtZXRlckNvZGUgPT09IHBhcmFtZXRlci5jb2RlKSE7XHJcbiAgfVxyXG5cclxuICBsaW1pdChwYXJhbWV0ZXI6IFF1YWxpdHlQYXJhbWV0ZXIpOiBRdWFsaXR5TGltaXQgfCB1bmRlZmluZWQge1xyXG4gICAgcmV0dXJuIGFwcGxpY2FibGVMaW1pdCh0aGlzLmFuYWx5c2lzPy50ZW1wbGF0ZVNuYXBzaG90LmxpbWl0cyB8fCBbXSwgcGFyYW1ldGVyLmNvZGUsIHRoaXMuYnVzaW5lc3NEYXRlLCB0aGlzLmFuYWx5c2lzPy5vaWxUeXBlIHx8ICcnKTtcclxuICB9XHJcblxyXG4gIGxpbWl0TGFiZWwocGFyYW1ldGVyOiBRdWFsaXR5UGFyYW1ldGVyKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGxpbWl0ID0gdGhpcy5saW1pdChwYXJhbWV0ZXIpO1xyXG4gICAgaWYgKCFsaW1pdCkgcmV0dXJuICfigJQnO1xyXG4gICAgaWYgKGxpbWl0LmV4cGVjdGVkVGV4dCkgcmV0dXJuIGxpbWl0LmV4cGVjdGVkVGV4dDtcclxuICAgIGlmIChsaW1pdC5taW5pbXVtICE9IG51bGwgJiYgbGltaXQubWF4aW11bSAhPSBudWxsKSByZXR1cm4gYCR7bGltaXQubWluaW11bX3igJMke2xpbWl0Lm1heGltdW19YDtcclxuICAgIGlmIChsaW1pdC5taW5pbXVtICE9IG51bGwpIHJldHVybiBg4omlICR7bGltaXQubWluaW11bX1gO1xyXG4gICAgaWYgKGxpbWl0Lm1heGltdW0gIT0gbnVsbCkgcmV0dXJuIGDiiaQgJHtsaW1pdC5tYXhpbXVtfWA7XHJcbiAgICByZXR1cm4gJ+KAlCc7XHJcbiAgfVxyXG5cclxuICBjaGFuZ2VkKHJvdzogUXVhbGl0eUhvdXIsIHBhcmFtZXRlcjogUXVhbGl0eVBhcmFtZXRlcik6IHZvaWQge1xyXG4gICAgdHJ5IHsgcmVjYWxjdWxhdGUodGhpcy5wYXJhbWV0ZXJzLCByb3cubWVhc3VyZW1lbnRzLCB0aGlzLmFuYWx5c2lzPy50ZW1wbGF0ZVNuYXBzaG90LmxpbWl0cyB8fCBbXSwgdGhpcy5idXNpbmVzc0RhdGUsIHRoaXMuYW5hbHlzaXM/Lm9pbFR5cGUgfHwgJycpOyB9XHJcbiAgICBjYXRjaCAoZSkgeyB0aGlzLmVycm9yID0gZSBpbnN0YW5jZW9mIEVycm9yID8gZS5tZXNzYWdlIDogJ0hlc2FwbGFtYSB5YXDEsWxhbWFkxLEuJzsgfVxyXG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLm1lYXN1cmVtZW50KHJvdywgcGFyYW1ldGVyKTtcclxuICAgIGNvbnN0IGxpbWl0ID0gdGhpcy5saW1pdChwYXJhbWV0ZXIpO1xyXG4gICAgdmFsdWUub3V0T2ZMaW1pdCA9ICEhbGltaXQgJiYgKFxyXG4gICAgICAodmFsdWUubnVtYmVyICE9IG51bGwgJiZcclxuICAgICAgICAoKGxpbWl0Lm1pbmltdW0gIT0gbnVsbCAmJiB2YWx1ZS5udW1iZXIgPCBsaW1pdC5taW5pbXVtKSB8fFxyXG4gICAgICAgICAobGltaXQubWF4aW11bSAhPSBudWxsICYmIHZhbHVlLm51bWJlciA+IGxpbWl0Lm1heGltdW0pKSkgfHxcclxuICAgICAgKCEhdmFsdWUudGV4dCAmJiAhIWxpbWl0LmV4cGVjdGVkVGV4dCAmJlxyXG4gICAgICAgIHZhbHVlLnRleHQudHJpbSgpLnRvTG9jYWxlTG93ZXJDYXNlKCd0ci1UUicpICE9PSBsaW1pdC5leHBlY3RlZFRleHQudHJpbSgpLnRvTG9jYWxlTG93ZXJDYXNlKCd0ci1UUicpKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIG9pbFR5cGVDaGFuZ2VkKCk6IHZvaWQge1xyXG4gICAgZm9yIChjb25zdCByb3cgb2YgdGhpcy5hbmFseXNpcz8uaG91cnMgfHwgW10pXHJcbiAgICAgIGZvciAoY29uc3QgcGFyYW1ldGVyIG9mIHRoaXMucGFyYW1ldGVycylcclxuICAgICAgICB0aGlzLmNoYW5nZWQocm93LCBwYXJhbWV0ZXIpO1xyXG4gIH1cclxuXHJcbiAgYXZlcmFnZShwYXJhbWV0ZXI6IFF1YWxpdHlQYXJhbWV0ZXIpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgdmFsdWVzID0gdGhpcy5hbmFseXNpcz8uaG91cnMubWFwKGggPT4gdGhpcy5tZWFzdXJlbWVudChoLCBwYXJhbWV0ZXIpLm51bWJlcilcclxuICAgICAgLmZpbHRlcigodik6IHYgaXMgbnVtYmVyID0+IHYgIT0gbnVsbCkgfHwgW107XHJcbiAgICBpZiAoIXZhbHVlcy5sZW5ndGgpIHJldHVybiAn4oCUJztcclxuICAgIHJldHVybiAodmFsdWVzLnJlZHVjZSgoYSwgYikgPT4gYSArIGIsIDApIC8gdmFsdWVzLmxlbmd0aCkudG9GaXhlZChwYXJhbWV0ZXIuZGVjaW1hbFBsYWNlcyk7XHJcbiAgfVxyXG5cclxuICBzYXZlKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmFuYWx5c2lzIHx8ICF0aGlzLmVkaXRhYmxlKSByZXR1cm47XHJcbiAgICB0aGlzLmJ1c3kgPSB0cnVlO1xyXG4gICAgdGhpcy5idXN5VGV4dCA9ICdGb3JtIGtheWRlZGlsaXlvcuKApic7XHJcbiAgICB0aGlzLmVycm9yID0gJyc7XHJcbiAgICBjb25zdCBpbnB1dCA9IHtcclxuICAgICAgZmFjaWxpdHlDb2RlOiB0aGlzLmFuYWx5c2lzLmZhY2lsaXR5Q29kZSxcclxuICAgICAgYnVzaW5lc3NEYXRlOiB0aGlzLmJ1c2luZXNzRGF0ZSxcclxuICAgICAgb2lsVHlwZTogdGhpcy5hbmFseXNpcy5vaWxUeXBlLFxyXG4gICAgICBub3RlczogdGhpcy5hbmFseXNpcy5ub3RlcyxcclxuICAgICAgcmV2aXNpb246IHRoaXMuYW5hbHlzaXMucmV2aXNpb24sXHJcbiAgICAgIGhvdXJzOiB0aGlzLmFuYWx5c2lzLmhvdXJzLFxyXG4gICAgfTtcclxuICAgIHRoaXMuYXBpLnNhdmVQcm9jZXNzKGlucHV0KS5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiBhbmFseXNpcyA9PiB7IHRoaXMuYXBwbHlBbmFseXNpcyhhbmFseXNpcyk7IHRoaXMuYnVzeSA9IGZhbHNlOyB9LFxyXG4gICAgICBlcnJvcjogKCkgPT4geyB0aGlzLmVycm9yID0gJ0Zvcm0ga2F5ZGVkaWxlbWVkaS4gQWxhbmxhcsSxIHZlIGJhxJ9sYW50xLF5xLEga29udHJvbCBlZGluLic7IHRoaXMuYnVzeSA9IGZhbHNlOyB9LFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBkZWNpc2lvbihhY3Rpb246ICdzaWduJyB8ICdjaGVjaycgfCAnYXBwcm92ZScgfCAncmV2b2tlJyk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmFuYWx5c2lzIHx8ICF0aGlzLmFuYWx5c2lzLnJldmlzaW9uKSByZXR1cm47XHJcbiAgICBpZiAoKGFjdGlvbiA9PT0gJ3Jldm9rZScgfHwgKGFjdGlvbiA9PT0gJ2FwcHJvdmUnICYmIHRoaXMuaGFzT3V0T2ZMaW1pdCkpICYmICF0aGlzLnJlYXNvbi50cmltKCkpIHtcclxuICAgICAgdGhpcy5yZWFzb25FcnJvciA9ICdCdSBpxZ9sZW0gacOnaW4gZ2VyZWvDp2UgZ2lyaW4uJztcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnJlYXNvbklucHV0Py5uYXRpdmVFbGVtZW50LmZvY3VzKCkpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLmJ1c3kgPSB0cnVlO1xyXG4gICAgdGhpcy5idXN5VGV4dCA9ICfEsMWfbGVtIHRhbWFtbGFuxLF5b3LigKYnO1xyXG4gICAgdGhpcy5lcnJvciA9ICcnO1xyXG4gICAgdGhpcy5yZWFzb25FcnJvciA9ICcnO1xyXG4gICAgdGhpcy5hcGkuZGVjaXNpb24odGhpcy5hbmFseXNpcy5jb2RlLCBhY3Rpb24sIHRoaXMuYW5hbHlzaXMucmV2aXNpb24sIHRoaXMucmVhc29uKS5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiBhbmFseXNpcyA9PiB7IHRoaXMucmVhc29uID0gJyc7IHRoaXMuYXBwbHlBbmFseXNpcyhhbmFseXNpcyk7IHRoaXMuYnVzeSA9IGZhbHNlOyB9LFxyXG4gICAgICBlcnJvcjogKCkgPT4geyB0aGlzLmVycm9yID0gJ8SwxZ9sZW0gdGFtYW1sYW5hbWFkxLEuIEZvcm11biBzb24gZHVydW11bnUga29udHJvbCBlZGluLic7IHRoaXMuYnVzeSA9IGZhbHNlOyB9LFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBkb3dubG9hZFBkZigpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5hbmFseXNpcz8ucmV2aXNpb24pIHJldHVybjtcclxuICAgIHRoaXMuYXBpLnBkZih0aGlzLmFuYWx5c2lzLmNvZGUpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IGJsb2IgPT4ge1xyXG4gICAgICAgIGNvbnN0IHVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7XHJcbiAgICAgICAgY29uc3QgYW5jaG9yID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xyXG4gICAgICAgIGFuY2hvci5ocmVmID0gdXJsO1xyXG4gICAgICAgIGFuY2hvci5kb3dubG9hZCA9IGAke3RoaXMuYW5hbHlzaXM/LmZvcm1TbmFwc2hvdC5kb2N1bWVudENvZGV9LSR7dGhpcy5hbmFseXNpcz8uY29kZX0ucGRmYDtcclxuICAgICAgICBhbmNob3IuY2xpY2soKTtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IFVSTC5yZXZva2VPYmplY3RVUkwodXJsKSwgMTAwMCk7XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOiAoKSA9PiB0aGlzLmVycm9yID0gJ1BERiBvbHXFn3R1cnVsYW1hZMSxLicsXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdG9kYXkoKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgcmV0dXJuIGAke2RhdGUuZ2V0RnVsbFllYXIoKX0tJHtTdHJpbmcoZGF0ZS5nZXRNb250aCgpICsgMSkucGFkU3RhcnQoMiwgJzAnKX0tJHtTdHJpbmcoZGF0ZS5nZXREYXRlKCkpLnBhZFN0YXJ0KDIsICcwJyl9YDtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImNvbnRhaW5lci1mbHVpZFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJtYi0yXCI+XHJcbiAgICA8aDMgY2xhc3M9XCJwYWdlLXRpdGxlXCI+UmFmaW5lcmkgUHJvc2VzIEFuYWxpeiBLb250cm9sPC9oMz5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdiBjbGFzcz1cImNhcmQgbXQtMlwiPjxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJyb3cgYWxpZ24taXRlbXMtZW5kIG1iLTNcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0zXCI+XHJcbiAgICAgICAgPGxhYmVsIGZvcj1cImZhY2lsaXR5XCI+VGVzaXM8L2xhYmVsPlxyXG4gICAgICAgIDxzZWxlY3QgaWQ9XCJmYWNpbGl0eVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgW2Rpc2FibGVkXT1cImJ1c3lcIiBbKG5nTW9kZWwpXT1cImZhY2lsaXR5Q29kZVwiIChjaGFuZ2UpPVwibG9hZCgpXCI+XHJcbiAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBmYWNpbGl0eSBvZiBmYWNpbGl0aWVzXCIgW3ZhbHVlXT1cImZhY2lsaXR5LmNvZGVcIj57eyBmYWNpbGl0eS5uYW1lIH19PC9vcHRpb24+XHJcbiAgICAgICAgPC9zZWxlY3Q+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTNcIj5cclxuICAgICAgICA8bGFiZWwgZm9yPVwiYnVzaW5lc3NEYXRlXCI+xLDFnyBnw7xuw7w8L2xhYmVsPlxyXG4gICAgICAgIDxpbnB1dCBpZD1cImJ1c2luZXNzRGF0ZVwiIHR5cGU9XCJkYXRlXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbZGlzYWJsZWRdPVwiYnVzeVwiIFsobmdNb2RlbCldPVwiYnVzaW5lc3NEYXRlXCIgKGNoYW5nZSk9XCJsb2FkKClcIiAvPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0zXCIgKm5nSWY9XCJhbmFseXNpcz8uZmFjaWxpdHlDb2RlID09PSAnREVPMydcIj5cclxuICAgICAgICA8bGFiZWwgZm9yPVwib2lsVHlwZVwiPsOccmV0aWxlbiB5YcSfIGNpbnNpPC9sYWJlbD5cclxuICAgICAgICA8c2VsZWN0IGlkPVwib2lsVHlwZVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgWyhuZ01vZGVsKV09XCJhbmFseXNpcyEub2lsVHlwZVwiIChjaGFuZ2UpPVwib2lsVHlwZUNoYW5nZWQoKVwiIFtkaXNhYmxlZF09XCIhZWRpdGFibGVcIj5cclxuICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJcIj5TZcOnaW5pejwvb3B0aW9uPjxvcHRpb24gdmFsdWU9XCJQYWxtIE9pbFwiPlBhbG0gT2lsPC9vcHRpb24+XHJcbiAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiUGFsbSBPbGVpblwiPlBhbG0gT2xlaW48L29wdGlvbj5cclxuICAgICAgICA8L3NlbGVjdD5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMyB0ZXh0LW1kLXJpZ2h0IG10LTIgbXQtbWQtMFwiPlxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwiYW5hbHlzaXNcIiBjbGFzcz1cImJhZGdlIGJhZGdlLWluZm8gbXItMlwiIHN0eWxlPVwibWFyZ2luLXJpZ2h0OiA2cHg7XCI+e3sgc3RhdHVzVGV4dCB9fTwvc3Bhbj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lLXByaW1hcnlcIiAoY2xpY2spPVwiZG93bmxvYWRQZGYoKVwiIFtkaXNhYmxlZF09XCIhYW5hbHlzaXM/LnJldmlzaW9uIHx8IGJ1c3lcIlxyXG4gICAgICAgICAgKm5nSWY9XCJhbGxvd2VkKCdQcmludCcpXCI+Rm9ybXUgWWF6ZMSxciAoUERGKTwvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgKm5nSWY9XCJlcnJvclwiIGNsYXNzPVwiYWxlcnQgYWxlcnQtZGFuZ2VyXCIgcm9sZT1cImFsZXJ0XCI+e3sgZXJyb3IgfX08L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJxdWFsaXR5LWdyaWQtbG9hZGluZ1wiICpuZ0lmPVwiYnVzeVwiIHJvbGU9XCJzdGF0dXNcIiBhcmlhLWxpdmU9XCJwb2xpdGVcIiBhcmlhLWJ1c3k9XCJ0cnVlXCI+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwic3Bpbm5lci1ib3JkZXIgdGV4dC1wcmltYXJ5XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9zcGFuPlxyXG4gICAgICA8c3Bhbj57eyBidXN5VGV4dCB9fTwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFuYWx5c2lzXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzbWFsbCB0ZXh0LW11dGVkIG1iLTJcIj57eyBhbmFseXNpcy5mb3JtU25hcHNob3QubmFtZSB9fSDCtyB7eyBhbmFseXNpcy5mb3JtU25hcHNob3QuZG9jdW1lbnRDb2RlIH19IMK3IFJldml6eW9uIHt7IGFuYWx5c2lzLmZvcm1TbmFwc2hvdC5yZXZpc2lvbk51bWJlciB9fTwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwicXVhbGl0eS1ncmlkLXNjcm9sbFwiIFtoaWRkZW5dPVwiYnVzeVwiPlxyXG4gICAgICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlIHRhYmxlLWJvcmRlcmVkIHRhYmxlLXNtIHF1YWxpdHktZ3JpZFwiPlxyXG4gICAgICAgICAgPHRoZWFkPlxyXG4gICAgICAgICAgICA8dHIgY2xhc3M9XCJ0ZXh0LWNlbnRlciBiZy1saWdodFwiPlxyXG4gICAgICAgICAgICAgIDx0aCByb3dzcGFuPVwiM1wiIGNsYXNzPVwic3RpY2t5LWhvdXJcIj5TYWF0PC90aD48dGggcm93c3Bhbj1cIjNcIj5WYXJkaXlhIC8gTGFib3JhbnQ8L3RoPlxyXG4gICAgICAgICAgICAgIDx0aCByb3dzcGFuPVwiM1wiPkFsxLFuYW4gVGFuayBObzwvdGg+XHJcbiAgICAgICAgICAgICAgPHRoICpuZ0Zvcj1cImxldCBncm91cCBvZiBncm91cHNcIiBbYXR0ci5jb2xzcGFuXT1cImdyb3VwLnBhcmFtZXRlcnMubGVuZ3RoXCI+e3sgZ3JvdXAuc3RlcC5uYW1lIH19PC90aD5cclxuICAgICAgICAgICAgICA8dGggcm93c3Bhbj1cIjNcIj5Ba3RhcsSxbGFuIFRhbmsgTm88L3RoPlxyXG4gICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICA8dHIgY2xhc3M9XCJ0ZXh0LWNlbnRlciBiZy1saWdodFwiPlxyXG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGdyb3VwIG9mIGdyb3Vwc1wiPlxyXG4gICAgICAgICAgICAgICAgPHRoICpuZ0Zvcj1cImxldCBwYXJhbWV0ZXIgb2YgZ3JvdXAucGFyYW1ldGVyc1wiPnt7IHBhcmFtZXRlci5uYW1lIH19PHNtYWxsICpuZ0lmPVwicGFyYW1ldGVyLnVuaXRcIj4gKHt7IHBhcmFtZXRlci51bml0IH19KTwvc21hbGw+PC90aD5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgPHRyIGNsYXNzPVwidGV4dC1jZW50ZXIgbGltaXQtcm93XCI+XHJcbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZ3JvdXAgb2YgZ3JvdXBzXCI+XHJcbiAgICAgICAgICAgICAgICA8dGggKm5nRm9yPVwibGV0IHBhcmFtZXRlciBvZiBncm91cC5wYXJhbWV0ZXJzXCI+e3sgbGltaXRMYWJlbChwYXJhbWV0ZXIpIH19PC90aD5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICA8dGJvZHk+XHJcbiAgICAgICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgcm93IG9mIGFuYWx5c2lzLmhvdXJzXCI+XHJcbiAgICAgICAgICAgICAgPHRoIGNsYXNzPVwic3RpY2t5LWhvdXJcIj57eyByb3cuaG91ciB8IG51bWJlcjonMi4wLTAnIH19OjAwPC90aD48dGQ+PHNtYWxsPnt7cm93LnNoaWZ0Q29kZX19PC9zbWFsbD48aW5wdXQgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZm9ybS1jb250cm9sLXNtXCIgWyhuZ01vZGVsKV09XCJyb3cuYW5hbHlzdFwiIFtkaXNhYmxlZF09XCIhZWRpdGFibGVcIiBhcmlhLWxhYmVsPVwiVmFyZGl5YSBsYWJvcmFudMSxXCIgLz48L3RkPlxyXG4gICAgICAgICAgICAgIDx0ZD48aW5wdXQgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZm9ybS1jb250cm9sLXNtIHRhbmstaW5wdXRcIiBsaXN0PVwicXVhbGl0eVRhbmtzXCIgWyhuZ01vZGVsKV09XCJyb3cuaW50YWtlVGFua1wiIFtkaXNhYmxlZF09XCIhZWRpdGFibGVcIiBhcmlhLWxhYmVsPVwiQWzEsW5hbiB0YW5rXCIgLz48L3RkPlxyXG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGdyb3VwIG9mIGdyb3Vwc1wiPlxyXG4gICAgICAgICAgICAgICAgPHRkICpuZ0Zvcj1cImxldCBwYXJhbWV0ZXIgb2YgZ3JvdXAucGFyYW1ldGVyc1wiIFtjbGFzcy5vdXQtb2YtbGltaXRdPVwibWVhc3VyZW1lbnQocm93LCBwYXJhbWV0ZXIpLm91dE9mTGltaXRcIj5cclxuICAgICAgICAgICAgICAgICAgPGlucHV0ICpuZ0lmPVwicGFyYW1ldGVyLnZhbHVlVHlwZSA9PT0gJ051bWJlcicgfHwgcGFyYW1ldGVyLmNhbGN1bGF0ZWRcIiB0eXBlPVwibnVtYmVyXCJcclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBmb3JtLWNvbnRyb2wtc20gdmFsdWUtaW5wdXRcIiBbYXR0ci5zdGVwXT1cIidhbnknXCJcclxuICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cIm1lYXN1cmVtZW50KHJvdywgcGFyYW1ldGVyKS5udW1iZXJcIiAobmdNb2RlbENoYW5nZSk9XCJjaGFuZ2VkKHJvdywgcGFyYW1ldGVyKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZSB8fCBwYXJhbWV0ZXIuY2FsY3VsYXRlZFwiIFthdHRyLmFyaWEtbGFiZWxdPVwicGFyYW1ldGVyLm5hbWVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICA8c2VsZWN0ICpuZ0lmPVwicGFyYW1ldGVyLnZhbHVlVHlwZSA9PT0gJ0Nob2ljZScgJiYgIXBhcmFtZXRlci5jYWxjdWxhdGVkXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZm9ybS1jb250cm9sLXNtIHZhbHVlLWlucHV0XCJcclxuICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cIm1lYXN1cmVtZW50KHJvdywgcGFyYW1ldGVyKS50ZXh0XCIgKGNoYW5nZSk9XCJjaGFuZ2VkKHJvdywgcGFyYW1ldGVyKVwiIFtkaXNhYmxlZF09XCIhZWRpdGFibGVcIj5cclxuICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiXCI+PC9vcHRpb24+PG9wdGlvbiAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIHBhcmFtZXRlci5vcHRpb25zXCIgW3ZhbHVlXT1cIm9wdGlvblwiPnt7IG9wdGlvbiB9fTwvb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICA8L3NlbGVjdD5cclxuICAgICAgICAgICAgICAgICAgPGlucHV0ICpuZ0lmPVwicGFyYW1ldGVyLnZhbHVlVHlwZSA9PT0gJ1RleHQnICYmICFwYXJhbWV0ZXIuY2FsY3VsYXRlZFwiIGNsYXNzPVwiZm9ybS1jb250cm9sIGZvcm0tY29udHJvbC1zbSB2YWx1ZS1pbnB1dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJtZWFzdXJlbWVudChyb3csIHBhcmFtZXRlcikudGV4dFwiIChuZ01vZGVsQ2hhbmdlKT1cImNoYW5nZWQocm93LCBwYXJhbWV0ZXIpXCIgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJwYXJhbWV0ZXIubmFtZVwiIC8+XHJcbiAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgIDx0ZD48aW5wdXQgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZm9ybS1jb250cm9sLXNtIHRhbmstaW5wdXRcIiBsaXN0PVwicXVhbGl0eVRhbmtzXCIgWyhuZ01vZGVsKV09XCJyb3cub3V0cHV0VGFua1wiIFtkaXNhYmxlZF09XCIhZWRpdGFibGVcIiBhcmlhLWxhYmVsPVwiQWt0YXLEsWxhbiB0YW5rXCIgLz48L3RkPlxyXG4gICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICA8dHIgY2xhc3M9XCJhdmVyYWdlLXJvd1wiPlxyXG4gICAgICAgICAgICAgIDx0aCBjb2xzcGFuPVwiM1wiPk9SVEFMQU1BPC90aD5cclxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBncm91cCBvZiBncm91cHNcIj5cclxuICAgICAgICAgICAgICAgIDx0ZCAqbmdGb3I9XCJsZXQgcGFyYW1ldGVyIG9mIGdyb3VwLnBhcmFtZXRlcnNcIj57eyBwYXJhbWV0ZXIudmFsdWVUeXBlID09PSAnTnVtYmVyJyA/IGF2ZXJhZ2UocGFyYW1ldGVyKSA6ICfigJQnIH19PC90ZD5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICA8dGQ+PC90ZD5cclxuICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgIDwvdGJvZHk+XHJcbiAgICAgICAgPC90YWJsZT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwicm93IG10LTNcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgIDxsYWJlbCBmb3I9XCJub3Rlc1wiPnt7IGFuYWx5c2lzLmZvcm1TbmFwc2hvdC5jb2RlID09PSAnRlI1MicgPyAnQcOnxLFrbGFtYSAvIEJpbGdpJyA6ICdOb3RsYXInIH19PC9sYWJlbD5cclxuICAgICAgICAgIDx0ZXh0YXJlYSBpZD1cIm5vdGVzXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiByb3dzPVwiM1wiIFsobmdNb2RlbCldPVwiYW5hbHlzaXMubm90ZXNcIiBbZGlzYWJsZWRdPVwiIWVkaXRhYmxlXCI+PC90ZXh0YXJlYT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgIDxsYWJlbCBmb3I9XCJyZWFzb25cIj5PbmF5IC8gZ2VyaSBhbG1hIGdlcmVrw6dlc2k8L2xhYmVsPlxyXG4gICAgICAgICAgPHRleHRhcmVhICNyZWFzb25JbnB1dCBpZD1cInJlYXNvblwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgcm93cz1cIjNcIiBbKG5nTW9kZWwpXT1cInJlYXNvblwiIChuZ01vZGVsQ2hhbmdlKT1cInJlYXNvbkVycm9yID0gJydcIlxyXG4gICAgICAgICAgICBbY2xhc3MuaXMtaW52YWxpZF09XCJyZWFzb25FcnJvclwiIFthdHRyLmFyaWEtaW52YWxpZF09XCIhIXJlYXNvbkVycm9yXCJcclxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImJ1c3kgfHwgYW5hbHlzaXMuc3RhdHVzID09PSAnTGFib3JhbnRTaWduZWQnXCI+PC90ZXh0YXJlYT5cclxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJyZWFzb25FcnJvclwiIGNsYXNzPVwiaW52YWxpZC1mZWVkYmFjayBkLWJsb2NrXCIgcm9sZT1cImFsZXJ0XCI+e3sgcmVhc29uRXJyb3IgfX08L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtdC0zIGQtZmxleCBmbGV4LXdyYXAgYWxpZ24taXRlbXMtY2VudGVyIGdhcC0yXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBtci0yIG1iLTJcIiAoY2xpY2spPVwic2F2ZSgpXCIgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZSB8fCBidXN5XCI+S2F5ZGV0PC9idXR0b24+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tb3V0bGluZS1wcmltYXJ5IG1yLTIgbWItMlwiICpuZ0lmPVwiYW5hbHlzaXMuc3RhdHVzID09PSAnRHJhZnQnICYmIGFsbG93ZWQoJ1NpZ24nKVwiXHJcbiAgICAgICAgICAoY2xpY2spPVwiZGVjaXNpb24oJ3NpZ24nKVwiIFtkaXNhYmxlZF09XCIhYW5hbHlzaXMucmV2aXNpb24gfHwgYnVzeVwiPkxhYm9yYW50IE9sYXJhayDEsG16YWxhPC9idXR0b24+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tb3V0bGluZS1wcmltYXJ5IG1yLTIgbWItMlwiICpuZ0lmPVwiYW5hbHlzaXMuc3RhdHVzID09PSAnTGFib3JhbnRTaWduZWQnICYmIGFsbG93ZWQoJ0NoZWNrJylcIlxyXG4gICAgICAgICAgKGNsaWNrKT1cImRlY2lzaW9uKCdjaGVjaycpXCIgW2Rpc2FibGVkXT1cImJ1c3lcIj5Nw7xoZW5kaXMgS29udHJvbMO8PC9idXR0b24+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tc3VjY2VzcyBtci0yIG1iLTJcIiAqbmdJZj1cImFuYWx5c2lzLnN0YXR1cyA9PT0gJ0NoZWNrZWQnICYmIGFsbG93ZWQoJ0FwcHJvdmUnKVwiXHJcbiAgICAgICAgICAoY2xpY2spPVwiZGVjaXNpb24oJ2FwcHJvdmUnKVwiIFtkaXNhYmxlZF09XCJidXN5XCI+U29uIE9uYXk8L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lLWRhbmdlciBtci0yIG1iLTJcIiAqbmdJZj1cImFuYWx5c2lzLnN0YXR1cyA9PT0gJ0FwcHJvdmVkJyAmJiBhbGxvd2VkKCdSZXZva2UnKVwiXHJcbiAgICAgICAgICAoY2xpY2spPVwiZGVjaXNpb24oJ3Jldm9rZScpXCIgW2Rpc2FibGVkXT1cImJ1c3lcIj5PbmF5xLEgR2VyaSBBbDwvYnV0dG9uPlxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwiaGFzT3V0T2ZMaW1pdFwiIGNsYXNzPVwidGV4dC1kYW5nZXIgbWItMlwiPkxpbWl0IGTEscWfxLEgw7Zsw6fDvG0gdmFyLiBTb24gb25heSBpw6dpbiBnZXJla8OnZSBnZXJla2xpLjwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtdC0zIHNtYWxsIHRleHQtbXV0ZWRcIj5cclxuICAgICAgICA8c3Bhbj5MYWJvcmFudDoge3sgYW5hbHlzaXMubGFib3JhbnQ/LnVzZXJOYW1lIHx8ICfigJQnIH19PC9zcGFuPiDCt1xyXG4gICAgICAgIDxzcGFuPk3DvGhlbmRpczoge3sgYW5hbHlzaXMuZW5naW5lZXI/LnVzZXJOYW1lIHx8ICfigJQnIH19PC9zcGFuPiDCt1xyXG4gICAgICAgIDxzcGFuPk9uYXlsYXlhbjoge3sgYW5hbHlzaXMuYXBwcm92ZXI/LnVzZXJOYW1lIHx8ICfigJQnIH19PC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRldGFpbHMgY2xhc3M9XCJtdC0zXCIgKm5nSWY9XCJhbmFseXNpcy5oaXN0b3J5Py5sZW5ndGhcIj5cclxuICAgICAgICA8c3VtbWFyeT7EsMWfbGVtIGdlw6dtacWfaTwvc3VtbWFyeT5cclxuICAgICAgICA8dWwgY2xhc3M9XCJtdC0yXCI+PGxpICpuZ0Zvcj1cImxldCBldmVudCBvZiBhbmFseXNpcy5oaXN0b3J5XCI+e3sgZXZlbnQuYWN0aW9uIH19IMK3IHt7IGV2ZW50LnVzZXJOYW1lIH19IMK3IHt7IGV2ZW50Lm9jY3VycmVkQXQgfCBkYXRlOidkZC5NTS55eXl5IEhIOm1tJyB9fTxzcGFuICpuZ0lmPVwiZXZlbnQucmVhc29uXCI+IMK3IHt7IGV2ZW50LnJlYXNvbiB9fTwvc3Bhbj48L2xpPjwvdWw+XHJcbiAgICAgIDwvZGV0YWlscz5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvZGl2PjwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjxkYXRhbGlzdCBpZD1cInF1YWxpdHlUYW5rc1wiPjxvcHRpb24gKm5nRm9yPVwibGV0IHRhbmsgb2YgdGFua3NcIiBbdmFsdWVdPVwidGFuay5jb2RlXCI+e3t0YW5rLm5hbWV9fTwvb3B0aW9uPjwvZGF0YWxpc3Q+XHJcbiJdfQ==
|