@csmart/ngc-smart-victim 1.13.11 → 1.14.2
Sign up to get free protection for your applications and to get access to all the features.
- package/esm2020/lib/caseNote/caseNote.component.mjs +21 -21
- package/esm2020/lib/common-dialog/common-dialog.component.mjs +6 -6
- package/esm2020/lib/common-dialog/common-dialog.module.mjs +9 -13
- package/esm2020/lib/common-dialog/common-dialog.service.mjs +4 -4
- package/esm2020/lib/contact/contact.component.mjs +22 -22
- package/esm2020/lib/email.services.mjs +4 -4
- package/esm2020/lib/intake.service.mjs +4 -4
- package/esm2020/lib/safetyPlan/serviceProvider.component.mjs +14 -30
- package/esm2020/lib/safetyPlan/victimSafetyPlan.component.mjs +7 -7
- package/esm2020/lib/safetyPlan/victimSafetyPlanDetail.component.mjs +23 -23
- package/esm2020/lib/shared/app.shared.module.mjs +32 -37
- package/esm2020/lib/shared/directives/phone-mask.directive.mjs +4 -4
- package/esm2020/lib/smart-victim-delete-confirm.component.mjs +7 -16
- package/esm2020/lib/smart-victim-detail/smart-victim-detail.component.mjs +78 -78
- package/esm2020/lib/smart-victim.component.mjs +17 -15
- package/esm2020/lib/smart-victim.module.mjs +8 -15
- package/esm2020/lib/smart-victim.service.mjs +4 -4
- package/esm2020/lib/victim-routing.module.mjs +5 -7
- package/esm2020/lib/victimSearch/victimSearchForm.component.mjs +8 -8
- package/fesm2015/csmart-ngc-smart-victim.mjs +252 -292
- package/fesm2015/csmart-ngc-smart-victim.mjs.map +1 -1
- package/fesm2020/csmart-ngc-smart-victim.mjs +251 -292
- package/fesm2020/csmart-ngc-smart-victim.mjs.map +1 -1
- package/lib/caseNote/caseNote.component.d.ts +4 -4
- package/lib/common-dialog/common-dialog.component.d.ts +1 -1
- package/lib/contact/contact.component.d.ts +3 -3
- package/lib/safetyPlan/serviceProvider.component.d.ts +4 -4
- package/lib/safetyPlan/victimSafetyPlan.component.d.ts +1 -1
- package/lib/safetyPlan/victimSafetyPlanDetail.component.d.ts +4 -4
- package/lib/shared/directives/phone-mask.directive.d.ts +1 -1
- package/lib/smart-victim-delete-confirm.component.d.ts +1 -1
- package/lib/smart-victim-detail/smart-victim-detail.component.d.ts +4 -4
- package/lib/smart-victim.component.d.ts +1 -1
- package/lib/victimSearch/victimSearchForm.component.d.ts +1 -1
- package/package.json +4 -12
- /package/{csmart-ngc-smart-victim.d.ts → index.d.ts} +0 -0
@@ -15,9 +15,9 @@ import * as i4 from "@angular/material/dialog";
|
|
15
15
|
import * as i5 from "@angular/router";
|
16
16
|
import * as i6 from "@angular/material/snack-bar";
|
17
17
|
import * as i7 from "@csmart/ngc-smart-core";
|
18
|
-
import * as i8 from "@angular/material/
|
19
|
-
import * as i9 from "@angular/material/
|
20
|
-
import * as i10 from "@angular/material/
|
18
|
+
import * as i8 from "@angular/material/button";
|
19
|
+
import * as i9 from "@angular/material/card";
|
20
|
+
import * as i10 from "@angular/material/toolbar";
|
21
21
|
import * as i11 from "@angular/material/table";
|
22
22
|
import * as i12 from "@angular/common";
|
23
23
|
export class VictimSafetyPlanComponent {
|
@@ -107,10 +107,10 @@ export class VictimSafetyPlanComponent {
|
|
107
107
|
this.router.navigate(['victimHome']);
|
108
108
|
}
|
109
109
|
}
|
110
|
-
/** @nocollapse */
|
111
|
-
/** @nocollapse */
|
112
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
110
|
+
/** @nocollapse */ VictimSafetyPlanComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: VictimSafetyPlanComponent, deps: [{ token: i1.NgcSmartVictimService }, { token: i2.CommonDialogService }, { token: i3.HttpClient }, { token: i4.MatDialog }, { token: i5.ActivatedRoute }, { token: i5.Router }, { token: i6.MatSnackBar }, { token: i7.SmartAuthService }], target: i0.ɵɵFactoryTarget.Component });
|
111
|
+
/** @nocollapse */ VictimSafetyPlanComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: VictimSafetyPlanComponent, selector: "ng-component", providers: [CommonDialogService], ngImport: i0, template: "\r\n <mat-card>\r\n <mat-card-header>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <mat-toolbar color=\"primary\">\r\n <h4 class=\"card-header\" style=\"display: inline-block;\">Safety Plan</h4>\r\n </mat-toolbar>\r\n <br>\r\n <button mat-raised-button color=\"primary\" (click)=\"goToSafetyPlanDetail(0)\" >Add Goal</button>\r\n <button mat-raised-button color=\"primary\" (click)=\"back()\">Back</button>\r\n <br>\r\n <br>\r\n <mat-table #table [dataSource]=\"safetyPlanDataSource\" class=\"example-table\">\r\n <ng-container matColumnDef=\"startDate\">\r\n <mat-header-cell *matHeaderCellDef class=\"example-header-cell\">Start Date</mat-header-cell>\r\n <mat-cell *matCellDef=\"let row\" class=\"example-cell\"> {{row.startDate | date}} </mat-cell>\r\n </ng-container>\r\n <ng-container matColumnDef=\"goal\">\r\n <mat-header-cell *matHeaderCellDef class=\"example-header-cell\">Goal</mat-header-cell>\r\n <mat-cell *matCellDef=\"let row\" class=\"example-cell\"> {{row.goal }} </mat-cell>\r\n </ng-container>\r\n <ng-container matColumnDef=\"victimServiceStatus\">\r\n <mat-header-cell *matHeaderCellDef class=\"example-header-cell\">Status</mat-header-cell>\r\n <mat-cell *matCellDef=\"let row\" class=\"example-cell\"> {{row.victimServiceStatus }} </mat-cell>\r\n </ng-container>\r\n <ng-container matColumnDef=\"comment\">\r\n <mat-header-cell *matHeaderCellDef class=\"example-header-cell\">Comment</mat-header-cell>\r\n <mat-cell *matCellDef=\"let row\" class=\"example-cell\"> {{row.comment }} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"victimServiceId\">\r\n <mat-header-cell *matHeaderCellDef class=\"example-header-cell\"></mat-header-cell>\r\n <!-- <mat-cell *matCellDef=\"let row\" class=\"example-cell\">\r\n <button type=\"button\" mat-raised-button color=\"primary\" (click)=\"goToSafetyPlanDetail(row.victimServiceId)\"> \r\n <span class=\"glyphicon glyphicon-pencil\" ></span> \r\n <mat-icon>edit</mat-icon> \r\n </button> \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n \r\n <button type=\"button\" mat-raised-button color=\"primary\" (click)=\"onDeleteSafetyPlan(row.victimServiceId)\"> \r\n <span class=\"glyphicon glyphicon-trash\" ></span> Delete\r\n </button> \r\n </mat-cell> -->\r\n\r\n <mat-cell *matCellDef=\"let element\">\r\n \r\n <button class=\"edit-btn\" mat-icon-button color=\"primary\" matTooltip=\"Edit Safety Plan\" (click)=\"goToSafetyPlanDetail(element.victimServiceId)\">\r\n <i class=\"material-icons\">mode_edit</i>\r\n </button>\r\n\r\n \r\n \r\n <button\r\n class=\"delete-btn\"\r\n matTooltip=\"Delete Safety Plan\"\r\n mat-icon-button\r\n color=\"primary\"\r\n (click)=\"onDeleteSafetyPlan(element.victimServiceId)\">\r\n <i class=\"material-icons\">delete</i>\r\n </button>\r\n\r\n\r\n\r\n\r\n \r\n </mat-cell>\r\n\r\n \r\n \r\n </ng-container>\r\n\r\n <mat-header-row *matHeaderRowDef=\"['startDate', 'goal', 'victimServiceStatus', 'comment', 'victimServiceId']\" class=\"example-header-row\"></mat-header-row>\r\n <mat-row *matRowDef=\"let row; columns:['startDate', 'goal', 'victimServiceStatus', 'comment', 'victimServiceId'];\" class=\"example-row\"></mat-row>\r\n </mat-table>\r\n \r\n \r\n</mat-card-content>\r\n</mat-card>", dependencies: [{ kind: "component", type: i8.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i9.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "component", type: i9.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i9.MatCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { kind: "component", type: i10.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i11.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i11.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i11.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i11.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i11.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i11.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i11.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i11.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i11.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i11.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "pipe", type: i12.DatePipe, name: "date" }] });
|
112
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: VictimSafetyPlanComponent, decorators: [{
|
113
113
|
type: Component,
|
114
114
|
args: [{ providers: [CommonDialogService], template: "\r\n <mat-card>\r\n <mat-card-header>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <mat-toolbar color=\"primary\">\r\n <h4 class=\"card-header\" style=\"display: inline-block;\">Safety Plan</h4>\r\n </mat-toolbar>\r\n <br>\r\n <button mat-raised-button color=\"primary\" (click)=\"goToSafetyPlanDetail(0)\" >Add Goal</button>\r\n <button mat-raised-button color=\"primary\" (click)=\"back()\">Back</button>\r\n <br>\r\n <br>\r\n <mat-table #table [dataSource]=\"safetyPlanDataSource\" class=\"example-table\">\r\n <ng-container matColumnDef=\"startDate\">\r\n <mat-header-cell *matHeaderCellDef class=\"example-header-cell\">Start Date</mat-header-cell>\r\n <mat-cell *matCellDef=\"let row\" class=\"example-cell\"> {{row.startDate | date}} </mat-cell>\r\n </ng-container>\r\n <ng-container matColumnDef=\"goal\">\r\n <mat-header-cell *matHeaderCellDef class=\"example-header-cell\">Goal</mat-header-cell>\r\n <mat-cell *matCellDef=\"let row\" class=\"example-cell\"> {{row.goal }} </mat-cell>\r\n </ng-container>\r\n <ng-container matColumnDef=\"victimServiceStatus\">\r\n <mat-header-cell *matHeaderCellDef class=\"example-header-cell\">Status</mat-header-cell>\r\n <mat-cell *matCellDef=\"let row\" class=\"example-cell\"> {{row.victimServiceStatus }} </mat-cell>\r\n </ng-container>\r\n <ng-container matColumnDef=\"comment\">\r\n <mat-header-cell *matHeaderCellDef class=\"example-header-cell\">Comment</mat-header-cell>\r\n <mat-cell *matCellDef=\"let row\" class=\"example-cell\"> {{row.comment }} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"victimServiceId\">\r\n <mat-header-cell *matHeaderCellDef class=\"example-header-cell\"></mat-header-cell>\r\n <!-- <mat-cell *matCellDef=\"let row\" class=\"example-cell\">\r\n <button type=\"button\" mat-raised-button color=\"primary\" (click)=\"goToSafetyPlanDetail(row.victimServiceId)\"> \r\n <span class=\"glyphicon glyphicon-pencil\" ></span> \r\n <mat-icon>edit</mat-icon> \r\n </button> \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n \r\n <button type=\"button\" mat-raised-button color=\"primary\" (click)=\"onDeleteSafetyPlan(row.victimServiceId)\"> \r\n <span class=\"glyphicon glyphicon-trash\" ></span> Delete\r\n </button> \r\n </mat-cell> -->\r\n\r\n <mat-cell *matCellDef=\"let element\">\r\n \r\n <button class=\"edit-btn\" mat-icon-button color=\"primary\" matTooltip=\"Edit Safety Plan\" (click)=\"goToSafetyPlanDetail(element.victimServiceId)\">\r\n <i class=\"material-icons\">mode_edit</i>\r\n </button>\r\n\r\n \r\n \r\n <button\r\n class=\"delete-btn\"\r\n matTooltip=\"Delete Safety Plan\"\r\n mat-icon-button\r\n color=\"primary\"\r\n (click)=\"onDeleteSafetyPlan(element.victimServiceId)\">\r\n <i class=\"material-icons\">delete</i>\r\n </button>\r\n\r\n\r\n\r\n\r\n \r\n </mat-cell>\r\n\r\n \r\n \r\n </ng-container>\r\n\r\n <mat-header-row *matHeaderRowDef=\"['startDate', 'goal', 'victimServiceStatus', 'comment', 'victimServiceId']\" class=\"example-header-row\"></mat-header-row>\r\n <mat-row *matRowDef=\"let row; columns:['startDate', 'goal', 'victimServiceStatus', 'comment', 'victimServiceId'];\" class=\"example-row\"></mat-row>\r\n </mat-table>\r\n \r\n \r\n</mat-card-content>\r\n</mat-card>" }]
|
115
115
|
}], ctorParameters: function () { return [{ type: i1.NgcSmartVictimService }, { type: i2.CommonDialogService }, { type: i3.HttpClient }, { type: i4.MatDialog }, { type: i5.ActivatedRoute }, { type: i5.Router }, { type: i6.MatSnackBar }, { type: i7.SmartAuthService }]; } });
|
116
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmljdGltU2FmZXR5UGxhbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ2Mtc21hcnQtdmljdGltL3NyYy9saWIvc2FmZXR5UGxhbi92aWN0aW1TYWZldHlQbGFuLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nYy1zbWFydC12aWN0aW0vc3JjL2xpYi9zYWZldHlQbGFuL3ZpY3RpbVNhZmV0eVBsYW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBK0IsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHaEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxtQkFBbUIsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUlsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzdELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFPMUQsTUFBTSxPQUFPLHlCQUF5QjtJQTRCcEMsWUFFVSx3QkFBK0MsRUFDL0MsbUJBQXdDLEVBQ3hDLElBQWdCLEVBQ2pCLE1BQWlCLEVBQ2hCLEtBQXFCLEVBQ3JCLE1BQWMsRUFDZixRQUFxQixFQUNwQixnQkFBa0M7UUFQbEMsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUF1QjtRQUMvQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hD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LENBQUMsRUFBRTtZQUFFLElBQUksQ0FBQyxNQUFNLEdBQUksR0FBRyxDQUFDO1lBQ2xDLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFFYixJQUFJLENBQUMsd0JBQXdCLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxFQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7cUJBQzFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRTtvQkFFbkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsbUNBQW1DLEVBQUUsRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksR0FBRSxDQUFDLENBQUM7b0JBRWhGLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFNBQVMsQ0FDbkUsaUJBQWlCLENBQUMsRUFBRTt3QkFDbEIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO3dCQUMzQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztvQkFDMUQsQ0FBQyxDQUNGLENBQUM7Z0JBRUQsQ0FBQyxDQUNGLENBQUM7YUFJTjtRQUVKLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUVELElBQUk7UUFDRixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7SUFFdkMsQ0FBQzs7NEpBdEpVLHlCQUF5QjtnSkFBekIseUJBQXlCLHVDQUh6QixDQUFDLG1CQUFtQixDQUFDLDBCQ2pCbEMseS9JQW9GVzsyRkRoRUUseUJBQXlCO2tCQUxyQyxTQUFTO2dDQUVHLENBQUMsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCxJbmplY3QsQWZ0ZXJWaWV3SW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOZ2NTbWFydFZpY3RpbVNlcnZpY2UgfSBmcm9tICcuLi9zbWFydC12aWN0aW0uc2VydmljZSc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIEZvcm1CdWlsZGVyIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBWaWN0aW1TYWZldHlQbGFuLFZpY3RpbVNlcnZpY2VEZXRhaWwsVmljdGltU2VydmljZVN0YXR1c0hpc3RvcnkgfSBmcm9tICcuLi9zbWFydC12aWN0aW0ubW9kZWwnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBDb21tb25EaWFsb2dTZXJ2aWNlfSBmcm9tICcuLi8uL2NvbW1vbi1kaWFsb2cvY29tbW9uLWRpYWxvZy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG4vL2ltcG9ydCB7IFZpY3RpbVNhZmV0eVBsYW5EZXRhaWxDb21wb25lbnQgfSBmcm9tICcuL3ZpY3RpbVNhZmV0eVBsYW5EZXRhaWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2VsZWN0ZWRPZmZlbmRlciwgTG9naW5TdGFmZiB9IGZyb20gJ0Bjc21hcnQvbmdjLXNtYXJ0LWNvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIsIEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgU21hcnRBdXRoU2VydmljZSB9IGZyb20gJ0Bjc21hcnQvbmdjLXNtYXJ0LWNvcmUnO1xyXG5pbXBvcnQgeyBNYXRUYWJsZURhdGFTb3VyY2UgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XHJcbmltcG9ydCB7IE1hdFNuYWNrQmFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlVXJsOiAnLi92aWN0aW1TYWZldHlQbGFuLmNvbXBvbmVudC5odG1sJyxcclxuICBwcm92aWRlcnM6IFtDb21tb25EaWFsb2dTZXJ2aWNlXVxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIFZpY3RpbVNhZmV0eVBsYW5Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgLy9zZWxlY3RlZE9mZmVuZGVyOiBTZWxlY3RlZE9mZmVuZGVyO1xyXG4gIGxvZ2luU3RhZmY6IExvZ2luU3RhZmY7XHJcbiAgb2ZmZW5kZXJJZDogbnVtYmVyO1xyXG5cclxuXHJcbiAgaGlkZGVuRGV0YWlsRmxhZzpib29sZWFuO1xyXG4gIGhpZGRlbkFkZE5ld0ZsYWc6IGJvb2xlYW47XHJcbiAgc2FmZXR5UGxhbnM6IFZpY3RpbVNhZmV0eVBsYW5bXTtcclxuICBzYWZldHlQbGFuOiBWaWN0aW1TYWZldHlQbGFuO1xyXG4gIGVkaXRTYWZldHlQbGFuOiBWaWN0aW1TYWZldHlQbGFuID0gPFZpY3RpbVNhZmV0eVBsYW4+e307XHJcbiAgZXJyb3JNZXNzYWdlOiBzdHJpbmc7XHJcbiAgY29udGFjdFR5cGVzOiBhbnlbXTtcclxuICBjb250YWN0UHVycG9zZXM6IGFueVtdO1xyXG4gIHZpY3RpbVNlcnZpY2VUeXBlczogYW55W107XHJcbiAgdmljdGltU2FmZXR5UGxhbnM6IFZpY3RpbVNhZmV0eVBsYW5bXTtcclxuICB2aWN0aW1TZXJ2aWNlU3RhdHVzOiBhbnlbXTtcclxuICB2aWN0aW1TZXJ2aWNlU3RhdHVzSGlzdG9yaWVzOiBWaWN0aW1TZXJ2aWNlU3RhdHVzSGlzdG9yeVtdO1xyXG4gIHF1ZXJ5U3RyaW5nOiBzdHJpbmc7XHJcbiAgdmljdGltU2VydmljZURldGFpbDogVmljdGltU2VydmljZURldGFpbFtdO1xyXG4gIG15VmljdGltU2VydmljZUlkOiBudW1iZXI7XHJcbiAgcmVzdWx0OiBhbnk7XHJcbiAgdmljdGltTmFtZTogc3RyaW5nO1xyXG4gIHN0YWZmSWQ6IG51bWJlcjtcclxuICB2aWN0aW1JZDogbnVtYmVyO1xyXG4gIHByaXZhdGUgc3ViOiBhbnk7XHJcbiAgc2FmZXR5UGxhbkRhdGFTb3VyY2UgPSBuZXcgIE1hdFRhYmxlRGF0YVNvdXJjZSgpO1xyXG4gXHJcbiAgY29uc3RydWN0b3IoXHJcbiBcclxuICAgIHByaXZhdGUgX3ZpY3RpbVNlcnZpY2VzQ29tcG9uZW50OiBOZ2NTbWFydFZpY3RpbVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNvbW1vbkRpYWxvZ1NlcnZpY2U6IENvbW1vbkRpYWxvZ1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXHJcbiAgICBwdWJsaWMgZGlhbG9nOiBNYXREaWFsb2csXHJcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwdWJsaWMgc25hY2tCYXI6IE1hdFNuYWNrQmFyLFxyXG4gICAgcHJpdmF0ZSBzbWFydEF1dGhTZXJ2aWNlOiBTbWFydEF1dGhTZXJ2aWNlLFxyXG4gICAgIFxyXG4gICkge1xyXG4gICAgXHJcblxyXG4gICB9XHJcbiAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMuc21hcnRBdXRoU2VydmljZS5zZXRQZXJtaXNzaW9uKCdWaWN0aW0nLCB0aGlzLnJvdXRlLnNuYXBzaG90KTtcclxuICB9XHJcbiBcclxuICBuZ09uSW5pdCgpIHtcclxuXHJcbiAgICB2YXIgZGF0YSA9IHRoaXMucm91dGUuc25hcHNob3QuZGF0YTtcclxuICAgIHRoaXMubG9naW5TdGFmZiA9IGRhdGEubG9naW5TdGFmZjtcclxuICAgIHRoaXMuc3RhZmZJZCA9ICB0aGlzLmxvZ2luU3RhZmYuc3RhZmZJZDtcclxuXHJcbiAgICB0aGlzLnN1YiA9IHRoaXMucm91dGUucGFyYW1zLnN1YnNjcmliZShwYXJhbXMgPT4ge1xyXG4gICAgICB0aGlzLnZpY3RpbUlkID0gcGFyYW1zWyd2aWN0aW1JZCddO1xyXG5cclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuaGlkZGVuQWRkTmV3RmxhZyA9IGZhbHNlO1xyXG4gICAgdGhpcy52aWN0aW1OYW1lPSB0aGlzLnZpY3RpbU5hbWU7XHJcbiAgXHJcbiAgICB0aGlzLl92aWN0aW1TZXJ2aWNlc0NvbXBvbmVudC5nZXRTYWZldHlQbGFucyh0aGlzLnZpY3RpbUlkKS5zdWJzY3JpYmUoXHJcbiAgICAgIHZpY3RpbVNhZmV0eVBsYW5zID0+IHtcclxuICAgICAgICB0aGlzLnZpY3RpbVNhZmV0eVBsYW5zID0gdmljdGltU2FmZXR5UGxhbnM7IFxyXG4gICAgICAgIHRoaXMuc2FmZXR5UGxhbkRhdGFTb3VyY2UuZGF0YSA9IHRoaXMudmljdGltU2FmZXR5UGxhbnM7XHJcbiAgICAgICAgY29uc29sZS5sb2coJ3RoaXMudmljdGltU2FmZXR5UGxhbnMnKTtcclxuICAgICAgICBjb25zb2xlLmxvZyh0aGlzLnZpY3RpbVNhZmV0eVBsYW5zKTtcclxuXHJcbiAgXHJcbiAgICAgIH1cclxuICAgICk7XHJcblxyXG4gICAgIFxyXG4gICAgLy8gIHRoaXMubXlWaWN0aW1TZXJ2aWNlSWQgPTE7XHJcbiAgICAvLyB0aGlzLl92aWN0aW1TZXJ2aWNlc0NvbXBvbmVudC5nZXRWaWN0aW1TZXJ2aWNlRGV0YWlsKHRoaXMubXlWaWN0aW1TZXJ2aWNlSWQpLnN1YnNjcmliZShcclxuICAgIC8vICAgdmljdGltU2VydmljZURldGFpbCA9PiB7XHJcbiAgICAvLyAgICAgdGhpcy52aWN0aW1TZXJ2aWNlRGV0YWlsID0gdmljdGltU2VydmljZURldGFpbDtcclxuICAgIC8vICAgICBjb25zb2xlLmxvZygnc2VydmljZSBkZXRhaWwnKTtcclxuICAgIC8vICAgICBjb25zb2xlLmxvZyh0aGlzLnZpY3RpbVNlcnZpY2VEZXRhaWwpOyBcclxuICAgIC8vICAgfVxyXG4gICAgLy8gKTtcclxuXHJcbiAgICB0aGlzLl92aWN0aW1TZXJ2aWNlc0NvbXBvbmVudC5nZXRTZXJ2aWNlU3RhdHVzSGlzdG9yaWVzKDEpLnN1YnNjcmliZShcclxuICAgICAgdmljdGltU2VydmljZVN0YXR1c0hpc3RvcmllcyA9PiB7XHJcbiAgICAgICAvLyB0aGlzLnZpY3RpbVNlcnZpY2VTdGF0dXNIaXN0b3JpZXMgPSB2aWN0aW1TZXJ2aWNlU3RhdHVzSGlzdG9yaWVzOyBcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcbiAgXHJcbi8vLS0tLS0tLS0tLS0tLS0tZ3JhcGhRTC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vICAgZ2V0VmljdGltU2VydmljZVR5cGVQcm9ncmFtUHJvdmlkZXJzKCk6IE9ic2VydmFibGU8VmljdGltU2VydmljZVR5cGVQcm9ncmFtUHJvdmlkZXJNb2RlbFtdPiB7XHJcbi8vICAgICBjb25zdCBxdWVyeVN0cmluZyA9IGBcclxuLy8gICAgICAgICB7XHJcbi8vICAgICAgICAgICBmaW5kVmljdGltU2VydmljZVR5cGVQcm9ncmFtUHJvdmlkZXJzIHtcclxuLy8gICAgICAgICAgICAgICAgIGRhdGEge1xyXG4vLyAgICAgICAgICAgICAgICAgICB2aWN0aW1TZXJ2aWNlVHlwZVByb2dyYW1Qcm92aWRlcklkXHJcbi8vICAgICAgICAgICAgICAgICAgIHZpY3RpbVNlcnZpY2VUeXBlXHJcbi8vICAgICAgICAgICAgICAgICAgIHZpY3RpbVByb2dyYW1Qcm92aWRlclxyXG4vLyAgICAgICAgICAgICAgICAgfVxyXG4vLyAgICAgICAgICAgICAgIH1cclxuLy8gICAgICAgICB9YDtcclxuXHJcbiBcclxuLy8gICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxhbnk+KGVudmlyb25tZW50LnNtYXJ0QXBpVXJsLCB7IHF1ZXJ5OiBxdWVyeVN0cmluZyB9KVxyXG4vLyAgICAgICAgIC5tYXAocmVzdWx0ID0+IHtcclxuLy8gICAgICAgICByZXR1cm4gcmVzdWx0LmRhdGEuZmluZFZpY3RpbVNlcnZpY2VUeXBlUHJvZ3JhbVByb3ZpZGVycy5kYXRhO1xyXG4vLyAgICAgfSk7XHJcbi8vIH1cclxuXHJcbiAgZ29Ub1NhZmV0eVBsYW5EZXRhaWwodmljdGltU2VydmljZUlkOiBudW1iZXIpe1xyXG4gIFxyXG4gICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJ3NhZnR5UGxhbkRldGFpbCcsIHZpY3RpbVNlcnZpY2VJZCwgIHRoaXMudmljdGltSWQgXSk7IFxyXG5cclxuICB9XHJcbiAgb25BZGROZXcoKXtcclxuICAgIHRoaXMuaGlkZGVuRGV0YWlsRmxhZyA9IGZhbHNlO1xyXG5cclxuICB9XHJcbiAgb25EZWxldGVTYWZldHlQbGFuKHZpY3RpbVNlcnZpY2VJZDogbnVtYmVyKXtcclxuXHJcbiAgICB0aGlzLmNvbW1vbkRpYWxvZ1NlcnZpY2VcclxuICAgIC5jb25maXJtKCcnLCAnRG8geW91IHdhbnQgdG8gZGVsZXRlIHRoaXMgc2FmZXR5IHBsYW4/JywgJ1llcycsICdObycpXHJcbiAgICAuc3Vic2NyaWJlKHJlcyA9PiB7dGhpcy5yZXN1bHQgPSAgcmVzO1xyXG4gICAgICAgIGlmICh0aGlzLnJlc3VsdCkge1xyXG5cclxuICAgICAgICAgICAgdGhpcy5fdmljdGltU2VydmljZXNDb21wb25lbnQuZGVsZXRlU2FmZXR5UGxhbih2aWN0aW1TZXJ2aWNlSWQsdGhpcy5zdGFmZklkKVxyXG4gICAgICAgICAgICAgLnN1YnNjcmliZShyZXN1bHQgPT4ge1xyXG5cclxuICAgICAgICAgICAgICB0aGlzLnNuYWNrQmFyLm9wZW4oJ2RlbGV0ZSBzYWZldHkgcGxhbiBTdWNjZXNzZnVsbHkgIScsICcnLCB7IGR1cmF0aW9uOiAzMDAwLH0pO1xyXG5cclxuICAgICAgICAgICAgICB0aGlzLl92aWN0aW1TZXJ2aWNlc0NvbXBvbmVudC5nZXRTYWZldHlQbGFucyh0aGlzLnZpY3RpbUlkKS5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgICAgICB2aWN0aW1TYWZldHlQbGFucyA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMudmljdGltU2FmZXR5UGxhbnMgPSB2aWN0aW1TYWZldHlQbGFuczsgXHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuc2FmZXR5UGxhbkRhdGFTb3VyY2UuZGF0YSA9IHRoaXMudmljdGltU2FmZXR5UGxhbnM7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgKTtcclxuICAgIFxyXG4gICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICBcclxuXHJcblxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBiYWNrKCl7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJ3ZpY3RpbUhvbWUnXSk7XHJcbiAgXHJcbiAgfVxyXG5cclxuXHJcblxyXG5cclxuXHJcbn1cclxuXHJcbiIsIlxyXG4gPG1hdC1jYXJkPlxyXG4gICAgICAgIDxtYXQtY2FyZC1oZWFkZXI+XHJcbiAgICAgICAgPC9tYXQtY2FyZC1oZWFkZXI+XHJcbiAgICAgICAgIDxtYXQtY2FyZC1jb250ZW50PlxyXG4gICAgICAgICAgICAgICAgPG1hdC10b29sYmFyICBjb2xvcj1cInByaW1hcnlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPVwiY2FyZC1oZWFkZXJcIiBzdHlsZT1cImRpc3BsYXk6IGlubGluZS1ibG9jaztcIj5TYWZldHkgUGxhbjwvaDQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9tYXQtdG9vbGJhcj5cclxuICAgICAgICA8YnI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwiZ29Ub1NhZmV0eVBsYW5EZXRhaWwoMClcIiA+QWRkIEdvYWw8L2J1dHRvbj5cclxuICAgICAgICAmbmJzcDsmbmJzcDs8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiICAoY2xpY2spPVwiYmFjaygpXCI+QmFjazwvYnV0dG9uPlxyXG4gICAgICAgIDxicj5cclxuICAgICAgICA8YnI+XHJcbiAgICAgICAgPG1hdC10YWJsZSAjdGFibGUgW2RhdGFTb3VyY2VdPVwic2FmZXR5UGxhbkRhdGFTb3VyY2VcIiBjbGFzcz1cImV4YW1wbGUtdGFibGVcIj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwic3RhcnREYXRlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBjbGFzcz1cImV4YW1wbGUtaGVhZGVyLWNlbGxcIj5TdGFydCBEYXRlPC9tYXQtaGVhZGVyLWNlbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgPG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IHJvd1wiIGNsYXNzPVwiZXhhbXBsZS1jZWxsXCI+IHt7cm93LnN0YXJ0RGF0ZSB8IGRhdGV9fSA8L21hdC1jZWxsPlxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImdvYWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBjbGFzcz1cImV4YW1wbGUtaGVhZGVyLWNlbGxcIj5Hb2FsPC9tYXQtaGVhZGVyLWNlbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCByb3dcIiBjbGFzcz1cImV4YW1wbGUtY2VsbFwiPiB7e3Jvdy5nb2FsIH19IDwvbWF0LWNlbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJ2aWN0aW1TZXJ2aWNlU3RhdHVzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgY2xhc3M9XCJleGFtcGxlLWhlYWRlci1jZWxsXCI+U3RhdHVzPC9tYXQtaGVhZGVyLWNlbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCByb3dcIiBjbGFzcz1cImV4YW1wbGUtY2VsbFwiPiB7e3Jvdy52aWN0aW1TZXJ2aWNlU3RhdHVzIH19IDwvbWF0LWNlbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJjb21tZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgY2xhc3M9XCJleGFtcGxlLWhlYWRlci1jZWxsXCI+Q29tbWVudDwvbWF0LWhlYWRlci1jZWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgcm93XCIgY2xhc3M9XCJleGFtcGxlLWNlbGxcIj4ge3tyb3cuY29tbWVudCB9fSA8L21hdC1jZWxsPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwidmljdGltU2VydmljZUlkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgY2xhc3M9XCJleGFtcGxlLWhlYWRlci1jZWxsXCI+PC9tYXQtaGVhZGVyLWNlbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSA8bWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgcm93XCIgY2xhc3M9XCJleGFtcGxlLWNlbGxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cImdvVG9TYWZldHlQbGFuRGV0YWlsKHJvdy52aWN0aW1TZXJ2aWNlSWQpXCI+ICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ2x5cGhpY29uIGdseXBoaWNvbi1wZW5jaWxcIiA+PC9zcGFuPiZuYnNwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24+ZWRpdDwvbWF0LWljb24+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICBcclxuXHJcblxyXG5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmbmJzcDsmbmJzcDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cIm9uRGVsZXRlU2FmZXR5UGxhbihyb3cudmljdGltU2VydmljZUlkKVwiPiAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnbHlwaGljb24gZ2x5cGhpY29uLXRyYXNoXCIgPjwvc3Bhbj4mbmJzcDtEZWxldGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+IFxyXG4gICAgICAgICAgICAgICAgICAgIDwvbWF0LWNlbGw+IC0tPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8bWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgZWxlbWVudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImVkaXQtYnRuXCIgIG1hdC1pY29uLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAgbWF0VG9vbHRpcD1cIkVkaXQgU2FmZXR5IFBsYW5cIiAoY2xpY2spPVwiZ29Ub1NhZmV0eVBsYW5EZXRhaWwoZWxlbWVudC52aWN0aW1TZXJ2aWNlSWQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJtYXRlcmlhbC1pY29uc1wiPm1vZGVfZWRpdDwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICZuYnNwOyZuYnNwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkZWxldGUtYnRuXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJEZWxldGUgU2FmZXR5IFBsYW5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uRGVsZXRlU2FmZXR5UGxhbihlbGVtZW50LnZpY3RpbVNlcnZpY2VJZClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnNcIj5kZWxldGU8L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcblxyXG5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICA8L21hdC1jZWxsPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgICAgICAgICAgPG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJbJ3N0YXJ0RGF0ZScsICdnb2FsJywgJ3ZpY3RpbVNlcnZpY2VTdGF0dXMnLCAnY29tbWVudCcsICd2aWN0aW1TZXJ2aWNlSWQnXVwiIGNsYXNzPVwiZXhhbXBsZS1oZWFkZXItcm93XCI+PC9tYXQtaGVhZGVyLXJvdz5cclxuICAgICAgICAgICAgICAgIDxtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOlsnc3RhcnREYXRlJywgJ2dvYWwnLCAndmljdGltU2VydmljZVN0YXR1cycsICdjb21tZW50JywgJ3ZpY3RpbVNlcnZpY2VJZCddO1wiIGNsYXNzPVwiZXhhbXBsZS1yb3dcIj48L21hdC1yb3c+XHJcbiAgICAgICAgICAgICAgICA8L21hdC10YWJsZT5cclxuICAgICAgICAgICAgICAgXHJcbiAgICAgICBcclxuPC9tYXQtY2FyZC1jb250ZW50PlxyXG48L21hdC1jYXJkPiJdfQ==
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmljdGltU2FmZXR5UGxhbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ2Mtc21hcnQtdmljdGltL3NyYy9saWIvc2FmZXR5UGxhbi92aWN0aW1TYWZldHlQbGFuLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nYy1zbWFydC12aWN0aW0vc3JjL2xpYi9zYWZldHlQbGFuL3ZpY3RpbVNhZmV0eVBsYW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBK0IsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHaEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxtQkFBbUIsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUlsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzdELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFPMUQsTUFBTSxPQUFPLHlCQUF5QjtJQTRCcEMsWUFFVSx3QkFBK0MsRUFDL0MsbUJBQXdDLEVBQ3hDLElBQWdCLEVBQ2pCLE1BQWlCLEVBQ2hCLEtBQXFCLEVBQ3JCLE1BQWMsRUFDZixRQUFxQixFQUNwQixnQkFBa0M7UUFQbEMsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUF1QjtRQUMvQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hD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LENBQUMsRUFBRTtZQUFFLElBQUksQ0FBQyxNQUFNLEdBQUksR0FBRyxDQUFDO1lBQ2xDLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFFYixJQUFJLENBQUMsd0JBQXdCLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxFQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7cUJBQzFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRTtvQkFFbkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsbUNBQW1DLEVBQUUsRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksR0FBRSxDQUFDLENBQUM7b0JBRWhGLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFNBQVMsQ0FDbkUsaUJBQWlCLENBQUMsRUFBRTt3QkFDbEIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO3dCQUMzQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztvQkFDMUQsQ0FBQyxDQUNGLENBQUM7Z0JBRUQsQ0FBQyxDQUNGLENBQUM7YUFJTjtRQUVKLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUVELElBQUk7UUFDRixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7SUFFdkMsQ0FBQzs7eUlBdEpVLHlCQUF5Qjs2SEFBekIseUJBQXlCLHVDQUh6QixDQUFDLG1CQUFtQixDQUFDLDBCQ2pCbEMseS9JQW9GVzsyRkRoRUUseUJBQXlCO2tCQUxyQyxTQUFTO2dDQUVHLENBQUMsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCxJbmplY3QsQWZ0ZXJWaWV3SW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOZ2NTbWFydFZpY3RpbVNlcnZpY2UgfSBmcm9tICcuLi9zbWFydC12aWN0aW0uc2VydmljZSc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIEZvcm1CdWlsZGVyIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBWaWN0aW1TYWZldHlQbGFuLFZpY3RpbVNlcnZpY2VEZXRhaWwsVmljdGltU2VydmljZVN0YXR1c0hpc3RvcnkgfSBmcm9tICcuLi9zbWFydC12aWN0aW0ubW9kZWwnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBDb21tb25EaWFsb2dTZXJ2aWNlfSBmcm9tICcuLi8uL2NvbW1vbi1kaWFsb2cvY29tbW9uLWRpYWxvZy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG4vL2ltcG9ydCB7IFZpY3RpbVNhZmV0eVBsYW5EZXRhaWxDb21wb25lbnQgfSBmcm9tICcuL3ZpY3RpbVNhZmV0eVBsYW5EZXRhaWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2VsZWN0ZWRPZmZlbmRlciwgTG9naW5TdGFmZiB9IGZyb20gJ0Bjc21hcnQvbmdjLXNtYXJ0LWNvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIsIEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgU21hcnRBdXRoU2VydmljZSB9IGZyb20gJ0Bjc21hcnQvbmdjLXNtYXJ0LWNvcmUnO1xyXG5pbXBvcnQgeyBNYXRUYWJsZURhdGFTb3VyY2UgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XHJcbmltcG9ydCB7IE1hdFNuYWNrQmFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlVXJsOiAnLi92aWN0aW1TYWZldHlQbGFuLmNvbXBvbmVudC5odG1sJyxcclxuICBwcm92aWRlcnM6IFtDb21tb25EaWFsb2dTZXJ2aWNlXVxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIFZpY3RpbVNhZmV0eVBsYW5Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgLy9zZWxlY3RlZE9mZmVuZGVyOiBTZWxlY3RlZE9mZmVuZGVyO1xyXG4gIGxvZ2luU3RhZmY6IExvZ2luU3RhZmY7XHJcbiAgb2ZmZW5kZXJJZDogbnVtYmVyO1xyXG5cclxuXHJcbiAgaGlkZGVuRGV0YWlsRmxhZzpib29sZWFuO1xyXG4gIGhpZGRlbkFkZE5ld0ZsYWc6IGJvb2xlYW47XHJcbiAgc2FmZXR5UGxhbnM6IFZpY3RpbVNhZmV0eVBsYW5bXTtcclxuICBzYWZldHlQbGFuOiBWaWN0aW1TYWZldHlQbGFuO1xyXG4gIGVkaXRTYWZldHlQbGFuOiBWaWN0aW1TYWZldHlQbGFuID0gPFZpY3RpbVNhZmV0eVBsYW4+e307XHJcbiAgZXJyb3JNZXNzYWdlOiBzdHJpbmc7XHJcbiAgY29udGFjdFR5cGVzOiBhbnlbXTtcclxuICBjb250YWN0UHVycG9zZXM6IGFueVtdO1xyXG4gIHZpY3RpbVNlcnZpY2VUeXBlczogYW55W107XHJcbiAgdmljdGltU2FmZXR5UGxhbnM6IFZpY3RpbVNhZmV0eVBsYW5bXTtcclxuICB2aWN0aW1TZXJ2aWNlU3RhdHVzOiBhbnlbXTtcclxuICB2aWN0aW1TZXJ2aWNlU3RhdHVzSGlzdG9yaWVzOiBWaWN0aW1TZXJ2aWNlU3RhdHVzSGlzdG9yeVtdO1xyXG4gIHF1ZXJ5U3RyaW5nOiBzdHJpbmc7XHJcbiAgdmljdGltU2VydmljZURldGFpbDogVmljdGltU2VydmljZURldGFpbFtdO1xyXG4gIG15VmljdGltU2VydmljZUlkOiBudW1iZXI7XHJcbiAgcmVzdWx0OiBhbnk7XHJcbiAgdmljdGltTmFtZTogc3RyaW5nO1xyXG4gIHN0YWZmSWQ6IG51bWJlcjtcclxuICB2aWN0aW1JZDogbnVtYmVyO1xyXG4gIHByaXZhdGUgc3ViOiBhbnk7XHJcbiAgc2FmZXR5UGxhbkRhdGFTb3VyY2UgPSBuZXcgIE1hdFRhYmxlRGF0YVNvdXJjZSgpO1xyXG4gXHJcbiAgY29uc3RydWN0b3IoXHJcbiBcclxuICAgIHByaXZhdGUgX3ZpY3RpbVNlcnZpY2VzQ29tcG9uZW50OiBOZ2NTbWFydFZpY3RpbVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNvbW1vbkRpYWxvZ1NlcnZpY2U6IENvbW1vbkRpYWxvZ1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXHJcbiAgICBwdWJsaWMgZGlhbG9nOiBNYXREaWFsb2csXHJcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwdWJsaWMgc25hY2tCYXI6IE1hdFNuYWNrQmFyLFxyXG4gICAgcHJpdmF0ZSBzbWFydEF1dGhTZXJ2aWNlOiBTbWFydEF1dGhTZXJ2aWNlLFxyXG4gICAgIFxyXG4gICkge1xyXG4gICAgXHJcblxyXG4gICB9XHJcbiAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMuc21hcnRBdXRoU2VydmljZS5zZXRQZXJtaXNzaW9uKCdWaWN0aW0nLCB0aGlzLnJvdXRlLnNuYXBzaG90KTtcclxuICB9XHJcbiBcclxuICBuZ09uSW5pdCgpIHtcclxuXHJcbiAgICB2YXIgZGF0YSA9IHRoaXMucm91dGUuc25hcHNob3QuZGF0YTtcclxuICAgIHRoaXMubG9naW5TdGFmZiA9IGRhdGEubG9naW5TdGFmZjtcclxuICAgIHRoaXMuc3RhZmZJZCA9ICB0aGlzLmxvZ2luU3RhZmYuc3RhZmZJZDtcclxuXHJcbiAgICB0aGlzLnN1YiA9IHRoaXMucm91dGUucGFyYW1zLnN1YnNjcmliZShwYXJhbXMgPT4ge1xyXG4gICAgICB0aGlzLnZpY3RpbUlkID0gcGFyYW1zWyd2aWN0aW1JZCddO1xyXG5cclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuaGlkZGVuQWRkTmV3RmxhZyA9IGZhbHNlO1xyXG4gICAgdGhpcy52aWN0aW1OYW1lPSB0aGlzLnZpY3RpbU5hbWU7XHJcbiAgXHJcbiAgICB0aGlzLl92aWN0aW1TZXJ2aWNlc0NvbXBvbmVudC5nZXRTYWZldHlQbGFucyh0aGlzLnZpY3RpbUlkKS5zdWJzY3JpYmUoXHJcbiAgICAgIHZpY3RpbVNhZmV0eVBsYW5zID0+IHtcclxuICAgICAgICB0aGlzLnZpY3RpbVNhZmV0eVBsYW5zID0gdmljdGltU2FmZXR5UGxhbnM7IFxyXG4gICAgICAgIHRoaXMuc2FmZXR5UGxhbkRhdGFTb3VyY2UuZGF0YSA9IHRoaXMudmljdGltU2FmZXR5UGxhbnM7XHJcbiAgICAgICAgY29uc29sZS5sb2coJ3RoaXMudmljdGltU2FmZXR5UGxhbnMnKTtcclxuICAgICAgICBjb25zb2xlLmxvZyh0aGlzLnZpY3RpbVNhZmV0eVBsYW5zKTtcclxuXHJcbiAgXHJcbiAgICAgIH1cclxuICAgICk7XHJcblxyXG4gICAgIFxyXG4gICAgLy8gIHRoaXMubXlWaWN0aW1TZXJ2aWNlSWQgPTE7XHJcbiAgICAvLyB0aGlzLl92aWN0aW1TZXJ2aWNlc0NvbXBvbmVudC5nZXRWaWN0aW1TZXJ2aWNlRGV0YWlsKHRoaXMubXlWaWN0aW1TZXJ2aWNlSWQpLnN1YnNjcmliZShcclxuICAgIC8vICAgdmljdGltU2VydmljZURldGFpbCA9PiB7XHJcbiAgICAvLyAgICAgdGhpcy52aWN0aW1TZXJ2aWNlRGV0YWlsID0gdmljdGltU2VydmljZURldGFpbDtcclxuICAgIC8vICAgICBjb25zb2xlLmxvZygnc2VydmljZSBkZXRhaWwnKTtcclxuICAgIC8vICAgICBjb25zb2xlLmxvZyh0aGlzLnZpY3RpbVNlcnZpY2VEZXRhaWwpOyBcclxuICAgIC8vICAgfVxyXG4gICAgLy8gKTtcclxuXHJcbiAgICB0aGlzLl92aWN0aW1TZXJ2aWNlc0NvbXBvbmVudC5nZXRTZXJ2aWNlU3RhdHVzSGlzdG9yaWVzKDEpLnN1YnNjcmliZShcclxuICAgICAgdmljdGltU2VydmljZVN0YXR1c0hpc3RvcmllcyA9PiB7XHJcbiAgICAgICAvLyB0aGlzLnZpY3RpbVNlcnZpY2VTdGF0dXNIaXN0b3JpZXMgPSB2aWN0aW1TZXJ2aWNlU3RhdHVzSGlzdG9yaWVzOyBcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcbiAgXHJcbi8vLS0tLS0tLS0tLS0tLS0tZ3JhcGhRTC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vICAgZ2V0VmljdGltU2VydmljZVR5cGVQcm9ncmFtUHJvdmlkZXJzKCk6IE9ic2VydmFibGU8VmljdGltU2VydmljZVR5cGVQcm9ncmFtUHJvdmlkZXJNb2RlbFtdPiB7XHJcbi8vICAgICBjb25zdCBxdWVyeVN0cmluZyA9IGBcclxuLy8gICAgICAgICB7XHJcbi8vICAgICAgICAgICBmaW5kVmljdGltU2VydmljZVR5cGVQcm9ncmFtUHJvdmlkZXJzIHtcclxuLy8gICAgICAgICAgICAgICAgIGRhdGEge1xyXG4vLyAgICAgICAgICAgICAgICAgICB2aWN0aW1TZXJ2aWNlVHlwZVByb2dyYW1Qcm92aWRlcklkXHJcbi8vICAgICAgICAgICAgICAgICAgIHZpY3RpbVNlcnZpY2VUeXBlXHJcbi8vICAgICAgICAgICAgICAgICAgIHZpY3RpbVByb2dyYW1Qcm92aWRlclxyXG4vLyAgICAgICAgICAgICAgICAgfVxyXG4vLyAgICAgICAgICAgICAgIH1cclxuLy8gICAgICAgICB9YDtcclxuXHJcbiBcclxuLy8gICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxhbnk+KGVudmlyb25tZW50LnNtYXJ0QXBpVXJsLCB7IHF1ZXJ5OiBxdWVyeVN0cmluZyB9KVxyXG4vLyAgICAgICAgIC5tYXAocmVzdWx0ID0+IHtcclxuLy8gICAgICAgICByZXR1cm4gcmVzdWx0LmRhdGEuZmluZFZpY3RpbVNlcnZpY2VUeXBlUHJvZ3JhbVByb3ZpZGVycy5kYXRhO1xyXG4vLyAgICAgfSk7XHJcbi8vIH1cclxuXHJcbiAgZ29Ub1NhZmV0eVBsYW5EZXRhaWwodmljdGltU2VydmljZUlkOiBudW1iZXIpe1xyXG4gIFxyXG4gICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJ3NhZnR5UGxhbkRldGFpbCcsIHZpY3RpbVNlcnZpY2VJZCwgIHRoaXMudmljdGltSWQgXSk7IFxyXG5cclxuICB9XHJcbiAgb25BZGROZXcoKXtcclxuICAgIHRoaXMuaGlkZGVuRGV0YWlsRmxhZyA9IGZhbHNlO1xyXG5cclxuICB9XHJcbiAgb25EZWxldGVTYWZldHlQbGFuKHZpY3RpbVNlcnZpY2VJZDogbnVtYmVyKXtcclxuXHJcbiAgICB0aGlzLmNvbW1vbkRpYWxvZ1NlcnZpY2VcclxuICAgIC5jb25maXJtKCcnLCAnRG8geW91IHdhbnQgdG8gZGVsZXRlIHRoaXMgc2FmZXR5IHBsYW4/JywgJ1llcycsICdObycpXHJcbiAgICAuc3Vic2NyaWJlKHJlcyA9PiB7dGhpcy5yZXN1bHQgPSAgcmVzO1xyXG4gICAgICAgIGlmICh0aGlzLnJlc3VsdCkge1xyXG5cclxuICAgICAgICAgICAgdGhpcy5fdmljdGltU2VydmljZXNDb21wb25lbnQuZGVsZXRlU2FmZXR5UGxhbih2aWN0aW1TZXJ2aWNlSWQsdGhpcy5zdGFmZklkKVxyXG4gICAgICAgICAgICAgLnN1YnNjcmliZShyZXN1bHQgPT4ge1xyXG5cclxuICAgICAgICAgICAgICB0aGlzLnNuYWNrQmFyLm9wZW4oJ2RlbGV0ZSBzYWZldHkgcGxhbiBTdWNjZXNzZnVsbHkgIScsICcnLCB7IGR1cmF0aW9uOiAzMDAwLH0pO1xyXG5cclxuICAgICAgICAgICAgICB0aGlzLl92aWN0aW1TZXJ2aWNlc0NvbXBvbmVudC5nZXRTYWZldHlQbGFucyh0aGlzLnZpY3RpbUlkKS5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgICAgICB2aWN0aW1TYWZldHlQbGFucyA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMudmljdGltU2FmZXR5UGxhbnMgPSB2aWN0aW1TYWZldHlQbGFuczsgXHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuc2FmZXR5UGxhbkRhdGFTb3VyY2UuZGF0YSA9IHRoaXMudmljdGltU2FmZXR5UGxhbnM7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgKTtcclxuICAgIFxyXG4gICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICBcclxuXHJcblxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBiYWNrKCl7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJ3ZpY3RpbUhvbWUnXSk7XHJcbiAgXHJcbiAgfVxyXG5cclxuXHJcblxyXG5cclxuXHJcbn1cclxuXHJcbiIsIlxyXG4gPG1hdC1jYXJkPlxyXG4gICAgICAgIDxtYXQtY2FyZC1oZWFkZXI+XHJcbiAgICAgICAgPC9tYXQtY2FyZC1oZWFkZXI+XHJcbiAgICAgICAgIDxtYXQtY2FyZC1jb250ZW50PlxyXG4gICAgICAgICAgICAgICAgPG1hdC10b29sYmFyICBjb2xvcj1cInByaW1hcnlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPVwiY2FyZC1oZWFkZXJcIiBzdHlsZT1cImRpc3BsYXk6IGlubGluZS1ibG9jaztcIj5TYWZldHkgUGxhbjwvaDQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9tYXQtdG9vbGJhcj5cclxuICAgICAgICA8YnI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwiZ29Ub1NhZmV0eVBsYW5EZXRhaWwoMClcIiA+QWRkIEdvYWw8L2J1dHRvbj5cclxuICAgICAgICAmbmJzcDsmbmJzcDs8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiICAoY2xpY2spPVwiYmFjaygpXCI+QmFjazwvYnV0dG9uPlxyXG4gICAgICAgIDxicj5cclxuICAgICAgICA8YnI+XHJcbiAgICAgICAgPG1hdC10YWJsZSAjdGFibGUgW2RhdGFTb3VyY2VdPVwic2FmZXR5UGxhbkRhdGFTb3VyY2VcIiBjbGFzcz1cImV4YW1wbGUtdGFibGVcIj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwic3RhcnREYXRlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBjbGFzcz1cImV4YW1wbGUtaGVhZGVyLWNlbGxcIj5TdGFydCBEYXRlPC9tYXQtaGVhZGVyLWNlbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgPG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IHJvd1wiIGNsYXNzPVwiZXhhbXBsZS1jZWxsXCI+IHt7cm93LnN0YXJ0RGF0ZSB8IGRhdGV9fSA8L21hdC1jZWxsPlxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImdvYWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBjbGFzcz1cImV4YW1wbGUtaGVhZGVyLWNlbGxcIj5Hb2FsPC9tYXQtaGVhZGVyLWNlbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCByb3dcIiBjbGFzcz1cImV4YW1wbGUtY2VsbFwiPiB7e3Jvdy5nb2FsIH19IDwvbWF0LWNlbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJ2aWN0aW1TZXJ2aWNlU3RhdHVzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgY2xhc3M9XCJleGFtcGxlLWhlYWRlci1jZWxsXCI+U3RhdHVzPC9tYXQtaGVhZGVyLWNlbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCByb3dcIiBjbGFzcz1cImV4YW1wbGUtY2VsbFwiPiB7e3Jvdy52aWN0aW1TZXJ2aWNlU3RhdHVzIH19IDwvbWF0LWNlbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJjb21tZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgY2xhc3M9XCJleGFtcGxlLWhlYWRlci1jZWxsXCI+Q29tbWVudDwvbWF0LWhlYWRlci1jZWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgcm93XCIgY2xhc3M9XCJleGFtcGxlLWNlbGxcIj4ge3tyb3cuY29tbWVudCB9fSA8L21hdC1jZWxsPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwidmljdGltU2VydmljZUlkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgY2xhc3M9XCJleGFtcGxlLWhlYWRlci1jZWxsXCI+PC9tYXQtaGVhZGVyLWNlbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSA8bWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgcm93XCIgY2xhc3M9XCJleGFtcGxlLWNlbGxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cImdvVG9TYWZldHlQbGFuRGV0YWlsKHJvdy52aWN0aW1TZXJ2aWNlSWQpXCI+ICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ2x5cGhpY29uIGdseXBoaWNvbi1wZW5jaWxcIiA+PC9zcGFuPiZuYnNwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24+ZWRpdDwvbWF0LWljb24+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICBcclxuXHJcblxyXG5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmbmJzcDsmbmJzcDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cIm9uRGVsZXRlU2FmZXR5UGxhbihyb3cudmljdGltU2VydmljZUlkKVwiPiAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnbHlwaGljb24gZ2x5cGhpY29uLXRyYXNoXCIgPjwvc3Bhbj4mbmJzcDtEZWxldGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+IFxyXG4gICAgICAgICAgICAgICAgICAgIDwvbWF0LWNlbGw+IC0tPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8bWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgZWxlbWVudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImVkaXQtYnRuXCIgIG1hdC1pY29uLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAgbWF0VG9vbHRpcD1cIkVkaXQgU2FmZXR5IFBsYW5cIiAoY2xpY2spPVwiZ29Ub1NhZmV0eVBsYW5EZXRhaWwoZWxlbWVudC52aWN0aW1TZXJ2aWNlSWQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJtYXRlcmlhbC1pY29uc1wiPm1vZGVfZWRpdDwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICZuYnNwOyZuYnNwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkZWxldGUtYnRuXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJEZWxldGUgU2FmZXR5IFBsYW5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uRGVsZXRlU2FmZXR5UGxhbihlbGVtZW50LnZpY3RpbVNlcnZpY2VJZClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnNcIj5kZWxldGU8L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcblxyXG5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICA8L21hdC1jZWxsPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgICAgICAgICAgPG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJbJ3N0YXJ0RGF0ZScsICdnb2FsJywgJ3ZpY3RpbVNlcnZpY2VTdGF0dXMnLCAnY29tbWVudCcsICd2aWN0aW1TZXJ2aWNlSWQnXVwiIGNsYXNzPVwiZXhhbXBsZS1oZWFkZXItcm93XCI+PC9tYXQtaGVhZGVyLXJvdz5cclxuICAgICAgICAgICAgICAgIDxtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOlsnc3RhcnREYXRlJywgJ2dvYWwnLCAndmljdGltU2VydmljZVN0YXR1cycsICdjb21tZW50JywgJ3ZpY3RpbVNlcnZpY2VJZCddO1wiIGNsYXNzPVwiZXhhbXBsZS1yb3dcIj48L21hdC1yb3c+XHJcbiAgICAgICAgICAgICAgICA8L21hdC10YWJsZT5cclxuICAgICAgICAgICAgICAgXHJcbiAgICAgICBcclxuPC9tYXQtY2FyZC1jb250ZW50PlxyXG48L21hdC1jYXJkPiJdfQ==
|