@bnsights/bbsf-admin-portal 1.1.3 → 1.1.4
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/README.md +4 -0
- package/esm2022/bnsights-test-test-admin-portal.mjs +5 -0
- package/esm2022/lib/Pages/ActiveDirectories/active-directory/active-directory.component.mjs +1 -1
- package/esm2022/lib/Pages/ActiveDirectories/active-directory.module.mjs +1 -1
- package/esm2022/lib/Pages/anonymouslayout/activation/activation.component.mjs +1 -1
- package/esm2022/lib/Pages/anonymouslayout/anonymouslayout.module.mjs +1 -1
- package/esm2022/lib/Pages/anonymouslayout/forgot-password/forgot-password.component.mjs +1 -1
- package/esm2022/lib/Pages/anonymouslayout/login/login.component.mjs +1 -1
- package/esm2022/lib/Pages/anonymouslayout/rest-password/rest-password.component.mjs +1 -1
- package/esm2022/lib/Pages/anonymouslayout/upload-license/upload-license.component.mjs +1 -1
- package/esm2022/lib/Pages/configurations/auth-configuration/auth-configuration-edit/auth-configuration-edit.component.mjs +3 -3
- package/esm2022/lib/Pages/configurations/auth-configuration/auth-configuration.component.mjs +3 -3
- package/esm2022/lib/Pages/configurations/configuration/configuration.component.mjs +1 -1
- package/esm2022/lib/Pages/departments/department/department.component.mjs +1 -1
- package/esm2022/lib/Pages/departments/departments.module.mjs +1 -1
- package/esm2022/lib/Pages/documents/add-document/add-document.component.mjs +1 -1
- package/esm2022/lib/Pages/documents/document-template-info/document-template-info.component.mjs +1 -1
- package/esm2022/lib/Pages/documents/document-templates/document-templates.component.mjs +1 -1
- package/esm2022/lib/Pages/documents/edit-document/edit-document.component.mjs +1 -1
- package/esm2022/lib/Pages/helpCenter/help-center-thirdlevel/help-center-thirdlevel.component.mjs +1 -1
- package/esm2022/lib/Pages/home/home.module.mjs +1 -1
- package/esm2022/lib/Pages/impersonation-rules/impersonation-rules/impersonation-rules.component.mjs +1 -1
- package/esm2022/lib/Pages/impersonation-rules/impersonation-rules.module.mjs +1 -1
- package/esm2022/lib/Pages/jobs/jobs.module.mjs +1 -1
- package/esm2022/lib/Pages/license/license/license.component.mjs +1 -1
- package/esm2022/lib/Pages/license/license.module.mjs +1 -1
- package/esm2022/lib/Pages/localizations/localizations-replace-text/localizations-replace-text.component.mjs +1 -1
- package/esm2022/lib/Pages/localizations/localizations.module.mjs +1 -1
- package/esm2022/lib/Pages/logs/log/log.component.mjs +1 -1
- package/esm2022/lib/Pages/logs/logs.module.mjs +1 -1
- package/esm2022/lib/Pages/lookups/lookup-group/lookup-group.component.mjs +1 -1
- package/esm2022/lib/Pages/lookups/lookups.module.mjs +1 -1
- package/esm2022/lib/Pages/notifications/add-notification/add-notification.component.mjs +1 -1
- package/esm2022/lib/Pages/notifications/master-layouts/master-layouts.component.mjs +1 -1
- package/esm2022/lib/Pages/notifications/notifications.module.mjs +1 -1
- package/esm2022/lib/Pages/notifications/template-info/template-info.component.mjs +1 -1
- package/esm2022/lib/Pages/providers/providers.module.mjs +1 -1
- package/esm2022/lib/Pages/publicHolidays/public-holidays.module.mjs +1 -1
- package/esm2022/lib/Pages/roles/permissions/permissions.component.mjs +1 -1
- package/esm2022/lib/Pages/roles/permissionsets/permissionsets.component.mjs +1 -1
- package/esm2022/lib/Pages/roles/roles.module.mjs +1 -1
- package/esm2022/lib/Pages/sectors/sectors.module.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/external-url/external-url.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/survey/add-survey/add-survey.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/survey/delete-survey/delete-survey.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/survey/duplicate-survey/duplicate-survey.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/survey/edit-survey/edit-survey.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/survey/submissions/delete-submission/delete-submission.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/survey/submissions/eliminate-submission/eliminate-submission.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/survey/submissions/uneliminate-submission/uneliminate-submission.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/survey/survey-info/add-question/add-question.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/survey/survey-info/delete-question/delete-question.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/survey/survey-info/edit-question/edit-question.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/survey/survey-info/preview/preview.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/survey/survey-info/publish-survey/publish-survey.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/survey/survey-info/result-question/result.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/survey/survey-info/take-survey/take-survey.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/survey/survey-info/unpublish-survey/unpublish-survey.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/survey/survey.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/survey-form/survey-form.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/components/survey-form-item/survey-form-item.component.mjs +1 -1
- package/esm2022/lib/Pages/shared/models/LicenseModel/LicenseModel.mjs +1 -1
- package/esm2022/lib/Pages/shared/models/LocalizationModels/EditResourceModel.mjs +1 -1
- package/esm2022/lib/Pages/shared/models/LocalizationModels/UploadJsonVM.mjs +1 -1
- package/esm2022/lib/Pages/shared/models/PermissionsModels/PermissionSetModel.mjs +1 -1
- package/esm2022/lib/Pages/shared/models/SurveyModels/add-survey-submissio.mjs +1 -1
- package/esm2022/lib/Pages/shared/models/SurveyModels/add-survey.mjs +1 -1
- package/esm2022/lib/Pages/shared/models/SurveyModels/survey-field-options.mjs +1 -1
- package/esm2022/lib/Pages/shared/models/SurveyModels/survey-filed-value.mjs +1 -1
- package/esm2022/lib/Pages/shared/models/SurveyModels/survey-question-option.mjs +1 -1
- package/esm2022/lib/Pages/shared/models/SurveyModels/survey-question.mjs +1 -1
- package/esm2022/lib/Pages/shared/models/UserModels/AddUserModel.mjs +1 -1
- package/esm2022/lib/Pages/shared/models/UserModels/EditUserModel.mjs +1 -1
- package/esm2022/lib/Pages/shared/modules/public-survey.module.mjs +1 -1
- package/esm2022/lib/Pages/workflows/version-info/version-info.component.mjs +1 -1
- package/esm2022/lib/Pages/workflows/workflow/workflow.component.mjs +1 -1
- package/esm2022/lib/Pages/workflows/workflows.module.mjs +1 -1
- package/fesm2022/bnsights-bbsf-admin-portal.mjs +4 -4
- package/fesm2022/bnsights-bbsf-admin-portal.mjs.map +1 -1
- package/fesm2022/bnsights-test-test-admin-portal.mjs +27181 -0
- package/fesm2022/bnsights-test-test-admin-portal.mjs.map +1 -0
- package/package.json +2 -2
- package/src/lib/assets/sass/custom-styles.scss +99 -33
- package/src/lib/assets/sass/style-rtl.scss +6 -8
- package/src/lib/assets/sass/style.scss +5 -7
|
@@ -91,4 +91,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImpor
|
|
|
91
91
|
type: Component,
|
|
92
92
|
args: [{ selector: 'app-login', template: "<block-ui></block-ui>\r\n<div class=\"form w-100\" novalidate=\"novalidate\" id=\"kt_sign_in_form\" *ngIf=\"loadPage\">\r\n <input type=\"hidden\" name=\"ReturnUrl\" value=\"@Model.ReturnUrl\" />\r\n <div class=\"text-center mb-10\">\r\n <h1 class=\"text-dark mb-3\"> {{utilityService.getResourceValue(\"Login\")}} </h1>\r\n </div>\r\n <div class=\"text-center\" *ngIf=\"authenticationMode == authenticationModeEnums.UAEPass\">\r\n <img [src]=\"loginImage\" (click)=\"loginWithUAEPass()\" />\r\n </div>\r\n <BBSF-Form [options]=\"loginFormOptions\" *ngIf=\"authenticationMode == authenticationModeEnums.Forms\">\r\n <div class=\"fv-row mb-10\">\r\n <BBSF-TextBox [options]=\"email\" [group]=\"loginForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"fv-row mb-10\">\r\n <BBSF-TextBox [options]=\"password\" [group]=\"loginForm\"></BBSF-TextBox>\r\n <div class=\"text-right\">\r\n <a href=\"/Admin/account/forgotPassword\" class=\"link-primary fs-6 fw-bolder mt-2\">{{utilityService.getResourceValue(\"ForgotPassword\")}}</a>\r\n </div>\r\n </div>\r\n <div class=\"fv-row mb-10\" *ngIf=\"error\">\r\n <span class=\"text-danger\">\r\n {{error}}\r\n </span>\r\n </div>\r\n\r\n <div class=\"text-center\">\r\n <button type=\"submit\" class=\"btn btn-primary btn-sm\">\r\n {{utilityService.getResourceValue(\"Login\")}}\r\n </button>\r\n </div>\r\n </BBSF-Form>\r\n</div>" }]
|
|
93
93
|
}], ctorParameters: () => [{ type: i1.AuthService }, { type: i1.EnvironmentService }, { type: i2.AccountService }, { type: i3.Router }, { type: i3.ActivatedRoute }, { type: i1.UtilityService }] });
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1hZG1pbi1wb3J0YWwvc3JjL2xpYi9QYWdlcy9hbm9ueW1vdXNsYXlvdXQvbG9naW4vbG9naW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1hZG1pbi1wb3J0YWwvc3JjL2xpYi9QYWdlcy9hbm9ueW1vdXNsYXlvdXQvbG9naW4vbG9naW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDakYsT0FBTyxFQUFlLG1CQUFtQixFQUFzQyxNQUFNLDBCQUEwQixDQUFDOzs7Ozs7OztBQVFoSCxNQUFNLE9BQU8sY0FBYztJQWF6QixZQUFvQixXQUF3QixFQUFVLGtCQUFzQyxFQUFVLGNBQThCLEVBQVUsTUFBYyxFQUFVLEtBQXFCLEVBQVMsY0FBOEI7UUFBOU0sZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFBVSx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQVUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUFVLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQVMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBVmxPLGNBQVMsR0FBRyxJQUFJLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM5QixxQkFBZ0IsR0FBRyxJQUFJLFdBQVcsQ0FBQztRQU1uQyx1QkFBa0IsR0FBVyxTQUFTLENBQUM7UUFDdkMsNEJBQXVCLEdBQUcsbUJBQW1CLENBQUM7UUFr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dXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IEZvcm1PcHRpb25zLCBJbnB1dFR5cGUsIFRleHRCb3hPcHRpb25zIH0gZnJvbSAnQGJuc2lnaHRzL2Jic2YtY29udHJvbHMnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSwgQXV0aGVudGljYXRpb25Nb2RlcywgRW52aXJvbm1lbnRTZXJ2aWNlLCBVdGlsaXR5U2VydmljZSB9IGZyb20gJ0BibnNpZ2h0cy9iYnNmLXV0aWxpdGllcyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQWNjb3VudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zaGFyZWQvU2VydmljZXMvQWNjb3VudFNlcnZpY2Uuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1sb2dpbicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2xvZ2luLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9naW5Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBpc0VuZ2xpc2g6IGJvb2xlYW47XHJcbiAgbG9naW5Gb3JtID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcbiAgbG9naW5Gb3JtT3B0aW9ucyA9IG5ldyBGb3JtT3B0aW9ucztcclxuICBlbWFpbDogVGV4dEJveE9wdGlvbnM7XHJcbiAgcGFzc3dvcmQ6IFRleHRCb3hPcHRpb25zO1xyXG4gIGVycm9yOiBzdHJpbmc7XHJcbiAgbGFuZ3VhZ2U6IHN0cmluZztcclxuICBsb2dpbkltYWdlOiBzdHJpbmc7XHJcbiAgYXV0aGVudGljYXRpb25Nb2RlOiBzdHJpbmcgPSB1bmRlZmluZWQ7XHJcbiAgYXV0aGVudGljYXRpb25Nb2RlRW51bXMgPSBBdXRoZW50aWNhdGlvbk1vZGVzO1xyXG4gIGxvYWRQYWdlOmJvb2xlYW5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSwgcHJpdmF0ZSBlbnZpcm9ubWVudFNlcnZpY2U6IEVudmlyb25tZW50U2VydmljZSwgcHJpdmF0ZSBhY2NvdW50U2VydmljZTogQWNjb3VudFNlcnZpY2UsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLCBwdWJsaWMgdXRpbGl0eVNlcnZpY2U6IFV0aWxpdHlTZXJ2aWNlKSB7XHJcbiAgfVxyXG5cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmF1dGhlbnRpY2F0aW9uTW9kZSA9IHRoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldEJCU0ZBdXRoZW50aWNhdGlvbk1vZGUoKTtcclxuXHJcbiAgICBpZiAodGhpcy5lbnZpcm9ubWVudFNlcnZpY2UuZ2V0SXNFbmFibGVXaW5kb3dzQXV0aGVudGljYXRpb24oKSlcclxuICAgICAgdGhpcy5hY2NvdW50U2VydmljZS5sb2dpbldpdGhXaW5kb3dzQXV0aGVudGljYXRpb24oKS5zdWJzY3JpYmUoYXN5bmMgKHJlcykgPT4ge1xyXG4gICAgICAgIGxldCByZXN1bHQgPSByZXMgYXMgYW55XHJcbiAgICAgICAgdGhpcy51dGlsaXR5U2VydmljZS5zdG9wQmxvY2tVSSgpO1xyXG4gICAgICAgIGF3YWl0IHRoaXMuYXV0aFNlcnZpY2UuaGFuZGxlQWNjZXNzVG9rZW4ocmVzdWx0LnZhbCk7XHJcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3RoaXMuYXV0aFNlcnZpY2UuZ2V0VXJsKCldKTtcclxuICAgICAgfSlcclxuICAgIHtcclxuICAgICAgaWYgKHRoaXMuYXV0aGVudGljYXRpb25Nb2RlID09IEF1dGhlbnRpY2F0aW9uTW9kZXMuVUFFUGFzcykge1xyXG4gICAgICAgIHRoaXMubGFuZ3VhZ2UgPSB0aGlzLnV0aWxpdHlTZXJ2aWNlLmdldEN1cnJlbnRMYW5ndWFnZSgpO1xyXG4gICAgICAgIHRoaXMubG9naW5JbWFnZSA9IHRoaXMubGFuZ3VhZ2UgPT0gJ2FyJyA/IFwiL2Fzc2V0cy9pbWFnZXMvdWFlcGFzc2FyLnN2Z1wiIDogXCIvYXNzZXRzL2ltYWdlcy91YWVwYXNzZW4uc3ZnXCJcclxuICAgICAgfVxyXG5cclxuICAgICAgZWxzZSBpZiAodGhpcy5hdXRoZW50aWNhdGlvbk1vZGUgPT0gQXV0aGVudGljYXRpb25Nb2Rlcy5Gb3Jtcykge1xyXG4gICAgICAgIHRoaXMubG9naW5Gb3JtID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcbiAgICAgICAgdGhpcy5sb2dpbkZvcm1PcHRpb25zID0gbmV3IEZvcm1PcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5sb2dpbkZvcm1PcHRpb25zLkZvcm1Hcm91cCA9IHRoaXMubG9naW5Gb3JtXHJcbiAgICAgICAgdGhpcy5sb2dpbkZvcm1PcHRpb25zLkdldE1vZGVsRnVuY3Rpb24gPSB0aGlzLmdldExvZ2luTW9kZWw7XHJcbiAgICAgICAgdGhpcy5sb2dpbkZvcm1PcHRpb25zLlNlcnZpY2VTdWJtaXRGdW5jdGlvbiA9IHRoaXMuZ2V0TG9naW5GdW5jdGlvbjtcclxuICAgICAgICB0aGlzLmxvZ2luRm9ybU9wdGlvbnMuT25TdWNjZXNzSGFuZGxlciA9IHRoaXMub25TdWNjZXNzSGFuZGxlcjtcclxuICAgICAgICB0aGlzLmxvZ2luRm9ybU9wdGlvbnMuT25FcnJvckhhbmRsZXIgPSB0aGlzLk9uRXJyb3JIYW5kbGVyO1xyXG4gICAgICAgIHRoaXMubG9naW5Gb3JtT3B0aW9ucy5EaXNhYmxlU3VjY2Vzc05vdGlmaWNhdGlvbiA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5sb2dpbkZvcm1PcHRpb25zLkRpc2FibGVFcnJvck5vdGlmaWNhdGlvbiA9IHRydWU7XHJcblxyXG4gICAgICAgIHRoaXMuZW1haWwgPSBuZXcgVGV4dEJveE9wdGlvbnMoKTtcclxuICAgICAgICB0aGlzLmVtYWlsLk5hbWUgPSBcImVtYWlsXCI7XHJcbiAgICAgICAgdGhpcy5lbWFpbC5MYWJlbEtleSA9IFwiRW1haWxcIjtcclxuICAgICAgICB0aGlzLmVtYWlsLlR5cGUgPSBJbnB1dFR5cGUuRW1haWw7XHJcbiAgICAgICAgdGhpcy5lbWFpbC5Jc1JlcXVpcmVkID0gdHJ1ZTtcclxuXHJcbiAgICAgICAgdGhpcy5wYXNzd29yZCA9IG5ldyBUZXh0Qm94T3B0aW9ucygpO1xyXG4gICAgICAgIHRoaXMucGFzc3dvcmQuTmFtZSA9IFwicGFzc3dvcmRcIjtcclxuICAgICAgICB0aGlzLnBhc3N3b3JkLkxhYmVsS2V5ID0gXCJQYXNzd29yZFwiO1xyXG4gICAgICAgIHRoaXMucGFzc3dvcmQuVHlwZSA9IElucHV0VHlwZS5QYXNzd29yZDtcclxuICAgICAgICB0aGlzLnBhc3N3b3JkLklzUmVxdWlyZWQgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLmxvYWRQYWdlPXRydWU7XHJcbiAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLnN0b3BCbG9ja1VJKCk7XHJcbiAgfVxyXG5cclxuICBnZXRMb2dpbk1vZGVsID0gKCkgPT4ge1xyXG4gICAgbGV0IHBhcmFtQXJyYXk6IGFueVtdID0gW107XHJcbiAgICBsZXQgUmVzdWx0TW9kZWwgPSB0aGlzLmxvZ2luRm9ybS52YWx1ZSBhcyBhbnk7XHJcbiAgICBsZXQgUmVzdE1vZGVsID0ge1xyXG4gICAgICBVc2VybmFtZTogUmVzdWx0TW9kZWwuZW1haWwsXHJcbiAgICAgIFBhc3N3b3JkOiBSZXN1bHRNb2RlbC5wYXNzd29yZFxyXG4gICAgfVxyXG4gICAgcGFyYW1BcnJheS5wdXNoKFJlc3RNb2RlbCk7XHJcbiAgICByZXR1cm4gcGFyYW1BcnJheTtcclxuICB9XHJcblxyXG4gIGdldExvZ2luRnVuY3Rpb24gPSAobW9kZWwpOiBPYnNlcnZhYmxlPGFueT4gPT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYWNjb3VudFNlcnZpY2UubG9naW4obW9kZWwpXHJcbiAgfVxyXG4gIG9uU3VjY2Vzc0hhbmRsZXIgPSBhc3luYyAocmVzdWx0KSA9PiB7XHJcbiAgICBhd2FpdCB0aGlzLmF1dGhTZXJ2aWNlLmhhbmRsZUFjY2Vzc1Rva2VuKHJlc3VsdC52YWwpO1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3RoaXMuYXV0aFNlcnZpY2UuZ2V0VXJsKCldKTtcclxuICB9XHJcbiAgT25FcnJvckhhbmRsZXIgPSAoZXJyb3IpID0+IHtcclxuICAgIHRoaXMuZXJyb3IgPSBlcnJvci5lcnJvci5NZXNzYWdlO1xyXG4gIH1cclxuICBsb2dpbldpdGhVQUVQYXNzKCkge1xyXG4gICAgdGhpcy5hdXRoU2VydmljZS5sb2dpbldpdGhVQUVQYXNzKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxibG9jay11aT48L2Jsb2NrLXVpPlxyXG48ZGl2IGNsYXNzPVwiZm9ybSB3LTEwMFwiIG5vdmFsaWRhdGU9XCJub3ZhbGlkYXRlXCIgaWQ9XCJrdF9zaWduX2luX2Zvcm1cIiAqbmdJZj1cImxvYWRQYWdlXCI+XHJcbiAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwiUmV0dXJuVXJsXCIgdmFsdWU9XCJATW9kZWwuUmV0dXJuVXJsXCIgLz5cclxuICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXIgbWItMTBcIj5cclxuICAgIDxoMSBjbGFzcz1cInRleHQtZGFyayBtYi0zXCI+IHt7dXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZShcIkxvZ2luXCIpfX0gPC9oMT5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXJcIiAqbmdJZj1cImF1dGhlbnRpY2F0aW9uTW9kZSA9PSBhdXRoZW50aWNhdGlvbk1vZGVFbnVtcy5VQUVQYXNzXCI+XHJcbiAgICA8aW1nIFtzcmNdPVwibG9naW5JbWFnZVwiIChjbGljayk9XCJsb2dpbldpdGhVQUVQYXNzKClcIiAvPlxyXG4gIDwvZGl2PlxyXG4gIDxCQlNGLUZvcm0gW29wdGlvbnNdPVwibG9naW5Gb3JtT3B0aW9uc1wiICpuZ0lmPVwiYXV0aGVudGljYXRpb25Nb2RlID09IGF1dGhlbnRpY2F0aW9uTW9kZUVudW1zLkZvcm1zXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZnYtcm93IG1iLTEwXCI+XHJcbiAgICAgIDxCQlNGLVRleHRCb3ggW29wdGlvbnNdPVwiZW1haWxcIiBbZ3JvdXBdPVwibG9naW5Gb3JtXCI+PC9CQlNGLVRleHRCb3g+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJmdi1yb3cgbWItMTBcIj5cclxuICAgICAgPEJCU0YtVGV4dEJveCBbb3B0aW9uc109XCJwYXNzd29yZFwiIFtncm91cF09XCJsb2dpbkZvcm1cIj48L0JCU0YtVGV4dEJveD5cclxuICAgICAgPGRpdiBjbGFzcz1cInRleHQtcmlnaHRcIj5cclxuICAgICAgICA8YSBocmVmPVwiL0FkbWluL2FjY291bnQvZm9yZ290UGFzc3dvcmRcIiBjbGFzcz1cImxpbmstcHJpbWFyeSBmcy02IGZ3LWJvbGRlciBtdC0yXCI+e3t1dGlsaXR5U2VydmljZS5nZXRSZXNvdXJjZVZhbHVlKFwiRm9yZ290UGFzc3dvcmRcIil9fTwvYT5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJmdi1yb3cgbWItMTBcIiAqbmdJZj1cImVycm9yXCI+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1kYW5nZXJcIj5cclxuICAgICAgICB7e2Vycm9yfX1cclxuICAgICAgPC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyXCI+XHJcbiAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGJ0bi1zbVwiPlxyXG4gICAgICAgIHt7dXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZShcIkxvZ2luXCIpfX1cclxuICAgICAgPC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICA8L0JCU0YtRm9ybT5cclxuPC9kaXY+Il19
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1hZG1pbi1wb3J0YWwvc3JjL2xpYi9QYWdlcy9hbm9ueW1vdXNsYXlvdXQvbG9naW4vbG9naW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1hZG1pbi1wb3J0YWwvc3JjL2xpYi9QYWdlcy9hbm9ueW1vdXNsYXlvdXQvbG9naW4vbG9naW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDakYsT0FBTyxFQUFlLG1CQUFtQixFQUFzQyxNQUFNLDBCQUEwQixDQUFDOzs7Ozs7OztBQVFoSCxNQUFNLE9BQU8sY0FBYztJQWF6QixZQUFvQixXQUF3QixFQUFVLGtCQUFzQyxFQUFVLGNBQThCLEVBQVUsTUFBYyxFQUFVLEtBQXFCLEVBQVMsY0FBOEI7UUFBOU0sZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFBVSx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQVUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUFVLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQVMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBVmxPLGNBQVMsR0FBRyxJQUFJLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM5QixxQkFBZ0IsR0FBRyxJQUFJLFdBQVcsQ0FBQztRQU1uQyx1QkFBa0IsR0FBVyxTQUFTLENBQUM7UUFDdkMsNEJBQXVCLEdBQUcsbUJBQW1CLENBQUM7UUFr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dXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IEZvcm1PcHRpb25zLCBJbnB1dFR5cGUsIFRleHRCb3hPcHRpb25zIH0gZnJvbSAnQGJuc2lnaHRzL2Jic2YtY29udHJvbHMnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSwgQXV0aGVudGljYXRpb25Nb2RlcywgRW52aXJvbm1lbnRTZXJ2aWNlLCBVdGlsaXR5U2VydmljZSB9IGZyb20gJ0BibnNpZ2h0cy9iYnNmLXV0aWxpdGllcyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQWNjb3VudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zaGFyZWQvU2VydmljZXMvQWNjb3VudFNlcnZpY2Uuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1sb2dpbicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2xvZ2luLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9naW5Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBpc0VuZ2xpc2g6IGJvb2xlYW47XHJcbiAgbG9naW5Gb3JtID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcbiAgbG9naW5Gb3JtT3B0aW9ucyA9IG5ldyBGb3JtT3B0aW9ucztcclxuICBlbWFpbDogVGV4dEJveE9wdGlvbnM7XHJcbiAgcGFzc3dvcmQ6IFRleHRCb3hPcHRpb25zO1xyXG4gIGVycm9yOiBzdHJpbmc7XHJcbiAgbGFuZ3VhZ2U6IHN0cmluZztcclxuICBsb2dpbkltYWdlOiBzdHJpbmc7XHJcbiAgYXV0aGVudGljYXRpb25Nb2RlOiBzdHJpbmcgPSB1bmRlZmluZWQ7XHJcbiAgYXV0aGVudGljYXRpb25Nb2RlRW51bXMgPSBBdXRoZW50aWNhdGlvbk1vZGVzO1xyXG4gIGxvYWRQYWdlOiBib29sZWFuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsIHByaXZhdGUgZW52aXJvbm1lbnRTZXJ2aWNlOiBFbnZpcm9ubWVudFNlcnZpY2UsIHByaXZhdGUgYWNjb3VudFNlcnZpY2U6IEFjY291bnRTZXJ2aWNlLCBwcml2YXRlIHJvdXRlcjogUm91dGVyLCBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSwgcHVibGljIHV0aWxpdHlTZXJ2aWNlOiBVdGlsaXR5U2VydmljZSkge1xyXG4gIH1cclxuXHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5hdXRoZW50aWNhdGlvbk1vZGUgPSB0aGlzLmVudmlyb25tZW50U2VydmljZS5nZXRCQlNGQXV0aGVudGljYXRpb25Nb2RlKCk7XHJcblxyXG4gICAgaWYgKHRoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldElzRW5hYmxlV2luZG93c0F1dGhlbnRpY2F0aW9uKCkpXHJcbiAgICAgIHRoaXMuYWNjb3VudFNlcnZpY2UubG9naW5XaXRoV2luZG93c0F1dGhlbnRpY2F0aW9uKCkuc3Vic2NyaWJlKGFzeW5jIChyZXMpID0+IHtcclxuICAgICAgICBsZXQgcmVzdWx0ID0gcmVzIGFzIGFueVxyXG4gICAgICAgIHRoaXMudXRpbGl0eVNlcnZpY2Uuc3RvcEJsb2NrVUkoKTtcclxuICAgICAgICBhd2FpdCB0aGlzLmF1dGhTZXJ2aWNlLmhhbmRsZUFjY2Vzc1Rva2VuKHJlc3VsdC52YWwpO1xyXG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt0aGlzLmF1dGhTZXJ2aWNlLmdldFVybCgpXSk7XHJcbiAgICAgIH0pXHJcbiAgICB7XHJcbiAgICAgIGlmICh0aGlzLmF1dGhlbnRpY2F0aW9uTW9kZSA9PSBBdXRoZW50aWNhdGlvbk1vZGVzLlVBRVBhc3MpIHtcclxuICAgICAgICB0aGlzLmxhbmd1YWdlID0gdGhpcy51dGlsaXR5U2VydmljZS5nZXRDdXJyZW50TGFuZ3VhZ2UoKTtcclxuICAgICAgICB0aGlzLmxvZ2luSW1hZ2UgPSB0aGlzLmxhbmd1YWdlID09ICdhcicgPyBcIi9hc3NldHMvaW1hZ2VzL3VhZXBhc3Nhci5zdmdcIiA6IFwiL2Fzc2V0cy9pbWFnZXMvdWFlcGFzc2VuLnN2Z1wiXHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGVsc2UgaWYgKHRoaXMuYXV0aGVudGljYXRpb25Nb2RlID09IEF1dGhlbnRpY2F0aW9uTW9kZXMuRm9ybXMpIHtcclxuICAgICAgICB0aGlzLmxvZ2luRm9ybSA9IG5ldyBGb3JtR3JvdXAoe30pO1xyXG4gICAgICAgIHRoaXMubG9naW5Gb3JtT3B0aW9ucyA9IG5ldyBGb3JtT3B0aW9ucygpO1xyXG4gICAgICAgIHRoaXMubG9naW5Gb3JtT3B0aW9ucy5Gb3JtR3JvdXAgPSB0aGlzLmxvZ2luRm9ybVxyXG4gICAgICAgIHRoaXMubG9naW5Gb3JtT3B0aW9ucy5HZXRNb2RlbEZ1bmN0aW9uID0gdGhpcy5nZXRMb2dpbk1vZGVsO1xyXG4gICAgICAgIHRoaXMubG9naW5Gb3JtT3B0aW9ucy5TZXJ2aWNlU3VibWl0RnVuY3Rpb24gPSB0aGlzLmdldExvZ2luRnVuY3Rpb247XHJcbiAgICAgICAgdGhpcy5sb2dpbkZvcm1PcHRpb25zLk9uU3VjY2Vzc0hhbmRsZXIgPSB0aGlzLm9uU3VjY2Vzc0hhbmRsZXI7XHJcbiAgICAgICAgdGhpcy5sb2dpbkZvcm1PcHRpb25zLk9uRXJyb3JIYW5kbGVyID0gdGhpcy5PbkVycm9ySGFuZGxlcjtcclxuICAgICAgICB0aGlzLmxvZ2luRm9ybU9wdGlvbnMuRGlzYWJsZVN1Y2Nlc3NOb3RpZmljYXRpb24gPSB0cnVlO1xyXG4gICAgICAgIHRoaXMubG9naW5Gb3JtT3B0aW9ucy5EaXNhYmxlRXJyb3JOb3RpZmljYXRpb24gPSB0cnVlO1xyXG5cclxuICAgICAgICB0aGlzLmVtYWlsID0gbmV3IFRleHRCb3hPcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5lbWFpbC5OYW1lID0gXCJlbWFpbFwiO1xyXG4gICAgICAgIHRoaXMuZW1haWwuTGFiZWxLZXkgPSBcIkVtYWlsXCI7XHJcbiAgICAgICAgdGhpcy5lbWFpbC5UeXBlID0gSW5wdXRUeXBlLkVtYWlsO1xyXG4gICAgICAgIHRoaXMuZW1haWwuSXNSZXF1aXJlZCA9IHRydWU7XHJcblxyXG4gICAgICAgIHRoaXMucGFzc3dvcmQgPSBuZXcgVGV4dEJveE9wdGlvbnMoKTtcclxuICAgICAgICB0aGlzLnBhc3N3b3JkLk5hbWUgPSBcInBhc3N3b3JkXCI7XHJcbiAgICAgICAgdGhpcy5wYXNzd29yZC5MYWJlbEtleSA9IFwiUGFzc3dvcmRcIjtcclxuICAgICAgICB0aGlzLnBhc3N3b3JkLlR5cGUgPSBJbnB1dFR5cGUuUGFzc3dvcmQ7XHJcbiAgICAgICAgdGhpcy5wYXNzd29yZC5Jc1JlcXVpcmVkID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5sb2FkUGFnZSA9IHRydWU7XHJcbiAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLnN0b3BCbG9ja1VJKCk7XHJcbiAgfVxyXG5cclxuICBnZXRMb2dpbk1vZGVsID0gKCkgPT4ge1xyXG4gICAgbGV0IHBhcmFtQXJyYXk6IGFueVtdID0gW107XHJcbiAgICBsZXQgUmVzdWx0TW9kZWwgPSB0aGlzLmxvZ2luRm9ybS52YWx1ZSBhcyBhbnk7XHJcbiAgICBsZXQgUmVzdE1vZGVsID0ge1xyXG4gICAgICBVc2VybmFtZTogUmVzdWx0TW9kZWwuZW1haWwsXHJcbiAgICAgIFBhc3N3b3JkOiBSZXN1bHRNb2RlbC5wYXNzd29yZFxyXG4gICAgfVxyXG4gICAgcGFyYW1BcnJheS5wdXNoKFJlc3RNb2RlbCk7XHJcbiAgICByZXR1cm4gcGFyYW1BcnJheTtcclxuICB9XHJcblxyXG4gIGdldExvZ2luRnVuY3Rpb24gPSAobW9kZWwpOiBPYnNlcnZhYmxlPGFueT4gPT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYWNjb3VudFNlcnZpY2UubG9naW4obW9kZWwpXHJcbiAgfVxyXG4gIG9uU3VjY2Vzc0hhbmRsZXIgPSBhc3luYyAocmVzdWx0KSA9PiB7XHJcbiAgICBhd2FpdCB0aGlzLmF1dGhTZXJ2aWNlLmhhbmRsZUFjY2Vzc1Rva2VuKHJlc3VsdC52YWwpO1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3RoaXMuYXV0aFNlcnZpY2UuZ2V0VXJsKCldKTtcclxuICB9XHJcbiAgT25FcnJvckhhbmRsZXIgPSAoZXJyb3IpID0+IHtcclxuICAgIHRoaXMuZXJyb3IgPSBlcnJvci5lcnJvci5NZXNzYWdlO1xyXG4gIH1cclxuICBsb2dpbldpdGhVQUVQYXNzKCkge1xyXG4gICAgdGhpcy5hdXRoU2VydmljZS5sb2dpbldpdGhVQUVQYXNzKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxibG9jay11aT48L2Jsb2NrLXVpPlxyXG48ZGl2IGNsYXNzPVwiZm9ybSB3LTEwMFwiIG5vdmFsaWRhdGU9XCJub3ZhbGlkYXRlXCIgaWQ9XCJrdF9zaWduX2luX2Zvcm1cIiAqbmdJZj1cImxvYWRQYWdlXCI+XHJcbiAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwiUmV0dXJuVXJsXCIgdmFsdWU9XCJATW9kZWwuUmV0dXJuVXJsXCIgLz5cclxuICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXIgbWItMTBcIj5cclxuICAgIDxoMSBjbGFzcz1cInRleHQtZGFyayBtYi0zXCI+IHt7dXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZShcIkxvZ2luXCIpfX0gPC9oMT5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXJcIiAqbmdJZj1cImF1dGhlbnRpY2F0aW9uTW9kZSA9PSBhdXRoZW50aWNhdGlvbk1vZGVFbnVtcy5VQUVQYXNzXCI+XHJcbiAgICA8aW1nIFtzcmNdPVwibG9naW5JbWFnZVwiIChjbGljayk9XCJsb2dpbldpdGhVQUVQYXNzKClcIiAvPlxyXG4gIDwvZGl2PlxyXG4gIDxCQlNGLUZvcm0gW29wdGlvbnNdPVwibG9naW5Gb3JtT3B0aW9uc1wiICpuZ0lmPVwiYXV0aGVudGljYXRpb25Nb2RlID09IGF1dGhlbnRpY2F0aW9uTW9kZUVudW1zLkZvcm1zXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZnYtcm93IG1iLTEwXCI+XHJcbiAgICAgIDxCQlNGLVRleHRCb3ggW29wdGlvbnNdPVwiZW1haWxcIiBbZ3JvdXBdPVwibG9naW5Gb3JtXCI+PC9CQlNGLVRleHRCb3g+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJmdi1yb3cgbWItMTBcIj5cclxuICAgICAgPEJCU0YtVGV4dEJveCBbb3B0aW9uc109XCJwYXNzd29yZFwiIFtncm91cF09XCJsb2dpbkZvcm1cIj48L0JCU0YtVGV4dEJveD5cclxuICAgICAgPGRpdiBjbGFzcz1cInRleHQtcmlnaHRcIj5cclxuICAgICAgICA8YSBocmVmPVwiL0FkbWluL2FjY291bnQvZm9yZ290UGFzc3dvcmRcIiBjbGFzcz1cImxpbmstcHJpbWFyeSBmcy02IGZ3LWJvbGRlciBtdC0yXCI+e3t1dGlsaXR5U2VydmljZS5nZXRSZXNvdXJjZVZhbHVlKFwiRm9yZ290UGFzc3dvcmRcIil9fTwvYT5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJmdi1yb3cgbWItMTBcIiAqbmdJZj1cImVycm9yXCI+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1kYW5nZXJcIj5cclxuICAgICAgICB7e2Vycm9yfX1cclxuICAgICAgPC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyXCI+XHJcbiAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGJ0bi1zbVwiPlxyXG4gICAgICAgIHt7dXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZShcIkxvZ2luXCIpfX1cclxuICAgICAgPC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICA8L0JCU0YtRm9ybT5cclxuPC9kaXY+Il19
|
|
@@ -87,4 +87,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImpor
|
|
|
87
87
|
type: Component,
|
|
88
88
|
args: [{ selector: 'lib-rest-password', template: "<block-ui></block-ui>\r\n<div class=\"form w-100\" novalidate=\"novalidate\" id=\"kt_sign_in_form\">\r\n <div class=\"text-center mb-10\">\r\n <h1 class=\"text-dark mb-3\"> {{utilityService.getResourceValue(\"RestPassword\")}} ?</h1>\r\n </div>\r\n <BBSF-Form [options]=\"restFormOptions\" *ngIf=\"ErrorMessage==null &&isModelLoaded\">\r\n <div class=\"fv-row mb-10\">\r\n <BBSF-TextBox [options]=\"password\" [group]=\"restForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"fv-row mb-10\">\r\n <BBSF-TextBox [options]=\"confirmPassword\" [group]=\"restForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"fv-row mb-10\">\r\n <a href=\"/Admin/account/login\"\r\n class=\"link-primary fs-6 fw-bolder d-flex justify-content-end mt-2\">\r\n <i class=\"fas fa-arrow-left anchor text-light-primary me-2 anchor \"></i> {{utilityService.getResourceValue(\"Back\")}}\r\n </a>\r\n </div>\r\n <div class=\"text-center\">\r\n <!--begin::Submit button-->\r\n <button type=\"submit\"\r\n class=\"btn btn-primary btn-sm\">\r\n {{utilityService.getResourceValue(\"SetPassword\")}}\r\n </button>\r\n </div>\r\n </BBSF-Form>\r\n <div *ngIf=\"ErrorMessage!=null\">\r\n <ul class=\"alert alert-InvalidValidation bg-light-danger list-unstyled\">\r\n <li>\r\n {{ErrorMessage}}\r\n </li>\r\n </ul>\r\n \r\n\r\n </div>\r\n</div>\r\n<!--end::Form-->\r\n" }]
|
|
89
89
|
}], ctorParameters: () => [{ type: i1.ActivatedRoute }, { type: i2.AccountService }, { type: i3.UtilityService }, { type: i1.Router }] });
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdC1wYXNzd29yZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYnNmLWFkbWluLXBvcnRhbC9zcmMvbGliL1BhZ2VzL2Fub255bW91c2xheW91dC9yZXN0LXBhc3N3b3JkL3Jlc3QtcGFzc3dvcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1hZG1pbi1wb3J0YWwvc3JjL2xpYi9QYWdlcy9hbm9ueW1vdXNsYXlvdXQvcmVzdC1wYXNzd29yZC9yZXN0LXBhc3N3b3JkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBR25HLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7Ozs7Ozs7QUFPakYsTUFBTSxPQUFPLHFCQUFxQjtJQWlCaEMsWUFFWSxjQUE4QixFQUM5QixjQUE4QixFQUM5QixjQUE4QixFQUM5QixNQUFjO1FBSGQsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQWxCMUIsb0JBQWUsR0FBb0IsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUN6RCxpQkFBWSxHQUFXLElBQUksQ0FBQTtRQUczQixxQkFBcUI7UUFDckIsYUFBUSxHQUFHLElBQUksU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzdCLG9CQUFlLEdBQUcsSUFBSSxXQUFXLENBQUM7UUFHbEMs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UTt3QkFDM0IsT0FBTyxFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUUsQ0FBQztvQkFDbkMsT0FBTyxJQUFJLENBQUM7Z0JBQ2QsQ0FBQyxDQUFDO2dCQUNGLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO2dCQUV6RixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksY0FBYyxFQUFFLENBQUM7Z0JBQzVDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxHQUFHLGlCQUFpQixDQUFDO2dCQUM5QyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsR0FBRyxpQkFBaUIsQ0FBQztnQkFDbEQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQztnQkFDL0MsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO2dCQUN2QyxJQUFJLENBQUMsZUFBZSxDQUFDLGdCQUFnQixHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7YUFHakU7O2dCQUVDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLGVBQWUsQ0FBQTtZQUUzQyxJQUFJLENBQUMsYUFBYSxHQUFFLElBQUksQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQTtRQUNGLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLENBQUM7SUFFcEMsQ0FBQzs4R0ExRVUscUJBQXFCO2tHQUFyQixxQkFBcUIseURDZGxDLDQ2Q0FxQ0E7OzJGRHZCYSxxQkFBcUI7a0JBSmpDLFNBQVM7K0JBQ0UsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IEN1c3RvbVZhbGlkYXRpb24sIEZvcm1PcHRpb25zLCBJbnB1dFR5cGUsIFRleHRCb3hPcHRpb25zIH0gZnJvbSAnQGJuc2lnaHRzL2Jic2YtY29udHJvbHMnO1xyXG5pbXBvcnQgeyBVdGlsaXR5U2VydmljZSB9IGZyb20gJ0BibnNpZ2h0cy9iYnNmLXV0aWxpdGllcyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQWN0aXZhdGlvbk1vZGVsIH0gZnJvbSAnLi4vLi4vc2hhcmVkL21vZGVscy9Vc2VyTW9kZWxzL0FjdGl2YXRpb25Nb2RlbCc7XHJcbmltcG9ydCB7IEFjY291bnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2hhcmVkL1NlcnZpY2VzL0FjY291bnRTZXJ2aWNlLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItcmVzdC1wYXNzd29yZCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3Jlc3QtcGFzc3dvcmQuY29tcG9uZW50Lmh0bWwnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmVzdFBhc3N3b3JkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgLy9QYWdlICBkYXRhXHJcbiAgVG9rZW46IHN0cmluZztcclxuICBBY3RpdmF0aW9uTW9kZWw6IEFjdGl2YXRpb25Nb2RlbCA9IG5ldyBBY3RpdmF0aW9uTW9kZWwoKTtcclxuICBFcnJvck1lc3NhZ2U6IHN0cmluZyA9IG51bGxcclxuXHJcblxyXG4gIC8vcmVzdCBNb2RlbCBDb250cm9sc1xyXG4gIHJlc3RGb3JtID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcbiAgcmVzdEZvcm1PcHRpb25zID0gbmV3IEZvcm1PcHRpb25zO1xyXG4gIHBhc3N3b3JkOiBUZXh0Qm94T3B0aW9ucztcclxuICBjb25maXJtUGFzc3dvcmQ6IFRleHRCb3hPcHRpb25zO1xyXG4gIGN1c3RvbVZhbGlkYXRpb246IEN1c3RvbVZhbGlkYXRpb24gPSBuZXcgQ3VzdG9tVmFsaWRhdGlvbigpO1xyXG4gIGlzTW9kZWxMb2FkZWQ6Ym9vbGVhbj1mYWxzZVxyXG5cclxuXHJcbiAgY29uc3RydWN0b3JcclxuICAgIChcclxuICAgICAgcHJpdmF0ZSBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICAgIHByaXZhdGUgYWNjb3VudFNlcnZpY2U6IEFjY291bnRTZXJ2aWNlLFxyXG4gICAgICBwdWJsaWMgIHV0aWxpdHlTZXJ2aWNlOiBVdGlsaXR5U2VydmljZSxcclxuICAgICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICApIHtcclxuICAgIHRoaXMuYWN0aXZhdGVkUm91dGUucGFyYW1zLnN1YnNjcmliZShwYXJhbXMgPT4ge1xyXG4gICAgICB0aGlzLlRva2VuID0gcGFyYW1zWydpZCddO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuXHJcblxyXG4gICAgdGhpcy5hY2NvdW50U2VydmljZS5nZXRSZXNldFBhc3N3b3JkKHRoaXMuVG9rZW4pLnN1YnNjcmliZSgocmVzdWx0KSA9PiB7XHJcbiAgICAgIGxldCBtb2RlbCA9IHJlc3VsdCBhcyBhbnlcclxuICAgICAgaWYgKG1vZGVsLmlzVmFsaWQpIHtcclxuICAgICAgICB0aGlzLnJlc3RGb3JtID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcblxyXG4gICAgICAgIHRoaXMucmVzdEZvcm1PcHRpb25zID0gbmV3IEZvcm1PcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5yZXN0Rm9ybU9wdGlvbnMuRm9ybUdyb3VwID0gdGhpcy5yZXN0Rm9ybVxyXG4gICAgICAgIHRoaXMucmVzdEZvcm1PcHRpb25zLkdldE1vZGVsRnVuY3Rpb24gPSB0aGlzLmdldFJlc3RNb2RlbDtcclxuICAgICAgICB0aGlzLnJlc3RGb3JtT3B0aW9ucy5TZXJ2aWNlU3VibWl0RnVuY3Rpb24gPSB0aGlzLmdldFJlc3RGdW5jdGlvbjtcclxuICAgICAgICB0aGlzLnJlc3RGb3JtT3B0aW9ucy5PblN1Y2Nlc3NIYW5kbGVyID0gdGhpcy5vblN1Y2Nlc3NIYW5kbGVyO1xyXG5cclxuXHJcbiAgICAgICAgdGhpcy5wYXNzd29yZCA9IG5ldyBUZXh0Qm94T3B0aW9ucygpO1xyXG4gICAgICAgIHRoaXMucGFzc3dvcmQuTmFtZSA9IFwicGFzc3dvcmRcIjtcclxuICAgICAgICB0aGlzLnBhc3N3b3JkLkxhYmVsS2V5ID0gXCJQYXNzd29yZFwiO1xyXG4gICAgICAgIHRoaXMucGFzc3dvcmQuVHlwZSA9IElucHV0VHlwZS5QYXNzd29yZDtcclxuICAgICAgICB0aGlzLnBhc3N3b3JkLklzUmVxdWlyZWQgPSB0cnVlO1xyXG5cclxuICAgICAgICB0aGlzLmN1c3RvbVZhbGlkYXRpb24uZnVuY3Rpb25Cb2R5ID0gKGNvbnRyb2wpID0+IHtcclxuICAgICAgICAgIGxldCBQYXNzd29yZCA9IHRoaXMucmVzdEZvcm0uY29udHJvbHNbXCJwYXNzd29yZFwiXS52YWx1ZTtcclxuICAgICAgICAgIGlmIChjb250cm9sLnZhbHVlICE9IFBhc3N3b3JkKVxyXG4gICAgICAgICAgICByZXR1cm4geyAnY3VzdG9tZXJFcnJvcic6IHRydWUgfTtcclxuICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgIH07XHJcbiAgICAgICAgdGhpcy5jdXN0b21WYWxpZGF0aW9uLm1hc3NhZ2UgPSB0aGlzLnV0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUoXCJQYXNzd29yZE5vdE1hdGNoXCIpO1xyXG5cclxuICAgICAgICB0aGlzLmNvbmZpcm1QYXNzd29yZCA9IG5ldyBUZXh0Qm94T3B0aW9ucygpO1xyXG4gICAgICAgIHRoaXMuY29uZmlybVBhc3N3b3JkLk5hbWUgPSBcImNvbmZpcm1QYXNzd29yZFwiO1xyXG4gICAgICAgIHRoaXMuY29uZmlybVBhc3N3b3JkLkxhYmVsS2V5ID0gXCJDb25maXJtUGFzc3dvcmRcIjtcclxuICAgICAgICB0aGlzLmNvbmZpcm1QYXNzd29yZC5UeXBlID0gSW5wdXRUeXBlLlBhc3N3b3JkO1xyXG4gICAgICAgIHRoaXMuY29uZmlybVBhc3N3b3JkLklzUmVxdWlyZWQgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuY29uZmlybVBhc3N3b3JkLkN1c3RvbVZhbGlkYXRpb24gPSBbdGhpcy5jdXN0b21WYWxpZGF0aW9uXTtcclxuXHJcblxyXG4gICAgICB9XHJcbiAgICAgIGVsc2VcclxuICAgICAgICB0aGlzLkVycm9yTWVzc2FnZSA9IG1vZGVsLnZhbGlkYXRpb25FcnJvclxyXG5cclxuICAgICAgdGhpcy5pc01vZGVsTG9hZGVkPSB0cnVlO1xyXG4gICAgfSlcclxuICAgIHRoaXMudXRpbGl0eVNlcnZpY2Uuc3RvcEJsb2NrVUkoKTtcclxuXHJcbiAgfVxyXG5cclxuICBnZXRSZXN0TW9kZWwgPSAoKSA9PiB7XHJcbiAgICBsZXQgcGFyYW1BcnJheTogYW55W10gPSBbXTtcclxuICAgIGxldCBSZXN1bHRNb2RlbCA9IHRoaXMucmVzdEZvcm0udmFsdWUgYXMgYW55O1xyXG4gICAgbGV0IFJlc3RNb2RlbDpBY3RpdmF0aW9uTW9kZWw9IG5ldyBBY3RpdmF0aW9uTW9kZWwoKTtcclxuICAgIFJlc3RNb2RlbC5Ub2tlbj10aGlzLlRva2VuXHJcbiAgICBSZXN0TW9kZWwuUGFzc3dvcmQ9UmVzdWx0TW9kZWwucGFzc3dvcmRcclxuICAgIFJlc3RNb2RlbC5QYXNzd29yZENvbmZpcm1hdGlvbj1SZXN1bHRNb2RlbC5jb25maXJtUGFzc3dvcmRcclxuICAgIHBhcmFtQXJyYXkucHVzaChSZXN0TW9kZWwpO1xyXG4gICAgcmV0dXJuIHBhcmFtQXJyYXk7XHJcbiAgfVxyXG5cclxuICBnZXRSZXN0RnVuY3Rpb24gPSAobW9kZWwpOiBPYnNlcnZhYmxlPGFueT4gPT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYWNjb3VudFNlcnZpY2UucmVzZXRQYXNzd29yZChtb2RlbClcclxuICB9XHJcbiAgb25TdWNjZXNzSGFuZGxlciA9IChyZXN1bHQpID0+IHtcclxuICAgIGlmIChyZXN1bHQudmFsKVxyXG4gICAge1xyXG4gICAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLm5vdGlmeVN1Y2Nlc3NNZXNzYWdlKClcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvQWRtaW4vYWNjb3VudC9sb2dpbiddKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuIiwiPGJsb2NrLXVpPjwvYmxvY2stdWk+XHJcbjxkaXYgY2xhc3M9XCJmb3JtIHctMTAwXCIgbm92YWxpZGF0ZT1cIm5vdmFsaWRhdGVcIiBpZD1cImt0X3NpZ25faW5fZm9ybVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlciBtYi0xMFwiPlxyXG4gICAgPGgxIGNsYXNzPVwidGV4dC1kYXJrIG1iLTNcIj4ge3t1dGlsaXR5U2VydmljZS5nZXRSZXNvdXJjZVZhbHVlKFwiUmVzdFBhc3N3b3JkXCIpfX0gPzwvaDE+XHJcbiAgPC9kaXY+XHJcbiAgPEJCU0YtRm9ybSBbb3B0aW9uc109XCJyZXN0Rm9ybU9wdGlvbnNcIiAqbmdJZj1cIkVycm9yTWVzc2FnZT09bnVsbCAmJmlzTW9kZWxMb2FkZWRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJmdi1yb3cgbWItMTBcIj5cclxuICAgICAgPEJCU0YtVGV4dEJveCBbb3B0aW9uc109XCJwYXNzd29yZFwiIFtncm91cF09XCJyZXN0Rm9ybVwiPjwvQkJTRi1UZXh0Qm94PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZnYtcm93IG1iLTEwXCI+XHJcbiAgICAgIDxCQlNGLVRleHRCb3ggW29wdGlvbnNdPVwiY29uZmlybVBhc3N3b3JkXCIgW2dyb3VwXT1cInJlc3RGb3JtXCI+PC9CQlNGLVRleHRCb3g+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJmdi1yb3cgbWItMTBcIj5cclxuICAgICAgPGEgaHJlZj1cIi9BZG1pbi9hY2NvdW50L2xvZ2luXCJcclxuICAgICAgIGNsYXNzPVwibGluay1wcmltYXJ5IGZzLTYgZnctYm9sZGVyIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kIG10LTJcIj5cclxuICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtYXJyb3ctbGVmdCBhbmNob3IgdGV4dC1saWdodC1wcmltYXJ5IG1lLTIgYW5jaG9yIFwiPjwvaT4ge3t1dGlsaXR5U2VydmljZS5nZXRSZXNvdXJjZVZhbHVlKFwiQmFja1wiKX19XHJcbiAgICA8L2E+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiPlxyXG4gICAgICA8IS0tYmVnaW46OlN1Ym1pdCBidXR0b24tLT5cclxuICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCJcclxuICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBidG4tc21cIj5cclxuICAgICAgICB7e3V0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUoXCJTZXRQYXNzd29yZFwiKX19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9CQlNGLUZvcm0+XHJcbiAgPGRpdiAqbmdJZj1cIkVycm9yTWVzc2FnZSE9bnVsbFwiPlxyXG4gICAgPHVsIGNsYXNzPVwiYWxlcnQgYWxlcnQtSW52YWxpZFZhbGlkYXRpb24gYmctbGlnaHQtZGFuZ2VyIGxpc3QtdW5zdHlsZWRcIj5cclxuICAgICAgPGxpPlxyXG4gICAgICAgIHt7RXJyb3JNZXNzYWdlfX1cclxuICAgICAgPC9saT5cclxuICAgIDwvdWw+XHJcbiAgICBcclxuXHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG48IS0tZW5kOjpGb3JtLS0+XHJcbiJdfQ==
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdC1wYXNzd29yZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYnNmLWFkbWluLXBvcnRhbC9zcmMvbGliL1BhZ2VzL2Fub255bW91c2xheW91dC9yZXN0LXBhc3N3b3JkL3Jlc3QtcGFzc3dvcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1hZG1pbi1wb3J0YWwvc3JjL2xpYi9QYWdlcy9hbm9ueW1vdXNsYXlvdXQvcmVzdC1wYXNzd29yZC9yZXN0LXBhc3N3b3JkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBR25HLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7Ozs7Ozs7QUFPakYsTUFBTSxPQUFPLHFCQUFxQjtJQWlCaEMsWUFFWSxjQUE4QixFQUM5QixjQUE4QixFQUMvQixjQUE4QixFQUM3QixNQUFjO1FBSGQsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUMvQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDN0IsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQWxCMUIsb0JBQWUsR0FBb0IsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUN6RCxpQkFBWSxHQUFXLElBQUksQ0FBQTtRQUczQixxQkFBcUI7UUFDckIsYUFBUSxHQUFHLElBQUksU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzdCLG9CQUFlLEdBQUcsSUFBSSxXQUFXLENBQUM7UUFHbEMs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UTt3QkFDM0IsT0FBTyxFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUUsQ0FBQztvQkFDbkMsT0FBTyxJQUFJLENBQUM7Z0JBQ2QsQ0FBQyxDQUFDO2dCQUNGLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO2dCQUV6RixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksY0FBYyxFQUFFLENBQUM7Z0JBQzVDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxHQUFHLGlCQUFpQixDQUFDO2dCQUM5QyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsR0FBRyxpQkFBaUIsQ0FBQztnQkFDbEQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQztnQkFDL0MsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO2dCQUN2QyxJQUFJLENBQUMsZUFBZSxDQUFDLGdCQUFnQixHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7YUFHakU7O2dCQUVDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLGVBQWUsQ0FBQTtZQUUzQyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztRQUM1QixDQUFDLENBQUMsQ0FBQTtRQUNGLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLENBQUM7SUFFcEMsQ0FBQzs4R0ExRVUscUJBQXFCO2tHQUFyQixxQkFBcUIseURDZGxDLDQ2Q0FxQ0E7OzJGRHZCYSxxQkFBcUI7a0JBSmpDLFNBQVM7K0JBQ0UsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IEN1c3RvbVZhbGlkYXRpb24sIEZvcm1PcHRpb25zLCBJbnB1dFR5cGUsIFRleHRCb3hPcHRpb25zIH0gZnJvbSAnQGJuc2lnaHRzL2Jic2YtY29udHJvbHMnO1xyXG5pbXBvcnQgeyBVdGlsaXR5U2VydmljZSB9IGZyb20gJ0BibnNpZ2h0cy9iYnNmLXV0aWxpdGllcyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQWN0aXZhdGlvbk1vZGVsIH0gZnJvbSAnLi4vLi4vc2hhcmVkL21vZGVscy9Vc2VyTW9kZWxzL0FjdGl2YXRpb25Nb2RlbCc7XHJcbmltcG9ydCB7IEFjY291bnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2hhcmVkL1NlcnZpY2VzL0FjY291bnRTZXJ2aWNlLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItcmVzdC1wYXNzd29yZCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3Jlc3QtcGFzc3dvcmQuY29tcG9uZW50Lmh0bWwnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmVzdFBhc3N3b3JkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgLy9QYWdlICBkYXRhXHJcbiAgVG9rZW46IHN0cmluZztcclxuICBBY3RpdmF0aW9uTW9kZWw6IEFjdGl2YXRpb25Nb2RlbCA9IG5ldyBBY3RpdmF0aW9uTW9kZWwoKTtcclxuICBFcnJvck1lc3NhZ2U6IHN0cmluZyA9IG51bGxcclxuXHJcblxyXG4gIC8vcmVzdCBNb2RlbCBDb250cm9sc1xyXG4gIHJlc3RGb3JtID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcbiAgcmVzdEZvcm1PcHRpb25zID0gbmV3IEZvcm1PcHRpb25zO1xyXG4gIHBhc3N3b3JkOiBUZXh0Qm94T3B0aW9ucztcclxuICBjb25maXJtUGFzc3dvcmQ6IFRleHRCb3hPcHRpb25zO1xyXG4gIGN1c3RvbVZhbGlkYXRpb246IEN1c3RvbVZhbGlkYXRpb24gPSBuZXcgQ3VzdG9tVmFsaWRhdGlvbigpO1xyXG4gIGlzTW9kZWxMb2FkZWQ6IGJvb2xlYW4gPSBmYWxzZVxyXG5cclxuXHJcbiAgY29uc3RydWN0b3JcclxuICAgIChcclxuICAgICAgcHJpdmF0ZSBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICAgIHByaXZhdGUgYWNjb3VudFNlcnZpY2U6IEFjY291bnRTZXJ2aWNlLFxyXG4gICAgICBwdWJsaWMgdXRpbGl0eVNlcnZpY2U6IFV0aWxpdHlTZXJ2aWNlLFxyXG4gICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgKSB7XHJcbiAgICB0aGlzLmFjdGl2YXRlZFJvdXRlLnBhcmFtcy5zdWJzY3JpYmUocGFyYW1zID0+IHtcclxuICAgICAgdGhpcy5Ub2tlbiA9IHBhcmFtc1snaWQnXTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcblxyXG5cclxuICAgIHRoaXMuYWNjb3VudFNlcnZpY2UuZ2V0UmVzZXRQYXNzd29yZCh0aGlzLlRva2VuKS5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xyXG4gICAgICBsZXQgbW9kZWwgPSByZXN1bHQgYXMgYW55XHJcbiAgICAgIGlmIChtb2RlbC5pc1ZhbGlkKSB7XHJcbiAgICAgICAgdGhpcy5yZXN0Rm9ybSA9IG5ldyBGb3JtR3JvdXAoe30pO1xyXG5cclxuICAgICAgICB0aGlzLnJlc3RGb3JtT3B0aW9ucyA9IG5ldyBGb3JtT3B0aW9ucygpO1xyXG4gICAgICAgIHRoaXMucmVzdEZvcm1PcHRpb25zLkZvcm1Hcm91cCA9IHRoaXMucmVzdEZvcm1cclxuICAgICAgICB0aGlzLnJlc3RGb3JtT3B0aW9ucy5HZXRNb2RlbEZ1bmN0aW9uID0gdGhpcy5nZXRSZXN0TW9kZWw7XHJcbiAgICAgICAgdGhpcy5yZXN0Rm9ybU9wdGlvbnMuU2VydmljZVN1Ym1pdEZ1bmN0aW9uID0gdGhpcy5nZXRSZXN0RnVuY3Rpb247XHJcbiAgICAgICAgdGhpcy5yZXN0Rm9ybU9wdGlvbnMuT25TdWNjZXNzSGFuZGxlciA9IHRoaXMub25TdWNjZXNzSGFuZGxlcjtcclxuXHJcblxyXG4gICAgICAgIHRoaXMucGFzc3dvcmQgPSBuZXcgVGV4dEJveE9wdGlvbnMoKTtcclxuICAgICAgICB0aGlzLnBhc3N3b3JkLk5hbWUgPSBcInBhc3N3b3JkXCI7XHJcbiAgICAgICAgdGhpcy5wYXNzd29yZC5MYWJlbEtleSA9IFwiUGFzc3dvcmRcIjtcclxuICAgICAgICB0aGlzLnBhc3N3b3JkLlR5cGUgPSBJbnB1dFR5cGUuUGFzc3dvcmQ7XHJcbiAgICAgICAgdGhpcy5wYXNzd29yZC5Jc1JlcXVpcmVkID0gdHJ1ZTtcclxuXHJcbiAgICAgICAgdGhpcy5jdXN0b21WYWxpZGF0aW9uLmZ1bmN0aW9uQm9keSA9IChjb250cm9sKSA9PiB7XHJcbiAgICAgICAgICBsZXQgUGFzc3dvcmQgPSB0aGlzLnJlc3RGb3JtLmNvbnRyb2xzW1wicGFzc3dvcmRcIl0udmFsdWU7XHJcbiAgICAgICAgICBpZiAoY29udHJvbC52YWx1ZSAhPSBQYXNzd29yZClcclxuICAgICAgICAgICAgcmV0dXJuIHsgJ2N1c3RvbWVyRXJyb3InOiB0cnVlIH07XHJcbiAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9O1xyXG4gICAgICAgIHRoaXMuY3VzdG9tVmFsaWRhdGlvbi5tYXNzYWdlID0gdGhpcy51dGlsaXR5U2VydmljZS5nZXRSZXNvdXJjZVZhbHVlKFwiUGFzc3dvcmROb3RNYXRjaFwiKTtcclxuXHJcbiAgICAgICAgdGhpcy5jb25maXJtUGFzc3dvcmQgPSBuZXcgVGV4dEJveE9wdGlvbnMoKTtcclxuICAgICAgICB0aGlzLmNvbmZpcm1QYXNzd29yZC5OYW1lID0gXCJjb25maXJtUGFzc3dvcmRcIjtcclxuICAgICAgICB0aGlzLmNvbmZpcm1QYXNzd29yZC5MYWJlbEtleSA9IFwiQ29uZmlybVBhc3N3b3JkXCI7XHJcbiAgICAgICAgdGhpcy5jb25maXJtUGFzc3dvcmQuVHlwZSA9IElucHV0VHlwZS5QYXNzd29yZDtcclxuICAgICAgICB0aGlzLmNvbmZpcm1QYXNzd29yZC5Jc1JlcXVpcmVkID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLmNvbmZpcm1QYXNzd29yZC5DdXN0b21WYWxpZGF0aW9uID0gW3RoaXMuY3VzdG9tVmFsaWRhdGlvbl07XHJcblxyXG5cclxuICAgICAgfVxyXG4gICAgICBlbHNlXHJcbiAgICAgICAgdGhpcy5FcnJvck1lc3NhZ2UgPSBtb2RlbC52YWxpZGF0aW9uRXJyb3JcclxuXHJcbiAgICAgIHRoaXMuaXNNb2RlbExvYWRlZCA9IHRydWU7XHJcbiAgICB9KVxyXG4gICAgdGhpcy51dGlsaXR5U2VydmljZS5zdG9wQmxvY2tVSSgpO1xyXG5cclxuICB9XHJcblxyXG4gIGdldFJlc3RNb2RlbCA9ICgpID0+IHtcclxuICAgIGxldCBwYXJhbUFycmF5OiBhbnlbXSA9IFtdO1xyXG4gICAgbGV0IFJlc3VsdE1vZGVsID0gdGhpcy5yZXN0Rm9ybS52YWx1ZSBhcyBhbnk7XHJcbiAgICBsZXQgUmVzdE1vZGVsOiBBY3RpdmF0aW9uTW9kZWwgPSBuZXcgQWN0aXZhdGlvbk1vZGVsKCk7XHJcbiAgICBSZXN0TW9kZWwuVG9rZW4gPSB0aGlzLlRva2VuXHJcbiAgICBSZXN0TW9kZWwuUGFzc3dvcmQgPSBSZXN1bHRNb2RlbC5wYXNzd29yZFxyXG4gICAgUmVzdE1vZGVsLlBhc3N3b3JkQ29uZmlybWF0aW9uID0gUmVzdWx0TW9kZWwuY29uZmlybVBhc3N3b3JkXHJcbiAgICBwYXJhbUFycmF5LnB1c2goUmVzdE1vZGVsKTtcclxuICAgIHJldHVybiBwYXJhbUFycmF5O1xyXG4gIH1cclxuXHJcbiAgZ2V0UmVzdEZ1bmN0aW9uID0gKG1vZGVsKTogT2JzZXJ2YWJsZTxhbnk+ID0+IHtcclxuICAgIHJldHVybiB0aGlzLmFjY291bnRTZXJ2aWNlLnJlc2V0UGFzc3dvcmQobW9kZWwpXHJcbiAgfVxyXG4gIG9uU3VjY2Vzc0hhbmRsZXIgPSAocmVzdWx0KSA9PiB7XHJcbiAgICBpZiAocmVzdWx0LnZhbCkge1xyXG4gICAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLm5vdGlmeVN1Y2Nlc3NNZXNzYWdlKClcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvQWRtaW4vYWNjb3VudC9sb2dpbiddKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuIiwiPGJsb2NrLXVpPjwvYmxvY2stdWk+XHJcbjxkaXYgY2xhc3M9XCJmb3JtIHctMTAwXCIgbm92YWxpZGF0ZT1cIm5vdmFsaWRhdGVcIiBpZD1cImt0X3NpZ25faW5fZm9ybVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlciBtYi0xMFwiPlxyXG4gICAgPGgxIGNsYXNzPVwidGV4dC1kYXJrIG1iLTNcIj4ge3t1dGlsaXR5U2VydmljZS5nZXRSZXNvdXJjZVZhbHVlKFwiUmVzdFBhc3N3b3JkXCIpfX0gPzwvaDE+XHJcbiAgPC9kaXY+XHJcbiAgPEJCU0YtRm9ybSBbb3B0aW9uc109XCJyZXN0Rm9ybU9wdGlvbnNcIiAqbmdJZj1cIkVycm9yTWVzc2FnZT09bnVsbCAmJmlzTW9kZWxMb2FkZWRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJmdi1yb3cgbWItMTBcIj5cclxuICAgICAgPEJCU0YtVGV4dEJveCBbb3B0aW9uc109XCJwYXNzd29yZFwiIFtncm91cF09XCJyZXN0Rm9ybVwiPjwvQkJTRi1UZXh0Qm94PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZnYtcm93IG1iLTEwXCI+XHJcbiAgICAgIDxCQlNGLVRleHRCb3ggW29wdGlvbnNdPVwiY29uZmlybVBhc3N3b3JkXCIgW2dyb3VwXT1cInJlc3RGb3JtXCI+PC9CQlNGLVRleHRCb3g+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJmdi1yb3cgbWItMTBcIj5cclxuICAgICAgPGEgaHJlZj1cIi9BZG1pbi9hY2NvdW50L2xvZ2luXCJcclxuICAgICAgIGNsYXNzPVwibGluay1wcmltYXJ5IGZzLTYgZnctYm9sZGVyIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kIG10LTJcIj5cclxuICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtYXJyb3ctbGVmdCBhbmNob3IgdGV4dC1saWdodC1wcmltYXJ5IG1lLTIgYW5jaG9yIFwiPjwvaT4ge3t1dGlsaXR5U2VydmljZS5nZXRSZXNvdXJjZVZhbHVlKFwiQmFja1wiKX19XHJcbiAgICA8L2E+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiPlxyXG4gICAgICA8IS0tYmVnaW46OlN1Ym1pdCBidXR0b24tLT5cclxuICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCJcclxuICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBidG4tc21cIj5cclxuICAgICAgICB7e3V0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUoXCJTZXRQYXNzd29yZFwiKX19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9CQlNGLUZvcm0+XHJcbiAgPGRpdiAqbmdJZj1cIkVycm9yTWVzc2FnZSE9bnVsbFwiPlxyXG4gICAgPHVsIGNsYXNzPVwiYWxlcnQgYWxlcnQtSW52YWxpZFZhbGlkYXRpb24gYmctbGlnaHQtZGFuZ2VyIGxpc3QtdW5zdHlsZWRcIj5cclxuICAgICAgPGxpPlxyXG4gICAgICAgIHt7RXJyb3JNZXNzYWdlfX1cclxuICAgICAgPC9saT5cclxuICAgIDwvdWw+XHJcbiAgICBcclxuXHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG48IS0tZW5kOjpGb3JtLS0+XHJcbiJdfQ==
|
|
@@ -68,4 +68,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImpor
|
|
|
68
68
|
type: Component,
|
|
69
69
|
args: [{ selector: 'lib-upload-license', template: "<block-ui></block-ui>\r\n<div class=\"form w-100\" novalidate=\"novalidate\" id=\"kt_sign_in_form\">\r\n <div class=\"text-center mb-10\">\r\n <h1 class=\"text-dark mb-3\"> {{utilityService.getResourceValue(\"UploadLicense\")}} ?</h1>\r\n </div>\r\n\r\n <BBSF-Form [options]=\"uploadFileFormOptions\">\r\n <div class=\"fv-row mb-10\">\r\n <BBSF-FileUplaod [options]=\"licenseFileInput\" [group]=\"uploadFileForm\">\r\n </BBSF-FileUplaod>\r\n </div>\r\n <div class=\"text-center\">\r\n <!--begin::Submit button-->\r\n <button type=\"submit\"\r\n class=\"btn btn-primary btn-sm\">\r\n {{utilityService.getResourceValue(\"Upload\")}}\r\n </button>\r\n </div>\r\n </BBSF-Form>\r\n <div *ngIf=\"ErrorMessage!=null\">\r\n <ul class=\"alert alert-InvalidValidation bg-light-danger list-unstyled\">\r\n <li>\r\n {{ErrorMessage}}\r\n </li>\r\n </ul>\r\n <a href=\"/Admin/account/login\"\r\n class=\"link-primary fs-6 fw-bolder d-flex justify-content-end mt-2\">\r\n <i class=\"fas fa-arrow-left text-light-primary me-2 anchor \"></i> {{utilityService.getResourceValue(\"Back\")}}\r\n </a>\r\n\r\n </div>\r\n</div>\r\n<!--end::Form-->\r\n" }]
|
|
70
70
|
}], ctorParameters: () => [{ type: i1.AccountService }, { type: i2.UtilityService }, { type: i3.Router }] });
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWxpY2Vuc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1hZG1pbi1wb3J0YWwvc3JjL2xpYi9QYWdlcy9hbm9ueW1vdXNsYXlvdXQvdXBsb2FkLWxpY2Vuc2UvdXBsb2FkLWxpY2Vuc2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1hZG1pbi1wb3J0YWwvc3JjL2xpYi9QYWdlcy9hbm9ueW1vdXNsYXlvdXQvdXBsb2FkLWxpY2Vuc2UvdXBsb2FkLWxpY2Vuc2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUduRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sK0NBQStDLENBQUM7Ozs7Ozs7O0FBTzdFLE1BQU0sT0FBTyxzQkFBc0I7SUFXakMsWUFFWSxjQUE4QixFQUMvQixjQUE4QixFQUM3QixNQUFjO1FBRmQsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQy9CLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM3QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBYjFCLFlBQVk7UUFDWixpQkFBWSxHQUFXLElBQUksQ0FBQTtRQUUzQix1QkFBdUI7UUFDdkIsbUJBQWMsR0FBRyxJQUFJLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQWtDbkMsdUJBQWtCLEdBQUcsR0FBRyxFQUFFO1lBQ3hCLElBQUksVUFBVSxHQUFVLEVBQUUsQ0FBQztZQUMzQixJQUFJLFdBQVcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQztZQUM1QyxJQUFJLEtBQUssR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1lBRS9CLEtBQUssQ0FBQyxXQUFXLEdBQUc7Z0JBQ2xCLFVBQVUsRUFBRSxXQUFXLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVTtnQkFDM0QsUUFBUSxFQUFFLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRO2dCQUN2RCxZQUFZLEVBQUUsV0FBVyxDQUFDLGtCQUFrQixDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVk7Z0JBQy9ELFFBQVEsRUFBRSxXQUFXLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUTthQUN4RCxDQUFBO1lBQ0QsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN2QixPQUFPLFVBQVUsQ0FBQztRQUNwQixDQUFDLENBQUE7UUFFRCwwQkFBcUIsR0FBRyxDQUFDLEtBQUssRUFBbUIsRUFBRTtZQUNqRCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xELENBQUMsQ0FBQTtRQUNELHFCQUFnQixHQUFHLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDNUIsSUFBSSxNQUFNLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxjQUFjLENBQUMsb0JBQW9CLEVBQUUsQ0FBQTtnQkFDMUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUE7YUFDL0M7UUFDSCxDQUFDLENBQUE7UUFDRCxtQkFBYyxHQUFHLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDdkIsSUFBSSxDQUFDLFlBQVksR0FBRyxzQkFBc0IsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3hELENBQUMsQ0FBQTtJQWxESyxDQUFDO0lBRVAsUUFBUTtRQUNOLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDeEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUU1QixJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUMvQyxJQUFJLENBQUMscUJBQXFCLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUE7UUFDMUQsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztRQUN0RSxJQUFJLENBQUMscUJBQXFCLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDO1FBQzlFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7UUFDcEUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDO1FBRWhFLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLGlCQUFpQixFQUFFLENBQUM7UUFDaEQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksR0FBRyxrQkFBa0IsQ0FBQTtRQUMvQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxHQUFHLFlBQVksQ0FBQTtRQUM3QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQTtRQUM1QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQTtRQUN2QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsc0JBQXNCLEdBQUcsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUE7UUFFakUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUVwQyxDQUFDOzhHQXRDVSxzQkFBc0I7a0dBQXRCLHNCQUFzQiwwRENibkMsb3RDQWlDQTs7MkZEcEJhLHNCQUFzQjtrQkFKbEMsU0FBUzsrQkFDRSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBGaWxlVHlwZSwgRmlsZVVwbG9hZE9wdGlvbnMsIEZvcm1PcHRpb25zIH0gZnJvbSAnQGJuc2lnaHRzL2Jic2YtY29udHJvbHMnO1xyXG5pbXBvcnQgeyBVdGlsaXR5U2VydmljZSB9IGZyb20gJ0BibnNpZ2h0cy9iYnNmLXV0aWxpdGllcyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgTGljZW5zZU1vZGVsIH0gZnJvbSAnLi4vLi4vc2hhcmVkL21vZGVscy9MaWNlbnNlTW9kZWwvTGljZW5zZU1vZGVsJztcclxuaW1wb3J0IHsgQWNjb3VudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zaGFyZWQvU2VydmljZXMvQWNjb3VudFNlcnZpY2Uuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi11cGxvYWQtbGljZW5zZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3VwbG9hZC1saWNlbnNlLmNvbXBvbmVudC5odG1sJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFVwbG9hZExpY2Vuc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICAvL1BhZ2UgIGRhdGFcclxuICBFcnJvck1lc3NhZ2U6IHN0cmluZyA9IG51bGxcclxuXHJcbiAgLy9VcGxvYWQgTW9kZWwgQ29udHJvbHNcclxuICB1cGxvYWRGaWxlRm9ybSA9IG5ldyBGb3JtR3JvdXAoe30pO1xyXG4gIHVwbG9hZEZpbGVGb3JtT3B0aW9uczogRm9ybU9wdGlvbnNcclxuICBsaWNlbnNlRmlsZUlucHV0OiBGaWxlVXBsb2FkT3B0aW9ucztcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yXHJcbiAgICAoXHJcbiAgICAgIHByaXZhdGUgYWNjb3VudFNlcnZpY2U6IEFjY291bnRTZXJ2aWNlLFxyXG4gICAgICBwdWJsaWMgdXRpbGl0eVNlcnZpY2U6IFV0aWxpdHlTZXJ2aWNlLFxyXG4gICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnVwbG9hZEZpbGVGb3JtID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcbiAgICB0aGlzLnVwbG9hZEZpbGVGb3JtLnJlc2V0KCk7XHJcblxyXG4gICAgdGhpcy51cGxvYWRGaWxlRm9ybU9wdGlvbnMgPSBuZXcgRm9ybU9wdGlvbnMoKTtcclxuICAgIHRoaXMudXBsb2FkRmlsZUZvcm1PcHRpb25zLkZvcm1Hcm91cCA9IHRoaXMudXBsb2FkRmlsZUZvcm1cclxuICAgIHRoaXMudXBsb2FkRmlsZUZvcm1PcHRpb25zLkdldE1vZGVsRnVuY3Rpb24gPSB0aGlzLmdldEFkZExpY2Vuc2VNb2RlbDtcclxuICAgIHRoaXMudXBsb2FkRmlsZUZvcm1PcHRpb25zLlNlcnZpY2VTdWJtaXRGdW5jdGlvbiA9IHRoaXMuZ2V0QWRkTGljZW5zZUZ1bmN0aW9uO1xyXG4gICAgdGhpcy51cGxvYWRGaWxlRm9ybU9wdGlvbnMuT25TdWNjZXNzSGFuZGxlciA9IHRoaXMub25TdWNjZXNzSGFuZGxlcjtcclxuICAgIHRoaXMudXBsb2FkRmlsZUZvcm1PcHRpb25zLk9uRXJyb3JIYW5kbGVyID0gdGhpcy5vbkVycm9ySGFuZGxlcjtcclxuXHJcbiAgICB0aGlzLmxpY2Vuc2VGaWxlSW5wdXQgPSBuZXcgRmlsZVVwbG9hZE9wdGlvbnMoKTtcclxuICAgIHRoaXMubGljZW5zZUZpbGVJbnB1dC5OYW1lID0gXCJMaWNlbnNlRmlsZUlucHV0XCJcclxuICAgIHRoaXMubGljZW5zZUZpbGVJbnB1dC5MYWJlbEtleSA9IFwiVXBsb2FkRmlsZVwiXHJcbiAgICB0aGlzLmxpY2Vuc2VGaWxlSW5wdXQuSXNNdWx0aXBsZUZpbGUgPSBmYWxzZVxyXG4gICAgdGhpcy5saWNlbnNlRmlsZUlucHV0LklzUmVxdWlyZWQgPSB0cnVlXHJcbiAgICB0aGlzLmxpY2Vuc2VGaWxlSW5wdXQuRmlsZVVwbG9hZEFjY2VwdHNUeXBlcyA9IFtGaWxlVHlwZS5MaWNlbnNlXVxyXG5cclxuICAgIHRoaXMudXRpbGl0eVNlcnZpY2Uuc3RvcEJsb2NrVUkoKTtcclxuXHJcbiAgfVxyXG5cclxuICBnZXRBZGRMaWNlbnNlTW9kZWwgPSAoKSA9PiB7XHJcbiAgICBsZXQgcGFyYW1BcnJheTogYW55W10gPSBbXTtcclxuICAgIGxldCBSZXN1bHRNb2RlbCA9IHRoaXMudXBsb2FkRmlsZUZvcm0udmFsdWU7XHJcbiAgICBsZXQgTW9kZWwgPSBuZXcgTGljZW5zZU1vZGVsKCk7XHJcblxyXG4gICAgTW9kZWwuTGljZW5zZUZpbGUgPSB7XHJcbiAgICAgIEZpbGVCYXNlNjQ6IFJlc3VsdE1vZGVsW1wiTGljZW5zZUZpbGVJbnB1dFwiXS5GaWxlLkZpbGVCYXNlNjQsXHJcbiAgICAgIEZpbGVOYW1lOiBSZXN1bHRNb2RlbFtcIkxpY2Vuc2VGaWxlSW5wdXRcIl0uRmlsZS5GaWxlTmFtZSxcclxuICAgICAgRmlsZVNpemVJbk1COiBSZXN1bHRNb2RlbFtcIkxpY2Vuc2VGaWxlSW5wdXRcIl0uRmlsZS5GaWxlU2l6ZUluTUIsXHJcbiAgICAgIEZpbGVUeXBlOiBSZXN1bHRNb2RlbFtcIkxpY2Vuc2VGaWxlSW5wdXRcIl0uRmlsZS5GaWxlVHlwZVxyXG4gICAgfVxyXG4gICAgcGFyYW1BcnJheS5wdXNoKE1vZGVsKTtcclxuICAgIHJldHVybiBwYXJhbUFycmF5O1xyXG4gIH1cclxuXHJcbiAgZ2V0QWRkTGljZW5zZUZ1bmN0aW9uID0gKE1vZGVsKTogT2JzZXJ2YWJsZTxhbnk+ID0+IHtcclxuICAgIHJldHVybiB0aGlzLmFjY291bnRTZXJ2aWNlLnVwbG9hZExpY2Vuc2UoTW9kZWwpO1xyXG4gIH1cclxuICBvblN1Y2Nlc3NIYW5kbGVyID0gKHJlc3VsdCkgPT4ge1xyXG4gICAgaWYgKHJlc3VsdC52YWwpIHtcclxuICAgICAgdGhpcy51dGlsaXR5U2VydmljZS5ub3RpZnlTdWNjZXNzTWVzc2FnZSgpXHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL0FkbWluL2FjY291bnQvbG9naW4nXSlcclxuICAgIH1cclxuICB9XHJcbiAgb25FcnJvckhhbmRsZXIgPSAoZXJyKSA9PiB7XHJcbiAgICB0aGlzLkVycm9yTWVzc2FnZSA9IGBBbiBlcnJvciBvY2N1cnJlZDogJHtlcnIuZXJyb3J9YDtcclxuICB9XHJcblxyXG5cclxufVxyXG4iLCI8YmxvY2stdWk+PC9ibG9jay11aT5cclxuPGRpdiBjbGFzcz1cImZvcm0gdy0xMDBcIiBub3ZhbGlkYXRlPVwibm92YWxpZGF0ZVwiIGlkPVwia3Rfc2lnbl9pbl9mb3JtXCI+XHJcbiAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyIG1iLTEwXCI+XHJcbiAgICA8aDEgY2xhc3M9XCJ0ZXh0LWRhcmsgbWItM1wiPiB7e3V0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUoXCJVcGxvYWRMaWNlbnNlXCIpfX0gPzwvaDE+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxCQlNGLUZvcm0gW29wdGlvbnNdPVwidXBsb2FkRmlsZUZvcm1PcHRpb25zXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZnYtcm93IG1iLTEwXCI+XHJcbiAgICAgIDxCQlNGLUZpbGVVcGxhb2QgW29wdGlvbnNdPVwibGljZW5zZUZpbGVJbnB1dFwiIFtncm91cF09XCJ1cGxvYWRGaWxlRm9ybVwiPlxyXG4gICAgICA8L0JCU0YtRmlsZVVwbGFvZD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyXCI+XHJcbiAgICAgIDwhLS1iZWdpbjo6U3VibWl0IGJ1dHRvbi0tPlxyXG4gICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIlxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGJ0bi1zbVwiPlxyXG4gICAgICAgIHt7dXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZShcIlVwbG9hZFwiKX19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9CQlNGLUZvcm0+XHJcbiAgPGRpdiAqbmdJZj1cIkVycm9yTWVzc2FnZSE9bnVsbFwiPlxyXG4gICAgPHVsIGNsYXNzPVwiYWxlcnQgYWxlcnQtSW52YWxpZFZhbGlkYXRpb24gYmctbGlnaHQtZGFuZ2VyIGxpc3QtdW5zdHlsZWRcIj5cclxuICAgICAgPGxpPlxyXG4gICAgICAgIHt7RXJyb3JNZXNzYWdlfX1cclxuICAgICAgPC9saT5cclxuICAgIDwvdWw+XHJcbiAgICA8YSBocmVmPVwiL0FkbWluL2FjY291bnQvbG9naW5cIlxyXG4gICAgICAgY2xhc3M9XCJsaW5rLXByaW1hcnkgZnMtNiBmdy1ib2xkZXIgZC1mbGV4IGp1c3RpZnktY29udGVudC1lbmQgbXQtMlwiPlxyXG4gICAgICA8aSBjbGFzcz1cImZhcyBmYS1hcnJvdy1sZWZ0IHRleHQtbGlnaHQtcHJpbWFyeSBtZS0yIGFuY2hvciBcIj48L2k+IHt7dXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZShcIkJhY2tcIil9fVxyXG4gICAgPC9hPlxyXG5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbjwhLS1lbmQ6OkZvcm0tLT5cclxuIl19
|
|
@@ -314,11 +314,11 @@ export class EditAuthConfigurationComponent extends AppBaseComponent {
|
|
|
314
314
|
});
|
|
315
315
|
}
|
|
316
316
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: EditAuthConfigurationComponent, deps: [{ token: i0.Injector }, { token: i1.MasterLayoutService }, { token: i2.ConfigurationsService }, { token: i3.UserService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
317
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.6", type: EditAuthConfigurationComponent, selector: "auth-configuration-edit", inputs: { pagingElement: "pagingElement", onSuccessTakePenaltyHandler: "onSuccessTakePenaltyHandler" }, viewQueries: [{ propertyName: "modal", first: true, predicate: ["editModal"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #editModal let-modal>\r\n <div class=\"modal-header\">\r\n <h4 class=\"modal-title\">\r\n {{translate(\"EditAuthConfiguration\")}}\r\n </h4>\r\n <button type=\"button\" data-dismiss=\"modal\" class=\"btn btn-icon btn-sm\" (click)=\"modal.dismiss()\">\r\n <div class=\"svg-icon svg-icon-4 svg-icon-hover-brand\" [inlineSVG]=\"'/assets/images/close-modal.svg'\">\r\n </div>\r\n </button>\r\n </div>\r\n <BBSF-Form [options]=\"editFormOptions\">\r\n <div class=\"modal-body\">\r\n <ng-container *ngIf=\"modeId == authenticationModeEnumValue.UAEPass\">\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <BBSF-TextBox [options]=\"baseURLTextBox\" [group]=\"editForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-TextBox [options]=\"clientIdTextBox\" [group]=\"editForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-TextBox [options]=\"secretKeyTextBox\" [group]=\"editForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-TextBox [options]=\"redirectURLTextBox\" [group]=\"editForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-DropdownList (OnChange)=\"onChangeAccessLevels($event)\" [options]=\"accessLevelDropdown\" [group]=\"editForm\"></BBSF-DropdownList>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-DropdownList (OnChange)=\"changePermissionSet($event)\" [options]=\"userPermissionSetDropdown\" [group]=\"editForm\"></BBSF-DropdownList>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-Toggleslide (OnChange)=\"onChangeSOPPermissionToggleValue($event)\" [options]=\"sopPermissionMappingToggle\"\r\n [group]=\"editForm\"></BBSF-Toggleslide>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-Toggleslide [options]=\"linkingExistingUsersToggle\" (OnChange)=\"onLinkingExistingUsersToggleValue($event)\"\r\n [group]=\"editForm\"></BBSF-Toggleslide>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-Toggleslide [options]=\"importingNewUserToggle\" [group]=\"editForm\"></BBSF-Toggleslide>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-Toggleslide [options]=\"updateUserInformationOnLoginToggle\" [group]=\"editForm\"></BBSF-Toggleslide>\r\n </div>\r\n </div>\r\n\r\n <
|
|
317
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.6", type: EditAuthConfigurationComponent, selector: "auth-configuration-edit", inputs: { pagingElement: "pagingElement", onSuccessTakePenaltyHandler: "onSuccessTakePenaltyHandler" }, viewQueries: [{ propertyName: "modal", first: true, predicate: ["editModal"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #editModal let-modal>\r\n <div class=\"modal-header\">\r\n <h4 class=\"modal-title\">\r\n {{translate(\"EditAuthConfiguration\")}}\r\n </h4>\r\n <button type=\"button\" data-dismiss=\"modal\" class=\"btn btn-icon btn-sm\" (click)=\"modal.dismiss()\">\r\n <div class=\"svg-icon svg-icon-4 svg-icon-hover-brand\" [inlineSVG]=\"'/assets/images/close-modal.svg'\">\r\n </div>\r\n </button>\r\n </div>\r\n <BBSF-Form [options]=\"editFormOptions\">\r\n <div class=\"modal-body\">\r\n <ng-container *ngIf=\"modeId == authenticationModeEnumValue.UAEPass\">\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <BBSF-TextBox [options]=\"baseURLTextBox\" [group]=\"editForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-TextBox [options]=\"clientIdTextBox\" [group]=\"editForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-TextBox [options]=\"secretKeyTextBox\" [group]=\"editForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-TextBox [options]=\"redirectURLTextBox\" [group]=\"editForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-DropdownList (OnChange)=\"onChangeAccessLevels($event)\" [options]=\"accessLevelDropdown\" [group]=\"editForm\"></BBSF-DropdownList>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-DropdownList (OnChange)=\"changePermissionSet($event)\" [options]=\"userPermissionSetDropdown\" [group]=\"editForm\"></BBSF-DropdownList>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-Toggleslide (OnChange)=\"onChangeSOPPermissionToggleValue($event)\" [options]=\"sopPermissionMappingToggle\"\r\n [group]=\"editForm\"></BBSF-Toggleslide>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-Toggleslide [options]=\"linkingExistingUsersToggle\" (OnChange)=\"onLinkingExistingUsersToggleValue($event)\"\r\n [group]=\"editForm\"></BBSF-Toggleslide>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-Toggleslide [options]=\"importingNewUserToggle\" [group]=\"editForm\"></BBSF-Toggleslide>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-Toggleslide [options]=\"updateUserInformationOnLoginToggle\" [group]=\"editForm\"></BBSF-Toggleslide>\r\n </div>\r\n </div>\r\n\r\n <div class=\"configuration-header\" *ngIf=\"showUserTypePermissionsMapping\">\r\n <h5>{{translate(\"AccessLevelsPermissionMapping\")}}</h5>\r\n <div class=\"row\">\r\n <div class=\"col-md-6\" *ngFor=\"let level of selectedAccessLevels\">\r\n <BBSF-DropdownList [options]=\"initDropDownOptions(level)\" [group]=\"editForm\"></BBSF-DropdownList>\r\n </div>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"showUserTypeLinkingMapping\">\r\n <div class=\"configuration-header\">\r\n <h5>{{translate(\"LinkingOptions\")}}</h5>\r\n <div class=\"row\">\r\n <div class=\"col-md-6\" *ngFor=\"let level of selectedAccessLevels\">\r\n <BBSF-DropdownList [options]=\"linkingModeDropdown\" [group]=\"editForm\"></BBSF-DropdownList>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"configuration-header\">\r\n <h5>{{translate(\"LinkingAttributesOptions\")}}</h5>\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <BBSF-CheckBox [options]=\"nameArCheckbox\" [group]=\"editForm\"></BBSF-CheckBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-CheckBox [options]=\"nameEnCheckbox\" [group]=\"editForm\"></BBSF-CheckBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-CheckBox [options]=\"emailCheckbox\" [group]=\"editForm\"></BBSF-CheckBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-CheckBox [options]=\"eIdCheckbox\" [group]=\"editForm\"></BBSF-CheckBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-CheckBox [options]=\"mobileCheckbox\" [group]=\"editForm\"></BBSF-CheckBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-CheckBox [options]=\"nationalityCheckbox\" [group]=\"editForm\"></BBSF-CheckBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-CheckBox [options]=\"genderCheckbox\" [group]=\"editForm\"></BBSF-CheckBox>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n\r\n\r\n </ng-container>\r\n\r\n <div class=\"row\" *ngIf=\"modeId == authenticationModeEnumValue.AzureAD\">\r\n\r\n </div>\r\n </div>\r\n <div class=\"modal-footer\">\r\n <button type=\"button\" class=\"btn btn-sm btn-light\" (click)=\"modal.dismiss()\">\r\n {{translate(\"Cancel\")}}\r\n </button>\r\n <button appPreventDoubleClick type=\"submit\" class=\"btn btn-sm btn-brand\">\r\n {{translate('Save')}}\r\n </button>\r\n </div>\r\n </BBSF-Form>\r\n</ng-template>", dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.TextboxComponent, selector: "BBSF-TextBox", inputs: ["group", "options"], outputs: ["OnChange", "OnBlur"] }, { kind: "component", type: i5.CheckBoxComponent, selector: "BBSF-CheckBox", inputs: ["group", "options"], outputs: ["OnChange"] }, { kind: "component", type: i5.DropdownListComponent, selector: "BBSF-DropdownList", inputs: ["group", "options"], outputs: ["OnChange", "onClear"] }, { kind: "component", type: i5.ToggleslideComponent, selector: "BBSF-Toggleslide", inputs: ["group", "options"], outputs: ["OnChange"] }, { kind: "component", type: i5.FormComponent, selector: "BBSF-Form", inputs: ["options"], outputs: ["OnChange"] }, { kind: "directive", type: i6.InlineSVGDirective, selector: "[inlineSVG]", inputs: ["inlineSVG", "resolveSVGUrl", "replaceContents", "prepend", "injectComponent", "cacheSVG", "setSVGAttributes", "removeSVGAttributes", "forceEvalStyles", "evalScripts", "fallbackImgUrl", "fallbackSVG", "onSVGLoaded"], outputs: ["onSVGInserted", "onSVGFailed"] }] }); }
|
|
318
318
|
}
|
|
319
319
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: EditAuthConfigurationComponent, decorators: [{
|
|
320
320
|
type: Component,
|
|
321
|
-
args: [{ selector: 'auth-configuration-edit', template: "<ng-template #editModal let-modal>\r\n <div class=\"modal-header\">\r\n <h4 class=\"modal-title\">\r\n {{translate(\"EditAuthConfiguration\")}}\r\n </h4>\r\n <button type=\"button\" data-dismiss=\"modal\" class=\"btn btn-icon btn-sm\" (click)=\"modal.dismiss()\">\r\n <div class=\"svg-icon svg-icon-4 svg-icon-hover-brand\" [inlineSVG]=\"'/assets/images/close-modal.svg'\">\r\n </div>\r\n </button>\r\n </div>\r\n <BBSF-Form [options]=\"editFormOptions\">\r\n <div class=\"modal-body\">\r\n <ng-container *ngIf=\"modeId == authenticationModeEnumValue.UAEPass\">\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <BBSF-TextBox [options]=\"baseURLTextBox\" [group]=\"editForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-TextBox [options]=\"clientIdTextBox\" [group]=\"editForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-TextBox [options]=\"secretKeyTextBox\" [group]=\"editForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-TextBox [options]=\"redirectURLTextBox\" [group]=\"editForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-DropdownList (OnChange)=\"onChangeAccessLevels($event)\" [options]=\"accessLevelDropdown\" [group]=\"editForm\"></BBSF-DropdownList>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-DropdownList (OnChange)=\"changePermissionSet($event)\" [options]=\"userPermissionSetDropdown\" [group]=\"editForm\"></BBSF-DropdownList>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-Toggleslide (OnChange)=\"onChangeSOPPermissionToggleValue($event)\" [options]=\"sopPermissionMappingToggle\"\r\n [group]=\"editForm\"></BBSF-Toggleslide>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-Toggleslide [options]=\"linkingExistingUsersToggle\" (OnChange)=\"onLinkingExistingUsersToggleValue($event)\"\r\n [group]=\"editForm\"></BBSF-Toggleslide>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-Toggleslide [options]=\"importingNewUserToggle\" [group]=\"editForm\"></BBSF-Toggleslide>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-Toggleslide [options]=\"updateUserInformationOnLoginToggle\" [group]=\"editForm\"></BBSF-Toggleslide>\r\n </div>\r\n </div>\r\n\r\n <
|
|
321
|
+
args: [{ selector: 'auth-configuration-edit', template: "<ng-template #editModal let-modal>\r\n <div class=\"modal-header\">\r\n <h4 class=\"modal-title\">\r\n {{translate(\"EditAuthConfiguration\")}}\r\n </h4>\r\n <button type=\"button\" data-dismiss=\"modal\" class=\"btn btn-icon btn-sm\" (click)=\"modal.dismiss()\">\r\n <div class=\"svg-icon svg-icon-4 svg-icon-hover-brand\" [inlineSVG]=\"'/assets/images/close-modal.svg'\">\r\n </div>\r\n </button>\r\n </div>\r\n <BBSF-Form [options]=\"editFormOptions\">\r\n <div class=\"modal-body\">\r\n <ng-container *ngIf=\"modeId == authenticationModeEnumValue.UAEPass\">\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <BBSF-TextBox [options]=\"baseURLTextBox\" [group]=\"editForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-TextBox [options]=\"clientIdTextBox\" [group]=\"editForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-TextBox [options]=\"secretKeyTextBox\" [group]=\"editForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-TextBox [options]=\"redirectURLTextBox\" [group]=\"editForm\"></BBSF-TextBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-DropdownList (OnChange)=\"onChangeAccessLevels($event)\" [options]=\"accessLevelDropdown\" [group]=\"editForm\"></BBSF-DropdownList>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-DropdownList (OnChange)=\"changePermissionSet($event)\" [options]=\"userPermissionSetDropdown\" [group]=\"editForm\"></BBSF-DropdownList>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-Toggleslide (OnChange)=\"onChangeSOPPermissionToggleValue($event)\" [options]=\"sopPermissionMappingToggle\"\r\n [group]=\"editForm\"></BBSF-Toggleslide>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-Toggleslide [options]=\"linkingExistingUsersToggle\" (OnChange)=\"onLinkingExistingUsersToggleValue($event)\"\r\n [group]=\"editForm\"></BBSF-Toggleslide>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-Toggleslide [options]=\"importingNewUserToggle\" [group]=\"editForm\"></BBSF-Toggleslide>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-Toggleslide [options]=\"updateUserInformationOnLoginToggle\" [group]=\"editForm\"></BBSF-Toggleslide>\r\n </div>\r\n </div>\r\n\r\n <div class=\"configuration-header\" *ngIf=\"showUserTypePermissionsMapping\">\r\n <h5>{{translate(\"AccessLevelsPermissionMapping\")}}</h5>\r\n <div class=\"row\">\r\n <div class=\"col-md-6\" *ngFor=\"let level of selectedAccessLevels\">\r\n <BBSF-DropdownList [options]=\"initDropDownOptions(level)\" [group]=\"editForm\"></BBSF-DropdownList>\r\n </div>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"showUserTypeLinkingMapping\">\r\n <div class=\"configuration-header\">\r\n <h5>{{translate(\"LinkingOptions\")}}</h5>\r\n <div class=\"row\">\r\n <div class=\"col-md-6\" *ngFor=\"let level of selectedAccessLevels\">\r\n <BBSF-DropdownList [options]=\"linkingModeDropdown\" [group]=\"editForm\"></BBSF-DropdownList>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"configuration-header\">\r\n <h5>{{translate(\"LinkingAttributesOptions\")}}</h5>\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <BBSF-CheckBox [options]=\"nameArCheckbox\" [group]=\"editForm\"></BBSF-CheckBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-CheckBox [options]=\"nameEnCheckbox\" [group]=\"editForm\"></BBSF-CheckBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-CheckBox [options]=\"emailCheckbox\" [group]=\"editForm\"></BBSF-CheckBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-CheckBox [options]=\"eIdCheckbox\" [group]=\"editForm\"></BBSF-CheckBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-CheckBox [options]=\"mobileCheckbox\" [group]=\"editForm\"></BBSF-CheckBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-CheckBox [options]=\"nationalityCheckbox\" [group]=\"editForm\"></BBSF-CheckBox>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <BBSF-CheckBox [options]=\"genderCheckbox\" [group]=\"editForm\"></BBSF-CheckBox>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n\r\n\r\n </ng-container>\r\n\r\n <div class=\"row\" *ngIf=\"modeId == authenticationModeEnumValue.AzureAD\">\r\n\r\n </div>\r\n </div>\r\n <div class=\"modal-footer\">\r\n <button type=\"button\" class=\"btn btn-sm btn-light\" (click)=\"modal.dismiss()\">\r\n {{translate(\"Cancel\")}}\r\n </button>\r\n <button appPreventDoubleClick type=\"submit\" class=\"btn btn-sm btn-brand\">\r\n {{translate('Save')}}\r\n </button>\r\n </div>\r\n </BBSF-Form>\r\n</ng-template>" }]
|
|
322
322
|
}], ctorParameters: () => [{ type: i0.Injector }, { type: i1.MasterLayoutService }, { type: i2.ConfigurationsService }, { type: i3.UserService }], propDecorators: { pagingElement: [{
|
|
323
323
|
type: Input
|
|
324
324
|
}], onSuccessTakePenaltyHandler: [{
|
|
@@ -327,4 +327,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImpor
|
|
|
327
327
|
type: ViewChild,
|
|
328
328
|
args: ["editModal", { static: false }]
|
|
329
329
|
}] } });
|
|
330
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1jb25maWd1cmF0aW9uLWVkaXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1hZG1pbi1wb3J0YWwvc3JjL2xpYi9QYWdlcy9jb25maWd1cmF0aW9ucy9hdXRoLWNvbmZpZ3VyYXRpb24vYXV0aC1jb25maWd1cmF0aW9uLWVkaXQvYXV0aC1jb25maWd1cmF0aW9uLWVkaXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1hZG1pbi1wb3J0YWwvc3JjL2xpYi9QYWdlcy9jb25maWd1cmF0aW9ucy9hdXRoLWNvbmZpZ3VyYXRpb24vYXV0aC1jb25maWd1cmF0aW9uLWVkaXQvYXV0aC1jb25maWd1cmF0aW9uLWVkaXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBd0IsS0FBSyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHeEssT0FBTyxFQUFFLCtCQUErQixFQUFFLG9CQUFvQixFQUFxRCxNQUFNLCtEQUErRCxDQUFDO0FBQ3pMLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtFQUFrRSxDQUFDOzs7Ozs7OztBQVM1SSxNQUFNLE9BQU8sOEJBQStCLFNBQVEsZ0JBQWdCO0lBK0NsRSxZQUFZO0lBRVosWUFBWTtJQUVaLFlBQ1UsUUFBa0IsRUFDbEIsbUJBQXdDLEVBQ3hDLHFCQUE0QyxFQUM1QyxXQUF3QjtRQUVoQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFMUixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQW5EbEMsYUFBUSxHQUFHLElBQUksU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzdCLG9CQUFlLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUdwQyxXQUFNLEdBQVcsU0FBUyxDQUFDO1FBQzNCLGdDQUEyQixHQUFHLGtCQUFrQixDQUFDO1FBa0JqRCw4QkFBeUIsR0FBeUIsSUFBSSxvQkFBb0IsRUFBRSxDQUFDO1FBRTdFLHNCQUFpQixHQUFHLEVBQUUsQ0FBQztRQUN2QixvQkFBZSxHQUFHLEVBQUUsQ0FBQztRQUVyQixtQ0FBOEIsR0FBWSxLQUFLLENBQUM7UUFDaEQsK0JBQTBCLEdBQVksS0FBSyxDQUFDO1FBRTVDLHdCQUFtQixHQUFVLEVBQUUsQ0FBQztRQUNoQyx5QkFBb0IsR0FBVSxFQUFFLENBQUM7UUE4TWpDLGdCQUFXLEdBQUcsR0FBRyxFQUFFO1lBQ2pCLElBQUksV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBWSxDQUFDO1lBQzdDLElBQUksU0FBUyxHQUFvQyxJQUFJLCtCQUErQixFQUFFLENBQUM7WUFDdkYsU0FBUyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQy9CLFNBQVMsQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3JFLE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFCLENBQUMsQ0FBQTtRQUVELHNCQUFpQixHQUFHLENBQUMsU0FBMEMsRUFBbUIsRUFBRTtZQUNsRixPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxxQ0FBcUMsQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUNwRixDQUFDLENBQUE7UUFFRCxxQkFBZ0IsR0FBRyxHQUFTLEVBQUU7WUFDNUIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGVBQWUsRUFBRSxDQUFBO1FBQzVDLENBQUMsQ0FBQTtJQXRNRCxDQUFDO0lBRUQsUUFBUTtJQUNSLENBQUM7SUFDRCxnQkFBZ0I7SUFFaEIsU0FBUyxDQUFDLEdBQVc7UUFDbkIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsSUFBSSxJQUFJLEdBQVUsRUFBRSxDQUFDO1FBQ3JCLEtBQUssSUFBSSxJQUFJLElBQUksZ0JBQWdCLEVBQUU7WUFDakMsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDO2dCQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDO29CQUNSLEdBQUcsRUFBRSxDQUFDLElBQUk7b0JBQ1YsS0FBSyxFQUFFLGdCQUFnQixDQUFDLElBQUksQ0FBQztpQkFDdkIsQ0FBQyxDQUFBO1NBQ1o7UUFDRCxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO1FBQ2hDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELHNCQUFzQjtRQUNwQixJQUFJLElBQUksR0FBVSxFQUFFLENBQUM7UUFDckIsS0FBSyxJQUFJLElBQUksSUFBSSxrQkFBa0IsRUFBRTtZQUNuQyxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUM7Z0JBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUM7b0JBQ1IsR0FBRyxFQUFFLENBQUMsSUFBSTtvQkFDVixLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDekMsQ0FBQyxDQUFBO1NBQ1o7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxHQUFXO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxZQUFZO0lBRVosU0FBUyxDQUFDLElBQXdCLEVBQUUsZ0JBQWlEO1FBQ25GLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ25CLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLHNCQUFzQixFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUN2QjtRQUVELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ3pDLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxRQUFlLENBQUM7UUFDdEQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUMxRCxJQUFJLENBQUMsZUFBZSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDekQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUM7UUFDcEUsSUFBSSxDQUFDLGVBQWUsQ0FBQywwQkFBMEIsR0FBRyxLQUFLLENBQUM7UUFDeEQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7UUFFOUQsUUFBUSxJQUFJLEVBQUU7WUFDWixLQUFLLGtCQUFrQixDQUFDLE9BQU87Z0JBQzdCLElBQUksQ0FBQyx5QkFBeUIsR0FBRyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7Z0JBRWhFLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxjQUFjLEVBQUUsQ0FBQztnQkFDM0MsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFDO2dCQUNyQyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsR0FBRyxTQUFTLENBQUM7Z0JBQ3pDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUM7Z0JBQzFDLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxHQUFHLGFBQWEsQ0FBQyxRQUFRLENBQUM7Z0JBQ3RELElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxPQUFPLENBQUM7Z0JBRW5FLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxjQUFjLEVBQUUsQ0FBQztnQkFDNUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEdBQUcsVUFBVSxDQUFDO2dCQUN2QyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUM7Z0JBQzNDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUM7Z0JBQzNDLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxHQUFHLGFBQWEsQ0FBQyxRQUFRLENBQUM7Z0JBQ3ZELElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxRQUFRLENBQUM7Z0JBRXJFLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLGNBQWMsRUFBRSxDQUFDO2dCQUM3QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxHQUFHLFdBQVcsQ0FBQztnQkFDekMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsR0FBRyxXQUFXLENBQUM7Z0JBQzdDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQztnQkFDNUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsR0FBRyxhQUFhLENBQUMsUUFBUSxDQUFDO2dCQUN4RCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxTQUFTLENBQUM7Z0JBRXZFLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLGNBQWMsRUFBRSxDQUFDO2dCQUMvQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxHQUFHLGFBQWEsQ0FBQztnQkFDN0MsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsR0FBRyxhQUFhLENBQUM7Z0JBQ2pELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQztnQkFDOUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsR0FBRyxhQUFhLENBQUMsUUFBUSxDQUFDO2dCQUMxRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxXQUFXLENBQUM7Z0JBRTNFLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO2dCQUNqRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxHQUFHLGNBQWMsQ0FBQztnQkFDL0MsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsR0FBRyxhQUFhLENBQUM7Z0JBQ2xELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO2dCQUNqRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxZQUFZLENBQUM7Z0JBQ3JGLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7Z0JBRWxFLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO2dCQUNqRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxHQUFHLGFBQWEsQ0FBQztnQkFDOUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsR0FBRyxhQUFhLENBQUM7Z0JBQ2xELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO2dCQUNoRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxXQUFXLENBQUM7Z0JBQ3BGLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7Z0JBRXBFLElBQUksQ0FBQywwQkFBMEIsR0FBRyxJQUFJLGtCQUFrQixFQUFFLENBQUM7Z0JBQzNELElBQUksQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLEdBQUcsc0JBQXNCLENBQUM7Z0JBQzlELElBQUksQ0FBQywwQkFBMEIsQ0FBQyxRQUFRLEdBQUcsc0JBQXNCLENBQUM7Z0JBQ2xFLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLDBCQUEwQixDQUFDO2dCQUVsRyxJQUFJLENBQUMsMEJBQTBCLEdBQUcsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO2dCQUMzRCxJQUFJLENBQUMsMEJBQTBCLENBQUMsSUFBSSxHQUFHLHNCQUFzQixDQUFDO2dCQUM5RCxJQUFJLENBQUMsMEJBQTBCLENBQUMsUUFBUSxHQUFHLHNCQUFzQixDQUFDO2dCQUNsRSxJQUFJLENBQUMsMEJBQTBCLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQywwQkFBMEIsQ0FBQztnQkFFbEcsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksa0JBQWtCLEVBQUUsQ0FBQztnQkFDdkQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksR0FBRyxrQkFBa0IsQ0FBQztnQkFDdEQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFFBQVEsR0FBRyxrQkFBa0IsQ0FBQztnQkFDMUQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUMsc0JBQXNCLENBQUM7Z0JBRTFGLElBQUksQ0FBQyxrQ0FBa0MsR0FBRyxJQUFJLGtCQUFrQixFQUFFLENBQUM7Z0JBQ25FLElBQUksQ0FBQyxrQ0FBa0MsQ0FBQyxJQUFJLEdBQUcsOEJBQThCLENBQUM7Z0JBQzlFLElBQUksQ0FBQyxrQ0FBa0MsQ0FBQyxRQUFRLEdBQUcsOEJBQThCLENBQUM7Z0JBQ2xGLElBQUksQ0FBQyxrQ0FBa0MsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLGtDQUFrQyxDQUFDO2dCQUVsSCxJQUFJLENBQUMseUJBQXlCLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztnQkFDdkQsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksR0FBRyxnQkFBZ0IsQ0FBQTtnQkFDdEQsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFFBQVEsR0FBRyxnQkFBZ0IsQ0FBQTtnQkFDMUQsSUFBSSxDQUFDLHlCQUF5QixDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUMsb0JBQW9CLENBQUM7Z0JBQ25HLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO2dCQUN0RCxJQUFJLENBQUMseUJBQXlCLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO2dCQUN4RCxJQUFJLENBQUMseUJBQXlCLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztnQkFFakQsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO2dCQUM1QyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksR0FBRyxRQUFRLENBQUE7Z0JBQ25DLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztnQkFDeEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUM7Z0JBRWxGLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztnQkFDNUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFBO2dCQUNuQyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7Z0JBQ3hDLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDO2dCQUVsRixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7Z0JBQzNDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQTtnQkFDakMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO2dCQUN0QyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQztnQkFFaEYsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO2dCQUN6QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUE7Z0JBQzdCLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztnQkFDbEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUM7Z0JBRTVFLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztnQkFDNUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFBO2dCQUNuQyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7Z0JBQ3hDLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDO2dCQUVsRixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztnQkFDakQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksR0FBRyxhQUFhLENBQUE7Z0JBQzdDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLEdBQUcsYUFBYSxDQUFDO2dCQUNsRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDO2dCQUU1RixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7Z0JBQzVDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQTtnQkFDbkMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO2dCQUN4QyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQztnQkFFbEYsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7Z0JBQ3pCLElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxJQUFJLENBQUMseUJBQXlCLENBQUMsMEJBQTBCLENBQUMsQ0FBQztnQkFDakcsSUFBSSxDQUFDLGlDQUFpQyxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO2dCQUNsRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFlBQVksQ0FBQyxDQUFDO2dCQUV2RSxJQUFJLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxvQkFBb0I7b0JBQ3JELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMseUJBQXlCLENBQUMsb0JBQW9CLENBQUMsQ0FBQztnQkFFaEYsTUFBTTtZQUNSLEtBQUssa0JBQWtCLENBQUMsT0FBTztnQkFDN0IsTUFBTTtZQUVSO2dCQUNFLE1BQU07U0FDVDtRQUNELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFxQixDQUFDLENBQUM7SUFDeEUsQ0FBQztJQWtCRCx3QkFBd0IsQ0FBQyxTQUFjO1FBQ3JDLE9BQU87WUFDTCxPQUFPLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDO1lBQzVDLFFBQVEsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUM7WUFDOUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDO1lBQ2hELFdBQVcsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQztZQUNwRCxZQUFZLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUM7WUFDdEQsMEJBQTBCLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLENBQUM7WUFDM0Usc0JBQXNCLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUM7WUFDbkUsa0NBQWtDLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxrQ0FBa0MsQ0FBQyxJQUFJLENBQUM7WUFDM0Ysb0JBQW9CLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUM7WUFDcEUsMEJBQTBCLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLENBQUM7WUFDM0UsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLHVCQUF1QixFQUFFO1lBQ25ELGVBQWUsRUFBRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsU0FBUyxDQUFDO1lBQ3JELFdBQVcsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQztTQUM5QixDQUFBO0lBQzNCLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxTQUFjO1FBQ2pDLE9BQU87WUFDTCxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDO1lBQzNDLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUM7WUFDM0MsS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQztZQUN6QyxHQUFHLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO1lBQ3JDLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUM7WUFDM0MsV0FBVyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDO1lBQ3JELE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUM7U0FDbEIsQ0FBQztJQUM5QixDQUFDO0lBRUQsdUJBQXVCO1FBQ3JCLElBQUksT0FBTyxHQUFnQyxFQUFFLENBQUM7UUFDOUMsSUFBSSxJQUFJLENBQUMsOEJBQThCLEVBQUU7WUFDdkMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDeEMsT0FBTyxDQUFDLElBQUksQ0FBQztvQkFDWCxRQUFRLEVBQUUsS0FBSztvQkFDZixXQUFXLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMseUJBQXlCLEtBQUssRUFBRSxDQUFDLEVBQUUsS0FBSztpQkFDaEQsQ0FBQyxDQUFBO1lBQ2pDLENBQUMsQ0FBQyxDQUFBO1NBQ0g7UUFFRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRUQsNEJBQTRCO0lBRTVCLGlDQUFpQyxDQUFDLEtBQWM7UUFDOUMsSUFBSSxDQUFDLDBCQUEwQixHQUFHLEtBQUssQ0FBQztRQUN4QyxJQUFJLElBQUksQ0FBQywwQkFBMEI7WUFDakMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7O1lBRTVGLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBRW5HLENBQUM7SUFFRCxnQ0FBZ0MsQ0FBQyxLQUFjO1FBQzdDLElBQUksQ0FBQyw4QkFBOEIsR0FBRyxLQUFLLENBQUM7UUFDNUMsSUFBSSxDQUFDLElBQUksQ0FBQyw4QkFBOEIsRUFBRTtZQUN4QyxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUN4QyxJQUFJLENBQUMsYUFBYSxDQUFDLHlCQUF5QixLQUFLLEVBQUUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDdEUsQ0FBQyxDQUFDLENBQUE7U0FDSDtJQUNILENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxFQUFPO1FBQ3pCLElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDUCxJQUFJLENBQUMsZUFBZSxHQUFHLEVBQUUsQ0FBQztZQUMxQixPQUFPO1NBQ1I7UUFFRCxJQUFJLEdBQUcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDcEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyx1QkFBdUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNqRSxJQUFJLENBQUMsZUFBZSxHQUFHLE1BQWEsQ0FBQztRQUN2QyxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxpQkFBaUI7UUFDZixJQUFJLENBQUMsV0FBVyxDQUFDLHFCQUFxQixFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3ZELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxHQUFHLENBQUMsY0FBYyxDQUFDO1lBQzVDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1FBQ3JFLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELG1CQUFtQixDQUFDLFFBQWE7UUFDL0IsSUFBSSx5QkFBeUIsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO1FBQ3RELHlCQUF5QixDQUFDLElBQUksR0FBRyx5QkFBeUIsUUFBUSxFQUFFLENBQUM7UUFDckUseUJBQXlCLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN4SCx5QkFBeUIsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQzVDLHlCQUF5QixDQUFDLFFBQVEsR0FBRyxhQUFhLENBQUMsUUFBUSxDQUFDO1FBQzVELHlCQUF5QixDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQzVELHlCQUF5QixDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsZ0NBQWdDLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFMUYsT0FBTyx5QkFBeUIsQ0FBQztJQUNuQyxDQUFDO0lBRUQsb0JBQW9CLENBQUMsYUFBa0I7UUFDckMsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzlFLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxhQUFhLENBQUM7UUFFMUMsSUFBSSxXQUFXLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDNUYsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUN0QixJQUFJLENBQUMsYUFBYSxDQUFDLHlCQUF5QixDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbEUsQ0FBQyxDQUFDLENBQUE7SUFFSixDQUFDO0lBRUQsZ0NBQWdDLENBQUMsUUFBZ0I7UUFDL0MsT0FBTyxJQUFJLENBQUMseUJBQXlCLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsSUFBSSxRQUFRLENBQUMsRUFBRSxXQUFXLENBQUM7SUFDM0csQ0FBQztJQUNELFlBQVk7SUFHWiw0QkFBNEI7SUFFNUIscUJBQXFCLENBQUMsbUJBQTBCLEVBQUUsSUFBZSxFQUFFLFdBQXdCO1FBQ3pGLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNwQyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztnQkFDeEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQzs7Z0JBRTFELE9BQU8sQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELHdCQUF3QixDQUFDLG1CQUEwQixFQUFFLElBQWUsRUFBRSxXQUF3QjtRQUM1RixtQkFBbUIsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDcEMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQzs7Z0JBRTdELE9BQU8sQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELHNCQUFzQixDQUFDLHFCQUE0QixFQUFFLElBQWU7UUFDbEUscUJBQXFCLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3JDLElBQUksV0FBVyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3hDLElBQUksV0FBVztnQkFDYixXQUFXLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDeEIsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDOzhHQTVZVSw4QkFBOEI7a0dBQTlCLDhCQUE4QixrU0NmM0MscTFLQThHYzs7MkZEL0ZELDhCQUE4QjtrQkFKMUMsU0FBUzsrQkFDRSx5QkFBeUI7NktBSTFCLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csMkJBQTJCO3NCQUFuQyxLQUFLO2dCQUlxQyxLQUFLO3NCQUEvQyxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEluamVjdG9yLCBJbnB1dCwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBBcHBCYXNlQ29tcG9uZW50LCBDaGVja0JveE9wdGlvbnMsIENvbnRyb2xMYXlvdXQsIERyb3Bkb3duT3B0aW9ucywgRm9ybU9wdGlvbnMsIElucHV0VHlwZSwgVGV4dEJveE9wdGlvbnMsIFRvZ2dsZVNsaWRlT3B0aW9ucyB9IGZyb20gJ0BibnNpZ2h0cy9iYnNmLWNvbnRyb2xzJztcclxuaW1wb3J0IHsgTWFzdGVyTGF5b3V0U2VydmljZSB9IGZyb20gJ0BibnNpZ2h0cy9iYnNmLXV0aWxpdGllcyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQkJTRkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbiwgVUFFUGFzc0NvbmZpZ3VyYXRpb24sIFVBRVBhc3NVc2VySW5mb01hcHBpbmcsIFVBRVBhc3NVc2VyVHlwZVBlcm1pc3Npb24gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvbW9kZWxzL0NvbmZpZ3VyYXRpb25Nb2RlbHMvQ29uZmlndXJhdGlvbk1vZGVsJztcclxuaW1wb3J0IHsgQXV0aGVudGljYXRpb25Nb2RlLCBVQUVQYXNzTGlua2luZ01vZGUsIFVBRVBhc3NVc2VyVHlwZXMgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvRW51bXMvY29uZmlndXJhdGlvbi9hdXRoZW50ZWNhdGlvbi1jb25maWd1cmF0aW9uJztcclxuaW1wb3J0IHsgQ29uZmlndXJhdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL1NlcnZpY2VzL0NvbmZpZ3VyYXRpb25zU2VydmljZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTmdiTW9kYWxPcHRpb25zIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xyXG5pbXBvcnQgeyBVc2VyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9TZXJ2aWNlcy91c2VyU2VydmljZS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXV0aC1jb25maWd1cmF0aW9uLWVkaXQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hdXRoLWNvbmZpZ3VyYXRpb24tZWRpdC5jb21wb25lbnQuaHRtbCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFZGl0QXV0aENvbmZpZ3VyYXRpb25Db21wb25lbnQgZXh0ZW5kcyBBcHBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBwYWdpbmdFbGVtZW50O1xyXG4gIEBJbnB1dCgpIG9uU3VjY2Vzc1Rha2VQZW5hbHR5SGFuZGxlcjogRnVuY3Rpb247XHJcblxyXG4gIGVkaXRGb3JtID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcbiAgZWRpdEZvcm1PcHRpb25zID0gbmV3IEZvcm1PcHRpb25zKCk7XHJcbiAgQFZpZXdDaGlsZChcImVkaXRNb2RhbFwiLCB7IHN0YXRpYzogZmFsc2UgfSkgbW9kYWw6IEVsZW1lbnRSZWY7XHJcblxyXG4gIG1vZGVJZDogbnVtYmVyID0gdW5kZWZpbmVkO1xyXG4gIGF1dGhlbnRpY2F0aW9uTW9kZUVudW1WYWx1ZSA9IEF1dGhlbnRpY2F0aW9uTW9kZTtcclxuXHJcbiAgLy8jcmVnaW9uIHVhZSBwYXNzIHByb3BzXHJcbiAgYmFzZVVSTFRleHRCb3g6IFRleHRCb3hPcHRpb25zO1xyXG4gIGNsaWVudElkVGV4dEJveDogVGV4dEJveE9wdGlvbnM7XHJcbiAgc2VjcmV0S2V5VGV4dEJveDogVGV4dEJveE9wdGlvbnM7XHJcbiAgcmVkaXJlY3RVUkxUZXh0Qm94OiBUZXh0Qm94T3B0aW9ucztcclxuICBhY2Nlc3NMZXZlbERyb3Bkb3duOiBEcm9wZG93bk9wdGlvbnM7XHJcbiAgbGlua2luZ01vZGVEcm9wZG93bjogRHJvcGRvd25PcHRpb25zO1xyXG5cclxuICBsaW5raW5nRXhpc3RpbmdVc2Vyc1RvZ2dsZTogVG9nZ2xlU2xpZGVPcHRpb25zO1xyXG4gIGltcG9ydGluZ05ld1VzZXJUb2dnbGU6IFRvZ2dsZVNsaWRlT3B0aW9ucztcclxuICB1cGRhdGVVc2VySW5mb3JtYXRpb25PbkxvZ2luVG9nZ2xlOiBUb2dnbGVTbGlkZU9wdGlvbnM7XHJcbiAgc29wUGVybWlzc2lvbk1hcHBpbmdUb2dnbGU6IFRvZ2dsZVNsaWRlT3B0aW9ucztcclxuXHJcbiAgdXNlclBlcm1pc3Npb25TZXREcm9wZG93bjogRHJvcGRvd25PcHRpb25zO1xyXG4gIHVzZXJQZXJtaXNzaW9uczogRHJvcGRvd25PcHRpb25zO1xyXG5cclxuICB1YWVQYXNzQ29uZmlndXJhdGlvbk1vZGVsOiBVQUVQYXNzQ29uZmlndXJhdGlvbiA9IG5ldyBVQUVQYXNzQ29uZmlndXJhdGlvbigpO1xyXG5cclxuICBwZXJtaXNzaW9uU2V0TGlzdCA9IFtdO1xyXG4gIHBlcm1pc3Npb25zTGlzdCA9IFtdO1xyXG5cclxuICBzaG93VXNlclR5cGVQZXJtaXNzaW9uc01hcHBpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBzaG93VXNlclR5cGVMaW5raW5nTWFwcGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHVhZVBhc3NVc2VyVHlwZUVudW06IFVBRVBhc3NVc2VyVHlwZXM7XHJcbiAgdWFlUGFzc1VzZXJUeXBlTGlzdDogYW55W10gPSBbXTtcclxuICBzZWxlY3RlZEFjY2Vzc0xldmVsczogYW55W10gPSBbXTtcclxuXHJcbiAgLy8jcmVnaW9uIGxpbmtpbmcgbWFwcGluZ1xyXG4gIG5hbWVBckNoZWNrYm94OiBDaGVja0JveE9wdGlvbnM7XHJcbiAgbmFtZUVuQ2hlY2tib3g6IENoZWNrQm94T3B0aW9ucztcclxuICBlbWFpbENoZWNrYm94OiBDaGVja0JveE9wdGlvbnM7XHJcbiAgZUlkQ2hlY2tib3g6IENoZWNrQm94T3B0aW9ucztcclxuICBtb2JpbGVDaGVja2JveDogQ2hlY2tCb3hPcHRpb25zO1xyXG4gIG5hdGlvbmFsaXR5Q2hlY2tib3g6IENoZWNrQm94T3B0aW9ucztcclxuICBnZW5kZXJDaGVja2JveDogQ2hlY2tCb3hPcHRpb25zO1xyXG5cclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgLy8jZW5kcmVnaW9uXHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICBwcml2YXRlIG1hc3RlckxheW91dFNlcnZpY2U6IE1hc3RlckxheW91dFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb25zU2VydmljZTogQ29uZmlndXJhdGlvbnNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2UsXHJcbiAgKSB7XHJcbiAgICBzdXBlcihpbmplY3Rvcik7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICB9XHJcbiAgLy8jcmVnaW9uIGhlbHBlclxyXG5cclxuICB0cmFuc2xhdGUoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMudXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZShrZXkpO1xyXG4gIH1cclxuXHJcbiAgbG9hZFVBRVBhc3NVc2VyVHlwZXMoKSB7XHJcbiAgICBsZXQgbGlzdDogYW55W10gPSBbXTtcclxuICAgIGZvciAodmFyIGl0ZW0gaW4gVUFFUGFzc1VzZXJUeXBlcykge1xyXG4gICAgICBpZiAocGFyc2VJbnQoaXRlbSkpXHJcbiAgICAgICAgbGlzdC5wdXNoKHtcclxuICAgICAgICAgIGtleTogK2l0ZW0sXHJcbiAgICAgICAgICB2YWx1ZTogVUFFUGFzc1VzZXJUeXBlc1tpdGVtXVxyXG4gICAgICAgIH0gYXMgYW55KVxyXG4gICAgfVxyXG4gICAgdGhpcy51YWVQYXNzVXNlclR5cGVMaXN0ID0gbGlzdDtcclxuICAgIHJldHVybiBsaXN0O1xyXG4gIH1cclxuXHJcbiAgbG9hZFVBRVBhc3NMaW5raW5nTW9kZSgpIHtcclxuICAgIGxldCBsaXN0OiBhbnlbXSA9IFtdO1xyXG4gICAgZm9yICh2YXIgaXRlbSBpbiBVQUVQYXNzTGlua2luZ01vZGUpIHtcclxuICAgICAgaWYgKHBhcnNlSW50KGl0ZW0pKVxyXG4gICAgICAgIGxpc3QucHVzaCh7XHJcbiAgICAgICAgICBrZXk6ICtpdGVtLFxyXG4gICAgICAgICAgdmFsdWU6IHRoaXMudHJhbnNsYXRlKFVBRVBhc3NMaW5raW5nTW9kZVtpdGVtXSlcclxuICAgICAgICB9IGFzIGFueSlcclxuICAgIH1cclxuICAgIHJldHVybiBsaXN0O1xyXG4gIH1cclxuXHJcbiAgZ2V0VUFFUGFzc1VzZXJUeXBlVmFsdWUoa2V5OiBudW1iZXIpIHtcclxuICAgIHJldHVybiB0aGlzLnVhZVBhc3NVc2VyVHlwZUxpc3QuZmluZChpID0+IGkua2V5ID09IGtleSkudmFsdWU7XHJcbiAgfVxyXG5cclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgc2hvd01vZGFsKG1vZGU6IEF1dGhlbnRpY2F0aW9uTW9kZSwgYXV0aENvbmZpZ09iamVjdDogQkJTRkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbikge1xyXG4gICAgdGhpcy5tb2RlSWQgPSBtb2RlO1xyXG4gICAgaWYgKHRoaXMuZWRpdEZvcm0pIHtcclxuICAgICAgdGhpcy5lZGl0Rm9ybS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgIHRoaXMuZWRpdEZvcm0ucmVzZXQoKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmVkaXRGb3JtID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcbiAgICB0aGlzLmVkaXRGb3JtT3B0aW9ucyA9IG5ldyBGb3JtT3B0aW9ucygpO1xyXG4gICAgdGhpcy5lZGl0Rm9ybU9wdGlvbnMuRm9ybUdyb3VwID0gdGhpcy5lZGl0Rm9ybSBhcyBhbnk7XHJcbiAgICB0aGlzLmVkaXRGb3JtT3B0aW9ucy5QYWdpbmdSZWZlcmVuY2UgPSB0aGlzLnBhZ2luZ0VsZW1lbnQ7XHJcbiAgICB0aGlzLmVkaXRGb3JtT3B0aW9ucy5HZXRNb2RlbEZ1bmN0aW9uID0gdGhpcy5nZXRBZGRNb2RlbDtcclxuICAgIHRoaXMuZWRpdEZvcm1PcHRpb25zLlNlcnZpY2VTdWJtaXRGdW5jdGlvbiA9IHRoaXMuZ2V0U3VibWl0RnVuY3Rpb247XHJcbiAgICB0aGlzLmVkaXRGb3JtT3B0aW9ucy5EaXNhYmxlU3VjY2Vzc05vdGlmaWNhdGlvbiA9IGZhbHNlO1xyXG4gICAgdGhpcy5lZGl0Rm9ybU9wdGlvbnMuT25TdWNjZXNzSGFuZGxlciA9IHRoaXMub25TdWNjZXNzSGFuZGxlcjtcclxuXHJcbiAgICBzd2l0Y2ggKG1vZGUpIHtcclxuICAgICAgY2FzZSBBdXRoZW50aWNhdGlvbk1vZGUuVUFFUGFzczpcclxuICAgICAgICB0aGlzLnVhZVBhc3NDb25maWd1cmF0aW9uTW9kZWwgPSBhdXRoQ29uZmlnT2JqZWN0LnVhZVBhc3NDb25maWc7XHJcblxyXG4gICAgICAgIHRoaXMuYmFzZVVSTFRleHRCb3ggPSBuZXcgVGV4dEJveE9wdGlvbnMoKTtcclxuICAgICAgICB0aGlzLmJhc2VVUkxUZXh0Qm94Lk5hbWUgPSBcImJhc2VVcmxcIjtcclxuICAgICAgICB0aGlzLmJhc2VVUkxUZXh0Qm94LkxhYmVsS2V5ID0gXCJCYXNlVXJsXCI7XHJcbiAgICAgICAgdGhpcy5iYXNlVVJMVGV4dEJveC5UeXBlID0gSW5wdXRUeXBlLlRleHQ7XHJcbiAgICAgICAgdGhpcy5iYXNlVVJMVGV4dEJveC5WaWV3VHlwZSA9IENvbnRyb2xMYXlvdXQuVmVydGljYWw7XHJcbiAgICAgICAgdGhpcy5iYXNlVVJMVGV4dEJveC5WYWx1ZSA9IHRoaXMudWFlUGFzc0NvbmZpZ3VyYXRpb25Nb2RlbC5iYXNlVXJsO1xyXG5cclxuICAgICAgICB0aGlzLmNsaWVudElkVGV4dEJveCA9IG5ldyBUZXh0Qm94T3B0aW9ucygpO1xyXG4gICAgICAgIHRoaXMuY2xpZW50SWRUZXh0Qm94Lk5hbWUgPSBcImNsaWVudElEXCI7XHJcbiAgICAgICAgdGhpcy5jbGllbnRJZFRleHRCb3guTGFiZWxLZXkgPSBcIkNsaWVudElEXCI7XHJcbiAgICAgICAgdGhpcy5jbGllbnRJZFRleHRCb3guVHlwZSA9IElucHV0VHlwZS5UZXh0O1xyXG4gICAgICAgIHRoaXMuY2xpZW50SWRUZXh0Qm94LlZpZXdUeXBlID0gQ29udHJvbExheW91dC5WZXJ0aWNhbDtcclxuICAgICAgICB0aGlzLmNsaWVudElkVGV4dEJveC5WYWx1ZSA9IHRoaXMudWFlUGFzc0NvbmZpZ3VyYXRpb25Nb2RlbC5jbGllbnRJRDtcclxuXHJcbiAgICAgICAgdGhpcy5zZWNyZXRLZXlUZXh0Qm94ID0gbmV3IFRleHRCb3hPcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5zZWNyZXRLZXlUZXh0Qm94Lk5hbWUgPSBcInNlY3JldEtleVwiO1xyXG4gICAgICAgIHRoaXMuc2VjcmV0S2V5VGV4dEJveC5MYWJlbEtleSA9IFwiU2VjcmV0S2V5XCI7XHJcbiAgICAgICAgdGhpcy5zZWNyZXRLZXlUZXh0Qm94LlR5cGUgPSBJbnB1dFR5cGUuVGV4dDtcclxuICAgICAgICB0aGlzLnNlY3JldEtleVRleHRCb3guVmlld1R5cGUgPSBDb250cm9sTGF5b3V0LlZlcnRpY2FsO1xyXG4gICAgICAgIHRoaXMuc2VjcmV0S2V5VGV4dEJveC5WYWx1ZSA9IHRoaXMudWFlUGFzc0NvbmZpZ3VyYXRpb25Nb2RlbC5zZWNyZXRLZXk7XHJcblxyXG4gICAgICAgIHRoaXMucmVkaXJlY3RVUkxUZXh0Qm94ID0gbmV3IFRleHRCb3hPcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5yZWRpcmVjdFVSTFRleHRCb3guTmFtZSA9IFwicmVkaXJlY3RVcmxcIjtcclxuICAgICAgICB0aGlzLnJlZGlyZWN0VVJMVGV4dEJveC5MYWJlbEtleSA9IFwiUmVkaXJlY3RVcmxcIjtcclxuICAgICAgICB0aGlzLnJlZGlyZWN0VVJMVGV4dEJveC5UeXBlID0gSW5wdXRUeXBlLlRleHQ7XHJcbiAgICAgICAgdGhpcy5yZWRpcmVjdFVSTFRleHRCb3guVmlld1R5cGUgPSBDb250cm9sTGF5b3V0LlZlcnRpY2FsO1xyXG4gICAgICAgIHRoaXMucmVkaXJlY3RVUkxUZXh0Qm94LlZhbHVlID0gdGhpcy51YWVQYXNzQ29uZmlndXJhdGlvbk1vZGVsLnJlZGlyZWN0VXJsO1xyXG5cclxuICAgICAgICB0aGlzLmFjY2Vzc0xldmVsRHJvcGRvd24gPSBuZXcgRHJvcGRvd25PcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5hY2Nlc3NMZXZlbERyb3Bkb3duLk5hbWUgPSBcImFjY2Vzc0xldmVsc1wiO1xyXG4gICAgICAgIHRoaXMuYWNjZXNzTGV2ZWxEcm9wZG93bi5MYWJlbEtleSA9IFwiQWNjZXNzTGV2ZWxcIjtcclxuICAgICAgICB0aGlzLmFjY2Vzc0xldmVsRHJvcGRvd24uU2luZ2xlU2VsZWN0aW9uID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5hY2Nlc3NMZXZlbERyb3Bkb3duLlNlbGVjdGVkSXRlbXMgPSB0aGlzLnVhZVBhc3NDb25maWd1cmF0aW9uTW9kZWwuYWNjZXNzTGV2ZWxzO1xyXG4gICAgICAgIHRoaXMuYWNjZXNzTGV2ZWxEcm9wZG93bi5EYXRhU291cmNlID0gdGhpcy5sb2FkVUFFUGFzc1VzZXJUeXBlcygpO1xyXG5cclxuICAgICAgICB0aGlzLmxpbmtpbmdNb2RlRHJvcGRvd24gPSBuZXcgRHJvcGRvd25PcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5saW5raW5nTW9kZURyb3Bkb3duLk5hbWUgPSBcImxpbmtpbmdNb2RlXCI7XHJcbiAgICAgICAgdGhpcy5saW5raW5nTW9kZURyb3Bkb3duLkxhYmVsS2V5ID0gXCJMaW5raW5nTW9kZVwiO1xyXG4gICAgICAgIHRoaXMubGlua2luZ01vZGVEcm9wZG93bi5TaW5nbGVTZWxlY3Rpb24gPSB0cnVlO1xyXG4gICAgICAgIHRoaXMubGlua2luZ01vZGVEcm9wZG93bi5TZWxlY3RlZEl0ZW1zID0gdGhpcy51YWVQYXNzQ29uZmlndXJhdGlvbk1vZGVsLmxpbmtpbmdNb2RlO1xyXG4gICAgICAgIHRoaXMubGlua2luZ01vZGVEcm9wZG93bi5EYXRhU291cmNlID0gdGhpcy5sb2FkVUFFUGFzc0xpbmtpbmdNb2RlKCk7XHJcblxyXG4gICAgICAgIHRoaXMuc29wUGVybWlzc2lvbk1hcHBpbmdUb2dnbGUgPSBuZXcgVG9nZ2xlU2xpZGVPcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5zb3BQZXJtaXNzaW9uTWFwcGluZ1RvZ2dsZS5OYW1lID0gXCJzb3BQZXJtaXNzaW9uTWFwcGluZ1wiO1xyXG4gICAgICAgIHRoaXMuc29wUGVybWlzc2lvbk1hcHBpbmdUb2dnbGUuTGFiZWxLZXkgPSBcIlNPUFBlcm1pc3Npb25NYXBwaW5nXCI7XHJcbiAgICAgICAgdGhpcy5zb3BQZXJtaXNzaW9uTWFwcGluZ1RvZ2dsZS5WYWx1ZSA9IHRoaXMudWFlUGFzc0NvbmZpZ3VyYXRpb25Nb2RlbC5lbmFibGVTT1BQZXJtaXNzaW9uTWFwcGluZztcclxuXHJcbiAgICAgICAgdGhpcy5saW5raW5nRXhpc3RpbmdVc2Vyc1RvZ2dsZSA9IG5ldyBUb2dnbGVTbGlkZU9wdGlvbnMoKTtcclxuICAgICAgICB0aGlzLmxpbmtpbmdFeGlzdGluZ1VzZXJzVG9nZ2xlLk5hbWUgPSBcImxpbmtpbmdFeGlzdGluZ1VzZXJzXCI7XHJcbiAgICAgICAgdGhpcy5saW5raW5nRXhpc3RpbmdVc2Vyc1RvZ2dsZS5MYWJlbEtleSA9IFwiTGlua2luZ0V4aXN0aW5nVXNlcnNcIjtcclxuICAgICAgICB0aGlzLmxpbmtpbmdFeGlzdGluZ1VzZXJzVG9nZ2xlLlZhbHVlID0gdGhpcy51YWVQYXNzQ29uZmlndXJhdGlvbk1vZGVsLmVuYWJsZUxpbmtpbmdFeGlzdGluZ1VzZXJzO1xyXG5cclxuICAgICAgICB0aGlzLmltcG9ydGluZ05ld1VzZXJUb2dnbGUgPSBuZXcgVG9nZ2xlU2xpZGVPcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5pbXBvcnRpbmdOZXdVc2VyVG9nZ2xlLk5hbWUgPSBcImltcG9ydGluZ05ld1VzZXJcIjtcclxuICAgICAgICB0aGlzLmltcG9ydGluZ05ld1VzZXJUb2dnbGUuTGFiZWxLZXkgPSBcIkltcG9ydGluZ05ld1VzZXJcIjtcclxuICAgICAgICB0aGlzLmltcG9ydGluZ05ld1VzZXJUb2dnbGUuVmFsdWUgPSB0aGlzLnVhZVBhc3NDb25maWd1cmF0aW9uTW9kZWwuZW5hYmxlSW1wb3J0aW5nTmV3VXNlcjtcclxuXHJcbiAgICAgICAgdGhpcy51cGRhdGVVc2VySW5mb3JtYXRpb25PbkxvZ2luVG9nZ2xlID0gbmV3IFRvZ2dsZVNsaWRlT3B0aW9ucygpO1xyXG4gICAgICAgIHRoaXMudXBkYXRlVXNlckluZm9ybWF0aW9uT25Mb2dpblRvZ2dsZS5OYW1lID0gXCJ1cGRhdGVVc2VySW5mb3JtYXRpb25PbkxvZ2luXCI7XHJcbiAgICAgICAgdGhpcy51cGRhdGVVc2VySW5mb3JtYXRpb25PbkxvZ2luVG9nZ2xlLkxhYmVsS2V5ID0gXCJVcGRhdGVVc2VySW5mb3JtYXRpb25PbkxvZ2luXCI7XHJcbiAgICAgICAgdGhpcy51cGRhdGVVc2VySW5mb3JtYXRpb25PbkxvZ2luVG9nZ2xlLlZhbHVlID0gdGhpcy51YWVQYXNzQ29uZmlndXJhdGlvbk1vZGVsLmVuYWJsZVVwZGF0ZVVzZXJJbmZvcm1hdGlvbk9uTG9naW47XHJcblxyXG4gICAgICAgIHRoaXMudXNlclBlcm1pc3Npb25TZXREcm9wZG93biA9IG5ldyBEcm9wZG93bk9wdGlvbnMoKTtcclxuICAgICAgICB0aGlzLnVzZXJQZXJtaXNzaW9uU2V0RHJvcGRvd24uTmFtZSA9IFwiUGVybWlzc2lvblNldHNcIlxyXG4gICAgICAgIHRoaXMudXNlclBlcm1pc3Npb25TZXREcm9wZG93bi5MYWJlbEtleSA9IFwiUGVybWlzc2lvblNldHNcIlxyXG4gICAgICAgIHRoaXMudXNlclBlcm1pc3Npb25TZXREcm9wZG93bi5TZWxlY3RlZEl0ZW1zID0gdGhpcy51YWVQYXNzQ29uZmlndXJhdGlvbk1vZGVsLmRlZmF1bHRQZXJtaXNzaW9uU2V0O1xyXG4gICAgICAgIHRoaXMudXNlclBlcm1pc3Npb25TZXREcm9wZG93bi5TaW5nbGVTZWxlY3Rpb24gPSB0cnVlO1xyXG4gICAgICAgIHRoaXMudXNlclBlcm1pc3Npb25TZXREcm9wZG93bi5BbGxvd1NlYXJjaEZpbHRlciA9IHRydWU7XHJcbiAgICAgICAgdGhpcy51c2VyUGVybWlzc2lvblNldERyb3Bkb3duLklzUmVxdWlyZWQgPSB0cnVlO1xyXG5cclxuICAgICAgICB0aGlzLm5hbWVBckNoZWNrYm94ID0gbmV3IENoZWNrQm94T3B0aW9ucygpO1xyXG4gICAgICAgIHRoaXMubmFtZUFyQ2hlY2tib3guTmFtZSA9IFwibmFtZUFyXCJcclxuICAgICAgICB0aGlzLm5hbWVBckNoZWNrYm94LkxhYmVsS2V5ID0gXCJOYW1lQVJcIjtcclxuICAgICAgICB0aGlzLm5hbWVBckNoZWNrYm94LlZhbHVlID0gdGhpcy51YWVQYXNzQ29uZmlndXJhdGlvbk1vZGVsLnVzZXJJbmZvTWFwcGluZy5uYW1lQVI7XHJcblxyXG4gICAgICAgIHRoaXMubmFtZUVuQ2hlY2tib3ggPSBuZXcgQ2hlY2tCb3hPcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5uYW1lRW5DaGVja2JveC5OYW1lID0gXCJuYW1lRW5cIlxyXG4gICAgICAgIHRoaXMubmFtZUVuQ2hlY2tib3guTGFiZWxLZXkgPSBcIk5hbWVFTlwiO1xyXG4gICAgICAgIHRoaXMubmFtZUVuQ2hlY2tib3guVmFsdWUgPSB0aGlzLnVhZVBhc3NDb25maWd1cmF0aW9uTW9kZWwudXNlckluZm9NYXBwaW5nLm5hbWVFTjtcclxuXHJcbiAgICAgICAgdGhpcy5lbWFpbENoZWNrYm94ID0gbmV3IENoZWNrQm94T3B0aW9ucygpO1xyXG4gICAgICAgIHRoaXMuZW1haWxDaGVja2JveC5OYW1lID0gXCJlbWFpbFwiXHJcbiAgICAgICAgdGhpcy5lbWFpbENoZWNrYm94LkxhYmVsS2V5ID0gXCJFbWFpbFwiO1xyXG4gICAgICAgIHRoaXMuZW1haWxDaGVja2JveC5WYWx1ZSA9IHRoaXMudWFlUGFzc0NvbmZpZ3VyYXRpb25Nb2RlbC51c2VySW5mb01hcHBpbmcuZW1haWw7XHJcblxyXG4gICAgICAgIHRoaXMuZUlkQ2hlY2tib3ggPSBuZXcgQ2hlY2tCb3hPcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5lSWRDaGVja2JveC5OYW1lID0gXCJlSWRcIlxyXG4gICAgICAgIHRoaXMuZUlkQ2hlY2tib3guTGFiZWxLZXkgPSBcIkVJRFwiO1xyXG4gICAgICAgIHRoaXMuZUlkQ2hlY2tib3guVmFsdWUgPSB0aGlzLnVhZVBhc3NDb25maWd1cmF0aW9uTW9kZWwudXNlckluZm9NYXBwaW5nLkVJRDtcclxuXHJcbiAgICAgICAgdGhpcy5tb2JpbGVDaGVja2JveCA9IG5ldyBDaGVja0JveE9wdGlvbnMoKTtcclxuICAgICAgICB0aGlzLm1vYmlsZUNoZWNrYm94Lk5hbWUgPSBcIm1vYmlsZVwiXHJcbiAgICAgICAgdGhpcy5tb2JpbGVDaGVja2JveC5MYWJlbEtleSA9IFwiTW9iaWxlXCI7XHJcbiAgICAgICAgdGhpcy5tb2JpbGVDaGVja2JveC5WYWx1ZSA9IHRoaXMudWFlUGFzc0NvbmZpZ3VyYXRpb25Nb2RlbC51c2VySW5mb01hcHBpbmcubW9iaWxlO1xyXG5cclxuICAgICAgICB0aGlzLm5hdGlvbmFsaXR5Q2hlY2tib3ggPSBuZXcgQ2hlY2tCb3hPcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5uYXRpb25hbGl0eUNoZWNrYm94Lk5hbWUgPSBcIm5hdGlvbmFsaXR5XCJcclxuICAgICAgICB0aGlzLm5hdGlvbmFsaXR5Q2hlY2tib3guTGFiZWxLZXkgPSBcIk5hdGlvbmFsaXR5XCI7XHJcbiAgICAgICAgdGhpcy5uYXRpb25hbGl0eUNoZWNrYm94LlZhbHVlID0gdGhpcy51YWVQYXNzQ29uZmlndXJhdGlvbk1vZGVsLnVzZXJJbmZvTWFwcGluZy5uYXRpb25hbGl0eTtcclxuXHJcbiAgICAgICAgdGhpcy5nZW5kZXJDaGVja2JveCA9IG5ldyBDaGVja0JveE9wdGlvbnMoKTtcclxuICAgICAgICB0aGlzLmdlbmRlckNoZWNrYm94Lk5hbWUgPSBcImdlbmRlclwiXHJcbiAgICAgICAgdGhpcy5nZW5kZXJDaGVja2JveC5MYWJlbEtleSA9IFwiR2VuZGVyXCI7XHJcbiAgICAgICAgdGhpcy5nZW5kZXJDaGVja2JveC5WYWx1ZSA9IHRoaXMudWFlUGFzc0NvbmZpZ3VyYXRpb25Nb2RlbC51c2VySW5mb01hcHBpbmcuZ2VuZGVyO1xyXG5cclxuICAgICAgICB0aGlzLmdldFBlcm1pc3Npb25TZXRzKCk7XHJcbiAgICAgICAgdGhpcy5vbkNoYW5nZVNPUFBlcm1pc3Npb25Ub2dnbGVWYWx1ZSh0aGlzLnVhZVBhc3NDb25maWd1cmF0aW9uTW9kZWwuZW5hYmxlU09QUGVybWlzc2lvbk1hcHBpbmcpO1xyXG4gICAgICAgIHRoaXMub25MaW5raW5nRXhpc3RpbmdVc2Vyc1RvZ2dsZVZhbHVlKHRoaXMudWFlUGFzc0NvbmZpZ3VyYXRpb25Nb2RlbC5lbmFibGVMaW5raW5nRXhpc3RpbmdVc2Vycyk7XHJcbiAgICAgICAgdGhpcy5vbkNoYW5nZUFjY2Vzc0xldmVscyh0aGlzLnVhZVBhc3NDb25maWd1cmF0aW9uTW9kZWwuYWNjZXNzTGV2ZWxzKTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMudWFlUGFzc0NvbmZpZ3VyYXRpb25Nb2RlbC5kZWZhdWx0UGVybWlzc2lvblNldClcclxuICAgICAgICAgIHRoaXMuY2hhbmdlUGVybWlzc2lvblNldCh0aGlzLnVhZVBhc3NDb25maWd1cmF0aW9uTW9kZWwuZGVmYXVsdFBlcm1pc3Npb25TZXQpO1xyXG5cclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBBdXRoZW50aWNhdGlvbk1vZGUuQXp1cmVBRDpcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICB0aGlzLm1vZGFsU2VydmljZS5vcGVuKHRoaXMubW9kYWwsIHsgc2l6ZTogJ3hsJyB9IGFzIE5nYk1vZGFsT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBnZXRBZGRNb2RlbCA9ICgpID0+IHtcclxuICAgIGxldCByZXN1bHRNb2RlbCA9IHRoaXMuZWRpdEZvcm0udmFsdWUgYXMgYW55O1xyXG4gICAgbGV0IGVkaXRNb2RlbDogQkJTRkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbiA9IG5ldyBCQlNGQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKCk7XHJcbiAgICBlZGl0TW9kZWwubW9kZUlkID0gdGhpcy5tb2RlSWQ7XHJcbiAgICBlZGl0TW9kZWwudWFlUGFzc0NvbmZpZyA9IHRoaXMuYnVpbGRVQUVQYXNzQ29uZmlnT2JqZWN0KHJlc3VsdE1vZGVsKTtcclxuICAgIHJldHVybiBBcnJheShlZGl0TW9kZWwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0U3VibWl0RnVuY3Rpb24gPSAoZWRpdE1vZGVsOiBCQlNGQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKTogT2JzZXJ2YWJsZTxhbnk+ID0+IHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ3VyYXRpb25zU2VydmljZS51cGRhdGVBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb25EYXRhKGVkaXRNb2RlbClcclxuICB9XHJcblxyXG4gIG9uU3VjY2Vzc0hhbmRsZXIgPSAoKTogdm9pZCA9PiB7XHJcbiAgICB0aGlzLm1hc3RlckxheW91dFNlcnZpY2UucmVsb2FkQ29tcG9uZW50KClcclxuICB9XHJcblxyXG4gIGJ1aWxkVUFFUGFzc0NvbmZpZ09iamVjdChmb3JtVmFsdWU6IGFueSk6IFVBRVBhc3NDb25maWd1cmF0aW9uIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIGJhc2VVcmw6IGZvcm1WYWx1ZVt0aGlzLmJhc2VVUkxUZXh0Qm94Lk5hbWVdLFxyXG4gICAgICBjbGllbnRJRDogZm9ybVZhbHVlW3RoaXMuY2xpZW50SWRUZXh0Qm94Lk5hbWVdLFxyXG4gICAgICBzZWNyZXRLZXk6IGZvcm1WYWx1ZVt0aGlzLnNlY3JldEtleVRleHRCb3guTmFtZV0sXHJcbiAgICAgIHJlZGlyZWN0VXJsOiBmb3JtVmFsdWVbdGhpcy5yZWRpcmVjdFVSTFRleHRCb3guTmFtZV0sXHJcbiAgICAgIGFjY2Vzc0xldmVsczogZm9ybVZhbHVlW3RoaXMuYWNjZXNzTGV2ZWxEcm9wZG93bi5OYW1lXSxcclxuICAgICAgZW5hYmxlTGlua2luZ0V4aXN0aW5nVXNlcnM6IGZvcm1WYWx1ZVt0aGlzLmxpbmtpbmdFeGlzdGluZ1VzZXJzVG9nZ2xlLk5hbWVdLFxyXG4gICAgICBlbmFibGVJbXBvcnRpbmdOZXdVc2VyOiBmb3JtVmFsdWVbdGhpcy5pbXBvcnRpbmdOZXdVc2VyVG9nZ2xlLk5hbWVdLFxyXG4gICAgICBlbmFibGVVcGRhdGVVc2VySW5mb3JtYXRpb25PbkxvZ2luOiBmb3JtVmFsdWVbdGhpcy51cGRhdGVVc2VySW5mb3JtYXRpb25PbkxvZ2luVG9nZ2xlLk5hbWVdLFxyXG4gICAgICBkZWZhdWx0UGVybWlzc2lvblNldDogZm9ybVZhbHVlW3RoaXMudXNlclBlcm1pc3Npb25TZXREcm9wZG93bi5OYW1lXSxcclxuICAgICAgZW5hYmxlU09QUGVybWlzc2lvbk1hcHBpbmc6IGZvcm1WYWx1ZVt0aGlzLnNvcFBlcm1pc3Npb25NYXBwaW5nVG9nZ2xlLk5hbWVdLFxyXG4gICAgICB1c2VyVHlwZVBlcm1pc3Npb25zOiB0aGlzLmJ1aWxkVXNlclR5cGVQZXJtaXNzaW9uKCksXHJcbiAgICAgIHVzZXJJbmZvTWFwcGluZzogdGhpcy5idWlsZFVzZXJJbmZvTWFwcGluZyhmb3JtVmFsdWUpLFxyXG4gICAgICBsaW5raW5nTW9kZTogZm9ybVZhbHVlW3RoaXMubGlua2luZ01vZGVEcm9wZG93bi5OYW1lXSxcclxuICAgIH0gYXMgVUFFUGFzc0NvbmZpZ3VyYXRpb25cclxuICB9XHJcblxyXG4gIGJ1aWxkVXNlckluZm9NYXBwaW5nKGZvcm1WYWx1ZTogYW55KSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuYW1lRU46IGZvcm1WYWx1ZVt0aGlzLm5hbWVFbkNoZWNrYm94Lk5hbWVdLFxyXG4gICAgICBuYW1lQVI6IGZvcm1WYWx1ZVt0aGlzLm5hbWVBckNoZWNrYm94Lk5hbWVdLFxyXG4gICAgICBlbWFpbDogZm9ybVZhbHVlW3RoaXMuZW1haWxDaGVja2JveC5OYW1lXSxcclxuICAgICAgRUlEOiBmb3JtVmFsdWVbdGhpcy5lSWRDaGVja2JveC5OYW1lXSxcclxuICAgICAgbW9iaWxlOiBmb3JtVmFsdWVbdGhpcy5tb2JpbGVDaGVja2JveC5OYW1lXSxcclxuICAgICAgbmF0aW9uYWxpdHk6IGZvcm1WYWx1ZVt0aGlzLm5hdGlvbmFsaXR5Q2hlY2tib3guTmFtZV0sXHJcbiAgICAgIGdlbmRlcjogZm9ybVZhbHVlW3RoaXMuZ2VuZGVyQ2hlY2tib3guTmFtZV1cclxuICAgIH0gYXMgVUFFUGFzc1VzZXJJbmZvTWFwcGluZztcclxuICB9XHJcblxyXG4gIGJ1aWxkVXNlclR5cGVQZXJtaXNzaW9uKCk6IFVBRVBhc3NVc2VyVHlwZVBlcm1pc3Npb25bXSB7XHJcbiAgICBsZXQgcmVzTGlzdDogVUFFUGFzc1VzZXJUeXBlUGVybWlzc2lvbltdID0gW107XHJcbiAgICBpZiAodGhpcy5zaG93VXNlclR5cGVQZXJtaXNzaW9uc01hcHBpbmcpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZEFjY2Vzc0xldmVscy5mb3JFYWNoKGxldmVsID0+IHtcclxuICAgICAgICByZXNMaXN0LnB1c2goe1xyXG4gICAgICAgICAgdXNlclR5cGU6IGxldmVsLFxyXG4gICAgICAgICAgcGVybWlzc2lvbnM6IHRoaXMuZWRpdEZvcm0uY29udHJvbHNbYHBlcm1pc3Npb25zLXVzZXItdHlwZS0ke2xldmVsfWBdPy52YWx1ZSxcclxuICAgICAgICB9IGFzIFVBRVBhc3NVc2VyVHlwZVBlcm1pc3Npb24pXHJcbiAgICAgIH0pXHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHJlc0xpc3Q7XHJcbiAgfVxyXG5cclxuICAvLyNyZWdpb24gVUFFIFBhc3MgRnVuY3Rpb25zXHJcblxyXG4gIG9uTGlua2luZ0V4aXN0aW5nVXNlcnNUb2dnbGVWYWx1ZSh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5zaG93VXNlclR5cGVMaW5raW5nTWFwcGluZyA9IHZhbHVlO1xyXG4gICAgaWYgKHRoaXMuc2hvd1VzZXJUeXBlTGlua2luZ01hcHBpbmcpXHJcbiAgICAgIHRoaXMuYWRkUmVxdWlyZWRWYWxpZGF0aW9uKFt0aGlzLmxpbmtpbmdNb2RlRHJvcGRvd25dLCB0aGlzLmVkaXRGb3JtLCB0aGlzLmVkaXRGb3JtT3B0aW9ucyk7XHJcbiAgICBlbHNlXHJcbiAgICAgIHRoaXMucmVtb3ZlUmVxdWlyZWRWYWxpZGF0aW9uKFt0aGlzLmxpbmtpbmdNb2RlRHJvcGRvd25dLCB0aGlzLmVkaXRGb3JtLCB0aGlzLmVkaXRGb3JtT3B0aW9ucyk7XHJcblxyXG4gIH1cclxuXHJcbiAgb25DaGFuZ2VTT1BQZXJtaXNzaW9uVG9nZ2xlVmFsdWUodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuc2hvd1VzZXJUeXBlUGVybWlzc2lvbnNNYXBwaW5nID0gdmFsdWU7XHJcbiAgICBpZiAoIXRoaXMuc2hvd1VzZXJUeXBlUGVybWlzc2lvbnNNYXBwaW5nKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRBY2Nlc3NMZXZlbHMuZm9yRWFjaChsZXZlbCA9PiB7XHJcbiAgICAgICAgdGhpcy5yZW1vdmVDb250cm9sKGBwZXJtaXNzaW9ucy11c2VyLXR5cGUtJHtsZXZlbH1gLCB0aGlzLmVkaXRGb3JtKTtcclxuICAgICAgfSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNoYW5nZVBlcm1pc3Npb25TZXQoaWQ6IGFueSkge1xyXG4gICAgaWYgKCFpZCkge1xyXG4gICAgICB0aGlzLnBlcm1pc3Npb25zTGlzdCA9IFtdO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGlkcyA9IEFycmF5KGlkKTtcclxuICAgIHRoaXMudXNlclNlcnZpY2UuTG9hZFBlcm1pc3Npb25zRHJvcERvd24oaWRzKS5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xyXG4gICAgICB0aGlzLnBlcm1pc3Npb25zTGlzdCA9IHJlc3VsdCBhcyBhbnk7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgZ2V0UGVybWlzc2lvblNldHMoKSB7XHJcbiAgICB0aGlzLnVzZXJTZXJ2aWNlLmdldFBlcm1pc3Npb25TZXRzTGlzdCgpLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICB0aGlzLnBlcm1pc3Npb25TZXRMaXN0ID0gcmVzLnBlcm1lc3Npb25zZXRzO1xyXG4gICAgICB0aGlzLnVzZXJQZXJtaXNzaW9uU2V0RHJvcGRvd24uRGF0YVNvdXJjZSA9IHRoaXMucGVybWlzc2lvblNldExpc3Q7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgaW5pdERyb3BEb3duT3B0aW9ucyh1c2VyVHlwZTogYW55KSB7XHJcbiAgICB2YXIgcGVybWlzc2lvbkRyb3BEb3duT3B0aW9ucyA9IG5ldyBEcm9wZG93bk9wdGlvbnMoKTtcclxuICAgIHBlcm1pc3Npb25Ecm9wRG93bk9wdGlvbnMuTmFtZSA9IGBwZXJtaXNzaW9ucy11c2VyLXR5cGUtJHt1c2VyVHlwZX1gO1xyXG4gICAgcGVybWlzc2lvbkRyb3BEb3duT3B0aW9ucy5MYWJlbFZhbHVlID0gdGhpcy50cmFuc2xhdGUoVUFFUGFzc1VzZXJUeXBlc1t1c2VyVHlwZV0pICsgXCItXCIgKyB0aGlzLnRyYW5zbGF0ZShcIlBlcm1pc3Npb25zXCIpO1xyXG4gICAgcGVybWlzc2lvbkRyb3BEb3duT3B0aW9ucy5Jc1JlcXVpcmVkID0gdHJ1ZTtcclxuICAgIHBlcm1pc3Npb25Ecm9wRG93bk9wdGlvbnMuVmlld1R5cGUgPSBDb250cm9sTGF5b3V0LlZlcnRpY2FsO1xyXG4gICAgcGVybWlzc2lvbkRyb3BEb3duT3B0aW9ucy5EYXRhU291cmNlID0gdGhpcy5wZXJtaXNzaW9uc0xpc3Q7XHJcbiAgICBwZXJtaXNzaW9uRHJvcERvd25PcHRpb25zLlNlbGVjdGVkSXRlbXMgPSB0aGlzLnNldFBlcm1pc3Npb25Gb3JVQUVQYXNzVXNlclR5cGVzKHVzZXJUeXBlKTtcclxuXHJcbiAgICByZXR1cm4gcGVybWlzc2lvbkRyb3BEb3duT3B0aW9ucztcclxuICB9XHJcblxyXG4gIG9uQ2hhbmdlQWNjZXNzTGV2ZWxzKHNlbGVjdGVkSXRlbXM6IGFueSkge1xyXG4gICAgbGV0IHVzZXJUeXBlc0tleXMgPSB0aGlzLnVhZVBhc3NVc2VyVHlwZUxpc3QubWFwKGl0ZW0gPT4geyByZXR1cm4gaXRlbS5rZXkgfSk7XHJcbiAgICB0aGlzLnNlbGVjdGVkQWNjZXNzTGV2ZWxzID0gc2VsZWN0ZWRJdGVtcztcclxuXHJcbiAgICBsZXQgbm90U2VsZWN0ZWQgPSB0aGlzLnNlbGVjdGVkQWNjZXNzTGV2ZWxzLmZpbHRlcihpdGVtID0+IHVzZXJUeXBlc0tleXMuaW5kZXhPZihpdGVtKSA8IDApO1xyXG4gICAgbm90U2VsZWN0ZWQuZm9yRWFjaChpID0+IHtcclxuICAgICAgdGhpcy5yZW1vdmVDb250cm9sKGBwZXJtaXNzaW9ucy11c2VyLXR5cGUtJHtpfWAsIHRoaXMuZWRpdEZvcm0pO1xyXG4gICAgfSlcclxuXHJcbiAgfVxyXG5cclxuICBzZXRQZXJtaXNzaW9uRm9yVUFFUGFzc1VzZXJUeXBlcyh1c2VyVHlwZTogbnVtYmVyKSB7XHJcbiAgICByZXR1cm4gdGhpcy51YWVQYXNzQ29uZmlndXJhdGlvbk1vZGVsLnVzZXJUeXBlUGVybWlzc2lvbnMuZmluZChpID0+IGkudXNlclR5cGUgPT0gdXNlclR5cGUpPy5wZXJtaXNzaW9ucztcclxuICB9XHJcbiAgLy8jZW5kcmVnaW9uXHJcblxyXG5cclxuICAvLyNyZWdpb24gdmFsaWRhdGlvbiBhY3Rpb25zXHJcblxyXG4gIGFkZFJlcXVpcmVkVmFsaWRhdGlvbihjdXN0b21Db250cm9sT3B0aW9uOiBhbnlbXSwgZm9ybTogRm9ybUdyb3VwLCBmb3JtT3B0aW9uczogRm9ybU9wdGlvbnMpOiB2b2lkIHtcclxuICAgIGN1c3RvbUNvbnRyb2xPcHRpb24uZm9yRWFjaChjb250cm9sID0+IHtcclxuICAgICAgaWYgKGZvcm0uZ2V0KGNvbnRyb2wuTmFtZSkpXHJcbiAgICAgICAgdGhpcy5hZGRSZXF1aXJlZFJ1bGUoZm9ybS5nZXQoY29udHJvbC5OYW1lKSwgZm9ybU9wdGlvbnMpO1xyXG4gICAgICBlbHNlXHJcbiAgICAgICAgY29udHJvbC5Jc1JlcXVpcmVkID0gdHJ1ZTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlUmVxdWlyZWRWYWxpZGF0aW9uKGN1c3RvbUNvbnRyb2xPcHRpb246IGFueVtdLCBmb3JtOiBGb3JtR3JvdXAsIGZvcm1PcHRpb25zOiBGb3JtT3B0aW9ucyk6IHZvaWQge1xyXG4gICAgY3VzdG9tQ29udHJvbE9wdGlvbi5mb3JFYWNoKGNvbnRyb2wgPT4ge1xyXG4gICAgICBpZiAoZm9ybS5nZXQoY29udHJvbC5OYW1lKSlcclxuICAgICAgICB0aGlzLnJlbW92ZVJlcXVpcmVkUnVsZShmb3JtLmdldChjb250cm9sLk5hbWUpLCBmb3JtT3B0aW9ucyk7XHJcbiAgICAgIGVsc2VcclxuICAgICAgICBjb250cm9sLklzUmVxdWlyZWQgPSBmYWxzZTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcmVzZXRGb3JtQ29udHJvbHNWYWx1ZShjdXN0b21Db250cm9sc09wdGlvbnM6IGFueVtdLCBmb3JtOiBGb3JtR3JvdXApOiB2b2lkIHtcclxuICAgIGN1c3RvbUNvbnRyb2xzT3B0aW9ucy5mb3JFYWNoKG9wdGlvbiA9PiB7XHJcbiAgICAgIGxldCBmb3JtQ29udHJvbCA9IGZvcm0uZ2V0KG9wdGlvbi5OYW1lKTtcclxuICAgICAgaWYgKGZvcm1Db250cm9sKVxyXG4gICAgICAgIGZvcm1Db250cm9sLnJlc2V0KCk7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgLy8jZW5kcmVnaW9uXHJcbn1cclxuXHJcblxyXG4iLCI8bmctdGVtcGxhdGUgI2VkaXRNb2RhbCBsZXQtbW9kYWw+XHJcbiAgPGRpdiBjbGFzcz1cIm1vZGFsLWhlYWRlclwiPlxyXG4gICAgPGg0IGNsYXNzPVwibW9kYWwtdGl0bGVcIj5cclxuICAgICAge3t0cmFuc2xhdGUoXCJFZGl0QXV0aENvbmZpZ3VyYXRpb25cIil9fVxyXG4gICAgPC9oND5cclxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGRhdGEtZGlzbWlzcz1cIm1vZGFsXCIgY2xhc3M9XCJidG4gYnRuLWljb24gYnRuLXNtXCIgKGNsaWNrKT1cIm1vZGFsLmRpc21pc3MoKVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic3ZnLWljb24gc3ZnLWljb24tNCBzdmctaWNvbi1ob3Zlci1icmFuZFwiIFtpbmxpbmVTVkddPVwiJy9hc3NldHMvaW1hZ2VzL2Nsb3NlLW1vZGFsLnN2ZydcIj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2J1dHRvbj5cclxuICA8L2Rpdj5cclxuICA8QkJTRi1Gb3JtIFtvcHRpb25zXT1cImVkaXRGb3JtT3B0aW9uc1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHlcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1vZGVJZCA9PSBhdXRoZW50aWNhdGlvbk1vZGVFbnVtVmFsdWUuVUFFUGFzc1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICA8QkJTRi1UZXh0Qm94IFtvcHRpb25zXT1cImJhc2VVUkxUZXh0Qm94XCIgW2dyb3VwXT1cImVkaXRGb3JtXCI+PC9CQlNGLVRleHRCb3g+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICA8QkJTRi1UZXh0Qm94IFtvcHRpb25zXT1cImNsaWVudElkVGV4dEJveFwiIFtncm91cF09XCJlZGl0Rm9ybVwiPjwvQkJTRi1UZXh0Qm94PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgICAgPEJCU0YtVGV4dEJveCBbb3B0aW9uc109XCJzZWNyZXRLZXlUZXh0Qm94XCIgW2dyb3VwXT1cImVkaXRGb3JtXCI+PC9CQlNGLVRleHRCb3g+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICA8QkJTRi1UZXh0Qm94IFtvcHRpb25zXT1cInJlZGlyZWN0VVJMVGV4dEJveFwiIFtncm91cF09XCJlZGl0Rm9ybVwiPjwvQkJTRi1UZXh0Qm94PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgICAgPEJCU0YtRHJvcGRvd25MaXN0IChPbkNoYW5nZSk9XCJvbkNoYW5nZUFjY2Vzc0xldmVscygkZXZlbnQpXCIgW29wdGlvbnNdPVwiYWNjZXNzTGV2ZWxEcm9wZG93blwiIFtncm91cF09XCJlZGl0Rm9ybVwiPjwvQkJTRi1Ecm9wZG93bkxpc3Q+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICA8QkJTRi1Ecm9wZG93bkxpc3QgKE9uQ2hhbmdlKT1cImNoYW5nZVBlcm1pc3Npb25TZXQoJGV2ZW50KVwiIFtvcHRpb25zXT1cInVzZXJQZXJtaXNzaW9uU2V0RHJvcGRvd25cIiBbZ3JvdXBdPVwiZWRpdEZvcm1cIj48L0JCU0YtRHJvcGRvd25MaXN0PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgICAgPEJCU0YtVG9nZ2xlc2xpZGUgKE9uQ2hhbmdlKT1cIm9uQ2hhbmdlU09QUGVybWlzc2lvblRvZ2dsZVZhbHVlKCRldmVudClcIiBbb3B0aW9uc109XCJzb3BQZXJtaXNzaW9uTWFwcGluZ1RvZ2dsZVwiXHJcbiAgICAgICAgICAgICAgW2dyb3VwXT1cImVkaXRGb3JtXCI+PC9CQlNGLVRvZ2dsZXNsaWRlPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgICAgPEJCU0YtVG9nZ2xlc2xpZGUgW29wdGlvbnNdPVwibGlua2luZ0V4aXN0aW5nVXNlcnNUb2dnbGVcIiAoT25DaGFuZ2UpPVwib25MaW5raW5nRXhpc3RpbmdVc2Vyc1RvZ2dsZVZhbHVlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIFtncm91cF09XCJlZGl0Rm9ybVwiPjwvQkJTRi1Ub2dnbGVzbGlkZT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgIDxCQlNGLVRvZ2dsZXNsaWRlIFtvcHRpb25zXT1cImltcG9ydGluZ05ld1VzZXJUb2dnbGVcIiBbZ3JvdXBdPVwiZWRpdEZvcm1cIj48L0JCU0YtVG9nZ2xlc2xpZGU+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICA8QkJTRi1Ub2dnbGVzbGlkZSBbb3B0aW9uc109XCJ1cGRhdGVVc2VySW5mb3JtYXRpb25PbkxvZ2luVG9nZ2xlXCIgW2dyb3VwXT1cImVkaXRGb3JtXCI+PC9CQlNGLVRvZ2dsZXNsaWRlPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxmaWVsZHNldCBjbGFzcz1cImNhcmQgY2FyZC1saXN0aW5nIGRldGFpbHMtaGVhZGVyIHB0LTVcIiAqbmdJZj1cInNob3dVc2VyVHlwZVBlcm1pc3Npb25zTWFwcGluZ1wiPlxyXG4gICAgICAgICAgPGxlZ2VuZD57e3RyYW5zbGF0ZShcIkFjY2Vzc0xldmVsc1Blcm1pc3Npb25NYXBwaW5nXCIpfX08L2xlZ2VuZD5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbGV2ZWwgb2Ygc2VsZWN0ZWRBY2Nlc3NMZXZlbHNcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgICAgICAgIDxCQlNGLURyb3Bkb3duTGlzdCBbb3B0aW9uc109XCJpbml0RHJvcERvd25PcHRpb25zKGxldmVsKVwiIFtncm91cF09XCJlZGl0Rm9ybVwiPjwvQkJTRi1Ecm9wZG93bkxpc3Q+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9maWVsZHNldD5cclxuXHJcbiAgICAgICAgPGZpZWxkc2V0IGNsYXNzPVwiY2FyZCBjYXJkLWxpc3RpbmcgZGV0YWlscy1oZWFkZXIgcHQtNVwiICpuZ0lmPVwic2hvd1VzZXJUeXBlTGlua2luZ01hcHBpbmdcIj5cclxuICAgICAgICAgIDxsZWdlbmQ+e3t0cmFuc2xhdGUoXCJMaW5raW5nT3B0aW9uc1wiKX19PC9sZWdlbmQ+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICAgIDxCQlNGLURyb3Bkb3duTGlzdCBbb3B0aW9uc109XCJsaW5raW5nTW9kZURyb3Bkb3duXCIgW2dyb3VwXT1cImVkaXRGb3JtXCI+PC9CQlNGLURyb3Bkb3duTGlzdD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgIDxmaWVsZHNldCBjbGFzcz1cImNhcmQgY2FyZC1saXN0aW5nIGRldGFpbHMtaGVhZGVyIHB0LTVcIj5cclxuICAgICAgICAgICAgICA8bGVnZW5kPnt7dHJhbnNsYXRlKFwiTGlua2luZ0F0dHJpYnV0ZXNPcHRpb25zXCIpfX08L2xlZ2VuZD5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgICAgICAgIDxCQlNGLUNoZWNrQm94IFtvcHRpb25zXT1cIm5hbWVBckNoZWNrYm94XCIgW2dyb3VwXT1cImVkaXRGb3JtXCI+PC9CQlNGLUNoZWNrQm94PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICAgICAgPEJCU0YtQ2hlY2tCb3ggW29wdGlvbnNdPVwibmFtZUVuQ2hlY2tib3hcIiBbZ3JvdXBdPVwiZWRpdEZvcm1cIj48L0JCU0YtQ2hlY2tCb3g+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgICAgICA8QkJTRi1DaGVja0JveCBbb3B0aW9uc109XCJlbWFpbENoZWNrYm94XCIgW2dyb3VwXT1cImVkaXRGb3JtXCI+PC9CQlNGLUNoZWNrQm94PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICAgICAgPEJCU0YtQ2hlY2tCb3ggW29wdGlvbnNdPVwiZUlkQ2hlY2tib3hcIiBbZ3JvdXBdPVwiZWRpdEZvcm1cIj48L0JCU0YtQ2hlY2tCb3g+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgICAgICA8QkJTRi1DaGVja0JveCBbb3B0aW9uc109XCJtb2JpbGVDaGVja2JveFwiIFtncm91cF09XCJlZGl0Rm9ybVwiPjwvQkJTRi1DaGVja0JveD5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgICAgICAgIDxCQlNGLUNoZWNrQm94IFtvcHRpb25zXT1cIm5hdGlvbmFsaXR5Q2hlY2tib3hcIiBbZ3JvdXBdPVwiZWRpdEZvcm1cIj48L0JCU0YtQ2hlY2tCb3g+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgICAgICA8QkJTRi1DaGVja0JveCBbb3B0aW9uc109XCJnZW5kZXJDaGVja2JveFwiIFtncm91cF09XCJlZGl0Rm9ybVwiPjwvQkJTRi1DaGVja0JveD5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9maWVsZHNldD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZmllbGRzZXQ+XHJcblxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIiAqbmdJZj1cIm1vZGVJZCA9PSBhdXRoZW50aWNhdGlvbk1vZGVFbnVtVmFsdWUuQXp1cmVBRFwiPlxyXG5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1mb290ZXJcIj5cclxuICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNtIGJ0bi1saWdodFwiIChjbGljayk9XCJtb2RhbC5kaXNtaXNzKClcIj5cclxuICAgICAgICB7e3RyYW5zbGF0ZShcIkNhbmNlbFwiKX19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8YnV0dG9uIGFwcFByZXZlbnREb3VibGVDbGljayB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJidG4gYnRuLXNtIGJ0bi1icmFuZFwiPlxyXG4gICAgICAgIHt7dHJhbnNsYXRlKCdTYXZlJyl9fVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvQkJTRi1Gb3JtPlxyXG48L25nLXRlbXBsYXRlPiJdfQ==
|
|
330
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1jb25maWd1cmF0aW9uLWVkaXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1hZG1pbi1wb3J0YWwvc3JjL2xpYi9QYWdlcy9jb25maWd1cmF0aW9ucy9hdXRoLWNvbmZpZ3VyYXRpb24vYXV0aC1jb25maWd1cmF0aW9uLWVkaXQvYXV0aC1jb25maWd1cmF0aW9uLWVkaXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1hZG1pbi1wb3J0YWwvc3JjL2xpYi9QYWdlcy9jb25maWd1cmF0aW9ucy9hdXRoLWNvbmZpZ3VyYXRpb24vYXV0aC1jb25maWd1cmF0aW9uLWVkaXQvYXV0aC1jb25maWd1cmF0aW9uLWVkaXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBd0IsS0FBSyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHeEssT0FBTyxFQUFFLCtCQUErQixFQUFFLG9CQUFvQixFQUFxRCxNQUFNLCtEQUErRCxDQUFDO0FBQ3pMLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtFQUFrRSxDQUFDOzs7Ozs7OztBQVM1SSxNQUFNLE9BQU8sOEJBQStCLFNBQVEsZ0JBQWdCO0lBK0NsRSxZQUFZO0lBRVosWUFBWTtJQUVaLFlBQ1UsUUFBa0IsRUFDbEIsbUJBQXdDLEVBQ3hDLHFCQUE0QyxFQUM1QyxXQUF3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O2dCQUlxQyxLQUFLO3NCQUEvQyxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEluamVjdG9yLCBJbnB1dCwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBBcHBCYXNlQ29tcG9uZW50LCBDaGVja0JveE9wdGlvbnMsIENvbnRyb2xMYXlvdXQsIERyb3Bkb3duT3B0aW9ucywgRm9ybU9wdGlvbnMsIElucHV0VHlwZSwgVGV4dEJveE9wdGlvbnMsIFRvZ2dsZVNsaWRlT3B0aW9ucyB9IGZyb20gJ0BibnNpZ2h0cy9iYnNmLWNvbnRyb2xzJztcclxuaW1wb3J0IHsgTWFzdGVyTGF5b3V0U2VydmljZSB9IGZyb20gJ0BibnNpZ2h0cy9iYnNmLXV0aWxpdGllcyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQkJTRkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbiwgVUFFUGFzc0NvbmZpZ3VyYXRpb24sIFVBRVBhc3NVc2VySW5mb01hcHBpbmcsIFVBRVBhc3NVc2VyVHlwZVBlcm1pc3Npb24gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvbW9kZWxzL0NvbmZpZ3VyYXRpb25Nb2RlbHMvQ29uZmlndXJhdGlvbk1vZGVsJztcclxuaW1wb3J0IHsgQXV0aGVudGljYXRpb25Nb2RlLCBVQUVQYXNzTGlua2luZ01vZGUsIFVBRVBhc3NVc2VyVHlwZXMgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvRW51bXMvY29uZmlndXJhdGlvbi9hdXRoZW50ZWNhdGlvbi1jb25maWd1cmF0aW9uJztcclxuaW1wb3J0IHsgQ29uZmlndXJhdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL1NlcnZpY2VzL0NvbmZpZ3VyYXRpb25zU2VydmljZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTmdiTW9kYWxPcHRpb25zIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xyXG5pbXBvcnQgeyBVc2VyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9TZXJ2aWNlcy91c2VyU2VydmljZS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXV0aC1jb25maWd1cmF0aW9uLWVkaXQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hdXRoLWNvbmZpZ3VyYXRpb24tZWRpdC5jb21wb25lbnQuaHRtbCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFZGl0QXV0aENvbmZpZ3VyYXRpb25Db21wb25lbnQgZXh0ZW5kcyBBcHBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBwYWdpbmdFbGVtZW50O1xyXG4gIEBJbnB1dCgpIG9uU3VjY2Vzc1Rha2VQZW5hbHR5SGFuZGxlcjogRnVuY3Rpb247XHJcblxyXG4gIGVkaXRGb3JtID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcbiAgZWRpdEZvcm1PcHRpb25zID0gbmV3IEZvcm1PcHRpb25zKCk7XHJcbiAgQFZpZXdDaGlsZChcImVkaXRNb2RhbFwiLCB7IHN0YXRpYzogZmFsc2UgfSkgbW9kYWw6IEVsZW1lbnRSZWY7XHJcblxyXG4gIG1vZGVJZDogbnVtYmVyID0gdW5kZWZpbmVkO1xyXG4gIGF1dGhlbnRpY2F0aW9uTW9kZUVudW1WYWx1ZSA9IEF1dGhlbnRpY2F0aW9uTW9kZTtcclxuXHJcbiAgLy8jcmVnaW9uIHVhZSBwYXNzIHByb3BzXHJcbiAgYmFzZVVSTFRleHRCb3g6IFRleHRCb3hPcHRpb25zO1xyXG4gIGNsaWVudElkVGV4dEJveDogVGV4dEJveE9wdGlvbnM7XHJcbiAgc2VjcmV0S2V5VGV4dEJveDogVGV4dEJveE9wdGlvbnM7XHJcbiAgcmVkaXJlY3RVUkxUZXh0Qm94OiBUZXh0Qm94T3B0aW9ucztcclxuICBhY2Nlc3NMZXZlbERyb3Bkb3duOiBEcm9wZG93bk9wdGlvbnM7XHJcbiAgbGlua2luZ01vZGVEcm9wZG93bjogRHJvcGRvd25PcHRpb25zO1xyXG5cclxuICBsaW5raW5nRXhpc3RpbmdVc2Vyc1RvZ2dsZTogVG9nZ2xlU2xpZGVPcHRpb25zO1xyXG4gIGltcG9ydGluZ05ld1VzZXJUb2dnbGU6IFRvZ2dsZVNsaWRlT3B0aW9ucztcclxuICB1cGRhdGVVc2VySW5mb3JtYXRpb25PbkxvZ2luVG9nZ2xlOiBUb2dnbGVTbGlkZU9wdGlvbnM7XHJcbiAgc29wUGVybWlzc2lvbk1hcHBpbmdUb2dnbGU6IFRvZ2dsZVNsaWRlT3B0aW9ucztcclxuXHJcbiAgdXNlclBlcm1pc3Npb25TZXREcm9wZG93bjogRHJvcGRvd25PcHRpb25zO1xyXG4gIHVzZXJQZXJtaXNzaW9uczogRHJvcGRvd25PcHRpb25zO1xyXG5cclxuICB1YWVQYXNzQ29uZmlndXJhdGlvbk1vZGVsOiBVQUVQYXNzQ29uZmlndXJhdGlvbiA9IG5ldyBVQUVQYXNzQ29uZmlndXJhdGlvbigpO1xyXG5cclxuICBwZXJtaXNzaW9uU2V0TGlzdCA9IFtdO1xyXG4gIHBlcm1pc3Npb25zTGlzdCA9IFtdO1xyXG5cclxuICBzaG93VXNlclR5cGVQZXJtaXNzaW9uc01hcHBpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBzaG93VXNlclR5cGVMaW5raW5nTWFwcGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHVhZVBhc3NVc2VyVHlwZUVudW06IFVBRVBhc3NVc2VyVHlwZXM7XHJcbiAgdWFlUGFzc1VzZXJUeXBlTGlzdDogYW55W10gPSBbXTtcclxuICBzZWxlY3RlZEFjY2Vzc0xldmVsczogYW55W10gPSBbXTtcclxuXHJcbiAgLy8jcmVnaW9uIGxpbmtpbmcgbWFwcGluZ1xyXG4gIG5hbWVBckNoZWNrYm94OiBDaGVja0JveE9wdGlvbnM7XHJcbiAgbmFtZUVuQ2hlY2tib3g6IENoZWNrQm94T3B0aW9ucztcclxuICBlbWFpbENoZWNrYm94OiBDaGVja0JveE9wdGlvbnM7XHJcbiAgZUlkQ2hlY2tib3g6IENoZWNrQm94T3B0aW9ucztcclxuICBtb2JpbGVDaGVja2JveDogQ2hlY2tCb3hPcHRpb25zO1xyXG4gIG5hdGlvbmFsaXR5Q2hlY2tib3g6IENoZWNrQm94T3B0aW9ucztcclxuICBnZW5kZXJDaGVja2JveDogQ2hlY2tCb3hPcHRpb25zO1xyXG5cclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgLy8jZW5kcmVnaW9uXHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICBwcml2YXRlIG1hc3RlckxheW91dFNlcnZpY2U6IE1hc3RlckxheW91dFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb25zU2VydmljZTogQ29uZmlndXJhdGlvbnNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2UsXHJcbiAgKSB7XHJcbiAgICBzdXBlcihpbmplY3Rvcik7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICB9XHJcbiAgLy8jcmVnaW9uIGhlbHBlclxyXG5cclxuICB0cmFuc2xhdGUoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMudXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZShrZXkpO1xyXG4gIH1cclxuXHJcbiAgbG9hZFVBRVBhc3NVc2VyVHlwZXMoKSB7XHJcbiAgICBsZXQgbGlzdDogYW55W10gPSBbXTtcclxuICAgIGZvciAodmFyIGl0ZW0gaW4gVUFFUGFzc1VzZXJUeXBlcykge1xyXG4gICAgICBpZiAocGFyc2VJbnQoaXRlbSkpXHJcbiAgICAgICAgbGlzdC5wdXNoKHtcclxuICAgICAgICAgIGtleTogK2l0ZW0sXHJcbiAgICAgICAgICB2YWx1ZTogVUFFUGFzc1VzZXJUeXBlc1tpdGVtXVxyXG4gICAgICAgIH0gYXMgYW55KVxyXG4gICAgfVxyXG4gICAgdGhpcy51YWVQYXNzVXNlclR5cGVMaXN0ID0gbGlzdDtcclxuICAgIHJldHVybiBsaXN0O1xyXG4gIH1cclxuXHJcbiAgbG9hZFVBRVBhc3NMaW5raW5nTW9kZSgpIHtcclxuICAgIGxldCBsaXN0OiBhbnlbXSA9IFtdO1xyXG4gICAgZm9yICh2YXIgaXRlbSBpbiBVQUVQYXNzTGlua2luZ01vZGUpIHtcclxuICAgICAgaWYgKHBhcnNlSW50KGl0ZW0pKVxyXG4gICAgICAgIGxpc3QucHVzaCh7XHJcbiAgICAgICAgICBrZXk6ICtpdGVtLFxyXG4gICAgICAgICAgdmFsdWU6IHRoaXMudHJhbnNsYXRlKFVBRVBhc3NMaW5raW5nTW9kZVtpdGVtXSlcclxuICAgICAgICB9IGFzIGFueSlcclxuICAgIH1cclxuICAgIHJldHVybiBsaXN0O1xyXG4gIH1cclxuXHJcbiAgZ2V0VUFFUGFzc1VzZXJUeXBlVmFsdWUoa2V5OiBudW1iZXIpIHtcclxuICAgIHJldHVybiB0aGlzLnVhZVBhc3NVc2VyVHlwZUxpc3QuZmluZChpID0+IGkua2V5ID09IGtleSkudmFsdWU7XHJcbiAgfVxyXG5cclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgc2hvd01vZGFsKG1vZGU6IEF1dGhlbnRpY2F0aW9uTW9kZSwgYXV0aENvbmZpZ09iamVjdDogQkJTRkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbikge1xyXG4gICAgdGhpcy5tb2RlSWQgPSBtb2RlO1xyXG4gICAgaWYgKHRoaXMuZWRpdEZvcm0pIHtcclxuICAgICAgdGhpcy5lZGl0Rm9ybS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgIHRoaXMuZWRpdEZvcm0ucmVzZXQoKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmVkaXRGb3JtID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcbiAgICB0aGlzLmVkaXRGb3JtT3B0aW9ucyA9IG5ldyBGb3JtT3B0aW9ucygpO1xyXG4gICAgdGhpcy5lZGl0Rm9ybU9wdGlvbnMuRm9ybUdyb3VwID0gdGhpcy5lZGl0Rm9ybSBhcyBhbnk7XHJcbiAgICB0aGlzLmVkaXRGb3JtT3B0aW9ucy5QYWdpbmdSZWZlcmVuY2UgPSB0aGlzLnBhZ2luZ0VsZW1lbnQ7XHJcbiAgICB0aGlzLmVkaXRGb3JtT3B0aW9ucy5HZXRNb2RlbEZ1bmN0aW9uID0gdGhpcy5nZXRBZGRNb2RlbDtcclxuICAgIHRoaXMuZWRpdEZvcm1PcHRpb25zLlNlcnZpY2VTdWJtaXRGdW5jdGlvbiA9IHRoaXMuZ2V0U3VibWl0RnVuY3Rpb247XHJcbiAgICB0aGlzLmVkaXRGb3JtT3B0aW9ucy5EaXNhYmxlU3VjY2Vzc05vdGlmaWNhdGlvbiA9IGZhbHNlO1xyXG4gICAgdGhpcy5lZGl0Rm9ybU9wdGlvbnMuT25TdWNjZXNzSGFuZGxlciA9IHRoaXMub25TdWNjZXNzSGFuZGxlcjtcclxuXHJcbiAgICBzd2l0Y2ggKG1vZGUpIHtcclxuICAgICAgY2FzZSBBdXRoZW50aWNhdGlvbk1vZGUuVUFFUGFzczpcclxuICAgICAgICB0aGlzLnVhZVBhc3NDb25maWd1cmF0aW9uTW9kZWwgPSBhdXRoQ29uZmlnT2JqZWN0LnVhZVBhc3NDb25maWc7XHJcblxyXG4gICAgICAgIHRoaXMuYmFzZVVSTFRleHRCb3ggPSBuZXcgVGV4dEJveE9wdGlvbnMoKTtcclxuICAgICAgICB0aGlzLmJhc2VVUkxUZXh0Qm94Lk5hbWUgPSBcImJhc2VVcmxcIjtcclxuICAgICAgICB0aGlzLmJhc2VVUkxUZXh0Qm94LkxhYmVsS2V5ID0gXCJCYXNlVXJsXCI7XHJcbiAgICAgICAgdGhpcy5iYXNlVVJMVGV4dEJveC5UeXBlID0gSW5wdXRUeXBlLlRleHQ7XHJcbiAgICAgICAgdGhpcy5iYXNlVVJMVGV4dEJveC5WaWV3VHlwZSA9IENvbnRyb2xMYXlvdXQuVmVydGljYWw7XHJcbiAgICAgICAgdGhpcy5iYXNlVVJMVGV4dEJveC5WYWx1ZSA9IHRoaXMudWFlUGFzc0NvbmZpZ3VyYXRpb25Nb2RlbC5iYXNlVXJsO1xyXG5cclxuICAgICAgICB0aGlzLmNsaWVudElkVGV4dEJveCA9IG5ldyBUZXh0Qm94T3B0aW9ucygpO1xyXG4gICAgICAgIHRoaXMuY2xpZW50SWRUZXh0Qm94Lk5hbWUgPSBcImNsaWVudElEXCI7XHJcbiAgICAgICAgdGhpcy5jbGllbnRJZFRleHRCb3guTGFiZWxLZXkgPSBcIkNsaWVudElEXCI7XHJcbiAgICAgICAgdGhpcy5jbGllbnRJZFRleHRCb3guVHlwZSA9IElucHV0VHlwZS5UZXh0O1xyXG4gICAgICAgIHRoaXMuY2xpZW50SWRUZXh0Qm94LlZpZXdUeXBlID0gQ29udHJvbExheW91dC5WZXJ0aWNhbDtcclxuICAgICAgICB0aGlzLmNsaWVudElkVGV4dEJveC5WYWx1ZSA9IHRoaXMudWFlUGFzc0NvbmZpZ3VyYXRpb25Nb2RlbC5jbGllbnRJRDtcclxuXHJcbiAgICAgICAgdGhpcy5zZWNyZXRLZXlUZXh0Qm94ID0gbmV3IFRleHRCb3hPcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5zZWNyZXRLZXlUZXh0Qm94Lk5hbWUgPSBcInNlY3JldEtleVwiO1xyXG4gICAgICAgIHRoaXMuc2VjcmV0S2V5VGV4dEJveC5MYWJlbEtleSA9IFwiU2VjcmV0S2V5XCI7XHJcbiAgICAgICAgdGhpcy5zZWNyZXRLZXlUZXh0Qm94LlR5cGUgPSBJbnB1dFR5cGUuVGV4dDtcclxuICAgICAgICB0aGlzLnNlY3JldEtleVRleHRCb3guVmlld1R5cGUgPSBDb250cm9sTGF5b3V0LlZlcnRpY2FsO1xyXG4gICAgICAgIHRoaXMuc2VjcmV0S2V5VGV4dEJveC5WYWx1ZSA9IHRoaXMudWFlUGFzc0NvbmZpZ3VyYXRpb25Nb2RlbC5zZWNyZXRLZXk7XHJcblxyXG4gICAgICAgIHRoaXMucmVkaXJlY3RVUkxUZXh0Qm94ID0gbmV3IFRleHRCb3hPcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5yZWRpcmVjdFVSTFRleHRCb3guTmFtZSA9IFwicmVkaXJlY3RVcmxcIjtcclxuICAgICAgICB0aGlzLnJlZGlyZWN0VVJMVGV4dEJveC5MYWJlbEtleSA9IFwiUmVkaXJlY3RVcmxcIjtcclxuICAgICAgICB0aGlzLnJlZGlyZWN0VVJMVGV4dEJveC5UeXBlID0gSW5wdXRUeXBlLlRleHQ7XHJcbiAgICAgICAgdGhpcy5yZWRpcmVjdFVSTFRleHRCb3guVmlld1R5cGUgPSBDb250cm9sTGF5b3V0LlZlcnRpY2FsO1xyXG4gICAgICAgIHRoaXMucmVkaXJlY3RVUkxUZXh0Qm94LlZhbHVlID0gdGhpcy51YWVQYXNzQ29uZmlndXJhdGlvbk1vZGVsLnJlZGlyZWN0VXJsO1xyXG5cclxuICAgICAgICB0aGlzLmFjY2Vzc0xldmVsRHJvcGRvd24gPSBuZXcgRHJvcGRvd25PcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5hY2Nlc3NMZXZlbERyb3Bkb3duLk5hbWUgPSBcImFjY2Vzc0xldmVsc1wiO1xyXG4gICAgICAgIHRoaXMuYWNjZXNzTGV2ZWxEcm9wZG93bi5MYWJlbEtleSA9IFwiQWNjZXNzTGV2ZWxcIjtcclxuICAgICAgICB0aGlzLmFjY2Vzc0xldmVsRHJvcGRvd24uU2luZ2xlU2VsZWN0aW9uID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5hY2Nlc3NMZXZlbERyb3Bkb3duLlNlbGVjdGVkSXRlbXMgPSB0aGlzLnVhZVBhc3NDb25maWd1cmF0aW9uTW9kZWwuYWNjZXNzTGV2ZWxzO1xyXG4gICAgICAgIHRoaXMuYWNjZXNzTGV2ZWxEcm9wZG93bi5EYXRhU291cmNlID0gdGhpcy5sb2FkVUFFUGFzc1VzZXJUeXBlcygpO1xyXG5cclxuICAgICAgICB0aGlzLmxpbmtpbmdNb2RlRHJvcGRvd24gPSBuZXcgRHJvcGRvd25PcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5saW5raW5nTW9kZURyb3Bkb3duLk5hbWUgPSBcImxpbmtpbmdNb2RlXCI7XHJcbiAgICAgICAgdGhpcy5saW5raW5nTW9kZURyb3Bkb3duLkxhYmVsS2V5ID0gXCJMaW5raW5nTW9kZVwiO1xyXG4gICAgICAgIHRoaXMubGlua2luZ01vZGVEcm9wZG93bi5TaW5nbGVTZWxlY3Rpb24gPSB0cnVlO1xyXG4gICAgICAgIHRoaXMubGlua2luZ01vZGVEcm9wZG93bi5TZWxlY3RlZEl0ZW1zID0gdGhpcy51YWVQYXNzQ29uZmlndXJhdGlvbk1vZGVsLmxpbmtpbmdNb2RlO1xyXG4gICAgICAgIHRoaXMubGlua2luZ01vZGVEcm9wZG93bi5EYXRhU291cmNlID0gdGhpcy5sb2FkVUFFUGFzc0xpbmtpbmdNb2RlKCk7XHJcblxyXG4gICAgICAgIHRoaXMuc29wUGVybWlzc2lvbk1hcHBpbmdUb2dnbGUgPSBuZXcgVG9nZ2xlU2xpZGVPcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5zb3BQZXJtaXNzaW9uTWFwcGluZ1RvZ2dsZS5OYW1lID0gXCJzb3BQZXJtaXNzaW9uTWFwcGluZ1wiO1xyXG4gICAgICAgIHRoaXMuc29wUGVybWlzc2lvbk1hcHBpbmdUb2dnbGUuTGFiZWxLZXkgPSBcIlNPUFBlcm1pc3Npb25NYXBwaW5nXCI7XHJcbiAgICAgICAgdGhpcy5zb3BQZXJtaXNzaW9uTWFwcGluZ1RvZ2dsZS5WYWx1ZSA9IHRoaXMudWFlUGFzc0NvbmZpZ3VyYXRpb25Nb2RlbC5lbmFibGVTT1BQZXJtaXNzaW9uTWFwcGluZztcclxuXHJcbiAgICAgICAgdGhpcy5saW5raW5nRXhpc3RpbmdVc2Vyc1RvZ2dsZSA9IG5ldyBUb2dnbGVTbGlkZU9wdGlvbnMoKTtcclxuICAgICAgICB0aGlzLmxpbmtpbmdFeGlzdGluZ1VzZXJzVG9nZ2xlLk5hbWUgPSBcImxpbmtpbmdFeGlzdGluZ1VzZXJzXCI7XHJcbiAgICAgICAgdGhpcy5saW5raW5nRXhpc3RpbmdVc2Vyc1RvZ2dsZS5MYWJlbEtleSA9IFwiTGlua2luZ0V4aXN0aW5nVXNlcnNcIjtcclxuICAgICAgICB0aGlzLmxpbmtpbmdFeGlzdGluZ1VzZXJzVG9nZ2xlLlZhbHVlID0gdGhpcy51YWVQYXNzQ29uZmlndXJhdGlvbk1vZGVsLmVuYWJsZUxpbmtpbmdFeGlzdGluZ1VzZXJzO1xyXG5cclxuICAgICAgICB0aGlzLmltcG9ydGluZ05ld1VzZXJUb2dnbGUgPSBuZXcgVG9nZ2xlU2xpZGVPcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5pbXBvcnRpbmdOZXdVc2VyVG9nZ2xlLk5hbWUgPSBcImltcG9ydGluZ05ld1VzZXJcIjtcclxuICAgICAgICB0aGlzLmltcG9ydGluZ05ld1VzZXJUb2dnbGUuTGFiZWxLZXkgPSBcIkltcG9ydGluZ05ld1VzZXJcIjtcclxuICAgICAgICB0aGlzLmltcG9ydGluZ05ld1VzZXJUb2dnbGUuVmFsdWUgPSB0aGlzLnVhZVBhc3NDb25maWd1cmF0aW9uTW9kZWwuZW5hYmxlSW1wb3J0aW5nTmV3VXNlcjtcclxuXHJcbiAgICAgICAgdGhpcy51cGRhdGVVc2VySW5mb3JtYXRpb25PbkxvZ2luVG9nZ2xlID0gbmV3IFRvZ2dsZVNsaWRlT3B0aW9ucygpO1xyXG4gICAgICAgIHRoaXMudXBkYXRlVXNlckluZm9ybWF0aW9uT25Mb2dpblRvZ2dsZS5OYW1lID0gXCJ1cGRhdGVVc2VySW5mb3JtYXRpb25PbkxvZ2luXCI7XHJcbiAgICAgICAgdGhpcy51cGRhdGVVc2VySW5mb3JtYXRpb25PbkxvZ2luVG9nZ2xlLkxhYmVsS2V5ID0gXCJVcGRhdGVVc2VySW5mb3JtYXRpb25PbkxvZ2luXCI7XHJcbiAgICAgICAgdGhpcy51cGRhdGVVc2VySW5mb3JtYXRpb25PbkxvZ2luVG9nZ2xlLlZhbHVlID0gdGhpcy51YWVQYXNzQ29uZmlndXJhdGlvbk1vZGVsLmVuYWJsZVVwZGF0ZVVzZXJJbmZvcm1hdGlvbk9uTG9naW47XHJcblxyXG4gICAgICAgIHRoaXMudXNlclBlcm1pc3Npb25TZXREcm9wZG93biA9IG5ldyBEcm9wZG93bk9wdGlvbnMoKTtcclxuICAgICAgICB0aGlzLnVzZXJQZXJtaXNzaW9uU2V0RHJvcGRvd24uTmFtZSA9IFwiUGVybWlzc2lvblNldHNcIlxyXG4gICAgICAgIHRoaXMudXNlclBlcm1pc3Npb25TZXREcm9wZG93bi5MYWJlbEtleSA9IFwiUGVybWlzc2lvblNldHNcIlxyXG4gICAgICAgIHRoaXMudXNlclBlcm1pc3Npb25TZXREcm9wZG93bi5TZWxlY3RlZEl0ZW1zID0gdGhpcy51YWVQYXNzQ29uZmlndXJhdGlvbk1vZGVsLmRlZmF1bHRQZXJtaXNzaW9uU2V0O1xyXG4gICAgICAgIHRoaXMudXNlclBlcm1pc3Npb25TZXREcm9wZG93bi5TaW5nbGVTZWxlY3Rpb24gPSB0cnVlO1xyXG4gICAgICAgIHRoaXMudXNlclBlcm1pc3Npb25TZXREcm9wZG93bi5BbGxvd1NlYXJjaEZpbHRlciA9IHRydWU7XHJcbiAgICAgICAgdGhpcy51c2VyUGVybWlzc2lvblNldERyb3Bkb3duLklzUmVxdWlyZWQgPSB0cnVlO1xyXG5cclxuICAgICAgICB0aGlzLm5hbWVBckNoZWNrYm94ID0gbmV3IENoZWNrQm94T3B0aW9ucygpO1xyXG4gICAgICAgIHRoaXMubmFtZUFyQ2hlY2tib3guTmFtZSA9IFwibmFtZUFyXCJcclxuICAgICAgICB0aGlzLm5hbWVBckNoZWNrYm94LkxhYmVsS2V5ID0gXCJOYW1lQVJcIjtcclxuICAgICAgICB0aGlzLm5hbWVBckNoZWNrYm94LlZhbHVlID0gdGhpcy51YWVQYXNzQ29uZmlndXJhdGlvbk1vZGVsLnVzZXJJbmZvTWFwcGluZy5uYW1lQVI7XHJcblxyXG4gICAgICAgIHRoaXMubmFtZUVuQ2hlY2tib3ggPSBuZXcgQ2hlY2tCb3hPcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5uYW1lRW5DaGVja2JveC5OYW1lID0gXCJuYW1lRW5cIlxyXG4gICAgICAgIHRoaXMubmFtZUVuQ2hlY2tib3guTGFiZWxLZXkgPSBcIk5hbWVFTlwiO1xyXG4gICAgICAgIHRoaXMubmFtZUVuQ2hlY2tib3guVmFsdWUgPSB0aGlzLnVhZVBhc3NDb25maWd1cmF0aW9uTW9kZWwudXNlckluZm9NYXBwaW5nLm5hbWVFTjtcclxuXHJcbiAgICAgICAgdGhpcy5lbWFpbENoZWNrYm94ID0gbmV3IENoZWNrQm94T3B0aW9ucygpO1xyXG4gICAgICAgIHRoaXMuZW1haWxDaGVja2JveC5OYW1lID0gXCJlbWFpbFwiXHJcbiAgICAgICAgdGhpcy5lbWFpbENoZWNrYm94LkxhYmVsS2V5ID0gXCJFbWFpbFwiO1xyXG4gICAgICAgIHRoaXMuZW1haWxDaGVja2JveC5WYWx1ZSA9IHRoaXMudWFlUGFzc0NvbmZpZ3VyYXRpb25Nb2RlbC51c2VySW5mb01hcHBpbmcuZW1haWw7XHJcblxyXG4gICAgICAgIHRoaXMuZUlkQ2hlY2tib3ggPSBuZXcgQ2hlY2tCb3hPcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5lSWRDaGVja2JveC5OYW1lID0gXCJlSWRcIlxyXG4gICAgICAgIHRoaXMuZUlkQ2hlY2tib3guTGFiZWxLZXkgPSBcIkVJRFwiO1xyXG4gICAgICAgIHRoaXMuZUlkQ2hlY2tib3guVmFsdWUgPSB0aGlzLnVhZVBhc3NDb25maWd1cmF0aW9uTW9kZWwudXNlckluZm9NYXBwaW5nLkVJRDtcclxuXHJcbiAgICAgICAgdGhpcy5tb2JpbGVDaGVja2JveCA9IG5ldyBDaGVja0JveE9wdGlvbnMoKTtcclxuICAgICAgICB0aGlzLm1vYmlsZUNoZWNrYm94Lk5hbWUgPSBcIm1vYmlsZVwiXHJcbiAgICAgICAgdGhpcy5tb2JpbGVDaGVja2JveC5MYWJlbEtleSA9IFwiTW9iaWxlXCI7XHJcbiAgICAgICAgdGhpcy5tb2JpbGVDaGVja2JveC5WYWx1ZSA9IHRoaXMudWFlUGFzc0NvbmZpZ3VyYXRpb25Nb2RlbC51c2VySW5mb01hcHBpbmcubW9iaWxlO1xyXG5cclxuICAgICAgICB0aGlzLm5hdGlvbmFsaXR5Q2hlY2tib3ggPSBuZXcgQ2hlY2tCb3hPcHRpb25zKCk7XHJcbiAgICAgICAgdGhpcy5uYXRpb25hbGl0eUNoZWNrYm94Lk5hbWUgPSBcIm5hdGlvbmFsaXR5XCJcclxuICAgICAgICB0aGlzLm5hdGlvbmFsaXR5Q2hlY2tib3guTGFiZWxLZXkgPSBcIk5hdGlvbmFsaXR5XCI7XHJcbiAgICAgICAgdGhpcy5uYXRpb25hbGl0eUNoZWNrYm94LlZhbHVlID0gdGhpcy51YWVQYXNzQ29uZmlndXJhdGlvbk1vZGVsLnVzZXJJbmZvTWFwcGluZy5uYXRpb25hbGl0eTtcclxuXHJcbiAgICAgICAgdGhpcy5nZW5kZXJDaGVja2JveCA9IG5ldyBDaGVja0JveE9wdGlvbnMoKTtcclxuICAgICAgICB0aGlzLmdlbmRlckNoZWNrYm94Lk5hbWUgPSBcImdlbmRlclwiXHJcbiAgICAgICAgdGhpcy5nZW5kZXJDaGVja2JveC5MYWJlbEtleSA9IFwiR2VuZGVyXCI7XHJcbiAgICAgICAgdGhpcy5nZW5kZXJDaGVja2JveC5WYWx1ZSA9IHRoaXMudWFlUGFzc0NvbmZpZ3VyYXRpb25Nb2RlbC51c2VySW5mb01hcHBpbmcuZ2VuZGVyO1xyXG5cclxuICAgICAgICB0aGlzLmdldFBlcm1pc3Npb25TZXRzKCk7XHJcbiAgICAgICAgdGhpcy5vbkNoYW5nZVNPUFBlcm1pc3Npb25Ub2dnbGVWYWx1ZSh0aGlzLnVhZVBhc3NDb25maWd1cmF0aW9uTW9kZWwuZW5hYmxlU09QUGVybWlzc2lvbk1hcHBpbmcpO1xyXG4gICAgICAgIHRoaXMub25MaW5raW5nRXhpc3RpbmdVc2Vyc1RvZ2dsZVZhbHVlKHRoaXMudWFlUGFzc0NvbmZpZ3VyYXRpb25Nb2RlbC5lbmFibGVMaW5raW5nRXhpc3RpbmdVc2Vycyk7XHJcbiAgICAgICAgdGhpcy5vbkNoYW5nZUFjY2Vzc0xldmVscyh0aGlzLnVhZVBhc3NDb25maWd1cmF0aW9uTW9kZWwuYWNjZXNzTGV2ZWxzKTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMudWFlUGFzc0NvbmZpZ3VyYXRpb25Nb2RlbC5kZWZhdWx0UGVybWlzc2lvblNldClcclxuICAgICAgICAgIHRoaXMuY2hhbmdlUGVybWlzc2lvblNldCh0aGlzLnVhZVBhc3NDb25maWd1cmF0aW9uTW9kZWwuZGVmYXVsdFBlcm1pc3Npb25TZXQpO1xyXG5cclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBBdXRoZW50aWNhdGlvbk1vZGUuQXp1cmVBRDpcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICB0aGlzLm1vZGFsU2VydmljZS5vcGVuKHRoaXMubW9kYWwsIHsgc2l6ZTogJ3hsJyB9IGFzIE5nYk1vZGFsT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBnZXRBZGRNb2RlbCA9ICgpID0+IHtcclxuICAgIGxldCByZXN1bHRNb2RlbCA9IHRoaXMuZWRpdEZvcm0udmFsdWUgYXMgYW55O1xyXG4gICAgbGV0IGVkaXRNb2RlbDogQkJTRkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbiA9IG5ldyBCQlNGQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKCk7XHJcbiAgICBlZGl0TW9kZWwubW9kZUlkID0gdGhpcy5tb2RlSWQ7XHJcbiAgICBlZGl0TW9kZWwudWFlUGFzc0NvbmZpZyA9IHRoaXMuYnVpbGRVQUVQYXNzQ29uZmlnT2JqZWN0KHJlc3VsdE1vZGVsKTtcclxuICAgIHJldHVybiBBcnJheShlZGl0TW9kZWwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0U3VibWl0RnVuY3Rpb24gPSAoZWRpdE1vZGVsOiBCQlNGQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKTogT2JzZXJ2YWJsZTxhbnk+ID0+IHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ3VyYXRpb25zU2VydmljZS51cGRhdGVBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb25EYXRhKGVkaXRNb2RlbClcclxuICB9XHJcblxyXG4gIG9uU3VjY2Vzc0hhbmRsZXIgPSAoKTogdm9pZCA9PiB7XHJcbiAgICB0aGlzLm1hc3RlckxheW91dFNlcnZpY2UucmVsb2FkQ29tcG9uZW50KClcclxuICB9XHJcblxyXG4gIGJ1aWxkVUFFUGFzc0NvbmZpZ09iamVjdChmb3JtVmFsdWU6IGFueSk6IFVBRVBhc3NDb25maWd1cmF0aW9uIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIGJhc2VVcmw6IGZvcm1WYWx1ZVt0aGlzLmJhc2VVUkxUZXh0Qm94Lk5hbWVdLFxyXG4gICAgICBjbGllbnRJRDogZm9ybVZhbHVlW3RoaXMuY2xpZW50SWRUZXh0Qm94Lk5hbWVdLFxyXG4gICAgICBzZWNyZXRLZXk6IGZvcm1WYWx1ZVt0aGlzLnNlY3JldEtleVRleHRCb3guTmFtZV0sXHJcbiAgICAgIHJlZGlyZWN0VXJsOiBmb3JtVmFsdWVbdGhpcy5yZWRpcmVjdFVSTFRleHRCb3guTmFtZV0sXHJcbiAgICAgIGFjY2Vzc0xldmVsczogZm9ybVZhbHVlW3RoaXMuYWNjZXNzTGV2ZWxEcm9wZG93bi5OYW1lXSxcclxuICAgICAgZW5hYmxlTGlua2luZ0V4aXN0aW5nVXNlcnM6IGZvcm1WYWx1ZVt0aGlzLmxpbmtpbmdFeGlzdGluZ1VzZXJzVG9nZ2xlLk5hbWVdLFxyXG4gICAgICBlbmFibGVJbXBvcnRpbmdOZXdVc2VyOiBmb3JtVmFsdWVbdGhpcy5pbXBvcnRpbmdOZXdVc2VyVG9nZ2xlLk5hbWVdLFxyXG4gICAgICBlbmFibGVVcGRhdGVVc2VySW5mb3JtYXRpb25PbkxvZ2luOiBmb3JtVmFsdWVbdGhpcy51cGRhdGVVc2VySW5mb3JtYXRpb25PbkxvZ2luVG9nZ2xlLk5hbWVdLFxyXG4gICAgICBkZWZhdWx0UGVybWlzc2lvblNldDogZm9ybVZhbHVlW3RoaXMudXNlclBlcm1pc3Npb25TZXREcm9wZG93bi5OYW1lXSxcclxuICAgICAgZW5hYmxlU09QUGVybWlzc2lvbk1hcHBpbmc6IGZvcm1WYWx1ZVt0aGlzLnNvcFBlcm1pc3Npb25NYXBwaW5nVG9nZ2xlLk5hbWVdLFxyXG4gICAgICB1c2VyVHlwZVBlcm1pc3Npb25zOiB0aGlzLmJ1aWxkVXNlclR5cGVQZXJtaXNzaW9uKCksXHJcbiAgICAgIHVzZXJJbmZvTWFwcGluZzogdGhpcy5idWlsZFVzZXJJbmZvTWFwcGluZyhmb3JtVmFsdWUpLFxyXG4gICAgICBsaW5raW5nTW9kZTogZm9ybVZhbHVlW3RoaXMubGlua2luZ01vZGVEcm9wZG93bi5OYW1lXSxcclxuICAgIH0gYXMgVUFFUGFzc0NvbmZpZ3VyYXRpb25cclxuICB9XHJcblxyXG4gIGJ1aWxkVXNlckluZm9NYXBwaW5nKGZvcm1WYWx1ZTogYW55KSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuYW1lRU46IGZvcm1WYWx1ZVt0aGlzLm5hbWVFbkNoZWNrYm94Lk5hbWVdLFxyXG4gICAgICBuYW1lQVI6IGZvcm1WYWx1ZVt0aGlzLm5hbWVBckNoZWNrYm94Lk5hbWVdLFxyXG4gICAgICBlbWFpbDogZm9ybVZhbHVlW3RoaXMuZW1haWxDaGVja2JveC5OYW1lXSxcclxuICAgICAgRUlEOiBmb3JtVmFsdWVbdGhpcy5lSWRDaGVja2JveC5OYW1lXSxcclxuICAgICAgbW9iaWxlOiBmb3JtVmFsdWVbdGhpcy5tb2JpbGVDaGVja2JveC5OYW1lXSxcclxuICAgICAgbmF0aW9uYWxpdHk6IGZvcm1WYWx1ZVt0aGlzLm5hdGlvbmFsaXR5Q2hlY2tib3guTmFtZV0sXHJcbiAgICAgIGdlbmRlcjogZm9ybVZhbHVlW3RoaXMuZ2VuZGVyQ2hlY2tib3guTmFtZV1cclxuICAgIH0gYXMgVUFFUGFzc1VzZXJJbmZvTWFwcGluZztcclxuICB9XHJcblxyXG4gIGJ1aWxkVXNlclR5cGVQZXJtaXNzaW9uKCk6IFVBRVBhc3NVc2VyVHlwZVBlcm1pc3Npb25bXSB7XHJcbiAgICBsZXQgcmVzTGlzdDogVUFFUGFzc1VzZXJUeXBlUGVybWlzc2lvbltdID0gW107XHJcbiAgICBpZiAodGhpcy5zaG93VXNlclR5cGVQZXJtaXNzaW9uc01hcHBpbmcpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZEFjY2Vzc0xldmVscy5mb3JFYWNoKGxldmVsID0+IHtcclxuICAgICAgICByZXNMaXN0LnB1c2goe1xyXG4gICAgICAgICAgdXNlclR5cGU6IGxldmVsLFxyXG4gICAgICAgICAgcGVybWlzc2lvbnM6IHRoaXMuZWRpdEZvcm0uY29udHJvbHNbYHBlcm1pc3Npb25zLXVzZXItdHlwZS0ke2xldmVsfWBdPy52YWx1ZSxcclxuICAgICAgICB9IGFzIFVBRVBhc3NVc2VyVHlwZVBlcm1pc3Npb24pXHJcbiAgICAgIH0pXHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHJlc0xpc3Q7XHJcbiAgfVxyXG5cclxuICAvLyNyZWdpb24gVUFFIFBhc3MgRnVuY3Rpb25zXHJcblxyXG4gIG9uTGlua2luZ0V4aXN0aW5nVXNlcnNUb2dnbGVWYWx1ZSh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5zaG93VXNlclR5cGVMaW5raW5nTWFwcGluZyA9IHZhbHVlO1xyXG4gICAgaWYgKHRoaXMuc2hvd1VzZXJUeXBlTGlua2luZ01hcHBpbmcpXHJcbiAgICAgIHRoaXMuYWRkUmVxdWlyZWRWYWxpZGF0aW9uKFt0aGlzLmxpbmtpbmdNb2RlRHJvcGRvd25dLCB0aGlzLmVkaXRGb3JtLCB0aGlzLmVkaXRGb3JtT3B0aW9ucyk7XHJcbiAgICBlbHNlXHJcbiAgICAgIHRoaXMucmVtb3ZlUmVxdWlyZWRWYWxpZGF0aW9uKFt0aGlzLmxpbmtpbmdNb2RlRHJvcGRvd25dLCB0aGlzLmVkaXRGb3JtLCB0aGlzLmVkaXRGb3JtT3B0aW9ucyk7XHJcblxyXG4gIH1cclxuXHJcbiAgb25DaGFuZ2VTT1BQZXJtaXNzaW9uVG9nZ2xlVmFsdWUodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuc2hvd1VzZXJUeXBlUGVybWlzc2lvbnNNYXBwaW5nID0gdmFsdWU7XHJcbiAgICBpZiAoIXRoaXMuc2hvd1VzZXJUeXBlUGVybWlzc2lvbnNNYXBwaW5nKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRBY2Nlc3NMZXZlbHMuZm9yRWFjaChsZXZlbCA9PiB7XHJcbiAgICAgICAgdGhpcy5yZW1vdmVDb250cm9sKGBwZXJtaXNzaW9ucy11c2VyLXR5cGUtJHtsZXZlbH1gLCB0aGlzLmVkaXRGb3JtKTtcclxuICAgICAgfSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNoYW5nZVBlcm1pc3Npb25TZXQoaWQ6IGFueSkge1xyXG4gICAgaWYgKCFpZCkge1xyXG4gICAgICB0aGlzLnBlcm1pc3Npb25zTGlzdCA9IFtdO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGlkcyA9IEFycmF5KGlkKTtcclxuICAgIHRoaXMudXNlclNlcnZpY2UuTG9hZFBlcm1pc3Npb25zRHJvcERvd24oaWRzKS5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xyXG4gICAgICB0aGlzLnBlcm1pc3Npb25zTGlzdCA9IHJlc3VsdCBhcyBhbnk7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgZ2V0UGVybWlzc2lvblNldHMoKSB7XHJcbiAgICB0aGlzLnVzZXJTZXJ2aWNlLmdldFBlcm1pc3Npb25TZXRzTGlzdCgpLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICB0aGlzLnBlcm1pc3Npb25TZXRMaXN0ID0gcmVzLnBlcm1lc3Npb25zZXRzO1xyXG4gICAgICB0aGlzLnVzZXJQZXJtaXNzaW9uU2V0RHJvcGRvd24uRGF0YVNvdXJjZSA9IHRoaXMucGVybWlzc2lvblNldExpc3Q7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgaW5pdERyb3BEb3duT3B0aW9ucyh1c2VyVHlwZTogYW55KSB7XHJcbiAgICB2YXIgcGVybWlzc2lvbkRyb3BEb3duT3B0aW9ucyA9IG5ldyBEcm9wZG93bk9wdGlvbnMoKTtcclxuICAgIHBlcm1pc3Npb25Ecm9wRG93bk9wdGlvbnMuTmFtZSA9IGBwZXJtaXNzaW9ucy11c2VyLXR5cGUtJHt1c2VyVHlwZX1gO1xyXG4gICAgcGVybWlzc2lvbkRyb3BEb3duT3B0aW9ucy5MYWJlbFZhbHVlID0gdGhpcy50cmFuc2xhdGUoVUFFUGFzc1VzZXJUeXBlc1t1c2VyVHlwZV0pICsgXCItXCIgKyB0aGlzLnRyYW5zbGF0ZShcIlBlcm1pc3Npb25zXCIpO1xyXG4gICAgcGVybWlzc2lvbkRyb3BEb3duT3B0aW9ucy5Jc1JlcXVpcmVkID0gdHJ1ZTtcclxuICAgIHBlcm1pc3Npb25Ecm9wRG93bk9wdGlvbnMuVmlld1R5cGUgPSBDb250cm9sTGF5b3V0LlZlcnRpY2FsO1xyXG4gICAgcGVybWlzc2lvbkRyb3BEb3duT3B0aW9ucy5EYXRhU291cmNlID0gdGhpcy5wZXJtaXNzaW9uc0xpc3Q7XHJcbiAgICBwZXJtaXNzaW9uRHJvcERvd25PcHRpb25zLlNlbGVjdGVkSXRlbXMgPSB0aGlzLnNldFBlcm1pc3Npb25Gb3JVQUVQYXNzVXNlclR5cGVzKHVzZXJUeXBlKTtcclxuXHJcbiAgICByZXR1cm4gcGVybWlzc2lvbkRyb3BEb3duT3B0aW9ucztcclxuICB9XHJcblxyXG4gIG9uQ2hhbmdlQWNjZXNzTGV2ZWxzKHNlbGVjdGVkSXRlbXM6IGFueSkge1xyXG4gICAgbGV0IHVzZXJUeXBlc0tleXMgPSB0aGlzLnVhZVBhc3NVc2VyVHlwZUxpc3QubWFwKGl0ZW0gPT4geyByZXR1cm4gaXRlbS5rZXkgfSk7XHJcbiAgICB0aGlzLnNlbGVjdGVkQWNjZXNzTGV2ZWxzID0gc2VsZWN0ZWRJdGVtcztcclxuXHJcbiAgICBsZXQgbm90U2VsZWN0ZWQgPSB0aGlzLnNlbGVjdGVkQWNjZXNzTGV2ZWxzLmZpbHRlcihpdGVtID0+IHVzZXJUeXBlc0tleXMuaW5kZXhPZihpdGVtKSA8IDApO1xyXG4gICAgbm90U2VsZWN0ZWQuZm9yRWFjaChpID0+IHtcclxuICAgICAgdGhpcy5yZW1vdmVDb250cm9sKGBwZXJtaXNzaW9ucy11c2VyLXR5cGUtJHtpfWAsIHRoaXMuZWRpdEZvcm0pO1xyXG4gICAgfSlcclxuXHJcbiAgfVxyXG5cclxuICBzZXRQZXJtaXNzaW9uRm9yVUFFUGFzc1VzZXJUeXBlcyh1c2VyVHlwZTogbnVtYmVyKSB7XHJcbiAgICByZXR1cm4gdGhpcy51YWVQYXNzQ29uZmlndXJhdGlvbk1vZGVsLnVzZXJUeXBlUGVybWlzc2lvbnMuZmluZChpID0+IGkudXNlclR5cGUgPT0gdXNlclR5cGUpPy5wZXJtaXNzaW9ucztcclxuICB9XHJcbiAgLy8jZW5kcmVnaW9uXHJcblxyXG5cclxuICAvLyNyZWdpb24gdmFsaWRhdGlvbiBhY3Rpb25zXHJcblxyXG4gIGFkZFJlcXVpcmVkVmFsaWRhdGlvbihjdXN0b21Db250cm9sT3B0aW9uOiBhbnlbXSwgZm9ybTogRm9ybUdyb3VwLCBmb3JtT3B0aW9uczogRm9ybU9wdGlvbnMpOiB2b2lkIHtcclxuICAgIGN1c3RvbUNvbnRyb2xPcHRpb24uZm9yRWFjaChjb250cm9sID0+IHtcclxuICAgICAgaWYgKGZvcm0uZ2V0KGNvbnRyb2wuTmFtZSkpXHJcbiAgICAgICAgdGhpcy5hZGRSZXF1aXJlZFJ1bGUoZm9ybS5nZXQoY29udHJvbC5OYW1lKSwgZm9ybU9wdGlvbnMpO1xyXG4gICAgICBlbHNlXHJcbiAgICAgICAgY29udHJvbC5Jc1JlcXVpcmVkID0gdHJ1ZTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlUmVxdWlyZWRWYWxpZGF0aW9uKGN1c3RvbUNvbnRyb2xPcHRpb246IGFueVtdLCBmb3JtOiBGb3JtR3JvdXAsIGZvcm1PcHRpb25zOiBGb3JtT3B0aW9ucyk6IHZvaWQge1xyXG4gICAgY3VzdG9tQ29udHJvbE9wdGlvbi5mb3JFYWNoKGNvbnRyb2wgPT4ge1xyXG4gICAgICBpZiAoZm9ybS5nZXQoY29udHJvbC5OYW1lKSlcclxuICAgICAgICB0aGlzLnJlbW92ZVJlcXVpcmVkUnVsZShmb3JtLmdldChjb250cm9sLk5hbWUpLCBmb3JtT3B0aW9ucyk7XHJcbiAgICAgIGVsc2VcclxuICAgICAgICBjb250cm9sLklzUmVxdWlyZWQgPSBmYWxzZTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcmVzZXRGb3JtQ29udHJvbHNWYWx1ZShjdXN0b21Db250cm9sc09wdGlvbnM6IGFueVtdLCBmb3JtOiBGb3JtR3JvdXApOiB2b2lkIHtcclxuICAgIGN1c3RvbUNvbnRyb2xzT3B0aW9ucy5mb3JFYWNoKG9wdGlvbiA9PiB7XHJcbiAgICAgIGxldCBmb3JtQ29udHJvbCA9IGZvcm0uZ2V0KG9wdGlvbi5OYW1lKTtcclxuICAgICAgaWYgKGZvcm1Db250cm9sKVxyXG4gICAgICAgIGZvcm1Db250cm9sLnJlc2V0KCk7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgLy8jZW5kcmVnaW9uXHJcbn1cclxuXHJcblxyXG4iLCI8bmctdGVtcGxhdGUgI2VkaXRNb2RhbCBsZXQtbW9kYWw+XHJcbiAgPGRpdiBjbGFzcz1cIm1vZGFsLWhlYWRlclwiPlxyXG4gICAgPGg0IGNsYXNzPVwibW9kYWwtdGl0bGVcIj5cclxuICAgICAge3t0cmFuc2xhdGUoXCJFZGl0QXV0aENvbmZpZ3VyYXRpb25cIil9fVxyXG4gICAgPC9oND5cclxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGRhdGEtZGlzbWlzcz1cIm1vZGFsXCIgY2xhc3M9XCJidG4gYnRuLWljb24gYnRuLXNtXCIgKGNsaWNrKT1cIm1vZGFsLmRpc21pc3MoKVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic3ZnLWljb24gc3ZnLWljb24tNCBzdmctaWNvbi1ob3Zlci1icmFuZFwiIFtpbmxpbmVTVkddPVwiJy9hc3NldHMvaW1hZ2VzL2Nsb3NlLW1vZGFsLnN2ZydcIj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2J1dHRvbj5cclxuICA8L2Rpdj5cclxuICA8QkJTRi1Gb3JtIFtvcHRpb25zXT1cImVkaXRGb3JtT3B0aW9uc1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHlcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1vZGVJZCA9PSBhdXRoZW50aWNhdGlvbk1vZGVFbnVtVmFsdWUuVUFFUGFzc1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICA8QkJTRi1UZXh0Qm94IFtvcHRpb25zXT1cImJhc2VVUkxUZXh0Qm94XCIgW2dyb3VwXT1cImVkaXRGb3JtXCI+PC9CQlNGLVRleHRCb3g+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICA8QkJTRi1UZXh0Qm94IFtvcHRpb25zXT1cImNsaWVudElkVGV4dEJveFwiIFtncm91cF09XCJlZGl0Rm9ybVwiPjwvQkJTRi1UZXh0Qm94PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgICAgPEJCU0YtVGV4dEJveCBbb3B0aW9uc109XCJzZWNyZXRLZXlUZXh0Qm94XCIgW2dyb3VwXT1cImVkaXRGb3JtXCI+PC9CQlNGLVRleHRCb3g+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICA8QkJTRi1UZXh0Qm94IFtvcHRpb25zXT1cInJlZGlyZWN0VVJMVGV4dEJveFwiIFtncm91cF09XCJlZGl0Rm9ybVwiPjwvQkJTRi1UZXh0Qm94PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgICAgPEJCU0YtRHJvcGRvd25MaXN0IChPbkNoYW5nZSk9XCJvbkNoYW5nZUFjY2Vzc0xldmVscygkZXZlbnQpXCIgW29wdGlvbnNdPVwiYWNjZXNzTGV2ZWxEcm9wZG93blwiIFtncm91cF09XCJlZGl0Rm9ybVwiPjwvQkJTRi1Ecm9wZG93bkxpc3Q+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICA8QkJTRi1Ecm9wZG93bkxpc3QgKE9uQ2hhbmdlKT1cImNoYW5nZVBlcm1pc3Npb25TZXQoJGV2ZW50KVwiIFtvcHRpb25zXT1cInVzZXJQZXJtaXNzaW9uU2V0RHJvcGRvd25cIiBbZ3JvdXBdPVwiZWRpdEZvcm1cIj48L0JCU0YtRHJvcGRvd25MaXN0PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgICAgPEJCU0YtVG9nZ2xlc2xpZGUgKE9uQ2hhbmdlKT1cIm9uQ2hhbmdlU09QUGVybWlzc2lvblRvZ2dsZVZhbHVlKCRldmVudClcIiBbb3B0aW9uc109XCJzb3BQZXJtaXNzaW9uTWFwcGluZ1RvZ2dsZVwiXHJcbiAgICAgICAgICAgICAgW2dyb3VwXT1cImVkaXRGb3JtXCI+PC9CQlNGLVRvZ2dsZXNsaWRlPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgICAgPEJCU0YtVG9nZ2xlc2xpZGUgW29wdGlvbnNdPVwibGlua2luZ0V4aXN0aW5nVXNlcnNUb2dnbGVcIiAoT25DaGFuZ2UpPVwib25MaW5raW5nRXhpc3RpbmdVc2Vyc1RvZ2dsZVZhbHVlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIFtncm91cF09XCJlZGl0Rm9ybVwiPjwvQkJTRi1Ub2dnbGVzbGlkZT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgIDxCQlNGLVRvZ2dsZXNsaWRlIFtvcHRpb25zXT1cImltcG9ydGluZ05ld1VzZXJUb2dnbGVcIiBbZ3JvdXBdPVwiZWRpdEZvcm1cIj48L0JCU0YtVG9nZ2xlc2xpZGU+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICA8QkJTRi1Ub2dnbGVzbGlkZSBbb3B0aW9uc109XCJ1cGRhdGVVc2VySW5mb3JtYXRpb25PbkxvZ2luVG9nZ2xlXCIgW2dyb3VwXT1cImVkaXRGb3JtXCI+PC9CQlNGLVRvZ2dsZXNsaWRlPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb25maWd1cmF0aW9uLWhlYWRlclwiICpuZ0lmPVwic2hvd1VzZXJUeXBlUGVybWlzc2lvbnNNYXBwaW5nXCI+XHJcbiAgICAgICAgICA8aDU+e3t0cmFuc2xhdGUoXCJBY2Nlc3NMZXZlbHNQZXJtaXNzaW9uTWFwcGluZ1wiKX19PC9oNT5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02XCIgKm5nRm9yPVwibGV0IGxldmVsIG9mIHNlbGVjdGVkQWNjZXNzTGV2ZWxzXCI+XHJcbiAgICAgICAgICAgICAgPEJCU0YtRHJvcGRvd25MaXN0IFtvcHRpb25zXT1cImluaXREcm9wRG93bk9wdGlvbnMobGV2ZWwpXCIgW2dyb3VwXT1cImVkaXRGb3JtXCI+PC9CQlNGLURyb3Bkb3duTGlzdD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd1VzZXJUeXBlTGlua2luZ01hcHBpbmdcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb25maWd1cmF0aW9uLWhlYWRlclwiPlxyXG4gICAgICAgICAgICA8aDU+e3t0cmFuc2xhdGUoXCJMaW5raW5nT3B0aW9uc1wiKX19PC9oNT5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiICpuZ0Zvcj1cImxldCBsZXZlbCBvZiBzZWxlY3RlZEFjY2Vzc0xldmVsc1wiPlxyXG4gICAgICAgICAgICAgICAgPEJCU0YtRHJvcGRvd25MaXN0IFtvcHRpb25zXT1cImxpbmtpbmdNb2RlRHJvcGRvd25cIiBbZ3JvdXBdPVwiZWRpdEZvcm1cIj48L0JCU0YtRHJvcGRvd25MaXN0PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbmZpZ3VyYXRpb24taGVhZGVyXCI+XHJcbiAgICAgICAgICAgIDxoNT57e3RyYW5zbGF0ZShcIkxpbmtpbmdBdHRyaWJ1dGVzT3B0aW9uc1wiKX19PC9oNT5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICAgICAgPEJCU0YtQ2hlY2tCb3ggW29wdGlvbnNdPVwibmFtZUFyQ2hlY2tib3hcIiBbZ3JvdXBdPVwiZWRpdEZvcm1cIj48L0JCU0YtQ2hlY2tCb3g+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgICAgICA8QkJTRi1DaGVja0JveCBbb3B0aW9uc109XCJuYW1lRW5DaGVja2JveFwiIFtncm91cF09XCJlZGl0Rm9ybVwiPjwvQkJTRi1DaGVja0JveD5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgICAgICAgIDxCQlNGLUNoZWNrQm94IFtvcHRpb25zXT1cImVtYWlsQ2hlY2tib3hcIiBbZ3JvdXBdPVwiZWRpdEZvcm1cIj48L0JCU0YtQ2hlY2tCb3g+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgICAgICA8QkJTRi1DaGVja0JveCBbb3B0aW9uc109XCJlSWRDaGVja2JveFwiIFtncm91cF09XCJlZGl0Rm9ybVwiPjwvQkJTRi1DaGVja0JveD5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgICAgICAgIDxCQlNGLUNoZWNrQm94IFtvcHRpb25zXT1cIm1vYmlsZUNoZWNrYm94XCIgW2dyb3VwXT1cImVkaXRGb3JtXCI+PC9CQlNGLUNoZWNrQm94PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICAgICAgPEJCU0YtQ2hlY2tCb3ggW29wdGlvbnNdPVwibmF0aW9uYWxpdHlDaGVja2JveFwiIFtncm91cF09XCJlZGl0Rm9ybVwiPjwvQkJTRi1DaGVja0JveD5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgICAgICAgIDxCQlNGLUNoZWNrQm94IFtvcHRpb25zXT1cImdlbmRlckNoZWNrYm94XCIgW2dyb3VwXT1cImVkaXRGb3JtXCI+PC9CQlNGLUNoZWNrQm94PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuXHJcblxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIiAqbmdJZj1cIm1vZGVJZCA9PSBhdXRoZW50aWNhdGlvbk1vZGVFbnVtVmFsdWUuQXp1cmVBRFwiPlxyXG5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1mb290ZXJcIj5cclxuICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNtIGJ0bi1saWdodFwiIChjbGljayk9XCJtb2RhbC5kaXNtaXNzKClcIj5cclxuICAgICAgICB7e3RyYW5zbGF0ZShcIkNhbmNlbFwiKX19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8YnV0dG9uIGFwcFByZXZlbnREb3VibGVDbGljayB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJidG4gYnRuLXNtIGJ0bi1icmFuZFwiPlxyXG4gICAgICAgIHt7dHJhbnNsYXRlKCdTYXZlJyl9fVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvQkJTRi1Gb3JtPlxyXG48L25nLXRlbXBsYXRlPiJdfQ==
|