vcomply-workflow-engine 3.0.267 → 3.0.269
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/workflow-engine-container/workflow-engine-container.component.mjs +3 -3
- package/fesm2015/vcomply-workflow-engine.mjs +2 -2
- package/fesm2015/vcomply-workflow-engine.mjs.map +1 -1
- package/fesm2020/vcomply-workflow-engine.mjs +2 -2
- package/fesm2020/vcomply-workflow-engine.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -496,10 +496,10 @@ export class WorkflowEngineContainerComponent {
|
|
|
496
496
|
}
|
|
497
497
|
}
|
|
498
498
|
WorkflowEngineContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: WorkflowEngineContainerComponent, deps: [{ token: i1.UiKitService }, { token: i2.SnackBarService }, { token: i3.AuthService }], target: i0.ɵɵFactoryTarget.Component });
|
|
499
|
-
WorkflowEngineContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: WorkflowEngineContainerComponent, selector: "app-vcomply-workflow-engine-container", inputs: { workflowType: "workflowType", mode: "mode", id: "id", openedFrom: "openedFrom", allowedWorkflows: "allowedWorkflows", frameworkDetails: "frameworkDetails", selectedRC: "selectedRC", secondaryOpenPortal: "secondaryOpenPortal", defaultRiskType: "defaultRiskType", moveToRegisterMode: "moveToRegisterMode", reponsibilityData: "reponsibilityData", pid: "pid", programType: "programType", issueData: "issueData", entrustButtonName: "entrustButtonName", config: "config", convertFileData: "convertFileData", selectedCategory: "selectedCategory", selectedProgram: "selectedProgram", canFrameworkChange: "canFrameworkChange", addToProgramDetails: "addToProgramDetails", feature: "feature" }, outputs: { closeWorkflow: "closeWorkflow" }, host: { listeners: { "window:beforeunload": "unloadNotification($event)", "document:keydown.escape": "onKeydownHandler($event)", "window:resize": "sizeChange($event)" } }, viewQueries: [{ propertyName: "riskComponent", first: true, predicate: ["risk"], descendants: true }, { propertyName: "riskBulkUpload", first: true, predicate: ["multipleRisk"], descendants: true }, { propertyName: "responsibilityBulkUpload", first: true, predicate: ["multipleResponsibility"], descendants: true }, { propertyName: "compliance", first: true, predicate: ["responsibility"], descendants: true }, { propertyName: "moreOption", first: true, predicate: ["moreOption"], descendants: true }, { propertyName: "dropdown", first: true, predicate: ["dropdown"], descendants: true }, { propertyName: "dropdownRow", first: true, predicate: ["dropdownRow"], descendants: true }, { propertyName: "policy", first: true, predicate: ["policy"], descendants: true }, { propertyName: "logIssueComponent", first: true, predicate: ["logAnIssue"], descendants: true }, { propertyName: "workflowAssessmentComponent", first: true, predicate: ["assessment"], descendants: true }, { propertyName: "importAnAssessment", first: true, predicate: ["importAssessment"], descendants: true }, { propertyName: "program", first: true, predicate: ["program"], descendants: true }, { propertyName: "grcObject", first: true, predicate: ["grcObject"], descendants: true }], ngImport: i0, template: "<app-snack-bar></app-snack-bar>\r\n<div class=\"workflow-engine-overlay\"></div>\r\n<div\r\n class=\"workflow-engine\"\r\n [class.animate]=\"animation\"\r\n [class.bg]=\"\r\n (!isWorkflowSelectorEnabled || riskBulkUpload?.showCategoryList) &&\r\n !policy?.showCreateDocuments\r\n \"\r\n>\r\n <div\r\n class=\"workflow-engine-container\"\r\n [ngSwitch]=\"currentWorkflow?.code\"\r\n [class.with-preview-assessment]=\"(auth?.previewPanel | async) === true\"\r\n >\r\n <button\r\n (click)=\"closeWorkflowEngine()\"\r\n id=\"close-workflow-engine-btn\"\r\n class=\"close\"\r\n [appTooltip]=\"'[Esc] to close'\"\r\n placement=\"left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"true\"\r\n [class.disabled]=\"\r\n confirmationAlertConfig?.isVisible || !isWorkflowSelectorEnabled\r\n \"\r\n [class.smiley-opened]=\"\r\n riskComponent?.showSmiley ||\r\n logIssueComponent?.showSmiley ||\r\n compliance?.showSmiley ||\r\n policy?.showCreateDocuments ||\r\n responsibilityBulkUpload?.showSmiley ||\r\n responsibilityBulkUpload?.showExcel ||\r\n riskBulkUpload?.showSmiley ||\r\n riskBulkUpload?.showExcel ||\r\n program?.showSmiley ||\r\n importAnAssessment?.showSmiley\r\n \"\r\n >\r\n <i class=\"icons\"></i>\r\n </button>\r\n <div\r\n *ngIf=\"!uiKitService.isSmileyOn\"\r\n class=\"workflow-engine-more\"\r\n [hidden]=\"showMoreOption === false || policy?.showCreateDocuments\"\r\n [class.disabled]=\"confirmationAlertConfig?.isVisible\"\r\n [class.read-only]=\"uiKitService?.isLoader\"\r\n >\r\n <app-more-option\r\n #moreOption\r\n [currentWorkflow]=\"currentWorkflow?.code\"\r\n [isEditMode]=\"mode === 'EDIT'\"\r\n [isRCSelected]=\"isRCSelected\"\r\n [openedFrom]=\"openedFrom\"\r\n (selectedOption)=\"addMoreInfo($event)\"\r\n [isProgramSelected]=\"selectedProgram\"\r\n [allowedFeature]=\"feature\"\r\n [orgDetailsData]=\"orgDetails\"\r\n >\r\n </app-more-option>\r\n </div>\r\n <div\r\n class=\"workflow-engine-form\"\r\n [class.disabled]=\"confirmationAlertConfig?.isVisible\"\r\n [class.no-shadow]=\"\r\n currentWorkflow?.code == 'AMR' ||\r\n currentWorkflow?.code == 'CMR' ||\r\n currentWorkflow?.code == 'AAA' ||\r\n uiKitService.isSmileyOn ||\r\n policy?.showCreateDocuments\r\n \"\r\n >\r\n <div class=\"container\" (scroll)=\"scrollForm()\">\r\n <ng-container\r\n *ngIf=\"\r\n !['VIEW_AUDIT_EXECUTION_SUMMARY', 'EXECUTE_AUDIT_PLAN'].includes(\r\n openedFrom\r\n )\r\n \"\r\n >\r\n <div\r\n *ngIf=\"!(uiKitService.isSmileyOn || policy?.showCreateDocuments)\"\r\n class=\"form-group-row\"\r\n #dropdownRow\r\n [class.disabled]=\"\r\n mode === 'EDIT' ||\r\n !isWorkflowSelectorEnabled ||\r\n disableWorkflowChange ||\r\n selectedProgram\r\n \"\r\n >\r\n <div class=\"left\" [class.checked]=\"currentWorkflow\">\r\n <svg\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\" #dropdown>\r\n <label class=\"vx-control-panel\"\r\n >Select a Workflow<span class=\"required\">*</span></label\r\n >\r\n <div\r\n class=\"select\"\r\n *ngIf=\"!currentWorkflow\"\r\n (click)=\"editWorkflow()\"\r\n >\r\n <input type=\"text\" placeholder=\"Select a Workflow\" readonly />\r\n </div>\r\n <div class=\"selected first-field\" *ngIf=\"currentWorkflow\">\r\n <!-- {{currentWorkflow | json}} -->\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2 vx-mr-2\"\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt no-width\"\r\n [appTooltip]=\"currentWorkflow?.workflowName\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ currentWorkflow?.workflowName }}</span\r\n >\r\n </div>\r\n <!-- <div class=\"chip-container\">\r\n <span class=\"chip\" [class.disabled]=\"false\">{{currentWorkflow?.workflowName}}</span>\r\n </div> -->\r\n <button\r\n class=\"edit\"\r\n type=\"button\"\r\n (click)=\"editWorkflow()\"\r\n *ngIf=\"!workflowList\"\r\n >\r\n <i class=\"icons\"></i> Edit\r\n </button>\r\n </div>\r\n <div\r\n *ngIf=\"\r\n currentWorkflow?.code === 'CAPR' &&\r\n currentBusinessCycle &&\r\n !programSimplifyFlag\r\n \"\r\n class=\"program-business-cycle vx-fs-11 vx-txt-white vx-d-flex vx-align-center vx-pt-2 vx-pb-1 vx-pl-2 vx-pr-1\"\r\n >\r\n <i class=\"icons vx-fs-12 vx-mr-1\"></i> This program is\r\n being set-up for the business cycle:\r\n <span class=\"vx-fw-600 vx-ml-1\">{{\r\n currentBusinessCycle\r\n }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <!-- <app-create-documents></app-create-documents> -->\r\n <!-- <app-bulk-view></app-bulk-view> -->\r\n <!-- <app-bulk-responsibility-view></app-bulk-responsibility-view> -->\r\n <app-workflow-compliance\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n [orgDetails]=\"orgDetails\"\r\n [isEntrust]=\"entrustButtonName.toLowerCase() == 'entrust'\"\r\n [responsibilityId]=\"id\"\r\n [mode]=\"mode\"\r\n [frameworkDetails]=\"frameworkDetails\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n *ngSwitchCase=\"'CAR'\"\r\n #responsibility\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (hideElementsFromMoreOptions)=\"hideElementsFromMoreOptions($event)\"\r\n [selectedRC]=\"selectedRC\"\r\n [closeOnEsc]=\"closeOnEsc\"\r\n (assigneeTypeChange)=\"assigneeTypeChange($event)\"\r\n (onReviewerTypeChange)=\"onReviewerChange($event)\"\r\n [feature]=\"feature\"\r\n [openedFrom]=\"openedFrom\"\r\n (rcSelected)=\"onRcSelected($event)\"\r\n (resetForm)=\"onResetForm()\"\r\n (onRemovingCheckpoint)=\"onRemovingCheckpoint($event, false, true)\"\r\n (isAssessmentDisabled)=\"isAssessmentDisabled($event)\"\r\n (checkpointCountUpdated)=\"checkpointCount = $event\"\r\n [selectedProgram]=\"selectedProgram\"\r\n ></app-workflow-compliance>\r\n <app-workflow-risk\r\n [secondaryOpenPortal]=\"secondaryOpenPortal\"\r\n [openedFrom]=\"openedFrom\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'AAR'\"\r\n #risk\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (hideElementsFromMoreOptions)=\"hideElementsFromMoreOptions($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (refreshForm)=\"onResetForm()\"\r\n [mode]=\"mode\"\r\n [riskId]=\"id\"\r\n [feature]=\"feature\"\r\n ></app-workflow-risk>\r\n <app-workflow-policy\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'CAP'\"\r\n #policy\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (shiftToEditMode)=\"shiftToEditMode()\"\r\n [feature]=\"feature\"\r\n [policyId]=\"id\"\r\n [mode]=\"mode\"\r\n [convertFileData]=\"convertFileData\"\r\n [selectedCategory]=\"selectedCategory\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n ></app-workflow-policy>\r\n <app-workflow-survey-form\r\n *ngSwitchCase=\"'CAS'\"\r\n #surveyForm\r\n ></app-workflow-survey-form>\r\n <app-add-multiple-risk\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'AMR'\"\r\n #multipleRisk\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n ></app-add-multiple-risk>\r\n <!-- <app-add-multiple-responsibility (disconnectRefresh)=\"isHostRefreshActive = $event\" (closeWorkflow)=\"closeWorkflowEngine($event)\" *ngSwitchCase=\"'CMR'\" #multipleResponsibility>\r\n </app-add-multiple-responsibility> -->\r\n\r\n <lib-add-multiple-responsibility-container\r\n [orgDetails]=\"orgDetails\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n *ngSwitchCase=\"'CMR'\"\r\n [feature]=\"feature\"\r\n #multipleResponsibility\r\n ></lib-add-multiple-responsibility-container>\r\n <!-- New Log an Issue -->\r\n <app-log-an-issue\r\n [issueDetails]=\"issueData\"\r\n *ngSwitchCase=\"'LAI'\"\r\n [reponsibilityData]=\"reponsibilityData\"\r\n [openedFrom]=\"openedFrom\"\r\n [issueId]=\"id\"\r\n #logAnIssue\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n [(mode)]=\"mode\"\r\n >\r\n </app-log-an-issue>\r\n <!-- Old Log an issue -->\r\n <!-- <app-log-an-issue *ngSwitchCase=\"'LAI'\" [responsibilitiesData]=\"reponsibiltyData\" [openedFrom]=\"openedFrom\"\r\n #logAnIssue (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\" (populateOption)=\"populateMoreOption($event)\">\r\n </app-log-an-issue> -->\r\n\r\n <app-workflow-assessment\r\n [assessmentId]=\"id\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n [openedFrom]=\"openedFrom\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'AAA'\"\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (refreshForm)=\"onResetForm()\"\r\n [mode]=\"mode\"\r\n #assessment\r\n ></app-workflow-assessment>\r\n <app-import-an-assessment\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'IAA'\"\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (refreshForm)=\"onResetForm()\"\r\n #importAssessment\r\n ></app-import-an-assessment>\r\n <!-- <app-workflow-program #program *ngSwitchCase=\"'CAPR'\" (pickerChanged)=\"decideViewMoreOption($event)\" (disconnectRefresh)=\"isHostRefreshActive = $event\"></app-workflow-program> -->\r\n <app-workflow-program\r\n #program\r\n *ngSwitchCase=\"'CAPR'\"\r\n [orgDetails]=\"orgDetails\"\r\n [allowedFeature]=\"feature\"\r\n (disableElementsFromMoreOptions)=\"disableMoreOptions('CAPR', $event)\"\r\n [programType]=\"programType\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (refreshForm)=\"onResetForm()\"\r\n [mode]=\"mode\"\r\n [programId]=\"id\"\r\n (onRemovingRole)=\"onRemovingRole($event)\"\r\n [canFrameworkChange]=\"canFrameworkChange\"\r\n [addToProgramDetails]=\"addToProgramDetails\"\r\n ></app-workflow-program>\r\n\r\n <!-- GRC Object -->\r\n <lib-grc-object-container\r\n #grcObject\r\n *ngIf=\"true\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n ></lib-grc-object-container>\r\n </div>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n *ngSwitchCase=\"'AAR'\"\r\n (click)=\"submit()\"\r\n >\r\n {{\r\n mode === \"EDIT\" && openedFrom !== \"MOVE_TO_REGISTER\"\r\n ? \"Update\"\r\n : \"Add\"\r\n }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"\r\n !isWorkflowSelectorEnabled ||\r\n !riskBulkUpload?.category?.selectedCategory\r\n \"\r\n (click)=\"bulkUploadBrowse('AMR')\"\r\n *ngSwitchCase=\"'AMR'\"\r\n >\r\n Browse\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n (click)=\"bulkUploadBrowse('CMR')\"\r\n *ngSwitchCase=\"'CMR'\"\r\n >\r\n Browse\r\n </button>\r\n\r\n <!-- This has ternary operation to handle the both scenarios of how it works with compliance and program module, please don't change this. -->\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n (click)=\"submit()\"\r\n *ngSwitchCase=\"'CAR'\"\r\n >\r\n {{\r\n entrustButtonName !== \"\" && mode !== \"EDIT\"\r\n ? entrustButtonName\r\n : mode === \"EDIT\"\r\n ? \"UPDATE\"\r\n : \"Entrust\"\r\n }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n (click)=\"submit()\"\r\n *ngSwitchCase=\"'CAP'\"\r\n >\r\n {{\r\n convertFileData.fileName\r\n ? \"NEXT\"\r\n : mode == \"EDIT\"\r\n ? \"Update\"\r\n : \"Continue to draft\"\r\n }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n *ngSwitchCase=\"'CAS'\"\r\n >\r\n Continue to draft\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n *ngSwitchCase=\"'LAI'\"\r\n (click)=\"submit()\"\r\n >\r\n {{ mode === \"EDIT\" ? \"Update\" : \"Add\" }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n *ngSwitchCase=\"'AAA'\"\r\n (click)=\"submit()\"\r\n >\r\n {{ mode === \"EDIT\" ? \"Update\" : \"Continue to draft\" }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n (click)=\"bulkUploadBrowse('IAA')\"\r\n *ngSwitchCase=\"'IAA'\"\r\n >\r\n Browse\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled || !program?.valid\"\r\n (click)=\"submit('CAPR')\"\r\n *ngSwitchCase=\"'CAPR'\"\r\n >\r\n {{ mode === \"EDIT\" ? \"Update\" : \"Save\" }}\r\n </button>\r\n <div\r\n class=\"dropdown\"\r\n *ngIf=\"workflowList\"\r\n (click)=\"closeWorkflowList()\"\r\n [style.top.px]=\"dropdownTop\"\r\n [style.left.px]=\"dropdownLeft\"\r\n [style.width.px]=\"dropdownWidth\"\r\n >\r\n <ul class=\"dropdown-list\">\r\n <li\r\n *ngFor=\"let workflow of workflowTypeList\"\r\n (click)=\"changeWorkflow($event, workflow)\"\r\n >\r\n <app-cs-radio\r\n [value]=\"workflow?.code\"\r\n [checked]=\"currentWorkflow?.code === workflow?.code\"\r\n >\r\n {{ workflow?.workflowName }}</app-cs-radio\r\n >\r\n </li>\r\n </ul>\r\n </div>\r\n <div\r\n class=\"dropdown-overlay\"\r\n *ngIf=\"workflowList\"\r\n (click)=\"closeWorkflowList()\"\r\n ></div>\r\n </div>\r\n <app-confirmation-alert\r\n id=\"confirmation-dialogue\"\r\n (action)=\"confirmWorkflowChange($event)\"\r\n *ngIf=\"confirmationAlertConfig?.isVisible\"\r\n [message]=\"confirmationAlertConfig?.message\"\r\n [config]=\"confirmationAlertConfig\"\r\n ></app-confirmation-alert>\r\n </div>\r\n</div>\r\n", styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";.dropdown-overlay{position:fixed;inset:0;z-index:2}.workflow-engine{background:#161B2FCC;position:fixed;inset:0;z-index:10}.workflow-engine button.close{position:absolute;background:transparent;cursor:pointer;border:none;font-size:16px;color:#000;top:8px;right:7px;z-index:12;display:flex;align-items:center;justify-content:center;border-radius:2px;padding:8px}.workflow-engine button.close.bulk-opened,.workflow-engine button.close.smiley-opened{z-index:10}.workflow-engine button.close:hover{background:#f1f1f1}.workflow-engine button.close.disabled{pointer-events:none;opacity:.3;filter:grayscale(1)}.workflow-engine-container{position:fixed;top:0;right:0;bottom:0;background:#ffffff;display:flex;z-index:10;border-top:3px solid #1E5DD3}.workflow-engine-container:before{content:\"\";height:30px;position:absolute;top:0;right:0;width:499px;z-index:11;background:linear-gradient(to bottom,#ffffff 0%,rgba(255,255,255,.75) 66%,rgba(255,255,255,.42) 81%,rgba(255,255,255,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#ffffff\",endColorstr=\"#00ffffff\",GradientType=0)}.workflow-engine-container.with-preview-assessment:before{display:none}.workflow-engine-container.with-preview-assessment button.close{display:none}.workflow-engine-container.with-preview-assessment .workflow-engine-form{right:-470px}.workflow-engine-container.with-preview-assessment .workflow-engine-form .container ::ng-deep app-workflow-compliance .workflw-compliance{filter:grayscale(1)!important;pointer-events:none!important}.workflow-engine-container.with-preview-assessment .workflow-engine-form button.submit{filter:grayscale(1)!important;pointer-events:none!important}.workflow-engine-more{width:318px;padding:36px 22px 36px 40px;height:100vh;overflow:auto;margin-left:-18px;scrollbar-width:none}@media screen and (max-height: 900px){.workflow-engine-more{padding:20px 22px 36px 40px}}.workflow-engine-more::-webkit-scrollbar-track{background-color:#f1f1f1;position:absolute}.workflow-engine-more::-webkit-scrollbar{width:1px;height:1px;background-color:transparent;position:absolute}.workflow-engine-more::-webkit-scrollbar-thumb{border-radius:1px;background-color:#dbdbdb;position:absolute}.workflow-engine-more.disabled{filter:grayscale(1);pointer-events:none}.workflow-engine-more.read-only{pointer-events:none}.workflow-engine-form{width:500px;position:relative}.workflow-engine-form .container{height:calc(100vh - 53px);padding:35px 24px 8px 62px;overflow:hidden;overflow-y:auto;margin-left:-22px;scrollbar-width:thin}.workflow-engine-form .container.disabled{pointer-events:none}.workflow-engine-form:before{content:\"\";top:0;bottom:-50px;left:0;width:1px;background:#f1f1f1;position:absolute}.workflow-engine-form button.submit{position:sticky;height:50px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:48px;letter-spacing:1.3px;color:#fff;background:#1e5dd3;cursor:pointer;border:1px solid #1e5dd3;outline:none;border-radius:0;text-transform:uppercase;font-weight:600;width:100%;bottom:0;padding:0}.workflow-engine-form button.submit:disabled{background:#F1F1F1;border-color:#f1f1f1;pointer-events:none;cursor:not-allowed;color:#747576}.workflow-engine-form button.submit.disabled{pointer-events:none;opacity:.3;filter:grayscale(1)}.workflow-engine-form.disabled{filter:grayscale(1);pointer-events:none}.workflow-engine-form label.browse{padding:0;margin:0;display:block;position:sticky;bottom:0}.workflow-engine-form label.browse span{height:50px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:19px;letter-spacing:3.08px;color:#fff;background:#1e5dd3;cursor:pointer;border:1px solid #1e5dd3;outline:none;border-radius:0;text-transform:uppercase;font-weight:600;width:100%}.workflow-engine-form label.browse input{position:absolute;width:100%;height:100%;z-index:1;inset:0;opacity:0;cursor:pointer}.workflow-engine-form .file-browsed{display:flex;align-items:center;background:#FFFFFF;border-top:1px solid #F1F1F1;border-bottom:1px solid #F1F1F1}.workflow-engine-form .file-browsed span{display:block;width:calc(100% - 164px);color:#161b2f;font-size:13px;font-weight:400;line-height:20px;padding:0 16px}.workflow-engine-form .file-browsed button{height:50px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:19px;letter-spacing:3.08px;color:#fff;background:#1e5dd3;cursor:pointer;border:1px solid #1e5dd3;outline:none;border-radius:0;text-transform:uppercase;font-weight:600;width:164px;bottom:0}.workflow-engine-form:after{content:\"\";height:30px;position:absolute;right:0;bottom:50px;z-index:10;background:linear-gradient(to bottom,rgba(255,255,255,0) 0%,rgba(255,255,255,.75) 22%,#ffffff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#00ffffff\",endColorstr=\"#ffffff\",GradientType=0)}.workflow-engine-form.no-shadow:after{display:none}.workflow-engine.animate{animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;z-index:-1}.workflow-engine.bg{background:#FFFFFF}.program-business-cycle{background:#F2BF19;border-radius:0 0 .25rem .25rem;position:relative;top:-.25rem;z-index:1}@keyframes animate-right{0%{transform:translate(100%)}to{transform:translate(0)}}\n", "@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";::-webkit-scrollbar-track{background-color:#f1f1f1;position:absolute}::-webkit-scrollbar{width:3px;height:3px;background-color:transparent;position:absolute}::-webkit-scrollbar-thumb{border-radius:3px;background-color:#dbdbdb;position:absolute}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}button{font-family:Poppins,sans-serif}::ng-deep input.textField{background:#fff;border-radius:.25rem;border:1px solid #dbdbdb;font-size:13px;color:#747576;padding:8px 12px;position:relative;height:2.5rem;width:100%;transition:all .2s ease-in-out}::ng-deep input.textField::placeholder{font-size:13px;color:#747576}::ng-deep input.textField:hover,::ng-deep input.textField:focus{outline:none;border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .selectBoxEnable{background:#fff;border-radius:.25rem;border:1px solid #dbdbdb;cursor:pointer;height:2.5rem;position:relative;transition:all .2s ease-in-out}::ng-deep .selectBoxEnable:after{border-bottom-style:solid;border-bottom-width:1px;border-right-style:solid;border-right-width:1px;border-color:#747576;content:\"\";display:inline-block;right:12px;position:absolute;top:calc(50% - 4px);width:5px;height:5px;transform:rotate(45deg)}::ng-deep .selectBoxEnable:hover,::ng-deep .selectBoxEnable:focus{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .selectBoxEnable.disabled{background:#f1f1f1;pointer-events:none;opacity:1}::ng-deep .selectBoxSuccess{background:#f8f8f8;border-radius:.25rem;border:1px solid #f1f1f1;min-height:2.5rem;position:relative}::ng-deep .selectBoxSuccess .selectBoxText{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:22rem}::ng-deep .selectBoxSuccess button{background:transparent;border-radius:0;border:none}::ng-deep .selectBoxSuccess button.deleteBtn{color:#d93b41}::ng-deep .selectBoxSuccess .level-left{border-right:1px solid #f1f1f1;height:2.375rem;width:5rem}::ng-deep .selectBoxSuccess .level-left .level-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:4.5rem}::ng-deep .chipContainer{background:#fff;border-radius:.125rem;box-shadow:0 0 2px #1e5dd340;height:1.5rem}::ng-deep .chipContainer .cross{cursor:pointer;min-width:16px;width:16px;height:16px;display:flex;align-items:center;justify-content:center;background:transparent;border-radius:2px;margin-left:-4px}::ng-deep .chipContainer .cross:hover{background:#f1f1f1}::ng-deep .chipContainer .chipName{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;max-width:6rem}::ng-deep .chipContainer .chipName.no-width{max-width:unset}::ng-deep .chipContainer button.countBtn{background:#1e5dd3;border-radius:1.25rem;border:none;min-width:1.5rem;height:1rem;margin:0 0 0 .5rem;padding:0 .25rem}::ng-deep .chipContainer button.countBtn.greenBg{background:#34aa44}::ng-deep .workflowLavel{background:#f1f1f1;border-radius:.125rem;color:#042e7d;min-width:1rem;height:1rem}::ng-deep .reviewSelection{border-radius:.25rem;border:1px solid #dbdbdb;transition:all .2s ease-in-out}::ng-deep .reviewSelection:hover{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .selectButton{background:#fff;border-radius:.25rem;border:1px solid #dbdbdb;cursor:pointer;height:2.5rem;position:relative;transition:all .2s ease-in-out}::ng-deep .selectButton:hover,::ng-deep .selectButton:focus{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep button.createNewBtn{background:transparent;border-radius:0;border:none}::ng-deep .vx-form-group{display:block;position:relative;margin-bottom:20px}::ng-deep .vx-form-group:after{content:\"\";display:block;clear:both}::ng-deep .vx-form-group .select{position:relative}::ng-deep .vx-form-group .select:after{border-bottom-style:solid;border-bottom-width:1px;border-right-style:solid;border-right-width:1px;border-color:#707070;content:\"\";display:inline-block;right:12px;position:absolute;top:calc(50% - 4px);width:5px;height:5px;transform:rotate(45deg)}::ng-deep .vx-form-group .select input{cursor:pointer;padding-right:30px!important}::ng-deep .vx-form-group .select .custom-input{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#ffffff;outline:none;padding:3px 12px;line-height:16px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;cursor:pointer}::ng-deep .vx-form-group .select .custom-input:empty:not(:focus):before{content:attr(aria-placeholder);line-height:16px;font-size:13px;width:94%;display:block;pointer-events:none;opacity:.8}::ng-deep .vx-form-group .select .custom-input:hover{border-color:#1e5dd3;box-shadow:0 0 5px #1e5dd345}::ng-deep .vx-form-group .select .custom-input.frequency-custom-input{padding-right:108px;display:flex;align-items:center}::ng-deep .vx-form-group .select+app-cs-switch{display:block;margin-top:8px}::ng-deep .vx-form-group .select+app-cs-switch label.cs-switch span.value{white-space:nowrap;margin-right:5px;text-transform:uppercase}::ng-deep .vx-form-group .select+app-cs-radio{margin-top:8px!important}::ng-deep .vx-form-group .select~app-cs-radio{margin-top:4px;display:block;width:100%}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item span.radio{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item span.value{font-size:11px;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0;max-width:100%;font-weight:500;color:#707070}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item span.value i{font-size:12px;color:#1e5dd3}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item svg{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}::ng-deep .vx-form-group .select.button-sec:after{display:none}::ng-deep .vx-form-group .select.button-sec button{background:transparent;border:none;display:inline-flex;float:right;color:#1e5dd3;text-transform:uppercase;font-weight:600;cursor:pointer;font-size:11px;position:absolute;top:12px;right:8px;padding:0;margin:0}::ng-deep .vx-form-group .select+.vx-control-panel{margin-top:8px}::ng-deep .vx-form-group .select+.selected{margin-top:8px}::ng-deep .vx-form-group .select.select{margin-top:8px}::ng-deep .vx-form-group .upload-format{border:1px solid #dbdbdb;border-radius:4px;padding:8px 12px;display:block}::ng-deep .vx-form-group .upload-format span.text{line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;display:block;margin-bottom:6px}::ng-deep .vx-form-group .upload-format .radio-group{display:flex}::ng-deep .vx-form-group .upload-format .radio-group app-cs-radio{display:inline-block}::ng-deep .vx-form-group .upload-format .radio-group app-cs-radio label.radio-item span.value{font-size:11px;text-transform:uppercase;margin-left:8px}::ng-deep .vx-form-group .upload-format .radio-group app-cs-radio+app-cs-radio{margin-left:12px}::ng-deep .vx-form-group .upload-format~.upload-format{margin-top:4px}::ng-deep .vx-form-group .form-tab{display:flex;justify-content:flex-start}::ng-deep .vx-form-group .form-tab button{background:transparent;color:#161b2f;font-size:11px;line-height:16px;text-transform:uppercase;cursor:pointer;padding:8px 8px 8px 0;border:none;outline:none;font-weight:500}::ng-deep .vx-form-group .form-tab button:disabled{opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group .form-tab button+button{padding:8px}::ng-deep .vx-form-group .form-tab button.active{color:#1e5dd3}::ng-deep .vx-form-group .tab-group{border:1px solid #dbdbdb;border-radius:4px;padding:0;display:block;position:relative;transition:all .2s ease-in-out}::ng-deep .vx-form-group .tab-group:hover{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group .tab-group .upload-file{padding:16px 62px 16px 24px;display:flex;align-items:center;justify-content:space-between}::ng-deep .vx-form-group .tab-group .upload-file .image{width:80px}::ng-deep .vx-form-group .tab-group .upload-file .browse span{display:inline-block;font-size:12px;color:#747576;line-height:16px;padding:0 4px}::ng-deep .vx-form-group .tab-group .upload-file .browse .label{font-size:11px;color:#1e5dd3;line-height:16px;font-weight:600;text-transform:uppercase;margin:0;padding:0}::ng-deep .vx-form-group .tab-group .upload-file .browse .label input{opacity:0;position:absolute;margin:0;padding:0;inset:0;cursor:pointer;width:100%}::ng-deep .vx-form-group .tab-group.active{border-color:#1e5dd3}::ng-deep .vx-form-group .tab-group.uploaded{margin-top:4px}::ng-deep .vx-form-group .tab-group.uploaded .upload-file{padding:8px 0!important;text-align:center}::ng-deep .vx-form-group .tab-group.uploaded .upload-file .image{display:none}::ng-deep .vx-form-group .tab-group.uploaded .upload-file .browse{width:100%;text-align:center}::ng-deep .vx-form-group .tab-group+label.vx-form-group{margin-top:8px;margin-bottom:4px}::ng-deep .vx-form-group .file-list{background:#fbfbfb;border:1px solid #f1f1f1;border-radius:4px;padding:12px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;position:relative}::ng-deep .vx-form-group .file-list span.file-name{color:#747576;line-height:16px;font-size:11px;font-weight:400;cursor:pointer;max-width:calc(100% - 20px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .vx-form-group .file-list .button-group{display:flex}::ng-deep .vx-form-group .file-list button{font-size:12px;color:#eb2424;cursor:pointer;display:flex;padding:0;border:none;outline:none;background:transparent}::ng-deep .vx-form-group .file-list button.edit{color:#1e5dd3}::ng-deep .vx-form-group .file-list button+button{margin-left:16px}::ng-deep .vx-form-group .file-list+.file-list{margin-top:4px}::ng-deep .vx-form-group .file-list .file-container{display:flex;justify-content:space-between;width:100%}::ng-deep .vx-form-group .file-list.policy{background:#ffffff}::ng-deep .vx-form-group .file-list cs-select{position:relative;margin-top:8px;width:100%}::ng-deep .vx-form-group .file-list cs-select .selection-wrap .input-group input.value{height:32px!important;font-size:13px!important}::ng-deep .vx-form-group .file-list cs-select .selection-wrap .input-group i{right:12px!important;top:12px!important}::ng-deep .vx-form-group .file-list app-line-loader{display:block;position:absolute;left:10px;right:10px;bottom:0}::ng-deep .vx-form-group label.vx-control-panel{color:#161b2f;font-size:11px;font-weight:500;line-height:16px;margin-bottom:8px;display:block;text-transform:uppercase;text-align:left}::ng-deep .vx-form-group label.vx-control-panel.custom-tag{font-size:10px}::ng-deep .vx-form-group label.vx-control-panel.vx-mt-8{margin-top:8px}::ng-deep .vx-form-group label.vx-control-panel span.required{color:#eb2424;font-size:14px;font-weight:500;position:relative;top:-2px}::ng-deep .vx-form-group label.vx-control-panel .button{background:transparent;border:none;display:inline-flex;float:right;color:#1e5dd3;text-transform:uppercase;font-weight:600;cursor:pointer;font-size:11px;padding:0;margin:0}::ng-deep .vx-form-group label.vx-control-panel app-cs-switch{float:right;display:block}::ng-deep .vx-form-group label.vx-control-panel i{margin-left:8px;font-size:12px;color:#1e5dd3;cursor:pointer;position:relative;top:1px}::ng-deep .vx-form-group label.vx-control-panel i.depreciation-icon{color:#e4b700;font-size:16px;position:relative;top:3px}::ng-deep .vx-form-group label.vx-control-panel .checkpoint-version{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:10px;font-weight:600;line-height:14px;margin-left:4px;padding:0 2px}::ng-deep .vx-form-group input[type=text],::ng-deep .vx-form-group .input{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#ffffff;outline:none;padding:8px 12px;line-height:20px;font-size:13px;color:#747576;transition:all .2s ease-in-out;width:100%;font-weight:400}::ng-deep .vx-form-group input[type=text]::placeholder,::ng-deep .vx-form-group .input::placeholder{color:#747576;font-weight:400}::ng-deep .vx-form-group input[type=text]:focus,::ng-deep .vx-form-group .input:focus,::ng-deep .vx-form-group input[type=text]:hover,::ng-deep .vx-form-group .input:hover{border-color:#1e5dd3!important;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group input[type=text].error,::ng-deep .vx-form-group .input.error{border-color:#eb2424;color:#eb2424;margin-bottom:4px}::ng-deep .vx-form-group input[type=text].error:focus,::ng-deep .vx-form-group .input.error:focus{box-shadow:0 0 5px #d31e1e45}::ng-deep .vx-form-group input[type=text]:disabled,::ng-deep .vx-form-group .input:disabled{background:#f1f1f1;cursor:not-allowed;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group input[type=text]:disabled:hover,::ng-deep .vx-form-group .input:disabled:hover{border-color:#dbdbdb;box-shadow:none}::ng-deep .vx-form-group input[type=text] span.text,::ng-deep .vx-form-group .input span.text{font-size:13px;color:#747576;font-weight:400;display:block;width:100%}::ng-deep .vx-form-group input[type=text] .input-group,::ng-deep .vx-form-group .input .input-group{display:flex;align-items:center}::ng-deep .vx-form-group input[type=text] .input-group.counter,::ng-deep .vx-form-group .input .input-group.counter{min-width:96px;width:96px}::ng-deep .vx-form-group input[type=text] .input-group.counter button,::ng-deep .vx-form-group .input .input-group.counter button{height:24px;width:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#747576;font-size:8px;cursor:pointer;outline:none}::ng-deep .vx-form-group input[type=text] .input-group.counter input,::ng-deep .vx-form-group .input .input-group.counter input{-webkit-appearance:textfield;-moz-appearance:textfield;height:24px;width:calc(100% - 48px);border:1px solid #f1f1f1;outline:none;padding:0 6px;text-align:center}::ng-deep .vx-form-group input[type=text] .input-group.counter input::-webkit-inner-spin-button,::ng-deep .vx-form-group .input .input-group.counter input::-webkit-inner-spin-button,::ng-deep .vx-form-group input[type=text] .input-group.counter input::-webkit-outer-spin-button,::ng-deep .vx-form-group .input .input-group.counter input::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}::ng-deep .vx-form-group input[type=text]+.file-list,::ng-deep .vx-form-group .input+.file-list{margin-top:8px}::ng-deep .vx-form-group input[type=text]::placeholder,::ng-deep .vx-form-group .input::placeholder{font-size:13px}::ng-deep .vx-form-group input[type=text]:-ms-input-placeholder,::ng-deep .vx-form-group .input:-ms-input-placeholder{font-size:13px}::ng-deep .vx-form-group input[type=text]::-ms-input-placeholder,::ng-deep .vx-form-group .input::-ms-input-placeholder{font-size:13px}::ng-deep .vx-form-group .classification{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#ffffff;padding:8px 12px;display:flex;justify-content:space-between}::ng-deep .vx-form-group .classification label{margin:0 4px 0 0;width:100%;position:relative;z-index:1}::ng-deep .vx-form-group .classification label span{display:block;width:100%;height:24px;border:1px solid #f1f1f1;border-radius:2px;line-height:24px;font-size:10px;text-align:center;color:#747576;font-weight:500;position:relative;text-transform:uppercase}::ng-deep .vx-form-group .classification label span:before{height:2px;content:\"\";top:0;right:0;left:0;border-radius:2px;position:absolute;transition:all .2s ease-in-out}::ng-deep .vx-form-group .classification label input{opacity:0;position:absolute;inset:0;margin:0;padding:0;width:100%;height:100%;cursor:pointer;z-index:1}::ng-deep .vx-form-group .classification label input:checked+span{color:#fff}::ng-deep .vx-form-group .classification label input:checked+span:before{bottom:0;height:100%;z-index:-1}::ng-deep .vx-form-group .classification label.low span:before{background:#34aa44}::ng-deep .vx-form-group .classification label.low-med span:before{background:#f2bf19}::ng-deep .vx-form-group .classification label.med-high span:before{background:#f29619}::ng-deep .vx-form-group .classification label.high span:before{background:#eb2424}::ng-deep .vx-form-group .classification label:last-of-type{margin-right:0}::ng-deep .vx-form-group .input{display:flex;align-items:center}::ng-deep .vx-form-group .selected{height:40px;border-radius:4px;border:1px solid #f1f1f1;background:#fbfbfb;outline:none;padding:8px;line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;display:flex;align-items:center;position:relative;justify-content:space-between}::ng-deep .vx-form-group .selected.first-field{z-index:2}::ng-deep .vx-form-group .selected .chip-container{display:flex;width:calc(100% - 60px);align-items:center}::ng-deep .vx-form-group .selected .chip-container.checkpoints{width:calc(100% - 120px)}::ng-deep .vx-form-group .selected .chip-container span.chip{background:#ffffff;border-radius:2px;box-shadow:0 0 3px #1e5dd31a;height:24px;padding:0 8px;color:#1e5dd3;font-size:12px;display:block;width:auto;max-width:100%;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:24px}::ng-deep .vx-form-group .selected .chip-container span.chip.disabled{background:#f1f1f1;box-shadow:none;color:#747576;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group .selected .chip-container span.chip i{font-weight:400;margin-right:8px;cursor:pointer;font-size:10px;position:relative;top:1px}::ng-deep .vx-form-group .selected .chip-container span.chip span.step{background:#1e5dd3;border-radius:2px;color:#fff;font-size:9px;line-height:14px;padding:0 4px;font-weight:400;text-align:center;min-width:auto;margin-right:4px}::ng-deep .vx-form-group .selected .chip-container span.chip+span.chip{margin-left:4px}::ng-deep .vx-form-group .selected .chip-container span.chip.with-question{display:flex;align-items:center;justify-content:space-between;width:100%}::ng-deep .vx-form-group .selected .chip-container span.chip.with-question span.value{color:#1e5dd3;font-size:12px;font-weight:400;line-height:24px;padding:0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;max-width:calc(100% - 80px)}::ng-deep .vx-form-group .selected .chip-container span.chip.with-question span.label{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding-left:4px;padding-right:4px;line-height:12px;margin-left:8px}::ng-deep .vx-form-group .selected .chip-container span.value{color:#747576;font-size:13px;line-height:20px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 52px);padding:0 4px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text{color:#747576;font-size:10px;font-weight:500;padding:0 8px;width:122px;line-height:14px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text.first{position:relative;min-width:162px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text.first:before{background:#f1f1f1;content:\"\";position:absolute;top:0;right:0;height:calc(100% + 12px);width:1px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text .no{color:#1e5dd3}::ng-deep .vx-form-group .selected .chip-container.plus span.chip{max-width:calc(50% - 35px)}::ng-deep .vx-form-group .selected .chip-container.more-one span.chip{max-width:50%}::ng-deep .vx-form-group .selected .chip-container .chip-inner{background:#fff;border-radius:2px;box-shadow:0 2px 4px #1e5dd31a;line-height:24px;padding:0 4px 0 8px;display:flex;align-items:center}::ng-deep .vx-form-group .selected .chip-container .chip-inner .chip{background:transparent;border-radius:0;box-shadow:none;height:auto;line-height:unset;padding:0;color:#747576;max-width:100px}::ng-deep .vx-form-group .selected .chip-container .chip-inner button.count{border-radius:20px;height:16px;padding:0 6px;border:none;font-size:9px;line-height:16px;margin-left:4px;min-width:20px}::ng-deep .vx-form-group .selected .chip-container .chip-inner button.count.user{background:#34aa44}::ng-deep .vx-form-group .selected .chip-container .chip-inner i.cross{cursor:pointer;position:relative;top:1px;font-size:8px}::ng-deep .vx-form-group .selected button.count{background:#1e5dd3;border-radius:2px;height:24px;padding:0 8px;border:1px solid #1e5dd3;cursor:pointer;outline:none;color:#fff;font:13px;font-weight:500;line-height:20px;white-space:nowrap;margin-left:8px}::ng-deep .vx-form-group .selected button.edit{border:none;border-radius:0;background:transparent;outline:none;cursor:pointer;display:block;font-size:11px;font-weight:600;color:#1e5dd3;text-transform:uppercase;white-space:nowrap;margin-left:8px}::ng-deep .vx-form-group .selected button.edit i{font-weight:400;font-size:8px;margin-right:4px}::ng-deep .vx-form-group .selected button.close-btn{background:transparent;border:none;padding:0;margin-left:8px;font-size:10px;color:#c7381b;display:flex;align-items:center}::ng-deep .vx-form-group .selected .workflow-label{min-width:92px;padding:4px;text-align:center;margin-left:-8px;margin-right:8px;border-right:1px solid #f1f1f1}::ng-deep .vx-form-group .selected .workflow-label p{margin:0;display:block;text-transform:uppercase}::ng-deep .vx-form-group .selected .workflow-label p.title{font-size:9px;line-height:12px;color:#161b2f;font-weight:500}::ng-deep .vx-form-group .selected .workflow-label p.description{font-size:11px;line-height:16px;color:#161b2f;font-weight:600}::ng-deep .vx-form-group .selected .workflow-label+.chip-container{width:calc(100% - 148px)}::ng-deep .vx-form-group .selected+.selected{margin-top:8px}::ng-deep .vx-form-group .selected+app-cs-switch{display:block;margin-top:8px}::ng-deep .vx-form-group .selected+app-cs-switch label.cs-switch span.value{white-space:nowrap;margin-right:5px;text-transform:uppercase}::ng-deep .vx-form-group .selected+app-cs-switch.who-toggle label.cs-switch span.value{color:#747576}::ng-deep .vx-form-group .selected+app-cs-radio{margin-top:8px!important}::ng-deep .vx-form-group .selected~app-cs-radio{margin-top:4px;display:block;width:100%}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item span.radio{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item span.value{font-size:11px;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0;max-width:100%;font-weight:500;color:#707070}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item span.value i{font-size:12px;color:#1e5dd3}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item svg{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}::ng-deep .vx-form-group .selected.readOnly{pointer-events:none}::ng-deep .vx-form-group .selected span.chip{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::ng-deep .vx-form-group .select-list{position:absolute;background:#ffffff;box-shadow:0 0 5px #1e5dd345;top:100%;right:0;left:0;z-index:2}::ng-deep .vx-form-group .select-list .vx-radio-group label.vx-radio-item{width:100%;padding:12px 16px}::ng-deep .vx-form-group .select-list .vx-radio-group label.vx-radio-item:hover{background:#f8f8f8}::ng-deep .vx-form-group vcomply-editor{margin-top:8px;display:block}::ng-deep .vx-form-group vcomply-editor .editor-container{border-radius:4px;border:1px solid #dbdbdb}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block{min-height:60px;padding:11px 15px;max-height:100px;line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block ul{padding:0 0 0 10px;margin-top:0}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block ul li{list-style:disc}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block ol{padding:0 0 0 10px;margin-top:0}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block ol li{list-style:decimal}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools{z-index:1;border-top:1px solid #dbdbdb;transition:none;border-radius:0 0 3px 3px;position:static}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button{height:22px!important;width:22px!important;padding:0 5px}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button svg{height:22px;width:12px}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button.submit{width:80px!important;line-height:22px;justify-content:center}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col .popover.small ul.option-list li button{width:100%!important;height:auto!important}::ng-deep .vx-form-group vcomply-editor .editor-container:focus-within{border-color:#1e5dd3!important;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group vcomply-editor .editor-container:focus-within .editor-tools{border-color:#1e5dd3!important}::ng-deep .vx-form-group vcomply-editor .editor-container:hover{border-color:#1e5dd3!important;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group vcomply-editor .editor-container:hover .editor-tools{border-color:#1e5dd3!important}::ng-deep .vx-form-group vcomply-editor+app-cs-switch{margin-top:8px}::ng-deep .vx-form-group app-cs-switch label.cs-switch span.value{font-size:11px;color:#747576;text-transform:uppercase}::ng-deep .vx-form-group app-cs-switch+app-cs-switch{margin-top:8px}::ng-deep .vx-form-group .date-time-picker{display:flex;justify-content:space-between;height:40px;border-radius:4px;border:1px solid #dbdbdb;padding:11px 0;background:#ffffff}::ng-deep .vx-form-group .date-time-picker:focus-within{border-color:#1e5dd3;box-shadow:0 0 5px #1e5dd345}::ng-deep .vx-form-group .date-time-picker .picker-group{width:50%;position:relative;display:flex;align-items:center}::ng-deep .vx-form-group .date-time-picker .picker-group:first-of-type{border-right:1px solid #dbdbdb}::ng-deep .vx-form-group .date-time-picker .picker-group:only-of-type{border:none;width:100%}::ng-deep .vx-form-group .date-time-picker .picker-group input{height:38px;background:transparent;line-height:38px;font-size:13px;color:#747576;transition:all .2s ease-in-out;width:100%;font-weight:400;border:none;padding:0 12px 0 34px;outline:none}::ng-deep .vx-form-group .date-time-picker .picker-group input:focus,::ng-deep .vx-form-group .date-time-picker .picker-group input:hover{box-shadow:none;border:none}::ng-deep .vx-form-group .date-time-picker .picker-group input::placeholder{color:#999;font-size:13px}::ng-deep .vx-form-group .date-time-picker .picker-group input:-ms-input-placeholder{color:#999;font-size:13px}::ng-deep .vx-form-group .date-time-picker .picker-group input::-ms-input-placeholder{color:#999;font-size:13px}::ng-deep .vx-form-group .date-time-picker .picker-group i{display:flex;justify-content:center;align-items:center;height:16px;width:12px;position:absolute;left:12px;top:0;color:#747576;font-size:12px;pointer-events:none}::ng-deep .vx-form-group app-cs-radio.main-filed{margin-top:4px;display:block;width:100%}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item{width:100%;position:relative}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item span.radio{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item span.value{font-size:11px;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0;max-width:100%;color:#707070}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item span.value i{font-size:12px;color:#1e5dd3}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item svg{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}::ng-deep .vx-form-group app-cs-radio.disabled{pointer-events:none;opacity:.5;filter:grayscale(1);background:#f1f1f1}::ng-deep .vx-form-group .switch-row{display:flex}::ng-deep .vx-form-group .switch-row app-cs-switch{display:block;margin-top:8px}::ng-deep .vx-form-group .switch-row app-cs-switch label.cs-switch span.value{white-space:nowrap;margin-right:0;text-transform:uppercase;color:#747576!important}::ng-deep .vx-form-group .switch-row app-cs-switch label.cs-switch span.value i{display:inline-flex;font-size:11px;cursor:pointer;color:#1e5dd3;align-items:center;line-height:16px;margin:0 4px}::ng-deep .vx-form-group .switch-row app-cs-switch+app-cs-switch{margin-left:8px}::ng-deep .vx-form-group .switch-row.align-right{justify-content:flex-end}::ng-deep .vx-form-group .switch-row.align-right label.cs-switch span.value{margin-right:8px}::ng-deep .vx-form-group .risk-type-field{background:#f8f8f8;border:1px solid #dbdbdb;border-radius:4px;height:40px;display:flex;align-items:center;padding:4px;position:relative;z-index:1}::ng-deep .vx-form-group .risk-type-field .type-item{width:50%;position:relative}::ng-deep .vx-form-group .risk-type-field .type-item button{background:transparent;border:none;border-radius:0;color:#747576;font-size:11px;font-weight:600;text-transform:uppercase;width:100%;height:32px;padding:0 12px;text-align:left}::ng-deep .vx-form-group .risk-type-field .type-item button.disabled{background:transparent!important;color:#dbdbdb!important;filter:unset!important;opacity:unset!important;pointer-events:none;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group .risk-type-field .type-item .info{color:#1e5dd3;font-size:12px;position:absolute;top:10px;right:12px;cursor:pointer}::ng-deep .vx-form-group .risk-type-field .type-item.active button{color:#1e5dd3!important}::ng-deep .vx-form-group .risk-type-field .type-item:nth-child(2).active~.background-glider{transform:translate(100%)}::ng-deep .vx-form-group .risk-type-field .background-glider{background:#fff;border-radius:4px;box-shadow:0 1px 3px #161b2f26;position:absolute;display:flex;width:208px;height:32px;z-index:-1;transition:.25s ease-out}.left{width:36px;height:36px;margin-top:26px;margin-left:-58px;margin-right:20px;display:flex;justify-content:center;align-items:center;position:relative;z-index:10;border-radius:50%}.left.deadline-completed{margin-top:18px}.left.checked{background:transparent}.left img{width:36px}.left .checkIcon{width:32px;height:32px;background:#ffffff;border-radius:50%;stroke-width:4;stroke:#34aa44;stroke-miterlimit:10;box-shadow:inset 0 0 #34aa44;animation:fillCheck .4s ease-in-out .4s forwards,scale .3s ease-in-out .9s both;margin-top:0}.left .checkIcon__circle{stroke-dasharray:166;stroke-dashoffset:166;stroke-width:2;stroke-miterlimit:10;stroke:#34aa44;fill:none;animation:strokeCheck .6s cubic-bezier(.65,0,.45,1) forwards}.left .checkIcon__check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;animation:strokeCheck .3s cubic-bezier(.65,0,.45,1) .8s forwards}.right{width:100%}.right span.indicator{position:absolute;top:36px;left:-16px;font-size:12px;color:#f0b819;cursor:pointer}.form-group-row{display:flex;position:relative;transition:all .2s ease-in-out}.form-group-row.disabled{-webkit-user-select:none;user-select:none;pointer-events:none;filter:grayscale(1);z-index:2}.form-group-row.disabled .left{position:relative}.form-group-row.disabled .left:before{content:\"\";position:absolute;inset:2px 0 0 2px;background:#ffffff;opacity:.7;border-radius:50%;width:32px;height:32px}.form-group-row.disabled .right{opacity:.3}.form-group-row.active{pointer-events:none;filter:grayscale(0);z-index:2;opacity:1}.form-group-row.active .right .vx-form-group input,.form-group-row.active .right .vx-form-group .custom-input,.form-group-row.active .right .vx-form-group .selectBoxEnable{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}.form-group-row.active .right .vx-form-group .selectBoxEnable.disabled{border-color:#dbdbdb;box-shadow:none}::ng-deep .radio-group-selector app-cs-radio{margin-top:4px;display:block;width:100%}::ng-deep .radio-group-selector app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .radio-group-selector app-cs-radio label.radio-item .radio,::ng-deep .radio-group-selector app-cs-radio label.radio-item .radiomark{position:absolute!important;top:9px;left:12px}::ng-deep .radio-group-selector app-cs-radio label.radio-item .value{font-size:11px!important;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0!important;max-width:100%!important;font-weight:500!important;color:#707070!important}::ng-deep .radio-group-selector app-cs-radio label.radio-item .value i{font-size:12px;color:#1e5dd3}::ng-deep .radio-group-selector app-cs-radio label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}@keyframes strokeCheck{to{stroke-dashoffset:0}}@keyframes fillCheck{to{box-shadow:inset 0 0 0 2px #34aa44}}::ng-deep .wf-action-list{width:220px}::ng-deep .wf-action-list ul{padding:0;margin:0;animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both;background:#ffffff;box-shadow:0 3px 6px #1c5bd140;border-radius:4px;max-height:220px;overflow:auto}::ng-deep .wf-action-list ul.action-item{display:block}::ng-deep .wf-action-list ul.action-item li{list-style:none;border:none;border-bottom:1px solid #f1f1f1;display:block;width:100%;padding:0;background:transparent;border-radius:0;margin:0;height:auto;justify-content:flex-start;box-shadow:none}::ng-deep .wf-action-list ul.action-item li button{color:#6e717e;text-align:left;text-decoration:none;cursor:pointer;background:transparent;font-size:12px;text-transform:capitalize;display:flex;width:100%;padding:7.5px 11px;border:none}::ng-deep .wf-action-list ul.action-item li button i{font-size:16px;margin-right:10px;color:#1e5dd3}::ng-deep .wf-action-list ul.action-item li button:hover{background:#f3f3f3}::ng-deep .wf-action-list ul.action-item li .avatar-card{display:flex;align-items:center;width:100%;padding:7.5px}::ng-deep .wf-action-list ul.action-item li .avatar-card.within-con{display:block}::ng-deep .wf-action-list ul.action-item li .avatar-card .avatar{height:24px;width:24px!important;overflow:hidden;background:#1e5dd3;color:#fff;font-size:10px;display:inline-flex;margin-right:5px;border-radius:50%;align-items:center;justify-content:center;text-transform:uppercase}::ng-deep .wf-action-list ul.action-item li .avatar-card .avatar img{width:100%}::ng-deep .wf-action-list ul.action-item li .avatar-card .avatar+span.value{width:calc(100% - 29px)}::ng-deep .wf-action-list ul.action-item li .avatar-card span.value{width:100%;color:#6e717e;text-decoration:none;background:transparent;font-size:12px;text-transform:capitalize;display:block;font-weight:400;text-align-last:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:20px}::ng-deep .wf-action-list ul.action-item li .avatar-card span.value i{font-size:8px;color:#747576;cursor:pointer;margin-right:5px}::ng-deep .wf-action-list ul.action-item li .avatar-card.no-image{display:block}::ng-deep .wf-action-list ul.action-item li .avatar-card.no-image span.value{width:100%;display:block}::ng-deep .wf-action-list ul.action-item li .chip-item{color:#1e5dd3;padding:10px;display:flex;align-items:center}::ng-deep .wf-action-list ul.action-item li .chip-item i{color:#747576;margin-right:7px;font-size:10px;cursor:pointer;display:inline-flex}::ng-deep .wf-action-list ul.action-item li .chip-item span{display:block;width:auto;max-width:calc(100% - 17px);font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .wf-action-list ul.action-item li .chip-item span.chip-block{display:block;width:100%}::ng-deep .wf-action-list ul.action-item li .chip-item span.id{font-size:9px}::ng-deep .wf-action-list ul.action-item li .within{display:flex;align-items:center;justify-content:flex-start}::ng-deep .wf-action-list ul.action-item li .within .block{background:#f1f1f1;border-radius:2px;padding:0 2px;line-height:14px;font-size:9px;font-weight:500;color:#042e7d;margin-right:6px;display:block;text-transform:uppercase}::ng-deep .wf-action-list ul.action-item li .within .data{width:100%;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#747576;font-size:11px;font-weight:400;line-height:17px}::ng-deep .wf-action-list ul.action-item li:first-child{animation:action-list-open .25s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(2){animation:action-list-open .35s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(3){animation:action-list-open .45s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(4){animation:action-list-open .55s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(5){animation:action-list-open .65s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(6){animation:action-list-open .75s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(7){animation:action-list-open .85s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(8){animation:action-list-open .95s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(9){animation:action-list-open 1.05s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(10){animation:action-list-open 1.15s cubic-bezier(.25,.46,.45,.94) both}@keyframes action-list-open{0%{transform:translateY(50px)}to{transform:translateY(0)}}@keyframes scale-up-center{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}p.error-message{font-size:11px;font-weight:400;color:#eb2424;line-height:16px;margin-top:8px;margin-bottom:0}.edit-loader{position:absolute;top:-3px;left:-3px;width:46px;height:46px;transform:rotate(180deg)}.circular-loader{animation:rotate 2s linear infinite;height:100%;transform-origin:center center;width:100%;position:absolute;top:0;left:0;margin:auto}.loader-path{stroke-dasharray:150,200;stroke-dashoffset:-10;animation:dash 1.5s ease-in-out infinite;stroke-linecap:round}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35}to{stroke-dasharray:89,200;stroke-dashoffset:-124}}::ng-deep .dropdown{position:fixed;background:#ffffff;box-shadow:0 3px 6px #00000029;padding:24px 0;z-index:9;max-height:calc(100vh - 200px);overflow:auto}::ng-deep .dropdown ul.dropdown-list{padding:0 20px;margin:0;display:block}::ng-deep .dropdown ul.dropdown-list li{list-style:none}::ng-deep .dropdown ul.dropdown-list li app-cs-radio{display:flex}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item span.radio{position:absolute;top:12px;left:12px}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item span.value{padding:11px 12px 11px 32px;width:100%;border:1px solid #bcbcbc;border-radius:4px;margin-left:0;max-width:100%}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item svg{position:absolute;top:12px;left:12px}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item input[type=radio]:checked~span.value{background:#e8feeb;border-color:#34aa44}::ng-deep .dropdown ul.dropdown-list li+li{margin-top:8px}app-smiley-dialog{position:relative;z-index:10}app-smiley-dialog-inline{position:absolute;top:-3px;right:0;bottom:0;z-index:999;width:520px;height:calc(100vh + 3px)}::ng-deep .vx-overlay{position:fixed;z-index:3;inset:0}dp-date-picker{width:100%;position:fixed!important;z-index:14;top:-40px;left:0}dp-date-picker input{width:100%;border:none;opacity:0;pointer-events:none}dp-date-picker input:focus{outline:none}dp-date-picker .dp-popup{width:412px;box-shadow:0 0 20px #161b2f26;background-color:#fff;border-radius:4px;animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both}dp-date-picker .dp-popup dp-day-calendar,dp-date-picker .dp-popup dp-month-calendar{width:100%;pointer-events:auto}dp-date-picker .dp-popup dp-day-calendar button,dp-date-picker .dp-popup dp-month-calendar button{background:transparent;border:none;outline:none}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-left,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right{width:40px;height:40px;display:flex;justify-content:center;align-items:center;border-radius:50%;font-size:14px}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn:hover,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-left:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left:hover,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right:hover{background-color:#f3f3f3}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn{display:none}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn:before,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn:before{content:\"\";height:10px;width:10px;border-radius:50%;background:#000000;display:inline-flex}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week{display:flex;justify-content:space-around}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays .dp-calendar-weekday,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays .dp-calendar-weekday,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week .dp-calendar-weekday,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week .dp-calendar-weekday{width:52px;border-left:none;border-bottom-color:#fff;color:#747576;font-size:11px;font-weight:600;text-transform:uppercase}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button{width:40px;height:40px;border-radius:50%;display:inline-flex;justify-content:center;align-items:center}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button:hover,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button:hover,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button:hover,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button:hover{background-color:#f3f3f3}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-selected,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button.dp-selected,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-selected,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-selected{background:#1e5dd3}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-current-day,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button.dp-current-day,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-current-day,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-current-day{border:1px solid rgba(0,0,0,.38);color:#1e5dd3;background-color:#fff}dp-date-picker .dp-popup dp-day-calendar .dp-day-calendar-container,dp-date-picker .dp-popup dp-month-calendar .dp-day-calendar-container{padding:20px;border-radius:2px}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-nav-container,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-nav-container{display:flex;margin:0 0 20px;border:none}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-nav-container .dp-nav-header button,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-nav-container .dp-nav-header button{color:#000;font-size:17px;font-weight:500;margin:0 0 0 12px;padding:0}dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container,dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container{width:80px;display:flex}dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container .dp-calendar-nav-container-left button,dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container .dp-calendar-nav-container-left button,dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container .dp-calendar-nav-container-right button,dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container .dp-calendar-nav-container-right button{margin:0!important}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-wrapper,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-wrapper{border:none}dp-date-picker .dp-open+div{position:fixed!important;inset:0!important;display:flex;justify-content:center;align-items:center;z-index:99;pointer-events:none;background:rgba(0,0,0,.3)}@keyframes slide-bottom{0%{transform:translateY(-100px)}to{transform:translateY(0)}}::ng-deep span.file{display:block;width:20px;min-width:20px;border-radius:0 0 2px 2px;border:1px solid transparent;border-color:#747576;position:relative;margin-right:5px;border-top:none;margin-top:5px;background:#ffffff}::ng-deep span.file.table{margin-right:8px;width:18px;min-width:18px}::ng-deep span.file.table i{font-size:8px}::ng-deep span.file.table .format{height:8px;font-size:7px;line-height:8px;font-weight:400}::ng-deep span.file:before{position:absolute;border-radius:0;top:-4px;right:-1px;content:\"\";height:4px;width:4px;display:block;background:linear-gradient(45deg,#747576 0%,#747576 1%,#747576 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file:after{height:4px;left:-1px;right:3px;border-top:1px solid;border-right:none;border-left:1px solid;content:\"\";top:-4px;position:absolute;border-radius:2px 0 0;background:#ffffff}::ng-deep span.file .format{height:10px;font-size:6px;text-transform:uppercase;background:transparent;font-weight:600;text-align:center;display:block;line-height:10px}::ng-deep span.file i{font-size:10px;height:10px;display:flex;align-items:center;justify-content:center;color:#dbdbdb}::ng-deep span.file.docx{width:22px!important}::ng-deep span.file.pdf,::ng-deep span.file.template{border-color:#f31c39}::ng-deep span.file.pdf:before,::ng-deep span.file.template:before{background:linear-gradient(45deg,#f31c39 0%,#f31c39 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#f31c39\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.pdf:after,::ng-deep span.file.template:after{border-color:#f31c39}::ng-deep span.file.pdf .format,::ng-deep span.file.template .format{color:#f31c39}::ng-deep span.file.xlsx,::ng-deep span.file.xls,::ng-deep span.file.css,::ng-deep span.file.scss,::ng-deep span.file.less{border-color:#34aa44}::ng-deep span.file.xlsx:before,::ng-deep span.file.xls:before,::ng-deep span.file.css:before,::ng-deep span.file.scss:before,::ng-deep span.file.less:before{background:linear-gradient(45deg,#34aa44 0%,#34aa44 1%,#34aa44 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.xlsx:after,::ng-deep span.file.xls:after,::ng-deep span.file.css:after,::ng-deep span.file.scss:after,::ng-deep span.file.less:after{border-color:#34aa44;color:#34aa44}::ng-deep span.file.xlsx .format,::ng-deep span.file.xls .format,::ng-deep span.file.css .format,::ng-deep span.file.scss .format,::ng-deep span.file.less .format{color:#34aa44}::ng-deep span.file.doc,::ng-deep span.file.docx,::ng-deep span.file.psd{border-color:#1e5dd3}::ng-deep span.file.doc:before,::ng-deep span.file.docx:before,::ng-deep span.file.psd:before{background:linear-gradient(45deg,#1e5dd3 0%,#1e5dd3 1%,#1e5dd3 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.doc:after,::ng-deep span.file.docx:after,::ng-deep span.file.psd:after{border-color:#1e5dd3}::ng-deep span.file.doc .format,::ng-deep span.file.docx .format,::ng-deep span.file.psd .format{color:#1e5dd3}::ng-deep span.file.ppt,::ng-deep span.file.ai,::ng-deep span.file.html,::ng-deep span.file.jpg,::ng-deep span.file.jpeg,::ng-deep span.file.png{border-color:#f6882f}::ng-deep span.file.ppt:before,::ng-deep span.file.ai:before,::ng-deep span.file.html:before,::ng-deep span.file.jpg:before,::ng-deep span.file.jpeg:before,::ng-deep span.file.png:before{background:linear-gradient(45deg,#f6882f 0%,#f6882f 1%,#f6882f 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.ppt:after,::ng-deep span.file.ai:after,::ng-deep span.file.html:after,::ng-deep span.file.jpg:after,::ng-deep span.file.jpeg:after,::ng-deep span.file.png:after{border-color:#f6882f}::ng-deep span.file.ppt .format,::ng-deep span.file.ai .format,::ng-deep span.file.html .format,::ng-deep span.file.jpg .format,::ng-deep span.file.jpeg .format,::ng-deep span.file.png .format{color:#f6882f}::ng-deep span.file.php{border-color:#7aa6f7}::ng-deep span.file.php:before{background:linear-gradient(45deg,#7aa6f7 0%,#7aa6f7 1%,#7aa6f7 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.php:after{border-color:#7aa6f7}::ng-deep span.file.php .format{color:#7aa6f7}::ng-deep ngx-material-timepicker-container .timepicker-backdrop-overlay{background-color:#0000000d!important;z-index:9999999999!important}::ng-deep ngx-material-timepicker-container .timepicker-overlay{z-index:9999999999!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker{width:232px!important;border-radius:2px!important;box-shadow:0 4px 30px #161b2f26!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header{background-color:#fff!important;padding:0!important;border-radius:2px 2px 0 0}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container{display:block!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time{color:#000!important;width:150px!important;margin:0 auto;line-height:60px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control .timepicker-dial__control{font-size:40px;background-color:transparent!important;color:#000!important;font-weight:600;text-align:right;caret-color:transparent;outline:none;font-family:Poppins;line-height:56px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control .timepicker-dial__control:focus,::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control .timepicker-dial__control:hover{background-color:transparent!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control:last-of-type .timepicker-dial__control{text-align:left}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time span{padding:0 8px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period{display:flex!important;width:182px;margin:0 auto!important;background:#f1f1f1;padding:4px 10px;border-radius:20px;position:relative}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period:before{background:#f1f1f1;content:\"\";position:absolute;top:15px;left:-25px;width:calc(100% + 50px);height:2px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period{flex-direction:unset!important;position:relative;z-index:1}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period:after{content:\"\";position:absolute;right:-12px;top:0;border-left:solid 14px #f1f1f1;border-bottom:solid 12px transparent;border-top:solid 12px transparent;z-index:-1}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period:before{content:\"\";position:absolute;left:-18px;top:0;border-right:solid 14px #f1f1f1;border-bottom:solid 12px transparent;border-top:solid 12px transparent;z-index:-1}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period button{font-size:11px;background-color:transparent;padding:0;border-radius:20px;color:#747576;font-weight:600;font-family:Poppins;width:84px;height:24px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period button.timepicker-dial__item_active{background:#fff!important;color:#1e5dd3!important;box-shadow:0 1px 2px #dbdbdb}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period button+button{margin-left:0!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face{width:200px!important;height:200px!important;padding:10px!important;background:transparent!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number--outer{height:92px!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number--outer span{color:#000}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number--outer span.active{color:#fff}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__clock-hand{height:80px!important;top:calc(50% - 80px)!important;background-color:#1e5dd3!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number>span.active{background-color:#1e5dd3!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__clock-hand_minute:before{border:4px solid #1e5dd3!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions{display:flex!important;padding:10px 0 0!important;background:#fff!important;justify-content:space-around!important;border-radius:0 0 2px 2px!important;overflow:hidden}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions div:first-child ngx-material-timepicker-button button.timepicker-button{background:#f8f8f8;color:#1e5dd3}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions div ngx-material-timepicker-button button.timepicker-button{line-height:28px!important;width:100%;background:#1e5dd3;color:#fff;border-radius:0!important;height:32px!important;width:116px!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions div ngx-material-timepicker-button button.timepicker-button span{font-weight:500!important;font-size:11px;font-family:Poppins}::ng-deep marx-editor,::ng-deep vcomply-editor{display:block}::ng-deep marx-editor .editor-container,::ng-deep vcomply-editor .editor-container{border-radius:4px;border:1px solid #dbdbdb;transition:all .2s ease-in-out}::ng-deep marx-editor .editor-container:hover,::ng-deep vcomply-editor .editor-container:hover,::ng-deep marx-editor .editor-container:focus-within,::ng-deep vcomply-editor .editor-container:focus-within{border:1px solid #1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep marx-editor .editor-container mention-list ul li a,::ng-deep vcomply-editor .editor-container mention-list ul li a{font-size:16px!important}::ng-deep marx-editor .editor-container .editable-block,::ng-deep vcomply-editor .editor-container .editable-block{background:#fff;min-height:60px;padding:8px 12px;line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%}::ng-deep marx-editor .editor-container .editable-block:before,::ng-deep vcomply-editor .editor-container .editable-block:before{color:#747576!important}::ng-deep marx-editor .editor-container .editor-tools,::ng-deep vcomply-editor .editor-container .editor-tools{border-top:1px solid #dbdbdb;border-radius:0 0 3px 3px}::ng-deep marx-editor .editor-container .editor-tools:hover,::ng-deep vcomply-editor .editor-container .editor-tools:hover{border-color:#1e5dd3}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button,::ng-deep vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button{height:22px!important;width:22px!important;padding:0 5px}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button svg,::ng-deep vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button svg{height:22px;width:12px}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button.submit,::ng-deep vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button.submit{width:80px!important;line-height:22px;justify-content:center}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col .popover.small ul.option-list li button,::ng-deep vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col .popover.small ul.option-list li button{width:100%!important;height:auto!important}::ng-deep marx-modal .popup-modal-background,::ng-deep vcomply-modal .popup-modal-background{background-color:#161b2fcc!important}::ng-deep .within-box{background:#f1f1f1;border-radius:.125rem;color:#042e7d}::ng-deep .within-value{overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;word-break:break-word}\n"], 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: "directive", type: i4.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i4.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i5.CsRadioComponent, selector: "app-cs-radio", inputs: ["disabled", "readonly", "name", "checked", "value", "oneLine"], outputs: ["checkedEvent"] }, { kind: "directive", type: i6.ToolTipDirective, selector: "[appTooltip]", inputs: ["appTooltip", "placement", "type", "tooltipMandatory", "showTooltip", "animate"] }, { kind: "component", type: i7.SnackBarComponent, selector: "app-snack-bar" }, { kind: "component", type: i8.GrcObjectContainerComponent, selector: "lib-grc-object-container", outputs: ["populateOption"] }, { kind: "component", type: i9.WorkflowRiskComponent, selector: "app-workflow-risk", inputs: ["feature", "mode", "riskId", "defaultRiskType", "moveToRegisterMode", "secondaryOpenPortal", "openedFrom"], outputs: ["showConfirmationAlert", "pickerChanged", "populateOption", "closeWorkflow", "disconnectRefresh", "refreshForm", "hideElementsFromMoreOptions"] }, { kind: "component", type: i10.WorkflowComplianceComponent, selector: "app-workflow-compliance", inputs: ["mode", "responsibilityId", "frameworkDetails", "isEntrust", "feature", "closeOnEsc", "orgDetails", "openedFrom", "selectedRC", "selectedProgram"], outputs: ["pickerChanged", "populateOption", "hideElementsFromMoreOptions", "closeWorkflow", "resetForm", "disconnectRefresh", "checkpointCountUpdated", "rcSelected", "onRemovingCheckpoint", "isAssessmentDisabled", "assigneeTypeChange", "onReviewerTypeChange"] }, { kind: "component", type: i11.WorkflowPolicyComponent, selector: "app-workflow-policy", inputs: ["mode", "policyId", "feature", "convertFileData", "selectedCategory"], outputs: ["pickerChanged", "showConfirmationAlert", "populateOption", "disconnectRefresh", "shiftToEditMode"] }, { kind: "component", type: i12.MoreOptionComponent, selector: "app-more-option", inputs: ["currentWorkflow", "openedFrom", "isEditMode", "isRCSelected", "isProgramSelected", "allowedFeature", "orgDetailsData"], outputs: ["selectedOption"] }, { kind: "component", type: i13.AddMultipleRiskComponent, selector: "app-add-multiple-risk", outputs: ["pickerChanged", "populateOption", "closeWorkflow", "disconnectRefresh"] }, { kind: "component", type: i14.ConfirmationAlertComponent, selector: "app-confirmation-alert", inputs: ["message", "config"], outputs: ["action"] }, { kind: "component", type: i15.WorkflowSurveyFormComponent, selector: "app-workflow-survey-form" }, { kind: "component", type: i16.LogAnIssueComponent, selector: "app-log-an-issue", inputs: ["openedFrom", "issueId", "reponsibilityData", "issueDetails", "mode", "config", "responsibilitiesData"], outputs: ["pickerChanged", "populateOption", "closeWorkflow", "modeChange", "disconnectRefresh"] }, { kind: "component", type: i17.WorkflowAssessmentComponent, selector: "app-workflow-assessment", inputs: ["mode", "assessmentId", "openedFrom"], outputs: ["disconnectRefresh", "pickerChanged", "closeWorkflow"] }, { kind: "component", type: i18.ImportAnAssessmentComponent, selector: "app-import-an-assessment", outputs: ["closeWorkflow", "disconnectRefresh"] }, { kind: "component", type: i19.WorkflowProgramComponent, selector: "app-workflow-program", inputs: ["canFrameworkChange", "mode", "programId", "programType", "allowedFeature", "addToProgramDetails", "orgDetails"], outputs: ["pickerChanged", "populateOption", "closeWorkflow", "showConfirmationAlert", "disconnectRefresh", "refreshForm", "hideElementsFromMoreOptions", "onRemovingRole", "disableElementsFromMoreOptions"] }, { kind: "component", type: i20.AddMultipleResponsibilityContainerComponent, selector: "lib-add-multiple-responsibility-container", inputs: ["feature", "orgDetails"], outputs: ["closeWorkflow"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] });
|
|
499
|
+
WorkflowEngineContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: WorkflowEngineContainerComponent, selector: "app-vcomply-workflow-engine-container", inputs: { workflowType: "workflowType", mode: "mode", id: "id", openedFrom: "openedFrom", allowedWorkflows: "allowedWorkflows", frameworkDetails: "frameworkDetails", selectedRC: "selectedRC", secondaryOpenPortal: "secondaryOpenPortal", defaultRiskType: "defaultRiskType", moveToRegisterMode: "moveToRegisterMode", reponsibilityData: "reponsibilityData", pid: "pid", programType: "programType", issueData: "issueData", entrustButtonName: "entrustButtonName", config: "config", convertFileData: "convertFileData", selectedCategory: "selectedCategory", selectedProgram: "selectedProgram", canFrameworkChange: "canFrameworkChange", addToProgramDetails: "addToProgramDetails", feature: "feature" }, outputs: { closeWorkflow: "closeWorkflow" }, host: { listeners: { "window:beforeunload": "unloadNotification($event)", "document:keydown.escape": "onKeydownHandler($event)", "window:resize": "sizeChange($event)" } }, viewQueries: [{ propertyName: "riskComponent", first: true, predicate: ["risk"], descendants: true }, { propertyName: "riskBulkUpload", first: true, predicate: ["multipleRisk"], descendants: true }, { propertyName: "responsibilityBulkUpload", first: true, predicate: ["multipleResponsibility"], descendants: true }, { propertyName: "compliance", first: true, predicate: ["responsibility"], descendants: true }, { propertyName: "moreOption", first: true, predicate: ["moreOption"], descendants: true }, { propertyName: "dropdown", first: true, predicate: ["dropdown"], descendants: true }, { propertyName: "dropdownRow", first: true, predicate: ["dropdownRow"], descendants: true }, { propertyName: "policy", first: true, predicate: ["policy"], descendants: true }, { propertyName: "logIssueComponent", first: true, predicate: ["logAnIssue"], descendants: true }, { propertyName: "workflowAssessmentComponent", first: true, predicate: ["assessment"], descendants: true }, { propertyName: "importAnAssessment", first: true, predicate: ["importAssessment"], descendants: true }, { propertyName: "program", first: true, predicate: ["program"], descendants: true }, { propertyName: "grcObject", first: true, predicate: ["grcObject"], descendants: true }], ngImport: i0, template: "<app-snack-bar></app-snack-bar>\r\n<div class=\"workflow-engine-overlay\"></div>\r\n<div\r\n class=\"workflow-engine\"\r\n [class.animate]=\"animation\"\r\n [class.bg]=\"\r\n (!isWorkflowSelectorEnabled || riskBulkUpload?.showCategoryList) &&\r\n !policy?.showCreateDocuments\r\n \"\r\n>\r\n <div\r\n class=\"workflow-engine-container\"\r\n [ngSwitch]=\"currentWorkflow?.code\"\r\n [class.with-preview-assessment]=\"(auth?.previewPanel | async) === true\"\r\n >\r\n <button\r\n (click)=\"closeWorkflowEngine()\"\r\n id=\"close-workflow-engine-btn\"\r\n class=\"close\"\r\n [appTooltip]=\"'[Esc] to close'\"\r\n placement=\"left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"true\"\r\n [class.disabled]=\"\r\n confirmationAlertConfig?.isVisible || !isWorkflowSelectorEnabled\r\n \"\r\n [class.smiley-opened]=\"\r\n riskComponent?.showSmiley ||\r\n logIssueComponent?.showSmiley ||\r\n compliance?.showSmiley ||\r\n policy?.showCreateDocuments ||\r\n responsibilityBulkUpload?.showSmiley ||\r\n responsibilityBulkUpload?.showExcel ||\r\n riskBulkUpload?.showSmiley ||\r\n riskBulkUpload?.showExcel ||\r\n program?.showSmiley ||\r\n importAnAssessment?.showSmiley\r\n \"\r\n >\r\n <i class=\"icons\"></i>\r\n </button>\r\n <div\r\n *ngIf=\"!uiKitService.isSmileyOn\"\r\n class=\"workflow-engine-more\"\r\n [hidden]=\"showMoreOption === false || policy?.showCreateDocuments\"\r\n [class.disabled]=\"confirmationAlertConfig?.isVisible\"\r\n [class.read-only]=\"uiKitService?.isLoader\"\r\n >\r\n <app-more-option\r\n #moreOption\r\n [currentWorkflow]=\"currentWorkflow?.code\"\r\n [isEditMode]=\"mode === 'EDIT'\"\r\n [isRCSelected]=\"isRCSelected\"\r\n [openedFrom]=\"openedFrom\"\r\n (selectedOption)=\"addMoreInfo($event)\"\r\n [isProgramSelected]=\"selectedProgram\"\r\n [allowedFeature]=\"feature\"\r\n [orgDetailsData]=\"orgDetails\"\r\n >\r\n </app-more-option>\r\n </div>\r\n <div\r\n class=\"workflow-engine-form\"\r\n [class.disabled]=\"confirmationAlertConfig?.isVisible\"\r\n [class.no-shadow]=\"\r\n currentWorkflow?.code == 'AMR' ||\r\n currentWorkflow?.code == 'CMR' ||\r\n currentWorkflow?.code == 'AAA' ||\r\n uiKitService.isSmileyOn ||\r\n policy?.showCreateDocuments\r\n \"\r\n >\r\n <div class=\"container\" (scroll)=\"scrollForm()\">\r\n <ng-container\r\n *ngIf=\"\r\n !['VIEW_AUDIT_EXECUTION_SUMMARY', 'EXECUTE_AUDIT_PLAN'].includes(\r\n openedFrom\r\n )\r\n \"\r\n >\r\n <div\r\n *ngIf=\"!(uiKitService.isSmileyOn || policy?.showCreateDocuments)\"\r\n class=\"form-group-row\"\r\n #dropdownRow\r\n [class.disabled]=\"\r\n mode === 'EDIT' ||\r\n !isWorkflowSelectorEnabled ||\r\n disableWorkflowChange ||\r\n selectedProgram\r\n \"\r\n >\r\n <div class=\"left\" [class.checked]=\"currentWorkflow\">\r\n <svg\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\" #dropdown>\r\n <label class=\"vx-control-panel\"\r\n >Select a Workflow<span class=\"required\">*</span></label\r\n >\r\n <div\r\n class=\"select\"\r\n *ngIf=\"!currentWorkflow\"\r\n (click)=\"editWorkflow()\"\r\n >\r\n <input type=\"text\" placeholder=\"Select a Workflow\" readonly />\r\n </div>\r\n <div class=\"selected first-field\" *ngIf=\"currentWorkflow\">\r\n <!-- {{currentWorkflow | json}} -->\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2 vx-mr-2\"\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt no-width\"\r\n [appTooltip]=\"currentWorkflow?.workflowName\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ currentWorkflow?.workflowName }}</span\r\n >\r\n </div>\r\n <!-- <div class=\"chip-container\">\r\n <span class=\"chip\" [class.disabled]=\"false\">{{currentWorkflow?.workflowName}}</span>\r\n </div> -->\r\n <button\r\n class=\"edit\"\r\n type=\"button\"\r\n (click)=\"editWorkflow()\"\r\n *ngIf=\"!workflowList\"\r\n >\r\n <i class=\"icons\"></i> Edit\r\n </button>\r\n </div>\r\n <div\r\n *ngIf=\"\r\n currentWorkflow?.code === 'CAPR' &&\r\n currentBusinessCycle &&\r\n !programSimplifyFlag\r\n \"\r\n class=\"program-business-cycle vx-fs-11 vx-txt-white vx-d-flex vx-align-center vx-pt-2 vx-pb-1 vx-pl-2 vx-pr-1\"\r\n >\r\n <i class=\"icons vx-fs-12 vx-mr-1\"></i> This program is\r\n being set-up for the business cycle:\r\n <span class=\"vx-fw-600 vx-ml-1\">{{\r\n currentBusinessCycle\r\n }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <!-- <app-create-documents></app-create-documents> -->\r\n <!-- <app-bulk-view></app-bulk-view> -->\r\n <!-- <app-bulk-responsibility-view></app-bulk-responsibility-view> -->\r\n <app-workflow-compliance\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n [orgDetails]=\"orgDetails\"\r\n [isEntrust]=\"entrustButtonName.toLowerCase() == 'entrust'\"\r\n [responsibilityId]=\"id\"\r\n [mode]=\"mode\"\r\n [frameworkDetails]=\"frameworkDetails\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n *ngSwitchCase=\"'CAR'\"\r\n #responsibility\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (hideElementsFromMoreOptions)=\"hideElementsFromMoreOptions($event)\"\r\n [selectedRC]=\"selectedRC\"\r\n [closeOnEsc]=\"closeOnEsc\"\r\n (assigneeTypeChange)=\"assigneeTypeChange($event)\"\r\n (onReviewerTypeChange)=\"onReviewerChange($event)\"\r\n [feature]=\"feature\"\r\n [openedFrom]=\"openedFrom\"\r\n (rcSelected)=\"onRcSelected($event)\"\r\n (resetForm)=\"onResetForm()\"\r\n (onRemovingCheckpoint)=\"onRemovingCheckpoint($event, false, true)\"\r\n (isAssessmentDisabled)=\"isAssessmentDisabled($event)\"\r\n (checkpointCountUpdated)=\"checkpointCount = $event\"\r\n [selectedProgram]=\"selectedProgram\"\r\n ></app-workflow-compliance>\r\n <app-workflow-risk\r\n [secondaryOpenPortal]=\"secondaryOpenPortal\"\r\n [openedFrom]=\"openedFrom\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'AAR'\"\r\n #risk\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (hideElementsFromMoreOptions)=\"hideElementsFromMoreOptions($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (refreshForm)=\"onResetForm()\"\r\n [mode]=\"mode\"\r\n [riskId]=\"id\"\r\n [feature]=\"feature\"\r\n ></app-workflow-risk>\r\n <app-workflow-policy\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'CAP'\"\r\n #policy\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (shiftToEditMode)=\"shiftToEditMode()\"\r\n [feature]=\"feature\"\r\n [policyId]=\"id\"\r\n [mode]=\"mode\"\r\n [convertFileData]=\"convertFileData\"\r\n [selectedCategory]=\"selectedCategory\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n ></app-workflow-policy>\r\n <app-workflow-survey-form\r\n *ngSwitchCase=\"'CAS'\"\r\n #surveyForm\r\n ></app-workflow-survey-form>\r\n <app-add-multiple-risk\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'AMR'\"\r\n #multipleRisk\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n ></app-add-multiple-risk>\r\n <!-- <app-add-multiple-responsibility (disconnectRefresh)=\"isHostRefreshActive = $event\" (closeWorkflow)=\"closeWorkflowEngine($event)\" *ngSwitchCase=\"'CMR'\" #multipleResponsibility>\r\n </app-add-multiple-responsibility> -->\r\n\r\n <lib-add-multiple-responsibility-container\r\n [orgDetails]=\"orgDetails\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n *ngSwitchCase=\"'CMR'\"\r\n [feature]=\"feature\"\r\n #multipleResponsibility\r\n ></lib-add-multiple-responsibility-container>\r\n <!-- New Log an Issue -->\r\n <app-log-an-issue\r\n [issueDetails]=\"issueData\"\r\n *ngSwitchCase=\"'LAI'\"\r\n [reponsibilityData]=\"reponsibilityData\"\r\n [openedFrom]=\"openedFrom\"\r\n [issueId]=\"id\"\r\n #logAnIssue\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n [(mode)]=\"mode\"\r\n >\r\n </app-log-an-issue>\r\n <!-- Old Log an issue -->\r\n <!-- <app-log-an-issue *ngSwitchCase=\"'LAI'\" [responsibilitiesData]=\"reponsibiltyData\" [openedFrom]=\"openedFrom\"\r\n #logAnIssue (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\" (populateOption)=\"populateMoreOption($event)\">\r\n </app-log-an-issue> -->\r\n\r\n <app-workflow-assessment\r\n [assessmentId]=\"id\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n [openedFrom]=\"openedFrom\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'AAA'\"\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (refreshForm)=\"onResetForm()\"\r\n [mode]=\"mode\"\r\n #assessment\r\n ></app-workflow-assessment>\r\n <app-import-an-assessment\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'IAA'\"\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (refreshForm)=\"onResetForm()\"\r\n #importAssessment\r\n ></app-import-an-assessment>\r\n <!-- <app-workflow-program #program *ngSwitchCase=\"'CAPR'\" (pickerChanged)=\"decideViewMoreOption($event)\" (disconnectRefresh)=\"isHostRefreshActive = $event\"></app-workflow-program> -->\r\n <app-workflow-program\r\n #program\r\n *ngSwitchCase=\"'CAPR'\"\r\n [orgDetails]=\"orgDetails\"\r\n [allowedFeature]=\"feature\"\r\n (disableElementsFromMoreOptions)=\"disableMoreOptions('CAPR', $event)\"\r\n [programType]=\"programType\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (refreshForm)=\"onResetForm()\"\r\n [mode]=\"mode\"\r\n [programId]=\"id\"\r\n (onRemovingRole)=\"onRemovingRole($event)\"\r\n [canFrameworkChange]=\"canFrameworkChange\"\r\n [addToProgramDetails]=\"addToProgramDetails\"\r\n ></app-workflow-program>\r\n\r\n <!-- GRC Object -->\r\n <lib-grc-object-container\r\n #grcObject\r\n *ngIf=\"false\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n ></lib-grc-object-container>\r\n </div>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n *ngSwitchCase=\"'AAR'\"\r\n (click)=\"submit()\"\r\n >\r\n {{\r\n mode === \"EDIT\" && openedFrom !== \"MOVE_TO_REGISTER\"\r\n ? \"Update\"\r\n : \"Add\"\r\n }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"\r\n !isWorkflowSelectorEnabled ||\r\n !riskBulkUpload?.category?.selectedCategory\r\n \"\r\n (click)=\"bulkUploadBrowse('AMR')\"\r\n *ngSwitchCase=\"'AMR'\"\r\n >\r\n Browse\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n (click)=\"bulkUploadBrowse('CMR')\"\r\n *ngSwitchCase=\"'CMR'\"\r\n >\r\n Browse\r\n </button>\r\n\r\n <!-- This has ternary operation to handle the both scenarios of how it works with compliance and program module, please don't change this. -->\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n (click)=\"submit()\"\r\n *ngSwitchCase=\"'CAR'\"\r\n >\r\n {{\r\n entrustButtonName !== \"\" && mode !== \"EDIT\"\r\n ? entrustButtonName\r\n : mode === \"EDIT\"\r\n ? \"UPDATE\"\r\n : \"Entrust\"\r\n }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n (click)=\"submit()\"\r\n *ngSwitchCase=\"'CAP'\"\r\n >\r\n {{\r\n convertFileData.fileName\r\n ? \"NEXT\"\r\n : mode == \"EDIT\"\r\n ? \"Update\"\r\n : \"Continue to draft\"\r\n }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n *ngSwitchCase=\"'CAS'\"\r\n >\r\n Continue to draft\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n *ngSwitchCase=\"'LAI'\"\r\n (click)=\"submit()\"\r\n >\r\n {{ mode === \"EDIT\" ? \"Update\" : \"Add\" }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n *ngSwitchCase=\"'AAA'\"\r\n (click)=\"submit()\"\r\n >\r\n {{ mode === \"EDIT\" ? \"Update\" : \"Continue to draft\" }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n (click)=\"bulkUploadBrowse('IAA')\"\r\n *ngSwitchCase=\"'IAA'\"\r\n >\r\n Browse\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled || !program?.valid\"\r\n (click)=\"submit('CAPR')\"\r\n *ngSwitchCase=\"'CAPR'\"\r\n >\r\n {{ mode === \"EDIT\" ? \"Update\" : \"Save\" }}\r\n </button>\r\n <div\r\n class=\"dropdown\"\r\n *ngIf=\"workflowList\"\r\n (click)=\"closeWorkflowList()\"\r\n [style.top.px]=\"dropdownTop\"\r\n [style.left.px]=\"dropdownLeft\"\r\n [style.width.px]=\"dropdownWidth\"\r\n >\r\n <ul class=\"dropdown-list\">\r\n <li\r\n *ngFor=\"let workflow of workflowTypeList\"\r\n (click)=\"changeWorkflow($event, workflow)\"\r\n >\r\n <app-cs-radio\r\n [value]=\"workflow?.code\"\r\n [checked]=\"currentWorkflow?.code === workflow?.code\"\r\n >\r\n {{ workflow?.workflowName }}</app-cs-radio\r\n >\r\n </li>\r\n </ul>\r\n </div>\r\n <div\r\n class=\"dropdown-overlay\"\r\n *ngIf=\"workflowList\"\r\n (click)=\"closeWorkflowList()\"\r\n ></div>\r\n </div>\r\n <app-confirmation-alert\r\n id=\"confirmation-dialogue\"\r\n (action)=\"confirmWorkflowChange($event)\"\r\n *ngIf=\"confirmationAlertConfig?.isVisible\"\r\n [message]=\"confirmationAlertConfig?.message\"\r\n [config]=\"confirmationAlertConfig\"\r\n ></app-confirmation-alert>\r\n </div>\r\n</div>\r\n", styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";.dropdown-overlay{position:fixed;inset:0;z-index:2}.workflow-engine{background:#161B2FCC;position:fixed;inset:0;z-index:10}.workflow-engine button.close{position:absolute;background:transparent;cursor:pointer;border:none;font-size:16px;color:#000;top:8px;right:7px;z-index:12;display:flex;align-items:center;justify-content:center;border-radius:2px;padding:8px}.workflow-engine button.close.bulk-opened,.workflow-engine button.close.smiley-opened{z-index:10}.workflow-engine button.close:hover{background:#f1f1f1}.workflow-engine button.close.disabled{pointer-events:none;opacity:.3;filter:grayscale(1)}.workflow-engine-container{position:fixed;top:0;right:0;bottom:0;background:#ffffff;display:flex;z-index:10;border-top:3px solid #1E5DD3}.workflow-engine-container:before{content:\"\";height:30px;position:absolute;top:0;right:0;width:499px;z-index:11;background:linear-gradient(to bottom,#ffffff 0%,rgba(255,255,255,.75) 66%,rgba(255,255,255,.42) 81%,rgba(255,255,255,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#ffffff\",endColorstr=\"#00ffffff\",GradientType=0)}.workflow-engine-container.with-preview-assessment:before{display:none}.workflow-engine-container.with-preview-assessment button.close{display:none}.workflow-engine-container.with-preview-assessment .workflow-engine-form{right:-470px}.workflow-engine-container.with-preview-assessment .workflow-engine-form .container ::ng-deep app-workflow-compliance .workflw-compliance{filter:grayscale(1)!important;pointer-events:none!important}.workflow-engine-container.with-preview-assessment .workflow-engine-form button.submit{filter:grayscale(1)!important;pointer-events:none!important}.workflow-engine-more{width:318px;padding:36px 22px 36px 40px;height:100vh;overflow:auto;margin-left:-18px;scrollbar-width:none}@media screen and (max-height: 900px){.workflow-engine-more{padding:20px 22px 36px 40px}}.workflow-engine-more::-webkit-scrollbar-track{background-color:#f1f1f1;position:absolute}.workflow-engine-more::-webkit-scrollbar{width:1px;height:1px;background-color:transparent;position:absolute}.workflow-engine-more::-webkit-scrollbar-thumb{border-radius:1px;background-color:#dbdbdb;position:absolute}.workflow-engine-more.disabled{filter:grayscale(1);pointer-events:none}.workflow-engine-more.read-only{pointer-events:none}.workflow-engine-form{width:500px;position:relative}.workflow-engine-form .container{height:calc(100vh - 53px);padding:35px 24px 8px 62px;overflow:hidden;overflow-y:auto;margin-left:-22px;scrollbar-width:thin}.workflow-engine-form .container.disabled{pointer-events:none}.workflow-engine-form:before{content:\"\";top:0;bottom:-50px;left:0;width:1px;background:#f1f1f1;position:absolute}.workflow-engine-form button.submit{position:sticky;height:50px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:48px;letter-spacing:1.3px;color:#fff;background:#1e5dd3;cursor:pointer;border:1px solid #1e5dd3;outline:none;border-radius:0;text-transform:uppercase;font-weight:600;width:100%;bottom:0;padding:0}.workflow-engine-form button.submit:disabled{background:#F1F1F1;border-color:#f1f1f1;pointer-events:none;cursor:not-allowed;color:#747576}.workflow-engine-form button.submit.disabled{pointer-events:none;opacity:.3;filter:grayscale(1)}.workflow-engine-form.disabled{filter:grayscale(1);pointer-events:none}.workflow-engine-form label.browse{padding:0;margin:0;display:block;position:sticky;bottom:0}.workflow-engine-form label.browse span{height:50px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:19px;letter-spacing:3.08px;color:#fff;background:#1e5dd3;cursor:pointer;border:1px solid #1e5dd3;outline:none;border-radius:0;text-transform:uppercase;font-weight:600;width:100%}.workflow-engine-form label.browse input{position:absolute;width:100%;height:100%;z-index:1;inset:0;opacity:0;cursor:pointer}.workflow-engine-form .file-browsed{display:flex;align-items:center;background:#FFFFFF;border-top:1px solid #F1F1F1;border-bottom:1px solid #F1F1F1}.workflow-engine-form .file-browsed span{display:block;width:calc(100% - 164px);color:#161b2f;font-size:13px;font-weight:400;line-height:20px;padding:0 16px}.workflow-engine-form .file-browsed button{height:50px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:19px;letter-spacing:3.08px;color:#fff;background:#1e5dd3;cursor:pointer;border:1px solid #1e5dd3;outline:none;border-radius:0;text-transform:uppercase;font-weight:600;width:164px;bottom:0}.workflow-engine-form:after{content:\"\";height:30px;position:absolute;right:0;bottom:50px;z-index:10;background:linear-gradient(to bottom,rgba(255,255,255,0) 0%,rgba(255,255,255,.75) 22%,#ffffff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#00ffffff\",endColorstr=\"#ffffff\",GradientType=0)}.workflow-engine-form.no-shadow:after{display:none}.workflow-engine.animate{animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;z-index:-1}.workflow-engine.bg{background:#FFFFFF}.program-business-cycle{background:#F2BF19;border-radius:0 0 .25rem .25rem;position:relative;top:-.25rem;z-index:1}@keyframes animate-right{0%{transform:translate(100%)}to{transform:translate(0)}}\n", "@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";::-webkit-scrollbar-track{background-color:#f1f1f1;position:absolute}::-webkit-scrollbar{width:3px;height:3px;background-color:transparent;position:absolute}::-webkit-scrollbar-thumb{border-radius:3px;background-color:#dbdbdb;position:absolute}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}button{font-family:Poppins,sans-serif}::ng-deep input.textField{background:#fff;border-radius:.25rem;border:1px solid #dbdbdb;font-size:13px;color:#747576;padding:8px 12px;position:relative;height:2.5rem;width:100%;transition:all .2s ease-in-out}::ng-deep input.textField::placeholder{font-size:13px;color:#747576}::ng-deep input.textField:hover,::ng-deep input.textField:focus{outline:none;border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .selectBoxEnable{background:#fff;border-radius:.25rem;border:1px solid #dbdbdb;cursor:pointer;height:2.5rem;position:relative;transition:all .2s ease-in-out}::ng-deep .selectBoxEnable:after{border-bottom-style:solid;border-bottom-width:1px;border-right-style:solid;border-right-width:1px;border-color:#747576;content:\"\";display:inline-block;right:12px;position:absolute;top:calc(50% - 4px);width:5px;height:5px;transform:rotate(45deg)}::ng-deep .selectBoxEnable:hover,::ng-deep .selectBoxEnable:focus{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .selectBoxEnable.disabled{background:#f1f1f1;pointer-events:none;opacity:1}::ng-deep .selectBoxSuccess{background:#f8f8f8;border-radius:.25rem;border:1px solid #f1f1f1;min-height:2.5rem;position:relative}::ng-deep .selectBoxSuccess .selectBoxText{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:22rem}::ng-deep .selectBoxSuccess button{background:transparent;border-radius:0;border:none}::ng-deep .selectBoxSuccess button.deleteBtn{color:#d93b41}::ng-deep .selectBoxSuccess .level-left{border-right:1px solid #f1f1f1;height:2.375rem;width:5rem}::ng-deep .selectBoxSuccess .level-left .level-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:4.5rem}::ng-deep .chipContainer{background:#fff;border-radius:.125rem;box-shadow:0 0 2px #1e5dd340;height:1.5rem}::ng-deep .chipContainer .cross{cursor:pointer;min-width:16px;width:16px;height:16px;display:flex;align-items:center;justify-content:center;background:transparent;border-radius:2px;margin-left:-4px}::ng-deep .chipContainer .cross:hover{background:#f1f1f1}::ng-deep .chipContainer .chipName{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;max-width:6rem}::ng-deep .chipContainer .chipName.no-width{max-width:unset}::ng-deep .chipContainer button.countBtn{background:#1e5dd3;border-radius:1.25rem;border:none;min-width:1.5rem;height:1rem;margin:0 0 0 .5rem;padding:0 .25rem}::ng-deep .chipContainer button.countBtn.greenBg{background:#34aa44}::ng-deep .workflowLavel{background:#f1f1f1;border-radius:.125rem;color:#042e7d;min-width:1rem;height:1rem}::ng-deep .reviewSelection{border-radius:.25rem;border:1px solid #dbdbdb;transition:all .2s ease-in-out}::ng-deep .reviewSelection:hover{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .selectButton{background:#fff;border-radius:.25rem;border:1px solid #dbdbdb;cursor:pointer;height:2.5rem;position:relative;transition:all .2s ease-in-out}::ng-deep .selectButton:hover,::ng-deep .selectButton:focus{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep button.createNewBtn{background:transparent;border-radius:0;border:none}::ng-deep .vx-form-group{display:block;position:relative;margin-bottom:20px}::ng-deep .vx-form-group:after{content:\"\";display:block;clear:both}::ng-deep .vx-form-group .select{position:relative}::ng-deep .vx-form-group .select:after{border-bottom-style:solid;border-bottom-width:1px;border-right-style:solid;border-right-width:1px;border-color:#707070;content:\"\";display:inline-block;right:12px;position:absolute;top:calc(50% - 4px);width:5px;height:5px;transform:rotate(45deg)}::ng-deep .vx-form-group .select input{cursor:pointer;padding-right:30px!important}::ng-deep .vx-form-group .select .custom-input{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#ffffff;outline:none;padding:3px 12px;line-height:16px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;cursor:pointer}::ng-deep .vx-form-group .select .custom-input:empty:not(:focus):before{content:attr(aria-placeholder);line-height:16px;font-size:13px;width:94%;display:block;pointer-events:none;opacity:.8}::ng-deep .vx-form-group .select .custom-input:hover{border-color:#1e5dd3;box-shadow:0 0 5px #1e5dd345}::ng-deep .vx-form-group .select .custom-input.frequency-custom-input{padding-right:108px;display:flex;align-items:center}::ng-deep .vx-form-group .select+app-cs-switch{display:block;margin-top:8px}::ng-deep .vx-form-group .select+app-cs-switch label.cs-switch span.value{white-space:nowrap;margin-right:5px;text-transform:uppercase}::ng-deep .vx-form-group .select+app-cs-radio{margin-top:8px!important}::ng-deep .vx-form-group .select~app-cs-radio{margin-top:4px;display:block;width:100%}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item span.radio{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item span.value{font-size:11px;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0;max-width:100%;font-weight:500;color:#707070}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item span.value i{font-size:12px;color:#1e5dd3}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item svg{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}::ng-deep .vx-form-group .select.button-sec:after{display:none}::ng-deep .vx-form-group .select.button-sec button{background:transparent;border:none;display:inline-flex;float:right;color:#1e5dd3;text-transform:uppercase;font-weight:600;cursor:pointer;font-size:11px;position:absolute;top:12px;right:8px;padding:0;margin:0}::ng-deep .vx-form-group .select+.vx-control-panel{margin-top:8px}::ng-deep .vx-form-group .select+.selected{margin-top:8px}::ng-deep .vx-form-group .select.select{margin-top:8px}::ng-deep .vx-form-group .upload-format{border:1px solid #dbdbdb;border-radius:4px;padding:8px 12px;display:block}::ng-deep .vx-form-group .upload-format span.text{line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;display:block;margin-bottom:6px}::ng-deep .vx-form-group .upload-format .radio-group{display:flex}::ng-deep .vx-form-group .upload-format .radio-group app-cs-radio{display:inline-block}::ng-deep .vx-form-group .upload-format .radio-group app-cs-radio label.radio-item span.value{font-size:11px;text-transform:uppercase;margin-left:8px}::ng-deep .vx-form-group .upload-format .radio-group app-cs-radio+app-cs-radio{margin-left:12px}::ng-deep .vx-form-group .upload-format~.upload-format{margin-top:4px}::ng-deep .vx-form-group .form-tab{display:flex;justify-content:flex-start}::ng-deep .vx-form-group .form-tab button{background:transparent;color:#161b2f;font-size:11px;line-height:16px;text-transform:uppercase;cursor:pointer;padding:8px 8px 8px 0;border:none;outline:none;font-weight:500}::ng-deep .vx-form-group .form-tab button:disabled{opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group .form-tab button+button{padding:8px}::ng-deep .vx-form-group .form-tab button.active{color:#1e5dd3}::ng-deep .vx-form-group .tab-group{border:1px solid #dbdbdb;border-radius:4px;padding:0;display:block;position:relative;transition:all .2s ease-in-out}::ng-deep .vx-form-group .tab-group:hover{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group .tab-group .upload-file{padding:16px 62px 16px 24px;display:flex;align-items:center;justify-content:space-between}::ng-deep .vx-form-group .tab-group .upload-file .image{width:80px}::ng-deep .vx-form-group .tab-group .upload-file .browse span{display:inline-block;font-size:12px;color:#747576;line-height:16px;padding:0 4px}::ng-deep .vx-form-group .tab-group .upload-file .browse .label{font-size:11px;color:#1e5dd3;line-height:16px;font-weight:600;text-transform:uppercase;margin:0;padding:0}::ng-deep .vx-form-group .tab-group .upload-file .browse .label input{opacity:0;position:absolute;margin:0;padding:0;inset:0;cursor:pointer;width:100%}::ng-deep .vx-form-group .tab-group.active{border-color:#1e5dd3}::ng-deep .vx-form-group .tab-group.uploaded{margin-top:4px}::ng-deep .vx-form-group .tab-group.uploaded .upload-file{padding:8px 0!important;text-align:center}::ng-deep .vx-form-group .tab-group.uploaded .upload-file .image{display:none}::ng-deep .vx-form-group .tab-group.uploaded .upload-file .browse{width:100%;text-align:center}::ng-deep .vx-form-group .tab-group+label.vx-form-group{margin-top:8px;margin-bottom:4px}::ng-deep .vx-form-group .file-list{background:#fbfbfb;border:1px solid #f1f1f1;border-radius:4px;padding:12px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;position:relative}::ng-deep .vx-form-group .file-list span.file-name{color:#747576;line-height:16px;font-size:11px;font-weight:400;cursor:pointer;max-width:calc(100% - 20px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .vx-form-group .file-list .button-group{display:flex}::ng-deep .vx-form-group .file-list button{font-size:12px;color:#eb2424;cursor:pointer;display:flex;padding:0;border:none;outline:none;background:transparent}::ng-deep .vx-form-group .file-list button.edit{color:#1e5dd3}::ng-deep .vx-form-group .file-list button+button{margin-left:16px}::ng-deep .vx-form-group .file-list+.file-list{margin-top:4px}::ng-deep .vx-form-group .file-list .file-container{display:flex;justify-content:space-between;width:100%}::ng-deep .vx-form-group .file-list.policy{background:#ffffff}::ng-deep .vx-form-group .file-list cs-select{position:relative;margin-top:8px;width:100%}::ng-deep .vx-form-group .file-list cs-select .selection-wrap .input-group input.value{height:32px!important;font-size:13px!important}::ng-deep .vx-form-group .file-list cs-select .selection-wrap .input-group i{right:12px!important;top:12px!important}::ng-deep .vx-form-group .file-list app-line-loader{display:block;position:absolute;left:10px;right:10px;bottom:0}::ng-deep .vx-form-group label.vx-control-panel{color:#161b2f;font-size:11px;font-weight:500;line-height:16px;margin-bottom:8px;display:block;text-transform:uppercase;text-align:left}::ng-deep .vx-form-group label.vx-control-panel.custom-tag{font-size:10px}::ng-deep .vx-form-group label.vx-control-panel.vx-mt-8{margin-top:8px}::ng-deep .vx-form-group label.vx-control-panel span.required{color:#eb2424;font-size:14px;font-weight:500;position:relative;top:-2px}::ng-deep .vx-form-group label.vx-control-panel .button{background:transparent;border:none;display:inline-flex;float:right;color:#1e5dd3;text-transform:uppercase;font-weight:600;cursor:pointer;font-size:11px;padding:0;margin:0}::ng-deep .vx-form-group label.vx-control-panel app-cs-switch{float:right;display:block}::ng-deep .vx-form-group label.vx-control-panel i{margin-left:8px;font-size:12px;color:#1e5dd3;cursor:pointer;position:relative;top:1px}::ng-deep .vx-form-group label.vx-control-panel i.depreciation-icon{color:#e4b700;font-size:16px;position:relative;top:3px}::ng-deep .vx-form-group label.vx-control-panel .checkpoint-version{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:10px;font-weight:600;line-height:14px;margin-left:4px;padding:0 2px}::ng-deep .vx-form-group input[type=text],::ng-deep .vx-form-group .input{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#ffffff;outline:none;padding:8px 12px;line-height:20px;font-size:13px;color:#747576;transition:all .2s ease-in-out;width:100%;font-weight:400}::ng-deep .vx-form-group input[type=text]::placeholder,::ng-deep .vx-form-group .input::placeholder{color:#747576;font-weight:400}::ng-deep .vx-form-group input[type=text]:focus,::ng-deep .vx-form-group .input:focus,::ng-deep .vx-form-group input[type=text]:hover,::ng-deep .vx-form-group .input:hover{border-color:#1e5dd3!important;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group input[type=text].error,::ng-deep .vx-form-group .input.error{border-color:#eb2424;color:#eb2424;margin-bottom:4px}::ng-deep .vx-form-group input[type=text].error:focus,::ng-deep .vx-form-group .input.error:focus{box-shadow:0 0 5px #d31e1e45}::ng-deep .vx-form-group input[type=text]:disabled,::ng-deep .vx-form-group .input:disabled{background:#f1f1f1;cursor:not-allowed;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group input[type=text]:disabled:hover,::ng-deep .vx-form-group .input:disabled:hover{border-color:#dbdbdb;box-shadow:none}::ng-deep .vx-form-group input[type=text] span.text,::ng-deep .vx-form-group .input span.text{font-size:13px;color:#747576;font-weight:400;display:block;width:100%}::ng-deep .vx-form-group input[type=text] .input-group,::ng-deep .vx-form-group .input .input-group{display:flex;align-items:center}::ng-deep .vx-form-group input[type=text] .input-group.counter,::ng-deep .vx-form-group .input .input-group.counter{min-width:96px;width:96px}::ng-deep .vx-form-group input[type=text] .input-group.counter button,::ng-deep .vx-form-group .input .input-group.counter button{height:24px;width:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#747576;font-size:8px;cursor:pointer;outline:none}::ng-deep .vx-form-group input[type=text] .input-group.counter input,::ng-deep .vx-form-group .input .input-group.counter input{-webkit-appearance:textfield;-moz-appearance:textfield;height:24px;width:calc(100% - 48px);border:1px solid #f1f1f1;outline:none;padding:0 6px;text-align:center}::ng-deep .vx-form-group input[type=text] .input-group.counter input::-webkit-inner-spin-button,::ng-deep .vx-form-group .input .input-group.counter input::-webkit-inner-spin-button,::ng-deep .vx-form-group input[type=text] .input-group.counter input::-webkit-outer-spin-button,::ng-deep .vx-form-group .input .input-group.counter input::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}::ng-deep .vx-form-group input[type=text]+.file-list,::ng-deep .vx-form-group .input+.file-list{margin-top:8px}::ng-deep .vx-form-group input[type=text]::placeholder,::ng-deep .vx-form-group .input::placeholder{font-size:13px}::ng-deep .vx-form-group input[type=text]:-ms-input-placeholder,::ng-deep .vx-form-group .input:-ms-input-placeholder{font-size:13px}::ng-deep .vx-form-group input[type=text]::-ms-input-placeholder,::ng-deep .vx-form-group .input::-ms-input-placeholder{font-size:13px}::ng-deep .vx-form-group .classification{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#ffffff;padding:8px 12px;display:flex;justify-content:space-between}::ng-deep .vx-form-group .classification label{margin:0 4px 0 0;width:100%;position:relative;z-index:1}::ng-deep .vx-form-group .classification label span{display:block;width:100%;height:24px;border:1px solid #f1f1f1;border-radius:2px;line-height:24px;font-size:10px;text-align:center;color:#747576;font-weight:500;position:relative;text-transform:uppercase}::ng-deep .vx-form-group .classification label span:before{height:2px;content:\"\";top:0;right:0;left:0;border-radius:2px;position:absolute;transition:all .2s ease-in-out}::ng-deep .vx-form-group .classification label input{opacity:0;position:absolute;inset:0;margin:0;padding:0;width:100%;height:100%;cursor:pointer;z-index:1}::ng-deep .vx-form-group .classification label input:checked+span{color:#fff}::ng-deep .vx-form-group .classification label input:checked+span:before{bottom:0;height:100%;z-index:-1}::ng-deep .vx-form-group .classification label.low span:before{background:#34aa44}::ng-deep .vx-form-group .classification label.low-med span:before{background:#f2bf19}::ng-deep .vx-form-group .classification label.med-high span:before{background:#f29619}::ng-deep .vx-form-group .classification label.high span:before{background:#eb2424}::ng-deep .vx-form-group .classification label:last-of-type{margin-right:0}::ng-deep .vx-form-group .input{display:flex;align-items:center}::ng-deep .vx-form-group .selected{height:40px;border-radius:4px;border:1px solid #f1f1f1;background:#fbfbfb;outline:none;padding:8px;line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;display:flex;align-items:center;position:relative;justify-content:space-between}::ng-deep .vx-form-group .selected.first-field{z-index:2}::ng-deep .vx-form-group .selected .chip-container{display:flex;width:calc(100% - 60px);align-items:center}::ng-deep .vx-form-group .selected .chip-container.checkpoints{width:calc(100% - 120px)}::ng-deep .vx-form-group .selected .chip-container span.chip{background:#ffffff;border-radius:2px;box-shadow:0 0 3px #1e5dd31a;height:24px;padding:0 8px;color:#1e5dd3;font-size:12px;display:block;width:auto;max-width:100%;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:24px}::ng-deep .vx-form-group .selected .chip-container span.chip.disabled{background:#f1f1f1;box-shadow:none;color:#747576;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group .selected .chip-container span.chip i{font-weight:400;margin-right:8px;cursor:pointer;font-size:10px;position:relative;top:1px}::ng-deep .vx-form-group .selected .chip-container span.chip span.step{background:#1e5dd3;border-radius:2px;color:#fff;font-size:9px;line-height:14px;padding:0 4px;font-weight:400;text-align:center;min-width:auto;margin-right:4px}::ng-deep .vx-form-group .selected .chip-container span.chip+span.chip{margin-left:4px}::ng-deep .vx-form-group .selected .chip-container span.chip.with-question{display:flex;align-items:center;justify-content:space-between;width:100%}::ng-deep .vx-form-group .selected .chip-container span.chip.with-question span.value{color:#1e5dd3;font-size:12px;font-weight:400;line-height:24px;padding:0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;max-width:calc(100% - 80px)}::ng-deep .vx-form-group .selected .chip-container span.chip.with-question span.label{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding-left:4px;padding-right:4px;line-height:12px;margin-left:8px}::ng-deep .vx-form-group .selected .chip-container span.value{color:#747576;font-size:13px;line-height:20px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 52px);padding:0 4px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text{color:#747576;font-size:10px;font-weight:500;padding:0 8px;width:122px;line-height:14px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text.first{position:relative;min-width:162px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text.first:before{background:#f1f1f1;content:\"\";position:absolute;top:0;right:0;height:calc(100% + 12px);width:1px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text .no{color:#1e5dd3}::ng-deep .vx-form-group .selected .chip-container.plus span.chip{max-width:calc(50% - 35px)}::ng-deep .vx-form-group .selected .chip-container.more-one span.chip{max-width:50%}::ng-deep .vx-form-group .selected .chip-container .chip-inner{background:#fff;border-radius:2px;box-shadow:0 2px 4px #1e5dd31a;line-height:24px;padding:0 4px 0 8px;display:flex;align-items:center}::ng-deep .vx-form-group .selected .chip-container .chip-inner .chip{background:transparent;border-radius:0;box-shadow:none;height:auto;line-height:unset;padding:0;color:#747576;max-width:100px}::ng-deep .vx-form-group .selected .chip-container .chip-inner button.count{border-radius:20px;height:16px;padding:0 6px;border:none;font-size:9px;line-height:16px;margin-left:4px;min-width:20px}::ng-deep .vx-form-group .selected .chip-container .chip-inner button.count.user{background:#34aa44}::ng-deep .vx-form-group .selected .chip-container .chip-inner i.cross{cursor:pointer;position:relative;top:1px;font-size:8px}::ng-deep .vx-form-group .selected button.count{background:#1e5dd3;border-radius:2px;height:24px;padding:0 8px;border:1px solid #1e5dd3;cursor:pointer;outline:none;color:#fff;font:13px;font-weight:500;line-height:20px;white-space:nowrap;margin-left:8px}::ng-deep .vx-form-group .selected button.edit{border:none;border-radius:0;background:transparent;outline:none;cursor:pointer;display:block;font-size:11px;font-weight:600;color:#1e5dd3;text-transform:uppercase;white-space:nowrap;margin-left:8px}::ng-deep .vx-form-group .selected button.edit i{font-weight:400;font-size:8px;margin-right:4px}::ng-deep .vx-form-group .selected button.close-btn{background:transparent;border:none;padding:0;margin-left:8px;font-size:10px;color:#c7381b;display:flex;align-items:center}::ng-deep .vx-form-group .selected .workflow-label{min-width:92px;padding:4px;text-align:center;margin-left:-8px;margin-right:8px;border-right:1px solid #f1f1f1}::ng-deep .vx-form-group .selected .workflow-label p{margin:0;display:block;text-transform:uppercase}::ng-deep .vx-form-group .selected .workflow-label p.title{font-size:9px;line-height:12px;color:#161b2f;font-weight:500}::ng-deep .vx-form-group .selected .workflow-label p.description{font-size:11px;line-height:16px;color:#161b2f;font-weight:600}::ng-deep .vx-form-group .selected .workflow-label+.chip-container{width:calc(100% - 148px)}::ng-deep .vx-form-group .selected+.selected{margin-top:8px}::ng-deep .vx-form-group .selected+app-cs-switch{display:block;margin-top:8px}::ng-deep .vx-form-group .selected+app-cs-switch label.cs-switch span.value{white-space:nowrap;margin-right:5px;text-transform:uppercase}::ng-deep .vx-form-group .selected+app-cs-switch.who-toggle label.cs-switch span.value{color:#747576}::ng-deep .vx-form-group .selected+app-cs-radio{margin-top:8px!important}::ng-deep .vx-form-group .selected~app-cs-radio{margin-top:4px;display:block;width:100%}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item span.radio{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item span.value{font-size:11px;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0;max-width:100%;font-weight:500;color:#707070}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item span.value i{font-size:12px;color:#1e5dd3}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item svg{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}::ng-deep .vx-form-group .selected.readOnly{pointer-events:none}::ng-deep .vx-form-group .selected span.chip{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::ng-deep .vx-form-group .select-list{position:absolute;background:#ffffff;box-shadow:0 0 5px #1e5dd345;top:100%;right:0;left:0;z-index:2}::ng-deep .vx-form-group .select-list .vx-radio-group label.vx-radio-item{width:100%;padding:12px 16px}::ng-deep .vx-form-group .select-list .vx-radio-group label.vx-radio-item:hover{background:#f8f8f8}::ng-deep .vx-form-group vcomply-editor{margin-top:8px;display:block}::ng-deep .vx-form-group vcomply-editor .editor-container{border-radius:4px;border:1px solid #dbdbdb}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block{min-height:60px;padding:11px 15px;max-height:100px;line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block ul{padding:0 0 0 10px;margin-top:0}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block ul li{list-style:disc}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block ol{padding:0 0 0 10px;margin-top:0}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block ol li{list-style:decimal}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools{z-index:1;border-top:1px solid #dbdbdb;transition:none;border-radius:0 0 3px 3px;position:static}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button{height:22px!important;width:22px!important;padding:0 5px}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button svg{height:22px;width:12px}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button.submit{width:80px!important;line-height:22px;justify-content:center}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col .popover.small ul.option-list li button{width:100%!important;height:auto!important}::ng-deep .vx-form-group vcomply-editor .editor-container:focus-within{border-color:#1e5dd3!important;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group vcomply-editor .editor-container:focus-within .editor-tools{border-color:#1e5dd3!important}::ng-deep .vx-form-group vcomply-editor .editor-container:hover{border-color:#1e5dd3!important;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group vcomply-editor .editor-container:hover .editor-tools{border-color:#1e5dd3!important}::ng-deep .vx-form-group vcomply-editor+app-cs-switch{margin-top:8px}::ng-deep .vx-form-group app-cs-switch label.cs-switch span.value{font-size:11px;color:#747576;text-transform:uppercase}::ng-deep .vx-form-group app-cs-switch+app-cs-switch{margin-top:8px}::ng-deep .vx-form-group .date-time-picker{display:flex;justify-content:space-between;height:40px;border-radius:4px;border:1px solid #dbdbdb;padding:11px 0;background:#ffffff}::ng-deep .vx-form-group .date-time-picker:focus-within{border-color:#1e5dd3;box-shadow:0 0 5px #1e5dd345}::ng-deep .vx-form-group .date-time-picker .picker-group{width:50%;position:relative;display:flex;align-items:center}::ng-deep .vx-form-group .date-time-picker .picker-group:first-of-type{border-right:1px solid #dbdbdb}::ng-deep .vx-form-group .date-time-picker .picker-group:only-of-type{border:none;width:100%}::ng-deep .vx-form-group .date-time-picker .picker-group input{height:38px;background:transparent;line-height:38px;font-size:13px;color:#747576;transition:all .2s ease-in-out;width:100%;font-weight:400;border:none;padding:0 12px 0 34px;outline:none}::ng-deep .vx-form-group .date-time-picker .picker-group input:focus,::ng-deep .vx-form-group .date-time-picker .picker-group input:hover{box-shadow:none;border:none}::ng-deep .vx-form-group .date-time-picker .picker-group input::placeholder{color:#999;font-size:13px}::ng-deep .vx-form-group .date-time-picker .picker-group input:-ms-input-placeholder{color:#999;font-size:13px}::ng-deep .vx-form-group .date-time-picker .picker-group input::-ms-input-placeholder{color:#999;font-size:13px}::ng-deep .vx-form-group .date-time-picker .picker-group i{display:flex;justify-content:center;align-items:center;height:16px;width:12px;position:absolute;left:12px;top:0;color:#747576;font-size:12px;pointer-events:none}::ng-deep .vx-form-group app-cs-radio.main-filed{margin-top:4px;display:block;width:100%}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item{width:100%;position:relative}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item span.radio{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item span.value{font-size:11px;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0;max-width:100%;color:#707070}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item span.value i{font-size:12px;color:#1e5dd3}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item svg{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}::ng-deep .vx-form-group app-cs-radio.disabled{pointer-events:none;opacity:.5;filter:grayscale(1);background:#f1f1f1}::ng-deep .vx-form-group .switch-row{display:flex}::ng-deep .vx-form-group .switch-row app-cs-switch{display:block;margin-top:8px}::ng-deep .vx-form-group .switch-row app-cs-switch label.cs-switch span.value{white-space:nowrap;margin-right:0;text-transform:uppercase;color:#747576!important}::ng-deep .vx-form-group .switch-row app-cs-switch label.cs-switch span.value i{display:inline-flex;font-size:11px;cursor:pointer;color:#1e5dd3;align-items:center;line-height:16px;margin:0 4px}::ng-deep .vx-form-group .switch-row app-cs-switch+app-cs-switch{margin-left:8px}::ng-deep .vx-form-group .switch-row.align-right{justify-content:flex-end}::ng-deep .vx-form-group .switch-row.align-right label.cs-switch span.value{margin-right:8px}::ng-deep .vx-form-group .risk-type-field{background:#f8f8f8;border:1px solid #dbdbdb;border-radius:4px;height:40px;display:flex;align-items:center;padding:4px;position:relative;z-index:1}::ng-deep .vx-form-group .risk-type-field .type-item{width:50%;position:relative}::ng-deep .vx-form-group .risk-type-field .type-item button{background:transparent;border:none;border-radius:0;color:#747576;font-size:11px;font-weight:600;text-transform:uppercase;width:100%;height:32px;padding:0 12px;text-align:left}::ng-deep .vx-form-group .risk-type-field .type-item button.disabled{background:transparent!important;color:#dbdbdb!important;filter:unset!important;opacity:unset!important;pointer-events:none;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group .risk-type-field .type-item .info{color:#1e5dd3;font-size:12px;position:absolute;top:10px;right:12px;cursor:pointer}::ng-deep .vx-form-group .risk-type-field .type-item.active button{color:#1e5dd3!important}::ng-deep .vx-form-group .risk-type-field .type-item:nth-child(2).active~.background-glider{transform:translate(100%)}::ng-deep .vx-form-group .risk-type-field .background-glider{background:#fff;border-radius:4px;box-shadow:0 1px 3px #161b2f26;position:absolute;display:flex;width:208px;height:32px;z-index:-1;transition:.25s ease-out}.left{width:36px;height:36px;margin-top:26px;margin-left:-58px;margin-right:20px;display:flex;justify-content:center;align-items:center;position:relative;z-index:10;border-radius:50%}.left.deadline-completed{margin-top:18px}.left.checked{background:transparent}.left img{width:36px}.left .checkIcon{width:32px;height:32px;background:#ffffff;border-radius:50%;stroke-width:4;stroke:#34aa44;stroke-miterlimit:10;box-shadow:inset 0 0 #34aa44;animation:fillCheck .4s ease-in-out .4s forwards,scale .3s ease-in-out .9s both;margin-top:0}.left .checkIcon__circle{stroke-dasharray:166;stroke-dashoffset:166;stroke-width:2;stroke-miterlimit:10;stroke:#34aa44;fill:none;animation:strokeCheck .6s cubic-bezier(.65,0,.45,1) forwards}.left .checkIcon__check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;animation:strokeCheck .3s cubic-bezier(.65,0,.45,1) .8s forwards}.right{width:100%}.right span.indicator{position:absolute;top:36px;left:-16px;font-size:12px;color:#f0b819;cursor:pointer}.form-group-row{display:flex;position:relative;transition:all .2s ease-in-out}.form-group-row.disabled{-webkit-user-select:none;user-select:none;pointer-events:none;filter:grayscale(1);z-index:2}.form-group-row.disabled .left{position:relative}.form-group-row.disabled .left:before{content:\"\";position:absolute;inset:2px 0 0 2px;background:#ffffff;opacity:.7;border-radius:50%;width:32px;height:32px}.form-group-row.disabled .right{opacity:.3}.form-group-row.active{pointer-events:none;filter:grayscale(0);z-index:2;opacity:1}.form-group-row.active .right .vx-form-group input,.form-group-row.active .right .vx-form-group .custom-input,.form-group-row.active .right .vx-form-group .selectBoxEnable{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}.form-group-row.active .right .vx-form-group .selectBoxEnable.disabled{border-color:#dbdbdb;box-shadow:none}::ng-deep .radio-group-selector app-cs-radio{margin-top:4px;display:block;width:100%}::ng-deep .radio-group-selector app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .radio-group-selector app-cs-radio label.radio-item .radio,::ng-deep .radio-group-selector app-cs-radio label.radio-item .radiomark{position:absolute!important;top:9px;left:12px}::ng-deep .radio-group-selector app-cs-radio label.radio-item .value{font-size:11px!important;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0!important;max-width:100%!important;font-weight:500!important;color:#707070!important}::ng-deep .radio-group-selector app-cs-radio label.radio-item .value i{font-size:12px;color:#1e5dd3}::ng-deep .radio-group-selector app-cs-radio label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}@keyframes strokeCheck{to{stroke-dashoffset:0}}@keyframes fillCheck{to{box-shadow:inset 0 0 0 2px #34aa44}}::ng-deep .wf-action-list{width:220px}::ng-deep .wf-action-list ul{padding:0;margin:0;animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both;background:#ffffff;box-shadow:0 3px 6px #1c5bd140;border-radius:4px;max-height:220px;overflow:auto}::ng-deep .wf-action-list ul.action-item{display:block}::ng-deep .wf-action-list ul.action-item li{list-style:none;border:none;border-bottom:1px solid #f1f1f1;display:block;width:100%;padding:0;background:transparent;border-radius:0;margin:0;height:auto;justify-content:flex-start;box-shadow:none}::ng-deep .wf-action-list ul.action-item li button{color:#6e717e;text-align:left;text-decoration:none;cursor:pointer;background:transparent;font-size:12px;text-transform:capitalize;display:flex;width:100%;padding:7.5px 11px;border:none}::ng-deep .wf-action-list ul.action-item li button i{font-size:16px;margin-right:10px;color:#1e5dd3}::ng-deep .wf-action-list ul.action-item li button:hover{background:#f3f3f3}::ng-deep .wf-action-list ul.action-item li .avatar-card{display:flex;align-items:center;width:100%;padding:7.5px}::ng-deep .wf-action-list ul.action-item li .avatar-card.within-con{display:block}::ng-deep .wf-action-list ul.action-item li .avatar-card .avatar{height:24px;width:24px!important;overflow:hidden;background:#1e5dd3;color:#fff;font-size:10px;display:inline-flex;margin-right:5px;border-radius:50%;align-items:center;justify-content:center;text-transform:uppercase}::ng-deep .wf-action-list ul.action-item li .avatar-card .avatar img{width:100%}::ng-deep .wf-action-list ul.action-item li .avatar-card .avatar+span.value{width:calc(100% - 29px)}::ng-deep .wf-action-list ul.action-item li .avatar-card span.value{width:100%;color:#6e717e;text-decoration:none;background:transparent;font-size:12px;text-transform:capitalize;display:block;font-weight:400;text-align-last:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:20px}::ng-deep .wf-action-list ul.action-item li .avatar-card span.value i{font-size:8px;color:#747576;cursor:pointer;margin-right:5px}::ng-deep .wf-action-list ul.action-item li .avatar-card.no-image{display:block}::ng-deep .wf-action-list ul.action-item li .avatar-card.no-image span.value{width:100%;display:block}::ng-deep .wf-action-list ul.action-item li .chip-item{color:#1e5dd3;padding:10px;display:flex;align-items:center}::ng-deep .wf-action-list ul.action-item li .chip-item i{color:#747576;margin-right:7px;font-size:10px;cursor:pointer;display:inline-flex}::ng-deep .wf-action-list ul.action-item li .chip-item span{display:block;width:auto;max-width:calc(100% - 17px);font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .wf-action-list ul.action-item li .chip-item span.chip-block{display:block;width:100%}::ng-deep .wf-action-list ul.action-item li .chip-item span.id{font-size:9px}::ng-deep .wf-action-list ul.action-item li .within{display:flex;align-items:center;justify-content:flex-start}::ng-deep .wf-action-list ul.action-item li .within .block{background:#f1f1f1;border-radius:2px;padding:0 2px;line-height:14px;font-size:9px;font-weight:500;color:#042e7d;margin-right:6px;display:block;text-transform:uppercase}::ng-deep .wf-action-list ul.action-item li .within .data{width:100%;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#747576;font-size:11px;font-weight:400;line-height:17px}::ng-deep .wf-action-list ul.action-item li:first-child{animation:action-list-open .25s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(2){animation:action-list-open .35s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(3){animation:action-list-open .45s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(4){animation:action-list-open .55s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(5){animation:action-list-open .65s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(6){animation:action-list-open .75s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(7){animation:action-list-open .85s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(8){animation:action-list-open .95s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(9){animation:action-list-open 1.05s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(10){animation:action-list-open 1.15s cubic-bezier(.25,.46,.45,.94) both}@keyframes action-list-open{0%{transform:translateY(50px)}to{transform:translateY(0)}}@keyframes scale-up-center{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}p.error-message{font-size:11px;font-weight:400;color:#eb2424;line-height:16px;margin-top:8px;margin-bottom:0}.edit-loader{position:absolute;top:-3px;left:-3px;width:46px;height:46px;transform:rotate(180deg)}.circular-loader{animation:rotate 2s linear infinite;height:100%;transform-origin:center center;width:100%;position:absolute;top:0;left:0;margin:auto}.loader-path{stroke-dasharray:150,200;stroke-dashoffset:-10;animation:dash 1.5s ease-in-out infinite;stroke-linecap:round}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35}to{stroke-dasharray:89,200;stroke-dashoffset:-124}}::ng-deep .dropdown{position:fixed;background:#ffffff;box-shadow:0 3px 6px #00000029;padding:24px 0;z-index:9;max-height:calc(100vh - 200px);overflow:auto}::ng-deep .dropdown ul.dropdown-list{padding:0 20px;margin:0;display:block}::ng-deep .dropdown ul.dropdown-list li{list-style:none}::ng-deep .dropdown ul.dropdown-list li app-cs-radio{display:flex}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item span.radio{position:absolute;top:12px;left:12px}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item span.value{padding:11px 12px 11px 32px;width:100%;border:1px solid #bcbcbc;border-radius:4px;margin-left:0;max-width:100%}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item svg{position:absolute;top:12px;left:12px}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item input[type=radio]:checked~span.value{background:#e8feeb;border-color:#34aa44}::ng-deep .dropdown ul.dropdown-list li+li{margin-top:8px}app-smiley-dialog{position:relative;z-index:10}app-smiley-dialog-inline{position:absolute;top:-3px;right:0;bottom:0;z-index:999;width:520px;height:calc(100vh + 3px)}::ng-deep .vx-overlay{position:fixed;z-index:3;inset:0}dp-date-picker{width:100%;position:fixed!important;z-index:14;top:-40px;left:0}dp-date-picker input{width:100%;border:none;opacity:0;pointer-events:none}dp-date-picker input:focus{outline:none}dp-date-picker .dp-popup{width:412px;box-shadow:0 0 20px #161b2f26;background-color:#fff;border-radius:4px;animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both}dp-date-picker .dp-popup dp-day-calendar,dp-date-picker .dp-popup dp-month-calendar{width:100%;pointer-events:auto}dp-date-picker .dp-popup dp-day-calendar button,dp-date-picker .dp-popup dp-month-calendar button{background:transparent;border:none;outline:none}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-left,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right{width:40px;height:40px;display:flex;justify-content:center;align-items:center;border-radius:50%;font-size:14px}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn:hover,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-left:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left:hover,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right:hover{background-color:#f3f3f3}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn{display:none}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn:before,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn:before{content:\"\";height:10px;width:10px;border-radius:50%;background:#000000;display:inline-flex}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week{display:flex;justify-content:space-around}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays .dp-calendar-weekday,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays .dp-calendar-weekday,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week .dp-calendar-weekday,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week .dp-calendar-weekday{width:52px;border-left:none;border-bottom-color:#fff;color:#747576;font-size:11px;font-weight:600;text-transform:uppercase}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button{width:40px;height:40px;border-radius:50%;display:inline-flex;justify-content:center;align-items:center}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button:hover,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button:hover,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button:hover,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button:hover{background-color:#f3f3f3}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-selected,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button.dp-selected,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-selected,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-selected{background:#1e5dd3}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-current-day,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button.dp-current-day,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-current-day,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-current-day{border:1px solid rgba(0,0,0,.38);color:#1e5dd3;background-color:#fff}dp-date-picker .dp-popup dp-day-calendar .dp-day-calendar-container,dp-date-picker .dp-popup dp-month-calendar .dp-day-calendar-container{padding:20px;border-radius:2px}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-nav-container,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-nav-container{display:flex;margin:0 0 20px;border:none}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-nav-container .dp-nav-header button,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-nav-container .dp-nav-header button{color:#000;font-size:17px;font-weight:500;margin:0 0 0 12px;padding:0}dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container,dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container{width:80px;display:flex}dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container .dp-calendar-nav-container-left button,dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container .dp-calendar-nav-container-left button,dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container .dp-calendar-nav-container-right button,dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container .dp-calendar-nav-container-right button{margin:0!important}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-wrapper,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-wrapper{border:none}dp-date-picker .dp-open+div{position:fixed!important;inset:0!important;display:flex;justify-content:center;align-items:center;z-index:99;pointer-events:none;background:rgba(0,0,0,.3)}@keyframes slide-bottom{0%{transform:translateY(-100px)}to{transform:translateY(0)}}::ng-deep span.file{display:block;width:20px;min-width:20px;border-radius:0 0 2px 2px;border:1px solid transparent;border-color:#747576;position:relative;margin-right:5px;border-top:none;margin-top:5px;background:#ffffff}::ng-deep span.file.table{margin-right:8px;width:18px;min-width:18px}::ng-deep span.file.table i{font-size:8px}::ng-deep span.file.table .format{height:8px;font-size:7px;line-height:8px;font-weight:400}::ng-deep span.file:before{position:absolute;border-radius:0;top:-4px;right:-1px;content:\"\";height:4px;width:4px;display:block;background:linear-gradient(45deg,#747576 0%,#747576 1%,#747576 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file:after{height:4px;left:-1px;right:3px;border-top:1px solid;border-right:none;border-left:1px solid;content:\"\";top:-4px;position:absolute;border-radius:2px 0 0;background:#ffffff}::ng-deep span.file .format{height:10px;font-size:6px;text-transform:uppercase;background:transparent;font-weight:600;text-align:center;display:block;line-height:10px}::ng-deep span.file i{font-size:10px;height:10px;display:flex;align-items:center;justify-content:center;color:#dbdbdb}::ng-deep span.file.docx{width:22px!important}::ng-deep span.file.pdf,::ng-deep span.file.template{border-color:#f31c39}::ng-deep span.file.pdf:before,::ng-deep span.file.template:before{background:linear-gradient(45deg,#f31c39 0%,#f31c39 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#f31c39\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.pdf:after,::ng-deep span.file.template:after{border-color:#f31c39}::ng-deep span.file.pdf .format,::ng-deep span.file.template .format{color:#f31c39}::ng-deep span.file.xlsx,::ng-deep span.file.xls,::ng-deep span.file.css,::ng-deep span.file.scss,::ng-deep span.file.less{border-color:#34aa44}::ng-deep span.file.xlsx:before,::ng-deep span.file.xls:before,::ng-deep span.file.css:before,::ng-deep span.file.scss:before,::ng-deep span.file.less:before{background:linear-gradient(45deg,#34aa44 0%,#34aa44 1%,#34aa44 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.xlsx:after,::ng-deep span.file.xls:after,::ng-deep span.file.css:after,::ng-deep span.file.scss:after,::ng-deep span.file.less:after{border-color:#34aa44;color:#34aa44}::ng-deep span.file.xlsx .format,::ng-deep span.file.xls .format,::ng-deep span.file.css .format,::ng-deep span.file.scss .format,::ng-deep span.file.less .format{color:#34aa44}::ng-deep span.file.doc,::ng-deep span.file.docx,::ng-deep span.file.psd{border-color:#1e5dd3}::ng-deep span.file.doc:before,::ng-deep span.file.docx:before,::ng-deep span.file.psd:before{background:linear-gradient(45deg,#1e5dd3 0%,#1e5dd3 1%,#1e5dd3 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.doc:after,::ng-deep span.file.docx:after,::ng-deep span.file.psd:after{border-color:#1e5dd3}::ng-deep span.file.doc .format,::ng-deep span.file.docx .format,::ng-deep span.file.psd .format{color:#1e5dd3}::ng-deep span.file.ppt,::ng-deep span.file.ai,::ng-deep span.file.html,::ng-deep span.file.jpg,::ng-deep span.file.jpeg,::ng-deep span.file.png{border-color:#f6882f}::ng-deep span.file.ppt:before,::ng-deep span.file.ai:before,::ng-deep span.file.html:before,::ng-deep span.file.jpg:before,::ng-deep span.file.jpeg:before,::ng-deep span.file.png:before{background:linear-gradient(45deg,#f6882f 0%,#f6882f 1%,#f6882f 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.ppt:after,::ng-deep span.file.ai:after,::ng-deep span.file.html:after,::ng-deep span.file.jpg:after,::ng-deep span.file.jpeg:after,::ng-deep span.file.png:after{border-color:#f6882f}::ng-deep span.file.ppt .format,::ng-deep span.file.ai .format,::ng-deep span.file.html .format,::ng-deep span.file.jpg .format,::ng-deep span.file.jpeg .format,::ng-deep span.file.png .format{color:#f6882f}::ng-deep span.file.php{border-color:#7aa6f7}::ng-deep span.file.php:before{background:linear-gradient(45deg,#7aa6f7 0%,#7aa6f7 1%,#7aa6f7 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.php:after{border-color:#7aa6f7}::ng-deep span.file.php .format{color:#7aa6f7}::ng-deep ngx-material-timepicker-container .timepicker-backdrop-overlay{background-color:#0000000d!important;z-index:9999999999!important}::ng-deep ngx-material-timepicker-container .timepicker-overlay{z-index:9999999999!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker{width:232px!important;border-radius:2px!important;box-shadow:0 4px 30px #161b2f26!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header{background-color:#fff!important;padding:0!important;border-radius:2px 2px 0 0}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container{display:block!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time{color:#000!important;width:150px!important;margin:0 auto;line-height:60px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control .timepicker-dial__control{font-size:40px;background-color:transparent!important;color:#000!important;font-weight:600;text-align:right;caret-color:transparent;outline:none;font-family:Poppins;line-height:56px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control .timepicker-dial__control:focus,::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control .timepicker-dial__control:hover{background-color:transparent!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control:last-of-type .timepicker-dial__control{text-align:left}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time span{padding:0 8px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period{display:flex!important;width:182px;margin:0 auto!important;background:#f1f1f1;padding:4px 10px;border-radius:20px;position:relative}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period:before{background:#f1f1f1;content:\"\";position:absolute;top:15px;left:-25px;width:calc(100% + 50px);height:2px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period{flex-direction:unset!important;position:relative;z-index:1}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period:after{content:\"\";position:absolute;right:-12px;top:0;border-left:solid 14px #f1f1f1;border-bottom:solid 12px transparent;border-top:solid 12px transparent;z-index:-1}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period:before{content:\"\";position:absolute;left:-18px;top:0;border-right:solid 14px #f1f1f1;border-bottom:solid 12px transparent;border-top:solid 12px transparent;z-index:-1}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period button{font-size:11px;background-color:transparent;padding:0;border-radius:20px;color:#747576;font-weight:600;font-family:Poppins;width:84px;height:24px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period button.timepicker-dial__item_active{background:#fff!important;color:#1e5dd3!important;box-shadow:0 1px 2px #dbdbdb}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period button+button{margin-left:0!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face{width:200px!important;height:200px!important;padding:10px!important;background:transparent!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number--outer{height:92px!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number--outer span{color:#000}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number--outer span.active{color:#fff}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__clock-hand{height:80px!important;top:calc(50% - 80px)!important;background-color:#1e5dd3!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number>span.active{background-color:#1e5dd3!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__clock-hand_minute:before{border:4px solid #1e5dd3!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions{display:flex!important;padding:10px 0 0!important;background:#fff!important;justify-content:space-around!important;border-radius:0 0 2px 2px!important;overflow:hidden}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions div:first-child ngx-material-timepicker-button button.timepicker-button{background:#f8f8f8;color:#1e5dd3}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions div ngx-material-timepicker-button button.timepicker-button{line-height:28px!important;width:100%;background:#1e5dd3;color:#fff;border-radius:0!important;height:32px!important;width:116px!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions div ngx-material-timepicker-button button.timepicker-button span{font-weight:500!important;font-size:11px;font-family:Poppins}::ng-deep marx-editor,::ng-deep vcomply-editor{display:block}::ng-deep marx-editor .editor-container,::ng-deep vcomply-editor .editor-container{border-radius:4px;border:1px solid #dbdbdb;transition:all .2s ease-in-out}::ng-deep marx-editor .editor-container:hover,::ng-deep vcomply-editor .editor-container:hover,::ng-deep marx-editor .editor-container:focus-within,::ng-deep vcomply-editor .editor-container:focus-within{border:1px solid #1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep marx-editor .editor-container mention-list ul li a,::ng-deep vcomply-editor .editor-container mention-list ul li a{font-size:16px!important}::ng-deep marx-editor .editor-container .editable-block,::ng-deep vcomply-editor .editor-container .editable-block{background:#fff;min-height:60px;padding:8px 12px;line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%}::ng-deep marx-editor .editor-container .editable-block:before,::ng-deep vcomply-editor .editor-container .editable-block:before{color:#747576!important}::ng-deep marx-editor .editor-container .editor-tools,::ng-deep vcomply-editor .editor-container .editor-tools{border-top:1px solid #dbdbdb;border-radius:0 0 3px 3px}::ng-deep marx-editor .editor-container .editor-tools:hover,::ng-deep vcomply-editor .editor-container .editor-tools:hover{border-color:#1e5dd3}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button,::ng-deep vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button{height:22px!important;width:22px!important;padding:0 5px}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button svg,::ng-deep vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button svg{height:22px;width:12px}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button.submit,::ng-deep vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button.submit{width:80px!important;line-height:22px;justify-content:center}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col .popover.small ul.option-list li button,::ng-deep vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col .popover.small ul.option-list li button{width:100%!important;height:auto!important}::ng-deep marx-modal .popup-modal-background,::ng-deep vcomply-modal .popup-modal-background{background-color:#161b2fcc!important}::ng-deep .within-box{background:#f1f1f1;border-radius:.125rem;color:#042e7d}::ng-deep .within-value{overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;word-break:break-word}\n"], 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: "directive", type: i4.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i4.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i5.CsRadioComponent, selector: "app-cs-radio", inputs: ["disabled", "readonly", "name", "checked", "value", "oneLine"], outputs: ["checkedEvent"] }, { kind: "directive", type: i6.ToolTipDirective, selector: "[appTooltip]", inputs: ["appTooltip", "placement", "type", "tooltipMandatory", "showTooltip", "animate"] }, { kind: "component", type: i7.SnackBarComponent, selector: "app-snack-bar" }, { kind: "component", type: i8.GrcObjectContainerComponent, selector: "lib-grc-object-container", outputs: ["populateOption"] }, { kind: "component", type: i9.WorkflowRiskComponent, selector: "app-workflow-risk", inputs: ["feature", "mode", "riskId", "defaultRiskType", "moveToRegisterMode", "secondaryOpenPortal", "openedFrom"], outputs: ["showConfirmationAlert", "pickerChanged", "populateOption", "closeWorkflow", "disconnectRefresh", "refreshForm", "hideElementsFromMoreOptions"] }, { kind: "component", type: i10.WorkflowComplianceComponent, selector: "app-workflow-compliance", inputs: ["mode", "responsibilityId", "frameworkDetails", "isEntrust", "feature", "closeOnEsc", "orgDetails", "openedFrom", "selectedRC", "selectedProgram"], outputs: ["pickerChanged", "populateOption", "hideElementsFromMoreOptions", "closeWorkflow", "resetForm", "disconnectRefresh", "checkpointCountUpdated", "rcSelected", "onRemovingCheckpoint", "isAssessmentDisabled", "assigneeTypeChange", "onReviewerTypeChange"] }, { kind: "component", type: i11.WorkflowPolicyComponent, selector: "app-workflow-policy", inputs: ["mode", "policyId", "feature", "convertFileData", "selectedCategory"], outputs: ["pickerChanged", "showConfirmationAlert", "populateOption", "disconnectRefresh", "shiftToEditMode"] }, { kind: "component", type: i12.MoreOptionComponent, selector: "app-more-option", inputs: ["currentWorkflow", "openedFrom", "isEditMode", "isRCSelected", "isProgramSelected", "allowedFeature", "orgDetailsData"], outputs: ["selectedOption"] }, { kind: "component", type: i13.AddMultipleRiskComponent, selector: "app-add-multiple-risk", outputs: ["pickerChanged", "populateOption", "closeWorkflow", "disconnectRefresh"] }, { kind: "component", type: i14.ConfirmationAlertComponent, selector: "app-confirmation-alert", inputs: ["message", "config"], outputs: ["action"] }, { kind: "component", type: i15.WorkflowSurveyFormComponent, selector: "app-workflow-survey-form" }, { kind: "component", type: i16.LogAnIssueComponent, selector: "app-log-an-issue", inputs: ["openedFrom", "issueId", "reponsibilityData", "issueDetails", "mode", "config", "responsibilitiesData"], outputs: ["pickerChanged", "populateOption", "closeWorkflow", "modeChange", "disconnectRefresh"] }, { kind: "component", type: i17.WorkflowAssessmentComponent, selector: "app-workflow-assessment", inputs: ["mode", "assessmentId", "openedFrom"], outputs: ["disconnectRefresh", "pickerChanged", "closeWorkflow"] }, { kind: "component", type: i18.ImportAnAssessmentComponent, selector: "app-import-an-assessment", outputs: ["closeWorkflow", "disconnectRefresh"] }, { kind: "component", type: i19.WorkflowProgramComponent, selector: "app-workflow-program", inputs: ["canFrameworkChange", "mode", "programId", "programType", "allowedFeature", "addToProgramDetails", "orgDetails"], outputs: ["pickerChanged", "populateOption", "closeWorkflow", "showConfirmationAlert", "disconnectRefresh", "refreshForm", "hideElementsFromMoreOptions", "onRemovingRole", "disableElementsFromMoreOptions"] }, { kind: "component", type: i20.AddMultipleResponsibilityContainerComponent, selector: "lib-add-multiple-responsibility-container", inputs: ["feature", "orgDetails"], outputs: ["closeWorkflow"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] });
|
|
500
500
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: WorkflowEngineContainerComponent, decorators: [{
|
|
501
501
|
type: Component,
|
|
502
|
-
args: [{ selector: 'app-vcomply-workflow-engine-container', template: "<app-snack-bar></app-snack-bar>\r\n<div class=\"workflow-engine-overlay\"></div>\r\n<div\r\n class=\"workflow-engine\"\r\n [class.animate]=\"animation\"\r\n [class.bg]=\"\r\n (!isWorkflowSelectorEnabled || riskBulkUpload?.showCategoryList) &&\r\n !policy?.showCreateDocuments\r\n \"\r\n>\r\n <div\r\n class=\"workflow-engine-container\"\r\n [ngSwitch]=\"currentWorkflow?.code\"\r\n [class.with-preview-assessment]=\"(auth?.previewPanel | async) === true\"\r\n >\r\n <button\r\n (click)=\"closeWorkflowEngine()\"\r\n id=\"close-workflow-engine-btn\"\r\n class=\"close\"\r\n [appTooltip]=\"'[Esc] to close'\"\r\n placement=\"left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"true\"\r\n [class.disabled]=\"\r\n confirmationAlertConfig?.isVisible || !isWorkflowSelectorEnabled\r\n \"\r\n [class.smiley-opened]=\"\r\n riskComponent?.showSmiley ||\r\n logIssueComponent?.showSmiley ||\r\n compliance?.showSmiley ||\r\n policy?.showCreateDocuments ||\r\n responsibilityBulkUpload?.showSmiley ||\r\n responsibilityBulkUpload?.showExcel ||\r\n riskBulkUpload?.showSmiley ||\r\n riskBulkUpload?.showExcel ||\r\n program?.showSmiley ||\r\n importAnAssessment?.showSmiley\r\n \"\r\n >\r\n <i class=\"icons\"></i>\r\n </button>\r\n <div\r\n *ngIf=\"!uiKitService.isSmileyOn\"\r\n class=\"workflow-engine-more\"\r\n [hidden]=\"showMoreOption === false || policy?.showCreateDocuments\"\r\n [class.disabled]=\"confirmationAlertConfig?.isVisible\"\r\n [class.read-only]=\"uiKitService?.isLoader\"\r\n >\r\n <app-more-option\r\n #moreOption\r\n [currentWorkflow]=\"currentWorkflow?.code\"\r\n [isEditMode]=\"mode === 'EDIT'\"\r\n [isRCSelected]=\"isRCSelected\"\r\n [openedFrom]=\"openedFrom\"\r\n (selectedOption)=\"addMoreInfo($event)\"\r\n [isProgramSelected]=\"selectedProgram\"\r\n [allowedFeature]=\"feature\"\r\n [orgDetailsData]=\"orgDetails\"\r\n >\r\n </app-more-option>\r\n </div>\r\n <div\r\n class=\"workflow-engine-form\"\r\n [class.disabled]=\"confirmationAlertConfig?.isVisible\"\r\n [class.no-shadow]=\"\r\n currentWorkflow?.code == 'AMR' ||\r\n currentWorkflow?.code == 'CMR' ||\r\n currentWorkflow?.code == 'AAA' ||\r\n uiKitService.isSmileyOn ||\r\n policy?.showCreateDocuments\r\n \"\r\n >\r\n <div class=\"container\" (scroll)=\"scrollForm()\">\r\n <ng-container\r\n *ngIf=\"\r\n !['VIEW_AUDIT_EXECUTION_SUMMARY', 'EXECUTE_AUDIT_PLAN'].includes(\r\n openedFrom\r\n )\r\n \"\r\n >\r\n <div\r\n *ngIf=\"!(uiKitService.isSmileyOn || policy?.showCreateDocuments)\"\r\n class=\"form-group-row\"\r\n #dropdownRow\r\n [class.disabled]=\"\r\n mode === 'EDIT' ||\r\n !isWorkflowSelectorEnabled ||\r\n disableWorkflowChange ||\r\n selectedProgram\r\n \"\r\n >\r\n <div class=\"left\" [class.checked]=\"currentWorkflow\">\r\n <svg\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\" #dropdown>\r\n <label class=\"vx-control-panel\"\r\n >Select a Workflow<span class=\"required\">*</span></label\r\n >\r\n <div\r\n class=\"select\"\r\n *ngIf=\"!currentWorkflow\"\r\n (click)=\"editWorkflow()\"\r\n >\r\n <input type=\"text\" placeholder=\"Select a Workflow\" readonly />\r\n </div>\r\n <div class=\"selected first-field\" *ngIf=\"currentWorkflow\">\r\n <!-- {{currentWorkflow | json}} -->\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2 vx-mr-2\"\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt no-width\"\r\n [appTooltip]=\"currentWorkflow?.workflowName\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ currentWorkflow?.workflowName }}</span\r\n >\r\n </div>\r\n <!-- <div class=\"chip-container\">\r\n <span class=\"chip\" [class.disabled]=\"false\">{{currentWorkflow?.workflowName}}</span>\r\n </div> -->\r\n <button\r\n class=\"edit\"\r\n type=\"button\"\r\n (click)=\"editWorkflow()\"\r\n *ngIf=\"!workflowList\"\r\n >\r\n <i class=\"icons\"></i> Edit\r\n </button>\r\n </div>\r\n <div\r\n *ngIf=\"\r\n currentWorkflow?.code === 'CAPR' &&\r\n currentBusinessCycle &&\r\n !programSimplifyFlag\r\n \"\r\n class=\"program-business-cycle vx-fs-11 vx-txt-white vx-d-flex vx-align-center vx-pt-2 vx-pb-1 vx-pl-2 vx-pr-1\"\r\n >\r\n <i class=\"icons vx-fs-12 vx-mr-1\"></i> This program is\r\n being set-up for the business cycle:\r\n <span class=\"vx-fw-600 vx-ml-1\">{{\r\n currentBusinessCycle\r\n }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <!-- <app-create-documents></app-create-documents> -->\r\n <!-- <app-bulk-view></app-bulk-view> -->\r\n <!-- <app-bulk-responsibility-view></app-bulk-responsibility-view> -->\r\n <app-workflow-compliance\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n [orgDetails]=\"orgDetails\"\r\n [isEntrust]=\"entrustButtonName.toLowerCase() == 'entrust'\"\r\n [responsibilityId]=\"id\"\r\n [mode]=\"mode\"\r\n [frameworkDetails]=\"frameworkDetails\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n *ngSwitchCase=\"'CAR'\"\r\n #responsibility\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (hideElementsFromMoreOptions)=\"hideElementsFromMoreOptions($event)\"\r\n [selectedRC]=\"selectedRC\"\r\n [closeOnEsc]=\"closeOnEsc\"\r\n (assigneeTypeChange)=\"assigneeTypeChange($event)\"\r\n (onReviewerTypeChange)=\"onReviewerChange($event)\"\r\n [feature]=\"feature\"\r\n [openedFrom]=\"openedFrom\"\r\n (rcSelected)=\"onRcSelected($event)\"\r\n (resetForm)=\"onResetForm()\"\r\n (onRemovingCheckpoint)=\"onRemovingCheckpoint($event, false, true)\"\r\n (isAssessmentDisabled)=\"isAssessmentDisabled($event)\"\r\n (checkpointCountUpdated)=\"checkpointCount = $event\"\r\n [selectedProgram]=\"selectedProgram\"\r\n ></app-workflow-compliance>\r\n <app-workflow-risk\r\n [secondaryOpenPortal]=\"secondaryOpenPortal\"\r\n [openedFrom]=\"openedFrom\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'AAR'\"\r\n #risk\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (hideElementsFromMoreOptions)=\"hideElementsFromMoreOptions($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (refreshForm)=\"onResetForm()\"\r\n [mode]=\"mode\"\r\n [riskId]=\"id\"\r\n [feature]=\"feature\"\r\n ></app-workflow-risk>\r\n <app-workflow-policy\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'CAP'\"\r\n #policy\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (shiftToEditMode)=\"shiftToEditMode()\"\r\n [feature]=\"feature\"\r\n [policyId]=\"id\"\r\n [mode]=\"mode\"\r\n [convertFileData]=\"convertFileData\"\r\n [selectedCategory]=\"selectedCategory\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n ></app-workflow-policy>\r\n <app-workflow-survey-form\r\n *ngSwitchCase=\"'CAS'\"\r\n #surveyForm\r\n ></app-workflow-survey-form>\r\n <app-add-multiple-risk\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'AMR'\"\r\n #multipleRisk\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n ></app-add-multiple-risk>\r\n <!-- <app-add-multiple-responsibility (disconnectRefresh)=\"isHostRefreshActive = $event\" (closeWorkflow)=\"closeWorkflowEngine($event)\" *ngSwitchCase=\"'CMR'\" #multipleResponsibility>\r\n </app-add-multiple-responsibility> -->\r\n\r\n <lib-add-multiple-responsibility-container\r\n [orgDetails]=\"orgDetails\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n *ngSwitchCase=\"'CMR'\"\r\n [feature]=\"feature\"\r\n #multipleResponsibility\r\n ></lib-add-multiple-responsibility-container>\r\n <!-- New Log an Issue -->\r\n <app-log-an-issue\r\n [issueDetails]=\"issueData\"\r\n *ngSwitchCase=\"'LAI'\"\r\n [reponsibilityData]=\"reponsibilityData\"\r\n [openedFrom]=\"openedFrom\"\r\n [issueId]=\"id\"\r\n #logAnIssue\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n [(mode)]=\"mode\"\r\n >\r\n </app-log-an-issue>\r\n <!-- Old Log an issue -->\r\n <!-- <app-log-an-issue *ngSwitchCase=\"'LAI'\" [responsibilitiesData]=\"reponsibiltyData\" [openedFrom]=\"openedFrom\"\r\n #logAnIssue (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\" (populateOption)=\"populateMoreOption($event)\">\r\n </app-log-an-issue> -->\r\n\r\n <app-workflow-assessment\r\n [assessmentId]=\"id\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n [openedFrom]=\"openedFrom\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'AAA'\"\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (refreshForm)=\"onResetForm()\"\r\n [mode]=\"mode\"\r\n #assessment\r\n ></app-workflow-assessment>\r\n <app-import-an-assessment\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'IAA'\"\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (refreshForm)=\"onResetForm()\"\r\n #importAssessment\r\n ></app-import-an-assessment>\r\n <!-- <app-workflow-program #program *ngSwitchCase=\"'CAPR'\" (pickerChanged)=\"decideViewMoreOption($event)\" (disconnectRefresh)=\"isHostRefreshActive = $event\"></app-workflow-program> -->\r\n <app-workflow-program\r\n #program\r\n *ngSwitchCase=\"'CAPR'\"\r\n [orgDetails]=\"orgDetails\"\r\n [allowedFeature]=\"feature\"\r\n (disableElementsFromMoreOptions)=\"disableMoreOptions('CAPR', $event)\"\r\n [programType]=\"programType\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (refreshForm)=\"onResetForm()\"\r\n [mode]=\"mode\"\r\n [programId]=\"id\"\r\n (onRemovingRole)=\"onRemovingRole($event)\"\r\n [canFrameworkChange]=\"canFrameworkChange\"\r\n [addToProgramDetails]=\"addToProgramDetails\"\r\n ></app-workflow-program>\r\n\r\n <!-- GRC Object -->\r\n <lib-grc-object-container\r\n #grcObject\r\n *ngIf=\"true\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n ></lib-grc-object-container>\r\n </div>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n *ngSwitchCase=\"'AAR'\"\r\n (click)=\"submit()\"\r\n >\r\n {{\r\n mode === \"EDIT\" && openedFrom !== \"MOVE_TO_REGISTER\"\r\n ? \"Update\"\r\n : \"Add\"\r\n }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"\r\n !isWorkflowSelectorEnabled ||\r\n !riskBulkUpload?.category?.selectedCategory\r\n \"\r\n (click)=\"bulkUploadBrowse('AMR')\"\r\n *ngSwitchCase=\"'AMR'\"\r\n >\r\n Browse\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n (click)=\"bulkUploadBrowse('CMR')\"\r\n *ngSwitchCase=\"'CMR'\"\r\n >\r\n Browse\r\n </button>\r\n\r\n <!-- This has ternary operation to handle the both scenarios of how it works with compliance and program module, please don't change this. -->\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n (click)=\"submit()\"\r\n *ngSwitchCase=\"'CAR'\"\r\n >\r\n {{\r\n entrustButtonName !== \"\" && mode !== \"EDIT\"\r\n ? entrustButtonName\r\n : mode === \"EDIT\"\r\n ? \"UPDATE\"\r\n : \"Entrust\"\r\n }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n (click)=\"submit()\"\r\n *ngSwitchCase=\"'CAP'\"\r\n >\r\n {{\r\n convertFileData.fileName\r\n ? \"NEXT\"\r\n : mode == \"EDIT\"\r\n ? \"Update\"\r\n : \"Continue to draft\"\r\n }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n *ngSwitchCase=\"'CAS'\"\r\n >\r\n Continue to draft\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n *ngSwitchCase=\"'LAI'\"\r\n (click)=\"submit()\"\r\n >\r\n {{ mode === \"EDIT\" ? \"Update\" : \"Add\" }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n *ngSwitchCase=\"'AAA'\"\r\n (click)=\"submit()\"\r\n >\r\n {{ mode === \"EDIT\" ? \"Update\" : \"Continue to draft\" }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n (click)=\"bulkUploadBrowse('IAA')\"\r\n *ngSwitchCase=\"'IAA'\"\r\n >\r\n Browse\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled || !program?.valid\"\r\n (click)=\"submit('CAPR')\"\r\n *ngSwitchCase=\"'CAPR'\"\r\n >\r\n {{ mode === \"EDIT\" ? \"Update\" : \"Save\" }}\r\n </button>\r\n <div\r\n class=\"dropdown\"\r\n *ngIf=\"workflowList\"\r\n (click)=\"closeWorkflowList()\"\r\n [style.top.px]=\"dropdownTop\"\r\n [style.left.px]=\"dropdownLeft\"\r\n [style.width.px]=\"dropdownWidth\"\r\n >\r\n <ul class=\"dropdown-list\">\r\n <li\r\n *ngFor=\"let workflow of workflowTypeList\"\r\n (click)=\"changeWorkflow($event, workflow)\"\r\n >\r\n <app-cs-radio\r\n [value]=\"workflow?.code\"\r\n [checked]=\"currentWorkflow?.code === workflow?.code\"\r\n >\r\n {{ workflow?.workflowName }}</app-cs-radio\r\n >\r\n </li>\r\n </ul>\r\n </div>\r\n <div\r\n class=\"dropdown-overlay\"\r\n *ngIf=\"workflowList\"\r\n (click)=\"closeWorkflowList()\"\r\n ></div>\r\n </div>\r\n <app-confirmation-alert\r\n id=\"confirmation-dialogue\"\r\n (action)=\"confirmWorkflowChange($event)\"\r\n *ngIf=\"confirmationAlertConfig?.isVisible\"\r\n [message]=\"confirmationAlertConfig?.message\"\r\n [config]=\"confirmationAlertConfig\"\r\n ></app-confirmation-alert>\r\n </div>\r\n</div>\r\n", styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";.dropdown-overlay{position:fixed;inset:0;z-index:2}.workflow-engine{background:#161B2FCC;position:fixed;inset:0;z-index:10}.workflow-engine button.close{position:absolute;background:transparent;cursor:pointer;border:none;font-size:16px;color:#000;top:8px;right:7px;z-index:12;display:flex;align-items:center;justify-content:center;border-radius:2px;padding:8px}.workflow-engine button.close.bulk-opened,.workflow-engine button.close.smiley-opened{z-index:10}.workflow-engine button.close:hover{background:#f1f1f1}.workflow-engine button.close.disabled{pointer-events:none;opacity:.3;filter:grayscale(1)}.workflow-engine-container{position:fixed;top:0;right:0;bottom:0;background:#ffffff;display:flex;z-index:10;border-top:3px solid #1E5DD3}.workflow-engine-container:before{content:\"\";height:30px;position:absolute;top:0;right:0;width:499px;z-index:11;background:linear-gradient(to bottom,#ffffff 0%,rgba(255,255,255,.75) 66%,rgba(255,255,255,.42) 81%,rgba(255,255,255,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#ffffff\",endColorstr=\"#00ffffff\",GradientType=0)}.workflow-engine-container.with-preview-assessment:before{display:none}.workflow-engine-container.with-preview-assessment button.close{display:none}.workflow-engine-container.with-preview-assessment .workflow-engine-form{right:-470px}.workflow-engine-container.with-preview-assessment .workflow-engine-form .container ::ng-deep app-workflow-compliance .workflw-compliance{filter:grayscale(1)!important;pointer-events:none!important}.workflow-engine-container.with-preview-assessment .workflow-engine-form button.submit{filter:grayscale(1)!important;pointer-events:none!important}.workflow-engine-more{width:318px;padding:36px 22px 36px 40px;height:100vh;overflow:auto;margin-left:-18px;scrollbar-width:none}@media screen and (max-height: 900px){.workflow-engine-more{padding:20px 22px 36px 40px}}.workflow-engine-more::-webkit-scrollbar-track{background-color:#f1f1f1;position:absolute}.workflow-engine-more::-webkit-scrollbar{width:1px;height:1px;background-color:transparent;position:absolute}.workflow-engine-more::-webkit-scrollbar-thumb{border-radius:1px;background-color:#dbdbdb;position:absolute}.workflow-engine-more.disabled{filter:grayscale(1);pointer-events:none}.workflow-engine-more.read-only{pointer-events:none}.workflow-engine-form{width:500px;position:relative}.workflow-engine-form .container{height:calc(100vh - 53px);padding:35px 24px 8px 62px;overflow:hidden;overflow-y:auto;margin-left:-22px;scrollbar-width:thin}.workflow-engine-form .container.disabled{pointer-events:none}.workflow-engine-form:before{content:\"\";top:0;bottom:-50px;left:0;width:1px;background:#f1f1f1;position:absolute}.workflow-engine-form button.submit{position:sticky;height:50px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:48px;letter-spacing:1.3px;color:#fff;background:#1e5dd3;cursor:pointer;border:1px solid #1e5dd3;outline:none;border-radius:0;text-transform:uppercase;font-weight:600;width:100%;bottom:0;padding:0}.workflow-engine-form button.submit:disabled{background:#F1F1F1;border-color:#f1f1f1;pointer-events:none;cursor:not-allowed;color:#747576}.workflow-engine-form button.submit.disabled{pointer-events:none;opacity:.3;filter:grayscale(1)}.workflow-engine-form.disabled{filter:grayscale(1);pointer-events:none}.workflow-engine-form label.browse{padding:0;margin:0;display:block;position:sticky;bottom:0}.workflow-engine-form label.browse span{height:50px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:19px;letter-spacing:3.08px;color:#fff;background:#1e5dd3;cursor:pointer;border:1px solid #1e5dd3;outline:none;border-radius:0;text-transform:uppercase;font-weight:600;width:100%}.workflow-engine-form label.browse input{position:absolute;width:100%;height:100%;z-index:1;inset:0;opacity:0;cursor:pointer}.workflow-engine-form .file-browsed{display:flex;align-items:center;background:#FFFFFF;border-top:1px solid #F1F1F1;border-bottom:1px solid #F1F1F1}.workflow-engine-form .file-browsed span{display:block;width:calc(100% - 164px);color:#161b2f;font-size:13px;font-weight:400;line-height:20px;padding:0 16px}.workflow-engine-form .file-browsed button{height:50px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:19px;letter-spacing:3.08px;color:#fff;background:#1e5dd3;cursor:pointer;border:1px solid #1e5dd3;outline:none;border-radius:0;text-transform:uppercase;font-weight:600;width:164px;bottom:0}.workflow-engine-form:after{content:\"\";height:30px;position:absolute;right:0;bottom:50px;z-index:10;background:linear-gradient(to bottom,rgba(255,255,255,0) 0%,rgba(255,255,255,.75) 22%,#ffffff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#00ffffff\",endColorstr=\"#ffffff\",GradientType=0)}.workflow-engine-form.no-shadow:after{display:none}.workflow-engine.animate{animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;z-index:-1}.workflow-engine.bg{background:#FFFFFF}.program-business-cycle{background:#F2BF19;border-radius:0 0 .25rem .25rem;position:relative;top:-.25rem;z-index:1}@keyframes animate-right{0%{transform:translate(100%)}to{transform:translate(0)}}\n", "@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";::-webkit-scrollbar-track{background-color:#f1f1f1;position:absolute}::-webkit-scrollbar{width:3px;height:3px;background-color:transparent;position:absolute}::-webkit-scrollbar-thumb{border-radius:3px;background-color:#dbdbdb;position:absolute}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}button{font-family:Poppins,sans-serif}::ng-deep input.textField{background:#fff;border-radius:.25rem;border:1px solid #dbdbdb;font-size:13px;color:#747576;padding:8px 12px;position:relative;height:2.5rem;width:100%;transition:all .2s ease-in-out}::ng-deep input.textField::placeholder{font-size:13px;color:#747576}::ng-deep input.textField:hover,::ng-deep input.textField:focus{outline:none;border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .selectBoxEnable{background:#fff;border-radius:.25rem;border:1px solid #dbdbdb;cursor:pointer;height:2.5rem;position:relative;transition:all .2s ease-in-out}::ng-deep .selectBoxEnable:after{border-bottom-style:solid;border-bottom-width:1px;border-right-style:solid;border-right-width:1px;border-color:#747576;content:\"\";display:inline-block;right:12px;position:absolute;top:calc(50% - 4px);width:5px;height:5px;transform:rotate(45deg)}::ng-deep .selectBoxEnable:hover,::ng-deep .selectBoxEnable:focus{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .selectBoxEnable.disabled{background:#f1f1f1;pointer-events:none;opacity:1}::ng-deep .selectBoxSuccess{background:#f8f8f8;border-radius:.25rem;border:1px solid #f1f1f1;min-height:2.5rem;position:relative}::ng-deep .selectBoxSuccess .selectBoxText{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:22rem}::ng-deep .selectBoxSuccess button{background:transparent;border-radius:0;border:none}::ng-deep .selectBoxSuccess button.deleteBtn{color:#d93b41}::ng-deep .selectBoxSuccess .level-left{border-right:1px solid #f1f1f1;height:2.375rem;width:5rem}::ng-deep .selectBoxSuccess .level-left .level-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:4.5rem}::ng-deep .chipContainer{background:#fff;border-radius:.125rem;box-shadow:0 0 2px #1e5dd340;height:1.5rem}::ng-deep .chipContainer .cross{cursor:pointer;min-width:16px;width:16px;height:16px;display:flex;align-items:center;justify-content:center;background:transparent;border-radius:2px;margin-left:-4px}::ng-deep .chipContainer .cross:hover{background:#f1f1f1}::ng-deep .chipContainer .chipName{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;max-width:6rem}::ng-deep .chipContainer .chipName.no-width{max-width:unset}::ng-deep .chipContainer button.countBtn{background:#1e5dd3;border-radius:1.25rem;border:none;min-width:1.5rem;height:1rem;margin:0 0 0 .5rem;padding:0 .25rem}::ng-deep .chipContainer button.countBtn.greenBg{background:#34aa44}::ng-deep .workflowLavel{background:#f1f1f1;border-radius:.125rem;color:#042e7d;min-width:1rem;height:1rem}::ng-deep .reviewSelection{border-radius:.25rem;border:1px solid #dbdbdb;transition:all .2s ease-in-out}::ng-deep .reviewSelection:hover{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .selectButton{background:#fff;border-radius:.25rem;border:1px solid #dbdbdb;cursor:pointer;height:2.5rem;position:relative;transition:all .2s ease-in-out}::ng-deep .selectButton:hover,::ng-deep .selectButton:focus{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep button.createNewBtn{background:transparent;border-radius:0;border:none}::ng-deep .vx-form-group{display:block;position:relative;margin-bottom:20px}::ng-deep .vx-form-group:after{content:\"\";display:block;clear:both}::ng-deep .vx-form-group .select{position:relative}::ng-deep .vx-form-group .select:after{border-bottom-style:solid;border-bottom-width:1px;border-right-style:solid;border-right-width:1px;border-color:#707070;content:\"\";display:inline-block;right:12px;position:absolute;top:calc(50% - 4px);width:5px;height:5px;transform:rotate(45deg)}::ng-deep .vx-form-group .select input{cursor:pointer;padding-right:30px!important}::ng-deep .vx-form-group .select .custom-input{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#ffffff;outline:none;padding:3px 12px;line-height:16px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;cursor:pointer}::ng-deep .vx-form-group .select .custom-input:empty:not(:focus):before{content:attr(aria-placeholder);line-height:16px;font-size:13px;width:94%;display:block;pointer-events:none;opacity:.8}::ng-deep .vx-form-group .select .custom-input:hover{border-color:#1e5dd3;box-shadow:0 0 5px #1e5dd345}::ng-deep .vx-form-group .select .custom-input.frequency-custom-input{padding-right:108px;display:flex;align-items:center}::ng-deep .vx-form-group .select+app-cs-switch{display:block;margin-top:8px}::ng-deep .vx-form-group .select+app-cs-switch label.cs-switch span.value{white-space:nowrap;margin-right:5px;text-transform:uppercase}::ng-deep .vx-form-group .select+app-cs-radio{margin-top:8px!important}::ng-deep .vx-form-group .select~app-cs-radio{margin-top:4px;display:block;width:100%}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item span.radio{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item span.value{font-size:11px;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0;max-width:100%;font-weight:500;color:#707070}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item span.value i{font-size:12px;color:#1e5dd3}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item svg{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}::ng-deep .vx-form-group .select.button-sec:after{display:none}::ng-deep .vx-form-group .select.button-sec button{background:transparent;border:none;display:inline-flex;float:right;color:#1e5dd3;text-transform:uppercase;font-weight:600;cursor:pointer;font-size:11px;position:absolute;top:12px;right:8px;padding:0;margin:0}::ng-deep .vx-form-group .select+.vx-control-panel{margin-top:8px}::ng-deep .vx-form-group .select+.selected{margin-top:8px}::ng-deep .vx-form-group .select.select{margin-top:8px}::ng-deep .vx-form-group .upload-format{border:1px solid #dbdbdb;border-radius:4px;padding:8px 12px;display:block}::ng-deep .vx-form-group .upload-format span.text{line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;display:block;margin-bottom:6px}::ng-deep .vx-form-group .upload-format .radio-group{display:flex}::ng-deep .vx-form-group .upload-format .radio-group app-cs-radio{display:inline-block}::ng-deep .vx-form-group .upload-format .radio-group app-cs-radio label.radio-item span.value{font-size:11px;text-transform:uppercase;margin-left:8px}::ng-deep .vx-form-group .upload-format .radio-group app-cs-radio+app-cs-radio{margin-left:12px}::ng-deep .vx-form-group .upload-format~.upload-format{margin-top:4px}::ng-deep .vx-form-group .form-tab{display:flex;justify-content:flex-start}::ng-deep .vx-form-group .form-tab button{background:transparent;color:#161b2f;font-size:11px;line-height:16px;text-transform:uppercase;cursor:pointer;padding:8px 8px 8px 0;border:none;outline:none;font-weight:500}::ng-deep .vx-form-group .form-tab button:disabled{opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group .form-tab button+button{padding:8px}::ng-deep .vx-form-group .form-tab button.active{color:#1e5dd3}::ng-deep .vx-form-group .tab-group{border:1px solid #dbdbdb;border-radius:4px;padding:0;display:block;position:relative;transition:all .2s ease-in-out}::ng-deep .vx-form-group .tab-group:hover{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group .tab-group .upload-file{padding:16px 62px 16px 24px;display:flex;align-items:center;justify-content:space-between}::ng-deep .vx-form-group .tab-group .upload-file .image{width:80px}::ng-deep .vx-form-group .tab-group .upload-file .browse span{display:inline-block;font-size:12px;color:#747576;line-height:16px;padding:0 4px}::ng-deep .vx-form-group .tab-group .upload-file .browse .label{font-size:11px;color:#1e5dd3;line-height:16px;font-weight:600;text-transform:uppercase;margin:0;padding:0}::ng-deep .vx-form-group .tab-group .upload-file .browse .label input{opacity:0;position:absolute;margin:0;padding:0;inset:0;cursor:pointer;width:100%}::ng-deep .vx-form-group .tab-group.active{border-color:#1e5dd3}::ng-deep .vx-form-group .tab-group.uploaded{margin-top:4px}::ng-deep .vx-form-group .tab-group.uploaded .upload-file{padding:8px 0!important;text-align:center}::ng-deep .vx-form-group .tab-group.uploaded .upload-file .image{display:none}::ng-deep .vx-form-group .tab-group.uploaded .upload-file .browse{width:100%;text-align:center}::ng-deep .vx-form-group .tab-group+label.vx-form-group{margin-top:8px;margin-bottom:4px}::ng-deep .vx-form-group .file-list{background:#fbfbfb;border:1px solid #f1f1f1;border-radius:4px;padding:12px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;position:relative}::ng-deep .vx-form-group .file-list span.file-name{color:#747576;line-height:16px;font-size:11px;font-weight:400;cursor:pointer;max-width:calc(100% - 20px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .vx-form-group .file-list .button-group{display:flex}::ng-deep .vx-form-group .file-list button{font-size:12px;color:#eb2424;cursor:pointer;display:flex;padding:0;border:none;outline:none;background:transparent}::ng-deep .vx-form-group .file-list button.edit{color:#1e5dd3}::ng-deep .vx-form-group .file-list button+button{margin-left:16px}::ng-deep .vx-form-group .file-list+.file-list{margin-top:4px}::ng-deep .vx-form-group .file-list .file-container{display:flex;justify-content:space-between;width:100%}::ng-deep .vx-form-group .file-list.policy{background:#ffffff}::ng-deep .vx-form-group .file-list cs-select{position:relative;margin-top:8px;width:100%}::ng-deep .vx-form-group .file-list cs-select .selection-wrap .input-group input.value{height:32px!important;font-size:13px!important}::ng-deep .vx-form-group .file-list cs-select .selection-wrap .input-group i{right:12px!important;top:12px!important}::ng-deep .vx-form-group .file-list app-line-loader{display:block;position:absolute;left:10px;right:10px;bottom:0}::ng-deep .vx-form-group label.vx-control-panel{color:#161b2f;font-size:11px;font-weight:500;line-height:16px;margin-bottom:8px;display:block;text-transform:uppercase;text-align:left}::ng-deep .vx-form-group label.vx-control-panel.custom-tag{font-size:10px}::ng-deep .vx-form-group label.vx-control-panel.vx-mt-8{margin-top:8px}::ng-deep .vx-form-group label.vx-control-panel span.required{color:#eb2424;font-size:14px;font-weight:500;position:relative;top:-2px}::ng-deep .vx-form-group label.vx-control-panel .button{background:transparent;border:none;display:inline-flex;float:right;color:#1e5dd3;text-transform:uppercase;font-weight:600;cursor:pointer;font-size:11px;padding:0;margin:0}::ng-deep .vx-form-group label.vx-control-panel app-cs-switch{float:right;display:block}::ng-deep .vx-form-group label.vx-control-panel i{margin-left:8px;font-size:12px;color:#1e5dd3;cursor:pointer;position:relative;top:1px}::ng-deep .vx-form-group label.vx-control-panel i.depreciation-icon{color:#e4b700;font-size:16px;position:relative;top:3px}::ng-deep .vx-form-group label.vx-control-panel .checkpoint-version{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:10px;font-weight:600;line-height:14px;margin-left:4px;padding:0 2px}::ng-deep .vx-form-group input[type=text],::ng-deep .vx-form-group .input{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#ffffff;outline:none;padding:8px 12px;line-height:20px;font-size:13px;color:#747576;transition:all .2s ease-in-out;width:100%;font-weight:400}::ng-deep .vx-form-group input[type=text]::placeholder,::ng-deep .vx-form-group .input::placeholder{color:#747576;font-weight:400}::ng-deep .vx-form-group input[type=text]:focus,::ng-deep .vx-form-group .input:focus,::ng-deep .vx-form-group input[type=text]:hover,::ng-deep .vx-form-group .input:hover{border-color:#1e5dd3!important;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group input[type=text].error,::ng-deep .vx-form-group .input.error{border-color:#eb2424;color:#eb2424;margin-bottom:4px}::ng-deep .vx-form-group input[type=text].error:focus,::ng-deep .vx-form-group .input.error:focus{box-shadow:0 0 5px #d31e1e45}::ng-deep .vx-form-group input[type=text]:disabled,::ng-deep .vx-form-group .input:disabled{background:#f1f1f1;cursor:not-allowed;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group input[type=text]:disabled:hover,::ng-deep .vx-form-group .input:disabled:hover{border-color:#dbdbdb;box-shadow:none}::ng-deep .vx-form-group input[type=text] span.text,::ng-deep .vx-form-group .input span.text{font-size:13px;color:#747576;font-weight:400;display:block;width:100%}::ng-deep .vx-form-group input[type=text] .input-group,::ng-deep .vx-form-group .input .input-group{display:flex;align-items:center}::ng-deep .vx-form-group input[type=text] .input-group.counter,::ng-deep .vx-form-group .input .input-group.counter{min-width:96px;width:96px}::ng-deep .vx-form-group input[type=text] .input-group.counter button,::ng-deep .vx-form-group .input .input-group.counter button{height:24px;width:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#747576;font-size:8px;cursor:pointer;outline:none}::ng-deep .vx-form-group input[type=text] .input-group.counter input,::ng-deep .vx-form-group .input .input-group.counter input{-webkit-appearance:textfield;-moz-appearance:textfield;height:24px;width:calc(100% - 48px);border:1px solid #f1f1f1;outline:none;padding:0 6px;text-align:center}::ng-deep .vx-form-group input[type=text] .input-group.counter input::-webkit-inner-spin-button,::ng-deep .vx-form-group .input .input-group.counter input::-webkit-inner-spin-button,::ng-deep .vx-form-group input[type=text] .input-group.counter input::-webkit-outer-spin-button,::ng-deep .vx-form-group .input .input-group.counter input::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}::ng-deep .vx-form-group input[type=text]+.file-list,::ng-deep .vx-form-group .input+.file-list{margin-top:8px}::ng-deep .vx-form-group input[type=text]::placeholder,::ng-deep .vx-form-group .input::placeholder{font-size:13px}::ng-deep .vx-form-group input[type=text]:-ms-input-placeholder,::ng-deep .vx-form-group .input:-ms-input-placeholder{font-size:13px}::ng-deep .vx-form-group input[type=text]::-ms-input-placeholder,::ng-deep .vx-form-group .input::-ms-input-placeholder{font-size:13px}::ng-deep .vx-form-group .classification{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#ffffff;padding:8px 12px;display:flex;justify-content:space-between}::ng-deep .vx-form-group .classification label{margin:0 4px 0 0;width:100%;position:relative;z-index:1}::ng-deep .vx-form-group .classification label span{display:block;width:100%;height:24px;border:1px solid #f1f1f1;border-radius:2px;line-height:24px;font-size:10px;text-align:center;color:#747576;font-weight:500;position:relative;text-transform:uppercase}::ng-deep .vx-form-group .classification label span:before{height:2px;content:\"\";top:0;right:0;left:0;border-radius:2px;position:absolute;transition:all .2s ease-in-out}::ng-deep .vx-form-group .classification label input{opacity:0;position:absolute;inset:0;margin:0;padding:0;width:100%;height:100%;cursor:pointer;z-index:1}::ng-deep .vx-form-group .classification label input:checked+span{color:#fff}::ng-deep .vx-form-group .classification label input:checked+span:before{bottom:0;height:100%;z-index:-1}::ng-deep .vx-form-group .classification label.low span:before{background:#34aa44}::ng-deep .vx-form-group .classification label.low-med span:before{background:#f2bf19}::ng-deep .vx-form-group .classification label.med-high span:before{background:#f29619}::ng-deep .vx-form-group .classification label.high span:before{background:#eb2424}::ng-deep .vx-form-group .classification label:last-of-type{margin-right:0}::ng-deep .vx-form-group .input{display:flex;align-items:center}::ng-deep .vx-form-group .selected{height:40px;border-radius:4px;border:1px solid #f1f1f1;background:#fbfbfb;outline:none;padding:8px;line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;display:flex;align-items:center;position:relative;justify-content:space-between}::ng-deep .vx-form-group .selected.first-field{z-index:2}::ng-deep .vx-form-group .selected .chip-container{display:flex;width:calc(100% - 60px);align-items:center}::ng-deep .vx-form-group .selected .chip-container.checkpoints{width:calc(100% - 120px)}::ng-deep .vx-form-group .selected .chip-container span.chip{background:#ffffff;border-radius:2px;box-shadow:0 0 3px #1e5dd31a;height:24px;padding:0 8px;color:#1e5dd3;font-size:12px;display:block;width:auto;max-width:100%;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:24px}::ng-deep .vx-form-group .selected .chip-container span.chip.disabled{background:#f1f1f1;box-shadow:none;color:#747576;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group .selected .chip-container span.chip i{font-weight:400;margin-right:8px;cursor:pointer;font-size:10px;position:relative;top:1px}::ng-deep .vx-form-group .selected .chip-container span.chip span.step{background:#1e5dd3;border-radius:2px;color:#fff;font-size:9px;line-height:14px;padding:0 4px;font-weight:400;text-align:center;min-width:auto;margin-right:4px}::ng-deep .vx-form-group .selected .chip-container span.chip+span.chip{margin-left:4px}::ng-deep .vx-form-group .selected .chip-container span.chip.with-question{display:flex;align-items:center;justify-content:space-between;width:100%}::ng-deep .vx-form-group .selected .chip-container span.chip.with-question span.value{color:#1e5dd3;font-size:12px;font-weight:400;line-height:24px;padding:0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;max-width:calc(100% - 80px)}::ng-deep .vx-form-group .selected .chip-container span.chip.with-question span.label{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding-left:4px;padding-right:4px;line-height:12px;margin-left:8px}::ng-deep .vx-form-group .selected .chip-container span.value{color:#747576;font-size:13px;line-height:20px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 52px);padding:0 4px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text{color:#747576;font-size:10px;font-weight:500;padding:0 8px;width:122px;line-height:14px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text.first{position:relative;min-width:162px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text.first:before{background:#f1f1f1;content:\"\";position:absolute;top:0;right:0;height:calc(100% + 12px);width:1px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text .no{color:#1e5dd3}::ng-deep .vx-form-group .selected .chip-container.plus span.chip{max-width:calc(50% - 35px)}::ng-deep .vx-form-group .selected .chip-container.more-one span.chip{max-width:50%}::ng-deep .vx-form-group .selected .chip-container .chip-inner{background:#fff;border-radius:2px;box-shadow:0 2px 4px #1e5dd31a;line-height:24px;padding:0 4px 0 8px;display:flex;align-items:center}::ng-deep .vx-form-group .selected .chip-container .chip-inner .chip{background:transparent;border-radius:0;box-shadow:none;height:auto;line-height:unset;padding:0;color:#747576;max-width:100px}::ng-deep .vx-form-group .selected .chip-container .chip-inner button.count{border-radius:20px;height:16px;padding:0 6px;border:none;font-size:9px;line-height:16px;margin-left:4px;min-width:20px}::ng-deep .vx-form-group .selected .chip-container .chip-inner button.count.user{background:#34aa44}::ng-deep .vx-form-group .selected .chip-container .chip-inner i.cross{cursor:pointer;position:relative;top:1px;font-size:8px}::ng-deep .vx-form-group .selected button.count{background:#1e5dd3;border-radius:2px;height:24px;padding:0 8px;border:1px solid #1e5dd3;cursor:pointer;outline:none;color:#fff;font:13px;font-weight:500;line-height:20px;white-space:nowrap;margin-left:8px}::ng-deep .vx-form-group .selected button.edit{border:none;border-radius:0;background:transparent;outline:none;cursor:pointer;display:block;font-size:11px;font-weight:600;color:#1e5dd3;text-transform:uppercase;white-space:nowrap;margin-left:8px}::ng-deep .vx-form-group .selected button.edit i{font-weight:400;font-size:8px;margin-right:4px}::ng-deep .vx-form-group .selected button.close-btn{background:transparent;border:none;padding:0;margin-left:8px;font-size:10px;color:#c7381b;display:flex;align-items:center}::ng-deep .vx-form-group .selected .workflow-label{min-width:92px;padding:4px;text-align:center;margin-left:-8px;margin-right:8px;border-right:1px solid #f1f1f1}::ng-deep .vx-form-group .selected .workflow-label p{margin:0;display:block;text-transform:uppercase}::ng-deep .vx-form-group .selected .workflow-label p.title{font-size:9px;line-height:12px;color:#161b2f;font-weight:500}::ng-deep .vx-form-group .selected .workflow-label p.description{font-size:11px;line-height:16px;color:#161b2f;font-weight:600}::ng-deep .vx-form-group .selected .workflow-label+.chip-container{width:calc(100% - 148px)}::ng-deep .vx-form-group .selected+.selected{margin-top:8px}::ng-deep .vx-form-group .selected+app-cs-switch{display:block;margin-top:8px}::ng-deep .vx-form-group .selected+app-cs-switch label.cs-switch span.value{white-space:nowrap;margin-right:5px;text-transform:uppercase}::ng-deep .vx-form-group .selected+app-cs-switch.who-toggle label.cs-switch span.value{color:#747576}::ng-deep .vx-form-group .selected+app-cs-radio{margin-top:8px!important}::ng-deep .vx-form-group .selected~app-cs-radio{margin-top:4px;display:block;width:100%}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item span.radio{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item span.value{font-size:11px;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0;max-width:100%;font-weight:500;color:#707070}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item span.value i{font-size:12px;color:#1e5dd3}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item svg{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}::ng-deep .vx-form-group .selected.readOnly{pointer-events:none}::ng-deep .vx-form-group .selected span.chip{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::ng-deep .vx-form-group .select-list{position:absolute;background:#ffffff;box-shadow:0 0 5px #1e5dd345;top:100%;right:0;left:0;z-index:2}::ng-deep .vx-form-group .select-list .vx-radio-group label.vx-radio-item{width:100%;padding:12px 16px}::ng-deep .vx-form-group .select-list .vx-radio-group label.vx-radio-item:hover{background:#f8f8f8}::ng-deep .vx-form-group vcomply-editor{margin-top:8px;display:block}::ng-deep .vx-form-group vcomply-editor .editor-container{border-radius:4px;border:1px solid #dbdbdb}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block{min-height:60px;padding:11px 15px;max-height:100px;line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block ul{padding:0 0 0 10px;margin-top:0}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block ul li{list-style:disc}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block ol{padding:0 0 0 10px;margin-top:0}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block ol li{list-style:decimal}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools{z-index:1;border-top:1px solid #dbdbdb;transition:none;border-radius:0 0 3px 3px;position:static}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button{height:22px!important;width:22px!important;padding:0 5px}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button svg{height:22px;width:12px}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button.submit{width:80px!important;line-height:22px;justify-content:center}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col .popover.small ul.option-list li button{width:100%!important;height:auto!important}::ng-deep .vx-form-group vcomply-editor .editor-container:focus-within{border-color:#1e5dd3!important;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group vcomply-editor .editor-container:focus-within .editor-tools{border-color:#1e5dd3!important}::ng-deep .vx-form-group vcomply-editor .editor-container:hover{border-color:#1e5dd3!important;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group vcomply-editor .editor-container:hover .editor-tools{border-color:#1e5dd3!important}::ng-deep .vx-form-group vcomply-editor+app-cs-switch{margin-top:8px}::ng-deep .vx-form-group app-cs-switch label.cs-switch span.value{font-size:11px;color:#747576;text-transform:uppercase}::ng-deep .vx-form-group app-cs-switch+app-cs-switch{margin-top:8px}::ng-deep .vx-form-group .date-time-picker{display:flex;justify-content:space-between;height:40px;border-radius:4px;border:1px solid #dbdbdb;padding:11px 0;background:#ffffff}::ng-deep .vx-form-group .date-time-picker:focus-within{border-color:#1e5dd3;box-shadow:0 0 5px #1e5dd345}::ng-deep .vx-form-group .date-time-picker .picker-group{width:50%;position:relative;display:flex;align-items:center}::ng-deep .vx-form-group .date-time-picker .picker-group:first-of-type{border-right:1px solid #dbdbdb}::ng-deep .vx-form-group .date-time-picker .picker-group:only-of-type{border:none;width:100%}::ng-deep .vx-form-group .date-time-picker .picker-group input{height:38px;background:transparent;line-height:38px;font-size:13px;color:#747576;transition:all .2s ease-in-out;width:100%;font-weight:400;border:none;padding:0 12px 0 34px;outline:none}::ng-deep .vx-form-group .date-time-picker .picker-group input:focus,::ng-deep .vx-form-group .date-time-picker .picker-group input:hover{box-shadow:none;border:none}::ng-deep .vx-form-group .date-time-picker .picker-group input::placeholder{color:#999;font-size:13px}::ng-deep .vx-form-group .date-time-picker .picker-group input:-ms-input-placeholder{color:#999;font-size:13px}::ng-deep .vx-form-group .date-time-picker .picker-group input::-ms-input-placeholder{color:#999;font-size:13px}::ng-deep .vx-form-group .date-time-picker .picker-group i{display:flex;justify-content:center;align-items:center;height:16px;width:12px;position:absolute;left:12px;top:0;color:#747576;font-size:12px;pointer-events:none}::ng-deep .vx-form-group app-cs-radio.main-filed{margin-top:4px;display:block;width:100%}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item{width:100%;position:relative}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item span.radio{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item span.value{font-size:11px;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0;max-width:100%;color:#707070}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item span.value i{font-size:12px;color:#1e5dd3}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item svg{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}::ng-deep .vx-form-group app-cs-radio.disabled{pointer-events:none;opacity:.5;filter:grayscale(1);background:#f1f1f1}::ng-deep .vx-form-group .switch-row{display:flex}::ng-deep .vx-form-group .switch-row app-cs-switch{display:block;margin-top:8px}::ng-deep .vx-form-group .switch-row app-cs-switch label.cs-switch span.value{white-space:nowrap;margin-right:0;text-transform:uppercase;color:#747576!important}::ng-deep .vx-form-group .switch-row app-cs-switch label.cs-switch span.value i{display:inline-flex;font-size:11px;cursor:pointer;color:#1e5dd3;align-items:center;line-height:16px;margin:0 4px}::ng-deep .vx-form-group .switch-row app-cs-switch+app-cs-switch{margin-left:8px}::ng-deep .vx-form-group .switch-row.align-right{justify-content:flex-end}::ng-deep .vx-form-group .switch-row.align-right label.cs-switch span.value{margin-right:8px}::ng-deep .vx-form-group .risk-type-field{background:#f8f8f8;border:1px solid #dbdbdb;border-radius:4px;height:40px;display:flex;align-items:center;padding:4px;position:relative;z-index:1}::ng-deep .vx-form-group .risk-type-field .type-item{width:50%;position:relative}::ng-deep .vx-form-group .risk-type-field .type-item button{background:transparent;border:none;border-radius:0;color:#747576;font-size:11px;font-weight:600;text-transform:uppercase;width:100%;height:32px;padding:0 12px;text-align:left}::ng-deep .vx-form-group .risk-type-field .type-item button.disabled{background:transparent!important;color:#dbdbdb!important;filter:unset!important;opacity:unset!important;pointer-events:none;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group .risk-type-field .type-item .info{color:#1e5dd3;font-size:12px;position:absolute;top:10px;right:12px;cursor:pointer}::ng-deep .vx-form-group .risk-type-field .type-item.active button{color:#1e5dd3!important}::ng-deep .vx-form-group .risk-type-field .type-item:nth-child(2).active~.background-glider{transform:translate(100%)}::ng-deep .vx-form-group .risk-type-field .background-glider{background:#fff;border-radius:4px;box-shadow:0 1px 3px #161b2f26;position:absolute;display:flex;width:208px;height:32px;z-index:-1;transition:.25s ease-out}.left{width:36px;height:36px;margin-top:26px;margin-left:-58px;margin-right:20px;display:flex;justify-content:center;align-items:center;position:relative;z-index:10;border-radius:50%}.left.deadline-completed{margin-top:18px}.left.checked{background:transparent}.left img{width:36px}.left .checkIcon{width:32px;height:32px;background:#ffffff;border-radius:50%;stroke-width:4;stroke:#34aa44;stroke-miterlimit:10;box-shadow:inset 0 0 #34aa44;animation:fillCheck .4s ease-in-out .4s forwards,scale .3s ease-in-out .9s both;margin-top:0}.left .checkIcon__circle{stroke-dasharray:166;stroke-dashoffset:166;stroke-width:2;stroke-miterlimit:10;stroke:#34aa44;fill:none;animation:strokeCheck .6s cubic-bezier(.65,0,.45,1) forwards}.left .checkIcon__check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;animation:strokeCheck .3s cubic-bezier(.65,0,.45,1) .8s forwards}.right{width:100%}.right span.indicator{position:absolute;top:36px;left:-16px;font-size:12px;color:#f0b819;cursor:pointer}.form-group-row{display:flex;position:relative;transition:all .2s ease-in-out}.form-group-row.disabled{-webkit-user-select:none;user-select:none;pointer-events:none;filter:grayscale(1);z-index:2}.form-group-row.disabled .left{position:relative}.form-group-row.disabled .left:before{content:\"\";position:absolute;inset:2px 0 0 2px;background:#ffffff;opacity:.7;border-radius:50%;width:32px;height:32px}.form-group-row.disabled .right{opacity:.3}.form-group-row.active{pointer-events:none;filter:grayscale(0);z-index:2;opacity:1}.form-group-row.active .right .vx-form-group input,.form-group-row.active .right .vx-form-group .custom-input,.form-group-row.active .right .vx-form-group .selectBoxEnable{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}.form-group-row.active .right .vx-form-group .selectBoxEnable.disabled{border-color:#dbdbdb;box-shadow:none}::ng-deep .radio-group-selector app-cs-radio{margin-top:4px;display:block;width:100%}::ng-deep .radio-group-selector app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .radio-group-selector app-cs-radio label.radio-item .radio,::ng-deep .radio-group-selector app-cs-radio label.radio-item .radiomark{position:absolute!important;top:9px;left:12px}::ng-deep .radio-group-selector app-cs-radio label.radio-item .value{font-size:11px!important;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0!important;max-width:100%!important;font-weight:500!important;color:#707070!important}::ng-deep .radio-group-selector app-cs-radio label.radio-item .value i{font-size:12px;color:#1e5dd3}::ng-deep .radio-group-selector app-cs-radio label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}@keyframes strokeCheck{to{stroke-dashoffset:0}}@keyframes fillCheck{to{box-shadow:inset 0 0 0 2px #34aa44}}::ng-deep .wf-action-list{width:220px}::ng-deep .wf-action-list ul{padding:0;margin:0;animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both;background:#ffffff;box-shadow:0 3px 6px #1c5bd140;border-radius:4px;max-height:220px;overflow:auto}::ng-deep .wf-action-list ul.action-item{display:block}::ng-deep .wf-action-list ul.action-item li{list-style:none;border:none;border-bottom:1px solid #f1f1f1;display:block;width:100%;padding:0;background:transparent;border-radius:0;margin:0;height:auto;justify-content:flex-start;box-shadow:none}::ng-deep .wf-action-list ul.action-item li button{color:#6e717e;text-align:left;text-decoration:none;cursor:pointer;background:transparent;font-size:12px;text-transform:capitalize;display:flex;width:100%;padding:7.5px 11px;border:none}::ng-deep .wf-action-list ul.action-item li button i{font-size:16px;margin-right:10px;color:#1e5dd3}::ng-deep .wf-action-list ul.action-item li button:hover{background:#f3f3f3}::ng-deep .wf-action-list ul.action-item li .avatar-card{display:flex;align-items:center;width:100%;padding:7.5px}::ng-deep .wf-action-list ul.action-item li .avatar-card.within-con{display:block}::ng-deep .wf-action-list ul.action-item li .avatar-card .avatar{height:24px;width:24px!important;overflow:hidden;background:#1e5dd3;color:#fff;font-size:10px;display:inline-flex;margin-right:5px;border-radius:50%;align-items:center;justify-content:center;text-transform:uppercase}::ng-deep .wf-action-list ul.action-item li .avatar-card .avatar img{width:100%}::ng-deep .wf-action-list ul.action-item li .avatar-card .avatar+span.value{width:calc(100% - 29px)}::ng-deep .wf-action-list ul.action-item li .avatar-card span.value{width:100%;color:#6e717e;text-decoration:none;background:transparent;font-size:12px;text-transform:capitalize;display:block;font-weight:400;text-align-last:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:20px}::ng-deep .wf-action-list ul.action-item li .avatar-card span.value i{font-size:8px;color:#747576;cursor:pointer;margin-right:5px}::ng-deep .wf-action-list ul.action-item li .avatar-card.no-image{display:block}::ng-deep .wf-action-list ul.action-item li .avatar-card.no-image span.value{width:100%;display:block}::ng-deep .wf-action-list ul.action-item li .chip-item{color:#1e5dd3;padding:10px;display:flex;align-items:center}::ng-deep .wf-action-list ul.action-item li .chip-item i{color:#747576;margin-right:7px;font-size:10px;cursor:pointer;display:inline-flex}::ng-deep .wf-action-list ul.action-item li .chip-item span{display:block;width:auto;max-width:calc(100% - 17px);font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .wf-action-list ul.action-item li .chip-item span.chip-block{display:block;width:100%}::ng-deep .wf-action-list ul.action-item li .chip-item span.id{font-size:9px}::ng-deep .wf-action-list ul.action-item li .within{display:flex;align-items:center;justify-content:flex-start}::ng-deep .wf-action-list ul.action-item li .within .block{background:#f1f1f1;border-radius:2px;padding:0 2px;line-height:14px;font-size:9px;font-weight:500;color:#042e7d;margin-right:6px;display:block;text-transform:uppercase}::ng-deep .wf-action-list ul.action-item li .within .data{width:100%;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#747576;font-size:11px;font-weight:400;line-height:17px}::ng-deep .wf-action-list ul.action-item li:first-child{animation:action-list-open .25s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(2){animation:action-list-open .35s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(3){animation:action-list-open .45s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(4){animation:action-list-open .55s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(5){animation:action-list-open .65s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(6){animation:action-list-open .75s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(7){animation:action-list-open .85s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(8){animation:action-list-open .95s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(9){animation:action-list-open 1.05s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(10){animation:action-list-open 1.15s cubic-bezier(.25,.46,.45,.94) both}@keyframes action-list-open{0%{transform:translateY(50px)}to{transform:translateY(0)}}@keyframes scale-up-center{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}p.error-message{font-size:11px;font-weight:400;color:#eb2424;line-height:16px;margin-top:8px;margin-bottom:0}.edit-loader{position:absolute;top:-3px;left:-3px;width:46px;height:46px;transform:rotate(180deg)}.circular-loader{animation:rotate 2s linear infinite;height:100%;transform-origin:center center;width:100%;position:absolute;top:0;left:0;margin:auto}.loader-path{stroke-dasharray:150,200;stroke-dashoffset:-10;animation:dash 1.5s ease-in-out infinite;stroke-linecap:round}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35}to{stroke-dasharray:89,200;stroke-dashoffset:-124}}::ng-deep .dropdown{position:fixed;background:#ffffff;box-shadow:0 3px 6px #00000029;padding:24px 0;z-index:9;max-height:calc(100vh - 200px);overflow:auto}::ng-deep .dropdown ul.dropdown-list{padding:0 20px;margin:0;display:block}::ng-deep .dropdown ul.dropdown-list li{list-style:none}::ng-deep .dropdown ul.dropdown-list li app-cs-radio{display:flex}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item span.radio{position:absolute;top:12px;left:12px}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item span.value{padding:11px 12px 11px 32px;width:100%;border:1px solid #bcbcbc;border-radius:4px;margin-left:0;max-width:100%}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item svg{position:absolute;top:12px;left:12px}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item input[type=radio]:checked~span.value{background:#e8feeb;border-color:#34aa44}::ng-deep .dropdown ul.dropdown-list li+li{margin-top:8px}app-smiley-dialog{position:relative;z-index:10}app-smiley-dialog-inline{position:absolute;top:-3px;right:0;bottom:0;z-index:999;width:520px;height:calc(100vh + 3px)}::ng-deep .vx-overlay{position:fixed;z-index:3;inset:0}dp-date-picker{width:100%;position:fixed!important;z-index:14;top:-40px;left:0}dp-date-picker input{width:100%;border:none;opacity:0;pointer-events:none}dp-date-picker input:focus{outline:none}dp-date-picker .dp-popup{width:412px;box-shadow:0 0 20px #161b2f26;background-color:#fff;border-radius:4px;animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both}dp-date-picker .dp-popup dp-day-calendar,dp-date-picker .dp-popup dp-month-calendar{width:100%;pointer-events:auto}dp-date-picker .dp-popup dp-day-calendar button,dp-date-picker .dp-popup dp-month-calendar button{background:transparent;border:none;outline:none}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-left,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right{width:40px;height:40px;display:flex;justify-content:center;align-items:center;border-radius:50%;font-size:14px}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn:hover,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-left:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left:hover,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right:hover{background-color:#f3f3f3}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn{display:none}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn:before,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn:before{content:\"\";height:10px;width:10px;border-radius:50%;background:#000000;display:inline-flex}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week{display:flex;justify-content:space-around}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays .dp-calendar-weekday,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays .dp-calendar-weekday,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week .dp-calendar-weekday,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week .dp-calendar-weekday{width:52px;border-left:none;border-bottom-color:#fff;color:#747576;font-size:11px;font-weight:600;text-transform:uppercase}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button{width:40px;height:40px;border-radius:50%;display:inline-flex;justify-content:center;align-items:center}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button:hover,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button:hover,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button:hover,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button:hover{background-color:#f3f3f3}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-selected,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button.dp-selected,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-selected,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-selected{background:#1e5dd3}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-current-day,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button.dp-current-day,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-current-day,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-current-day{border:1px solid rgba(0,0,0,.38);color:#1e5dd3;background-color:#fff}dp-date-picker .dp-popup dp-day-calendar .dp-day-calendar-container,dp-date-picker .dp-popup dp-month-calendar .dp-day-calendar-container{padding:20px;border-radius:2px}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-nav-container,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-nav-container{display:flex;margin:0 0 20px;border:none}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-nav-container .dp-nav-header button,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-nav-container .dp-nav-header button{color:#000;font-size:17px;font-weight:500;margin:0 0 0 12px;padding:0}dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container,dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container{width:80px;display:flex}dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container .dp-calendar-nav-container-left button,dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container .dp-calendar-nav-container-left button,dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container .dp-calendar-nav-container-right button,dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container .dp-calendar-nav-container-right button{margin:0!important}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-wrapper,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-wrapper{border:none}dp-date-picker .dp-open+div{position:fixed!important;inset:0!important;display:flex;justify-content:center;align-items:center;z-index:99;pointer-events:none;background:rgba(0,0,0,.3)}@keyframes slide-bottom{0%{transform:translateY(-100px)}to{transform:translateY(0)}}::ng-deep span.file{display:block;width:20px;min-width:20px;border-radius:0 0 2px 2px;border:1px solid transparent;border-color:#747576;position:relative;margin-right:5px;border-top:none;margin-top:5px;background:#ffffff}::ng-deep span.file.table{margin-right:8px;width:18px;min-width:18px}::ng-deep span.file.table i{font-size:8px}::ng-deep span.file.table .format{height:8px;font-size:7px;line-height:8px;font-weight:400}::ng-deep span.file:before{position:absolute;border-radius:0;top:-4px;right:-1px;content:\"\";height:4px;width:4px;display:block;background:linear-gradient(45deg,#747576 0%,#747576 1%,#747576 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file:after{height:4px;left:-1px;right:3px;border-top:1px solid;border-right:none;border-left:1px solid;content:\"\";top:-4px;position:absolute;border-radius:2px 0 0;background:#ffffff}::ng-deep span.file .format{height:10px;font-size:6px;text-transform:uppercase;background:transparent;font-weight:600;text-align:center;display:block;line-height:10px}::ng-deep span.file i{font-size:10px;height:10px;display:flex;align-items:center;justify-content:center;color:#dbdbdb}::ng-deep span.file.docx{width:22px!important}::ng-deep span.file.pdf,::ng-deep span.file.template{border-color:#f31c39}::ng-deep span.file.pdf:before,::ng-deep span.file.template:before{background:linear-gradient(45deg,#f31c39 0%,#f31c39 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#f31c39\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.pdf:after,::ng-deep span.file.template:after{border-color:#f31c39}::ng-deep span.file.pdf .format,::ng-deep span.file.template .format{color:#f31c39}::ng-deep span.file.xlsx,::ng-deep span.file.xls,::ng-deep span.file.css,::ng-deep span.file.scss,::ng-deep span.file.less{border-color:#34aa44}::ng-deep span.file.xlsx:before,::ng-deep span.file.xls:before,::ng-deep span.file.css:before,::ng-deep span.file.scss:before,::ng-deep span.file.less:before{background:linear-gradient(45deg,#34aa44 0%,#34aa44 1%,#34aa44 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.xlsx:after,::ng-deep span.file.xls:after,::ng-deep span.file.css:after,::ng-deep span.file.scss:after,::ng-deep span.file.less:after{border-color:#34aa44;color:#34aa44}::ng-deep span.file.xlsx .format,::ng-deep span.file.xls .format,::ng-deep span.file.css .format,::ng-deep span.file.scss .format,::ng-deep span.file.less .format{color:#34aa44}::ng-deep span.file.doc,::ng-deep span.file.docx,::ng-deep span.file.psd{border-color:#1e5dd3}::ng-deep span.file.doc:before,::ng-deep span.file.docx:before,::ng-deep span.file.psd:before{background:linear-gradient(45deg,#1e5dd3 0%,#1e5dd3 1%,#1e5dd3 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.doc:after,::ng-deep span.file.docx:after,::ng-deep span.file.psd:after{border-color:#1e5dd3}::ng-deep span.file.doc .format,::ng-deep span.file.docx .format,::ng-deep span.file.psd .format{color:#1e5dd3}::ng-deep span.file.ppt,::ng-deep span.file.ai,::ng-deep span.file.html,::ng-deep span.file.jpg,::ng-deep span.file.jpeg,::ng-deep span.file.png{border-color:#f6882f}::ng-deep span.file.ppt:before,::ng-deep span.file.ai:before,::ng-deep span.file.html:before,::ng-deep span.file.jpg:before,::ng-deep span.file.jpeg:before,::ng-deep span.file.png:before{background:linear-gradient(45deg,#f6882f 0%,#f6882f 1%,#f6882f 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.ppt:after,::ng-deep span.file.ai:after,::ng-deep span.file.html:after,::ng-deep span.file.jpg:after,::ng-deep span.file.jpeg:after,::ng-deep span.file.png:after{border-color:#f6882f}::ng-deep span.file.ppt .format,::ng-deep span.file.ai .format,::ng-deep span.file.html .format,::ng-deep span.file.jpg .format,::ng-deep span.file.jpeg .format,::ng-deep span.file.png .format{color:#f6882f}::ng-deep span.file.php{border-color:#7aa6f7}::ng-deep span.file.php:before{background:linear-gradient(45deg,#7aa6f7 0%,#7aa6f7 1%,#7aa6f7 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.php:after{border-color:#7aa6f7}::ng-deep span.file.php .format{color:#7aa6f7}::ng-deep ngx-material-timepicker-container .timepicker-backdrop-overlay{background-color:#0000000d!important;z-index:9999999999!important}::ng-deep ngx-material-timepicker-container .timepicker-overlay{z-index:9999999999!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker{width:232px!important;border-radius:2px!important;box-shadow:0 4px 30px #161b2f26!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header{background-color:#fff!important;padding:0!important;border-radius:2px 2px 0 0}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container{display:block!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time{color:#000!important;width:150px!important;margin:0 auto;line-height:60px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control .timepicker-dial__control{font-size:40px;background-color:transparent!important;color:#000!important;font-weight:600;text-align:right;caret-color:transparent;outline:none;font-family:Poppins;line-height:56px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control .timepicker-dial__control:focus,::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control .timepicker-dial__control:hover{background-color:transparent!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control:last-of-type .timepicker-dial__control{text-align:left}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time span{padding:0 8px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period{display:flex!important;width:182px;margin:0 auto!important;background:#f1f1f1;padding:4px 10px;border-radius:20px;position:relative}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period:before{background:#f1f1f1;content:\"\";position:absolute;top:15px;left:-25px;width:calc(100% + 50px);height:2px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period{flex-direction:unset!important;position:relative;z-index:1}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period:after{content:\"\";position:absolute;right:-12px;top:0;border-left:solid 14px #f1f1f1;border-bottom:solid 12px transparent;border-top:solid 12px transparent;z-index:-1}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period:before{content:\"\";position:absolute;left:-18px;top:0;border-right:solid 14px #f1f1f1;border-bottom:solid 12px transparent;border-top:solid 12px transparent;z-index:-1}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period button{font-size:11px;background-color:transparent;padding:0;border-radius:20px;color:#747576;font-weight:600;font-family:Poppins;width:84px;height:24px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period button.timepicker-dial__item_active{background:#fff!important;color:#1e5dd3!important;box-shadow:0 1px 2px #dbdbdb}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period button+button{margin-left:0!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face{width:200px!important;height:200px!important;padding:10px!important;background:transparent!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number--outer{height:92px!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number--outer span{color:#000}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number--outer span.active{color:#fff}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__clock-hand{height:80px!important;top:calc(50% - 80px)!important;background-color:#1e5dd3!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number>span.active{background-color:#1e5dd3!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__clock-hand_minute:before{border:4px solid #1e5dd3!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions{display:flex!important;padding:10px 0 0!important;background:#fff!important;justify-content:space-around!important;border-radius:0 0 2px 2px!important;overflow:hidden}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions div:first-child ngx-material-timepicker-button button.timepicker-button{background:#f8f8f8;color:#1e5dd3}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions div ngx-material-timepicker-button button.timepicker-button{line-height:28px!important;width:100%;background:#1e5dd3;color:#fff;border-radius:0!important;height:32px!important;width:116px!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions div ngx-material-timepicker-button button.timepicker-button span{font-weight:500!important;font-size:11px;font-family:Poppins}::ng-deep marx-editor,::ng-deep vcomply-editor{display:block}::ng-deep marx-editor .editor-container,::ng-deep vcomply-editor .editor-container{border-radius:4px;border:1px solid #dbdbdb;transition:all .2s ease-in-out}::ng-deep marx-editor .editor-container:hover,::ng-deep vcomply-editor .editor-container:hover,::ng-deep marx-editor .editor-container:focus-within,::ng-deep vcomply-editor .editor-container:focus-within{border:1px solid #1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep marx-editor .editor-container mention-list ul li a,::ng-deep vcomply-editor .editor-container mention-list ul li a{font-size:16px!important}::ng-deep marx-editor .editor-container .editable-block,::ng-deep vcomply-editor .editor-container .editable-block{background:#fff;min-height:60px;padding:8px 12px;line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%}::ng-deep marx-editor .editor-container .editable-block:before,::ng-deep vcomply-editor .editor-container .editable-block:before{color:#747576!important}::ng-deep marx-editor .editor-container .editor-tools,::ng-deep vcomply-editor .editor-container .editor-tools{border-top:1px solid #dbdbdb;border-radius:0 0 3px 3px}::ng-deep marx-editor .editor-container .editor-tools:hover,::ng-deep vcomply-editor .editor-container .editor-tools:hover{border-color:#1e5dd3}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button,::ng-deep vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button{height:22px!important;width:22px!important;padding:0 5px}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button svg,::ng-deep vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button svg{height:22px;width:12px}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button.submit,::ng-deep vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button.submit{width:80px!important;line-height:22px;justify-content:center}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col .popover.small ul.option-list li button,::ng-deep vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col .popover.small ul.option-list li button{width:100%!important;height:auto!important}::ng-deep marx-modal .popup-modal-background,::ng-deep vcomply-modal .popup-modal-background{background-color:#161b2fcc!important}::ng-deep .within-box{background:#f1f1f1;border-radius:.125rem;color:#042e7d}::ng-deep .within-value{overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;word-break:break-word}\n"] }]
|
|
502
|
+
args: [{ selector: 'app-vcomply-workflow-engine-container', template: "<app-snack-bar></app-snack-bar>\r\n<div class=\"workflow-engine-overlay\"></div>\r\n<div\r\n class=\"workflow-engine\"\r\n [class.animate]=\"animation\"\r\n [class.bg]=\"\r\n (!isWorkflowSelectorEnabled || riskBulkUpload?.showCategoryList) &&\r\n !policy?.showCreateDocuments\r\n \"\r\n>\r\n <div\r\n class=\"workflow-engine-container\"\r\n [ngSwitch]=\"currentWorkflow?.code\"\r\n [class.with-preview-assessment]=\"(auth?.previewPanel | async) === true\"\r\n >\r\n <button\r\n (click)=\"closeWorkflowEngine()\"\r\n id=\"close-workflow-engine-btn\"\r\n class=\"close\"\r\n [appTooltip]=\"'[Esc] to close'\"\r\n placement=\"left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"true\"\r\n [class.disabled]=\"\r\n confirmationAlertConfig?.isVisible || !isWorkflowSelectorEnabled\r\n \"\r\n [class.smiley-opened]=\"\r\n riskComponent?.showSmiley ||\r\n logIssueComponent?.showSmiley ||\r\n compliance?.showSmiley ||\r\n policy?.showCreateDocuments ||\r\n responsibilityBulkUpload?.showSmiley ||\r\n responsibilityBulkUpload?.showExcel ||\r\n riskBulkUpload?.showSmiley ||\r\n riskBulkUpload?.showExcel ||\r\n program?.showSmiley ||\r\n importAnAssessment?.showSmiley\r\n \"\r\n >\r\n <i class=\"icons\"></i>\r\n </button>\r\n <div\r\n *ngIf=\"!uiKitService.isSmileyOn\"\r\n class=\"workflow-engine-more\"\r\n [hidden]=\"showMoreOption === false || policy?.showCreateDocuments\"\r\n [class.disabled]=\"confirmationAlertConfig?.isVisible\"\r\n [class.read-only]=\"uiKitService?.isLoader\"\r\n >\r\n <app-more-option\r\n #moreOption\r\n [currentWorkflow]=\"currentWorkflow?.code\"\r\n [isEditMode]=\"mode === 'EDIT'\"\r\n [isRCSelected]=\"isRCSelected\"\r\n [openedFrom]=\"openedFrom\"\r\n (selectedOption)=\"addMoreInfo($event)\"\r\n [isProgramSelected]=\"selectedProgram\"\r\n [allowedFeature]=\"feature\"\r\n [orgDetailsData]=\"orgDetails\"\r\n >\r\n </app-more-option>\r\n </div>\r\n <div\r\n class=\"workflow-engine-form\"\r\n [class.disabled]=\"confirmationAlertConfig?.isVisible\"\r\n [class.no-shadow]=\"\r\n currentWorkflow?.code == 'AMR' ||\r\n currentWorkflow?.code == 'CMR' ||\r\n currentWorkflow?.code == 'AAA' ||\r\n uiKitService.isSmileyOn ||\r\n policy?.showCreateDocuments\r\n \"\r\n >\r\n <div class=\"container\" (scroll)=\"scrollForm()\">\r\n <ng-container\r\n *ngIf=\"\r\n !['VIEW_AUDIT_EXECUTION_SUMMARY', 'EXECUTE_AUDIT_PLAN'].includes(\r\n openedFrom\r\n )\r\n \"\r\n >\r\n <div\r\n *ngIf=\"!(uiKitService.isSmileyOn || policy?.showCreateDocuments)\"\r\n class=\"form-group-row\"\r\n #dropdownRow\r\n [class.disabled]=\"\r\n mode === 'EDIT' ||\r\n !isWorkflowSelectorEnabled ||\r\n disableWorkflowChange ||\r\n selectedProgram\r\n \"\r\n >\r\n <div class=\"left\" [class.checked]=\"currentWorkflow\">\r\n <svg\r\n class=\"checkIcon\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 52 52\"\r\n >\r\n <circle\r\n class=\"checkIcon__circle\"\r\n cx=\"26\"\r\n cy=\"26\"\r\n r=\"25\"\r\n fill=\"none\"\r\n />\r\n <path\r\n class=\"checkIcon__check\"\r\n fill=\"none\"\r\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"vx-form-group\" #dropdown>\r\n <label class=\"vx-control-panel\"\r\n >Select a Workflow<span class=\"required\">*</span></label\r\n >\r\n <div\r\n class=\"select\"\r\n *ngIf=\"!currentWorkflow\"\r\n (click)=\"editWorkflow()\"\r\n >\r\n <input type=\"text\" placeholder=\"Select a Workflow\" readonly />\r\n </div>\r\n <div class=\"selected first-field\" *ngIf=\"currentWorkflow\">\r\n <!-- {{currentWorkflow | json}} -->\r\n <div\r\n class=\"chipContainer vx-d-flex vx-align-center vx-pl-2 vx-pr-2 vx-mr-2\"\r\n >\r\n <span\r\n class=\"chipName vx-fs-11 vx-label-txt no-width\"\r\n [appTooltip]=\"currentWorkflow?.workflowName\"\r\n placement=\"bottom-left\"\r\n delay=\"0\"\r\n type=\"black\"\r\n [tooltipMandatory]=\"false\"\r\n >{{ currentWorkflow?.workflowName }}</span\r\n >\r\n </div>\r\n <!-- <div class=\"chip-container\">\r\n <span class=\"chip\" [class.disabled]=\"false\">{{currentWorkflow?.workflowName}}</span>\r\n </div> -->\r\n <button\r\n class=\"edit\"\r\n type=\"button\"\r\n (click)=\"editWorkflow()\"\r\n *ngIf=\"!workflowList\"\r\n >\r\n <i class=\"icons\"></i> Edit\r\n </button>\r\n </div>\r\n <div\r\n *ngIf=\"\r\n currentWorkflow?.code === 'CAPR' &&\r\n currentBusinessCycle &&\r\n !programSimplifyFlag\r\n \"\r\n class=\"program-business-cycle vx-fs-11 vx-txt-white vx-d-flex vx-align-center vx-pt-2 vx-pb-1 vx-pl-2 vx-pr-1\"\r\n >\r\n <i class=\"icons vx-fs-12 vx-mr-1\"></i> This program is\r\n being set-up for the business cycle:\r\n <span class=\"vx-fw-600 vx-ml-1\">{{\r\n currentBusinessCycle\r\n }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <!-- <app-create-documents></app-create-documents> -->\r\n <!-- <app-bulk-view></app-bulk-view> -->\r\n <!-- <app-bulk-responsibility-view></app-bulk-responsibility-view> -->\r\n <app-workflow-compliance\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n [orgDetails]=\"orgDetails\"\r\n [isEntrust]=\"entrustButtonName.toLowerCase() == 'entrust'\"\r\n [responsibilityId]=\"id\"\r\n [mode]=\"mode\"\r\n [frameworkDetails]=\"frameworkDetails\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n *ngSwitchCase=\"'CAR'\"\r\n #responsibility\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (hideElementsFromMoreOptions)=\"hideElementsFromMoreOptions($event)\"\r\n [selectedRC]=\"selectedRC\"\r\n [closeOnEsc]=\"closeOnEsc\"\r\n (assigneeTypeChange)=\"assigneeTypeChange($event)\"\r\n (onReviewerTypeChange)=\"onReviewerChange($event)\"\r\n [feature]=\"feature\"\r\n [openedFrom]=\"openedFrom\"\r\n (rcSelected)=\"onRcSelected($event)\"\r\n (resetForm)=\"onResetForm()\"\r\n (onRemovingCheckpoint)=\"onRemovingCheckpoint($event, false, true)\"\r\n (isAssessmentDisabled)=\"isAssessmentDisabled($event)\"\r\n (checkpointCountUpdated)=\"checkpointCount = $event\"\r\n [selectedProgram]=\"selectedProgram\"\r\n ></app-workflow-compliance>\r\n <app-workflow-risk\r\n [secondaryOpenPortal]=\"secondaryOpenPortal\"\r\n [openedFrom]=\"openedFrom\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'AAR'\"\r\n #risk\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (hideElementsFromMoreOptions)=\"hideElementsFromMoreOptions($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (refreshForm)=\"onResetForm()\"\r\n [mode]=\"mode\"\r\n [riskId]=\"id\"\r\n [feature]=\"feature\"\r\n ></app-workflow-risk>\r\n <app-workflow-policy\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'CAP'\"\r\n #policy\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (shiftToEditMode)=\"shiftToEditMode()\"\r\n [feature]=\"feature\"\r\n [policyId]=\"id\"\r\n [mode]=\"mode\"\r\n [convertFileData]=\"convertFileData\"\r\n [selectedCategory]=\"selectedCategory\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n ></app-workflow-policy>\r\n <app-workflow-survey-form\r\n *ngSwitchCase=\"'CAS'\"\r\n #surveyForm\r\n ></app-workflow-survey-form>\r\n <app-add-multiple-risk\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'AMR'\"\r\n #multipleRisk\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n ></app-add-multiple-risk>\r\n <!-- <app-add-multiple-responsibility (disconnectRefresh)=\"isHostRefreshActive = $event\" (closeWorkflow)=\"closeWorkflowEngine($event)\" *ngSwitchCase=\"'CMR'\" #multipleResponsibility>\r\n </app-add-multiple-responsibility> -->\r\n\r\n <lib-add-multiple-responsibility-container\r\n [orgDetails]=\"orgDetails\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n *ngSwitchCase=\"'CMR'\"\r\n [feature]=\"feature\"\r\n #multipleResponsibility\r\n ></lib-add-multiple-responsibility-container>\r\n <!-- New Log an Issue -->\r\n <app-log-an-issue\r\n [issueDetails]=\"issueData\"\r\n *ngSwitchCase=\"'LAI'\"\r\n [reponsibilityData]=\"reponsibilityData\"\r\n [openedFrom]=\"openedFrom\"\r\n [issueId]=\"id\"\r\n #logAnIssue\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n [(mode)]=\"mode\"\r\n >\r\n </app-log-an-issue>\r\n <!-- Old Log an issue -->\r\n <!-- <app-log-an-issue *ngSwitchCase=\"'LAI'\" [responsibilitiesData]=\"reponsibiltyData\" [openedFrom]=\"openedFrom\"\r\n #logAnIssue (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\" (populateOption)=\"populateMoreOption($event)\">\r\n </app-log-an-issue> -->\r\n\r\n <app-workflow-assessment\r\n [assessmentId]=\"id\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n [openedFrom]=\"openedFrom\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'AAA'\"\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (refreshForm)=\"onResetForm()\"\r\n [mode]=\"mode\"\r\n #assessment\r\n ></app-workflow-assessment>\r\n <app-import-an-assessment\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n *ngSwitchCase=\"'IAA'\"\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (refreshForm)=\"onResetForm()\"\r\n #importAssessment\r\n ></app-import-an-assessment>\r\n <!-- <app-workflow-program #program *ngSwitchCase=\"'CAPR'\" (pickerChanged)=\"decideViewMoreOption($event)\" (disconnectRefresh)=\"isHostRefreshActive = $event\"></app-workflow-program> -->\r\n <app-workflow-program\r\n #program\r\n *ngSwitchCase=\"'CAPR'\"\r\n [orgDetails]=\"orgDetails\"\r\n [allowedFeature]=\"feature\"\r\n (disableElementsFromMoreOptions)=\"disableMoreOptions('CAPR', $event)\"\r\n [programType]=\"programType\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (disconnectRefresh)=\"isHostRefreshActive = $event\"\r\n (showConfirmationAlert)=\"showConfirmationPopup($event)\"\r\n (closeWorkflow)=\"closeWorkflowEngine($event)\"\r\n (pickerChanged)=\"decideViewMoreOption($event)\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n (refreshForm)=\"onResetForm()\"\r\n [mode]=\"mode\"\r\n [programId]=\"id\"\r\n (onRemovingRole)=\"onRemovingRole($event)\"\r\n [canFrameworkChange]=\"canFrameworkChange\"\r\n [addToProgramDetails]=\"addToProgramDetails\"\r\n ></app-workflow-program>\r\n\r\n <!-- GRC Object -->\r\n <lib-grc-object-container\r\n #grcObject\r\n *ngIf=\"false\"\r\n (populateOption)=\"populateMoreOption($event)\"\r\n ></lib-grc-object-container>\r\n </div>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n *ngSwitchCase=\"'AAR'\"\r\n (click)=\"submit()\"\r\n >\r\n {{\r\n mode === \"EDIT\" && openedFrom !== \"MOVE_TO_REGISTER\"\r\n ? \"Update\"\r\n : \"Add\"\r\n }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"\r\n !isWorkflowSelectorEnabled ||\r\n !riskBulkUpload?.category?.selectedCategory\r\n \"\r\n (click)=\"bulkUploadBrowse('AMR')\"\r\n *ngSwitchCase=\"'AMR'\"\r\n >\r\n Browse\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n (click)=\"bulkUploadBrowse('CMR')\"\r\n *ngSwitchCase=\"'CMR'\"\r\n >\r\n Browse\r\n </button>\r\n\r\n <!-- This has ternary operation to handle the both scenarios of how it works with compliance and program module, please don't change this. -->\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n (click)=\"submit()\"\r\n *ngSwitchCase=\"'CAR'\"\r\n >\r\n {{\r\n entrustButtonName !== \"\" && mode !== \"EDIT\"\r\n ? entrustButtonName\r\n : mode === \"EDIT\"\r\n ? \"UPDATE\"\r\n : \"Entrust\"\r\n }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n (click)=\"submit()\"\r\n *ngSwitchCase=\"'CAP'\"\r\n >\r\n {{\r\n convertFileData.fileName\r\n ? \"NEXT\"\r\n : mode == \"EDIT\"\r\n ? \"Update\"\r\n : \"Continue to draft\"\r\n }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n *ngSwitchCase=\"'CAS'\"\r\n >\r\n Continue to draft\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n *ngSwitchCase=\"'LAI'\"\r\n (click)=\"submit()\"\r\n >\r\n {{ mode === \"EDIT\" ? \"Update\" : \"Add\" }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n *ngSwitchCase=\"'AAA'\"\r\n (click)=\"submit()\"\r\n >\r\n {{ mode === \"EDIT\" ? \"Update\" : \"Continue to draft\" }}\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled\"\r\n (click)=\"bulkUploadBrowse('IAA')\"\r\n *ngSwitchCase=\"'IAA'\"\r\n >\r\n Browse\r\n </button>\r\n <button\r\n class=\"submit\"\r\n [class.disabled]=\"!isWorkflowSelectorEnabled || !program?.valid\"\r\n (click)=\"submit('CAPR')\"\r\n *ngSwitchCase=\"'CAPR'\"\r\n >\r\n {{ mode === \"EDIT\" ? \"Update\" : \"Save\" }}\r\n </button>\r\n <div\r\n class=\"dropdown\"\r\n *ngIf=\"workflowList\"\r\n (click)=\"closeWorkflowList()\"\r\n [style.top.px]=\"dropdownTop\"\r\n [style.left.px]=\"dropdownLeft\"\r\n [style.width.px]=\"dropdownWidth\"\r\n >\r\n <ul class=\"dropdown-list\">\r\n <li\r\n *ngFor=\"let workflow of workflowTypeList\"\r\n (click)=\"changeWorkflow($event, workflow)\"\r\n >\r\n <app-cs-radio\r\n [value]=\"workflow?.code\"\r\n [checked]=\"currentWorkflow?.code === workflow?.code\"\r\n >\r\n {{ workflow?.workflowName }}</app-cs-radio\r\n >\r\n </li>\r\n </ul>\r\n </div>\r\n <div\r\n class=\"dropdown-overlay\"\r\n *ngIf=\"workflowList\"\r\n (click)=\"closeWorkflowList()\"\r\n ></div>\r\n </div>\r\n <app-confirmation-alert\r\n id=\"confirmation-dialogue\"\r\n (action)=\"confirmWorkflowChange($event)\"\r\n *ngIf=\"confirmationAlertConfig?.isVisible\"\r\n [message]=\"confirmationAlertConfig?.message\"\r\n [config]=\"confirmationAlertConfig\"\r\n ></app-confirmation-alert>\r\n </div>\r\n</div>\r\n", styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";.dropdown-overlay{position:fixed;inset:0;z-index:2}.workflow-engine{background:#161B2FCC;position:fixed;inset:0;z-index:10}.workflow-engine button.close{position:absolute;background:transparent;cursor:pointer;border:none;font-size:16px;color:#000;top:8px;right:7px;z-index:12;display:flex;align-items:center;justify-content:center;border-radius:2px;padding:8px}.workflow-engine button.close.bulk-opened,.workflow-engine button.close.smiley-opened{z-index:10}.workflow-engine button.close:hover{background:#f1f1f1}.workflow-engine button.close.disabled{pointer-events:none;opacity:.3;filter:grayscale(1)}.workflow-engine-container{position:fixed;top:0;right:0;bottom:0;background:#ffffff;display:flex;z-index:10;border-top:3px solid #1E5DD3}.workflow-engine-container:before{content:\"\";height:30px;position:absolute;top:0;right:0;width:499px;z-index:11;background:linear-gradient(to bottom,#ffffff 0%,rgba(255,255,255,.75) 66%,rgba(255,255,255,.42) 81%,rgba(255,255,255,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#ffffff\",endColorstr=\"#00ffffff\",GradientType=0)}.workflow-engine-container.with-preview-assessment:before{display:none}.workflow-engine-container.with-preview-assessment button.close{display:none}.workflow-engine-container.with-preview-assessment .workflow-engine-form{right:-470px}.workflow-engine-container.with-preview-assessment .workflow-engine-form .container ::ng-deep app-workflow-compliance .workflw-compliance{filter:grayscale(1)!important;pointer-events:none!important}.workflow-engine-container.with-preview-assessment .workflow-engine-form button.submit{filter:grayscale(1)!important;pointer-events:none!important}.workflow-engine-more{width:318px;padding:36px 22px 36px 40px;height:100vh;overflow:auto;margin-left:-18px;scrollbar-width:none}@media screen and (max-height: 900px){.workflow-engine-more{padding:20px 22px 36px 40px}}.workflow-engine-more::-webkit-scrollbar-track{background-color:#f1f1f1;position:absolute}.workflow-engine-more::-webkit-scrollbar{width:1px;height:1px;background-color:transparent;position:absolute}.workflow-engine-more::-webkit-scrollbar-thumb{border-radius:1px;background-color:#dbdbdb;position:absolute}.workflow-engine-more.disabled{filter:grayscale(1);pointer-events:none}.workflow-engine-more.read-only{pointer-events:none}.workflow-engine-form{width:500px;position:relative}.workflow-engine-form .container{height:calc(100vh - 53px);padding:35px 24px 8px 62px;overflow:hidden;overflow-y:auto;margin-left:-22px;scrollbar-width:thin}.workflow-engine-form .container.disabled{pointer-events:none}.workflow-engine-form:before{content:\"\";top:0;bottom:-50px;left:0;width:1px;background:#f1f1f1;position:absolute}.workflow-engine-form button.submit{position:sticky;height:50px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:48px;letter-spacing:1.3px;color:#fff;background:#1e5dd3;cursor:pointer;border:1px solid #1e5dd3;outline:none;border-radius:0;text-transform:uppercase;font-weight:600;width:100%;bottom:0;padding:0}.workflow-engine-form button.submit:disabled{background:#F1F1F1;border-color:#f1f1f1;pointer-events:none;cursor:not-allowed;color:#747576}.workflow-engine-form button.submit.disabled{pointer-events:none;opacity:.3;filter:grayscale(1)}.workflow-engine-form.disabled{filter:grayscale(1);pointer-events:none}.workflow-engine-form label.browse{padding:0;margin:0;display:block;position:sticky;bottom:0}.workflow-engine-form label.browse span{height:50px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:19px;letter-spacing:3.08px;color:#fff;background:#1e5dd3;cursor:pointer;border:1px solid #1e5dd3;outline:none;border-radius:0;text-transform:uppercase;font-weight:600;width:100%}.workflow-engine-form label.browse input{position:absolute;width:100%;height:100%;z-index:1;inset:0;opacity:0;cursor:pointer}.workflow-engine-form .file-browsed{display:flex;align-items:center;background:#FFFFFF;border-top:1px solid #F1F1F1;border-bottom:1px solid #F1F1F1}.workflow-engine-form .file-browsed span{display:block;width:calc(100% - 164px);color:#161b2f;font-size:13px;font-weight:400;line-height:20px;padding:0 16px}.workflow-engine-form .file-browsed button{height:50px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:19px;letter-spacing:3.08px;color:#fff;background:#1e5dd3;cursor:pointer;border:1px solid #1e5dd3;outline:none;border-radius:0;text-transform:uppercase;font-weight:600;width:164px;bottom:0}.workflow-engine-form:after{content:\"\";height:30px;position:absolute;right:0;bottom:50px;z-index:10;background:linear-gradient(to bottom,rgba(255,255,255,0) 0%,rgba(255,255,255,.75) 22%,#ffffff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#00ffffff\",endColorstr=\"#ffffff\",GradientType=0)}.workflow-engine-form.no-shadow:after{display:none}.workflow-engine.animate{animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;z-index:-1}.workflow-engine.bg{background:#FFFFFF}.program-business-cycle{background:#F2BF19;border-radius:0 0 .25rem .25rem;position:relative;top:-.25rem;z-index:1}@keyframes animate-right{0%{transform:translate(100%)}to{transform:translate(0)}}\n", "@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";::-webkit-scrollbar-track{background-color:#f1f1f1;position:absolute}::-webkit-scrollbar{width:3px;height:3px;background-color:transparent;position:absolute}::-webkit-scrollbar-thumb{border-radius:3px;background-color:#dbdbdb;position:absolute}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}button{font-family:Poppins,sans-serif}::ng-deep input.textField{background:#fff;border-radius:.25rem;border:1px solid #dbdbdb;font-size:13px;color:#747576;padding:8px 12px;position:relative;height:2.5rem;width:100%;transition:all .2s ease-in-out}::ng-deep input.textField::placeholder{font-size:13px;color:#747576}::ng-deep input.textField:hover,::ng-deep input.textField:focus{outline:none;border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .selectBoxEnable{background:#fff;border-radius:.25rem;border:1px solid #dbdbdb;cursor:pointer;height:2.5rem;position:relative;transition:all .2s ease-in-out}::ng-deep .selectBoxEnable:after{border-bottom-style:solid;border-bottom-width:1px;border-right-style:solid;border-right-width:1px;border-color:#747576;content:\"\";display:inline-block;right:12px;position:absolute;top:calc(50% - 4px);width:5px;height:5px;transform:rotate(45deg)}::ng-deep .selectBoxEnable:hover,::ng-deep .selectBoxEnable:focus{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .selectBoxEnable.disabled{background:#f1f1f1;pointer-events:none;opacity:1}::ng-deep .selectBoxSuccess{background:#f8f8f8;border-radius:.25rem;border:1px solid #f1f1f1;min-height:2.5rem;position:relative}::ng-deep .selectBoxSuccess .selectBoxText{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:22rem}::ng-deep .selectBoxSuccess button{background:transparent;border-radius:0;border:none}::ng-deep .selectBoxSuccess button.deleteBtn{color:#d93b41}::ng-deep .selectBoxSuccess .level-left{border-right:1px solid #f1f1f1;height:2.375rem;width:5rem}::ng-deep .selectBoxSuccess .level-left .level-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:4.5rem}::ng-deep .chipContainer{background:#fff;border-radius:.125rem;box-shadow:0 0 2px #1e5dd340;height:1.5rem}::ng-deep .chipContainer .cross{cursor:pointer;min-width:16px;width:16px;height:16px;display:flex;align-items:center;justify-content:center;background:transparent;border-radius:2px;margin-left:-4px}::ng-deep .chipContainer .cross:hover{background:#f1f1f1}::ng-deep .chipContainer .chipName{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;max-width:6rem}::ng-deep .chipContainer .chipName.no-width{max-width:unset}::ng-deep .chipContainer button.countBtn{background:#1e5dd3;border-radius:1.25rem;border:none;min-width:1.5rem;height:1rem;margin:0 0 0 .5rem;padding:0 .25rem}::ng-deep .chipContainer button.countBtn.greenBg{background:#34aa44}::ng-deep .workflowLavel{background:#f1f1f1;border-radius:.125rem;color:#042e7d;min-width:1rem;height:1rem}::ng-deep .reviewSelection{border-radius:.25rem;border:1px solid #dbdbdb;transition:all .2s ease-in-out}::ng-deep .reviewSelection:hover{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .selectButton{background:#fff;border-radius:.25rem;border:1px solid #dbdbdb;cursor:pointer;height:2.5rem;position:relative;transition:all .2s ease-in-out}::ng-deep .selectButton:hover,::ng-deep .selectButton:focus{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep button.createNewBtn{background:transparent;border-radius:0;border:none}::ng-deep .vx-form-group{display:block;position:relative;margin-bottom:20px}::ng-deep .vx-form-group:after{content:\"\";display:block;clear:both}::ng-deep .vx-form-group .select{position:relative}::ng-deep .vx-form-group .select:after{border-bottom-style:solid;border-bottom-width:1px;border-right-style:solid;border-right-width:1px;border-color:#707070;content:\"\";display:inline-block;right:12px;position:absolute;top:calc(50% - 4px);width:5px;height:5px;transform:rotate(45deg)}::ng-deep .vx-form-group .select input{cursor:pointer;padding-right:30px!important}::ng-deep .vx-form-group .select .custom-input{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#ffffff;outline:none;padding:3px 12px;line-height:16px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;cursor:pointer}::ng-deep .vx-form-group .select .custom-input:empty:not(:focus):before{content:attr(aria-placeholder);line-height:16px;font-size:13px;width:94%;display:block;pointer-events:none;opacity:.8}::ng-deep .vx-form-group .select .custom-input:hover{border-color:#1e5dd3;box-shadow:0 0 5px #1e5dd345}::ng-deep .vx-form-group .select .custom-input.frequency-custom-input{padding-right:108px;display:flex;align-items:center}::ng-deep .vx-form-group .select+app-cs-switch{display:block;margin-top:8px}::ng-deep .vx-form-group .select+app-cs-switch label.cs-switch span.value{white-space:nowrap;margin-right:5px;text-transform:uppercase}::ng-deep .vx-form-group .select+app-cs-radio{margin-top:8px!important}::ng-deep .vx-form-group .select~app-cs-radio{margin-top:4px;display:block;width:100%}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item span.radio{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item span.value{font-size:11px;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0;max-width:100%;font-weight:500;color:#707070}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item span.value i{font-size:12px;color:#1e5dd3}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item svg{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .select~app-cs-radio label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}::ng-deep .vx-form-group .select.button-sec:after{display:none}::ng-deep .vx-form-group .select.button-sec button{background:transparent;border:none;display:inline-flex;float:right;color:#1e5dd3;text-transform:uppercase;font-weight:600;cursor:pointer;font-size:11px;position:absolute;top:12px;right:8px;padding:0;margin:0}::ng-deep .vx-form-group .select+.vx-control-panel{margin-top:8px}::ng-deep .vx-form-group .select+.selected{margin-top:8px}::ng-deep .vx-form-group .select.select{margin-top:8px}::ng-deep .vx-form-group .upload-format{border:1px solid #dbdbdb;border-radius:4px;padding:8px 12px;display:block}::ng-deep .vx-form-group .upload-format span.text{line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;display:block;margin-bottom:6px}::ng-deep .vx-form-group .upload-format .radio-group{display:flex}::ng-deep .vx-form-group .upload-format .radio-group app-cs-radio{display:inline-block}::ng-deep .vx-form-group .upload-format .radio-group app-cs-radio label.radio-item span.value{font-size:11px;text-transform:uppercase;margin-left:8px}::ng-deep .vx-form-group .upload-format .radio-group app-cs-radio+app-cs-radio{margin-left:12px}::ng-deep .vx-form-group .upload-format~.upload-format{margin-top:4px}::ng-deep .vx-form-group .form-tab{display:flex;justify-content:flex-start}::ng-deep .vx-form-group .form-tab button{background:transparent;color:#161b2f;font-size:11px;line-height:16px;text-transform:uppercase;cursor:pointer;padding:8px 8px 8px 0;border:none;outline:none;font-weight:500}::ng-deep .vx-form-group .form-tab button:disabled{opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group .form-tab button+button{padding:8px}::ng-deep .vx-form-group .form-tab button.active{color:#1e5dd3}::ng-deep .vx-form-group .tab-group{border:1px solid #dbdbdb;border-radius:4px;padding:0;display:block;position:relative;transition:all .2s ease-in-out}::ng-deep .vx-form-group .tab-group:hover{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group .tab-group .upload-file{padding:16px 62px 16px 24px;display:flex;align-items:center;justify-content:space-between}::ng-deep .vx-form-group .tab-group .upload-file .image{width:80px}::ng-deep .vx-form-group .tab-group .upload-file .browse span{display:inline-block;font-size:12px;color:#747576;line-height:16px;padding:0 4px}::ng-deep .vx-form-group .tab-group .upload-file .browse .label{font-size:11px;color:#1e5dd3;line-height:16px;font-weight:600;text-transform:uppercase;margin:0;padding:0}::ng-deep .vx-form-group .tab-group .upload-file .browse .label input{opacity:0;position:absolute;margin:0;padding:0;inset:0;cursor:pointer;width:100%}::ng-deep .vx-form-group .tab-group.active{border-color:#1e5dd3}::ng-deep .vx-form-group .tab-group.uploaded{margin-top:4px}::ng-deep .vx-form-group .tab-group.uploaded .upload-file{padding:8px 0!important;text-align:center}::ng-deep .vx-form-group .tab-group.uploaded .upload-file .image{display:none}::ng-deep .vx-form-group .tab-group.uploaded .upload-file .browse{width:100%;text-align:center}::ng-deep .vx-form-group .tab-group+label.vx-form-group{margin-top:8px;margin-bottom:4px}::ng-deep .vx-form-group .file-list{background:#fbfbfb;border:1px solid #f1f1f1;border-radius:4px;padding:12px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;position:relative}::ng-deep .vx-form-group .file-list span.file-name{color:#747576;line-height:16px;font-size:11px;font-weight:400;cursor:pointer;max-width:calc(100% - 20px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .vx-form-group .file-list .button-group{display:flex}::ng-deep .vx-form-group .file-list button{font-size:12px;color:#eb2424;cursor:pointer;display:flex;padding:0;border:none;outline:none;background:transparent}::ng-deep .vx-form-group .file-list button.edit{color:#1e5dd3}::ng-deep .vx-form-group .file-list button+button{margin-left:16px}::ng-deep .vx-form-group .file-list+.file-list{margin-top:4px}::ng-deep .vx-form-group .file-list .file-container{display:flex;justify-content:space-between;width:100%}::ng-deep .vx-form-group .file-list.policy{background:#ffffff}::ng-deep .vx-form-group .file-list cs-select{position:relative;margin-top:8px;width:100%}::ng-deep .vx-form-group .file-list cs-select .selection-wrap .input-group input.value{height:32px!important;font-size:13px!important}::ng-deep .vx-form-group .file-list cs-select .selection-wrap .input-group i{right:12px!important;top:12px!important}::ng-deep .vx-form-group .file-list app-line-loader{display:block;position:absolute;left:10px;right:10px;bottom:0}::ng-deep .vx-form-group label.vx-control-panel{color:#161b2f;font-size:11px;font-weight:500;line-height:16px;margin-bottom:8px;display:block;text-transform:uppercase;text-align:left}::ng-deep .vx-form-group label.vx-control-panel.custom-tag{font-size:10px}::ng-deep .vx-form-group label.vx-control-panel.vx-mt-8{margin-top:8px}::ng-deep .vx-form-group label.vx-control-panel span.required{color:#eb2424;font-size:14px;font-weight:500;position:relative;top:-2px}::ng-deep .vx-form-group label.vx-control-panel .button{background:transparent;border:none;display:inline-flex;float:right;color:#1e5dd3;text-transform:uppercase;font-weight:600;cursor:pointer;font-size:11px;padding:0;margin:0}::ng-deep .vx-form-group label.vx-control-panel app-cs-switch{float:right;display:block}::ng-deep .vx-form-group label.vx-control-panel i{margin-left:8px;font-size:12px;color:#1e5dd3;cursor:pointer;position:relative;top:1px}::ng-deep .vx-form-group label.vx-control-panel i.depreciation-icon{color:#e4b700;font-size:16px;position:relative;top:3px}::ng-deep .vx-form-group label.vx-control-panel .checkpoint-version{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:10px;font-weight:600;line-height:14px;margin-left:4px;padding:0 2px}::ng-deep .vx-form-group input[type=text],::ng-deep .vx-form-group .input{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#ffffff;outline:none;padding:8px 12px;line-height:20px;font-size:13px;color:#747576;transition:all .2s ease-in-out;width:100%;font-weight:400}::ng-deep .vx-form-group input[type=text]::placeholder,::ng-deep .vx-form-group .input::placeholder{color:#747576;font-weight:400}::ng-deep .vx-form-group input[type=text]:focus,::ng-deep .vx-form-group .input:focus,::ng-deep .vx-form-group input[type=text]:hover,::ng-deep .vx-form-group .input:hover{border-color:#1e5dd3!important;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group input[type=text].error,::ng-deep .vx-form-group .input.error{border-color:#eb2424;color:#eb2424;margin-bottom:4px}::ng-deep .vx-form-group input[type=text].error:focus,::ng-deep .vx-form-group .input.error:focus{box-shadow:0 0 5px #d31e1e45}::ng-deep .vx-form-group input[type=text]:disabled,::ng-deep .vx-form-group .input:disabled{background:#f1f1f1;cursor:not-allowed;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group input[type=text]:disabled:hover,::ng-deep .vx-form-group .input:disabled:hover{border-color:#dbdbdb;box-shadow:none}::ng-deep .vx-form-group input[type=text] span.text,::ng-deep .vx-form-group .input span.text{font-size:13px;color:#747576;font-weight:400;display:block;width:100%}::ng-deep .vx-form-group input[type=text] .input-group,::ng-deep .vx-form-group .input .input-group{display:flex;align-items:center}::ng-deep .vx-form-group input[type=text] .input-group.counter,::ng-deep .vx-form-group .input .input-group.counter{min-width:96px;width:96px}::ng-deep .vx-form-group input[type=text] .input-group.counter button,::ng-deep .vx-form-group .input .input-group.counter button{height:24px;width:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#747576;font-size:8px;cursor:pointer;outline:none}::ng-deep .vx-form-group input[type=text] .input-group.counter input,::ng-deep .vx-form-group .input .input-group.counter input{-webkit-appearance:textfield;-moz-appearance:textfield;height:24px;width:calc(100% - 48px);border:1px solid #f1f1f1;outline:none;padding:0 6px;text-align:center}::ng-deep .vx-form-group input[type=text] .input-group.counter input::-webkit-inner-spin-button,::ng-deep .vx-form-group .input .input-group.counter input::-webkit-inner-spin-button,::ng-deep .vx-form-group input[type=text] .input-group.counter input::-webkit-outer-spin-button,::ng-deep .vx-form-group .input .input-group.counter input::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}::ng-deep .vx-form-group input[type=text]+.file-list,::ng-deep .vx-form-group .input+.file-list{margin-top:8px}::ng-deep .vx-form-group input[type=text]::placeholder,::ng-deep .vx-form-group .input::placeholder{font-size:13px}::ng-deep .vx-form-group input[type=text]:-ms-input-placeholder,::ng-deep .vx-form-group .input:-ms-input-placeholder{font-size:13px}::ng-deep .vx-form-group input[type=text]::-ms-input-placeholder,::ng-deep .vx-form-group .input::-ms-input-placeholder{font-size:13px}::ng-deep .vx-form-group .classification{height:40px;border-radius:4px;border:1px solid #dbdbdb;background:#ffffff;padding:8px 12px;display:flex;justify-content:space-between}::ng-deep .vx-form-group .classification label{margin:0 4px 0 0;width:100%;position:relative;z-index:1}::ng-deep .vx-form-group .classification label span{display:block;width:100%;height:24px;border:1px solid #f1f1f1;border-radius:2px;line-height:24px;font-size:10px;text-align:center;color:#747576;font-weight:500;position:relative;text-transform:uppercase}::ng-deep .vx-form-group .classification label span:before{height:2px;content:\"\";top:0;right:0;left:0;border-radius:2px;position:absolute;transition:all .2s ease-in-out}::ng-deep .vx-form-group .classification label input{opacity:0;position:absolute;inset:0;margin:0;padding:0;width:100%;height:100%;cursor:pointer;z-index:1}::ng-deep .vx-form-group .classification label input:checked+span{color:#fff}::ng-deep .vx-form-group .classification label input:checked+span:before{bottom:0;height:100%;z-index:-1}::ng-deep .vx-form-group .classification label.low span:before{background:#34aa44}::ng-deep .vx-form-group .classification label.low-med span:before{background:#f2bf19}::ng-deep .vx-form-group .classification label.med-high span:before{background:#f29619}::ng-deep .vx-form-group .classification label.high span:before{background:#eb2424}::ng-deep .vx-form-group .classification label:last-of-type{margin-right:0}::ng-deep .vx-form-group .input{display:flex;align-items:center}::ng-deep .vx-form-group .selected{height:40px;border-radius:4px;border:1px solid #f1f1f1;background:#fbfbfb;outline:none;padding:8px;line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%;display:flex;align-items:center;position:relative;justify-content:space-between}::ng-deep .vx-form-group .selected.first-field{z-index:2}::ng-deep .vx-form-group .selected .chip-container{display:flex;width:calc(100% - 60px);align-items:center}::ng-deep .vx-form-group .selected .chip-container.checkpoints{width:calc(100% - 120px)}::ng-deep .vx-form-group .selected .chip-container span.chip{background:#ffffff;border-radius:2px;box-shadow:0 0 3px #1e5dd31a;height:24px;padding:0 8px;color:#1e5dd3;font-size:12px;display:block;width:auto;max-width:100%;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:24px}::ng-deep .vx-form-group .selected .chip-container span.chip.disabled{background:#f1f1f1;box-shadow:none;color:#747576;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group .selected .chip-container span.chip i{font-weight:400;margin-right:8px;cursor:pointer;font-size:10px;position:relative;top:1px}::ng-deep .vx-form-group .selected .chip-container span.chip span.step{background:#1e5dd3;border-radius:2px;color:#fff;font-size:9px;line-height:14px;padding:0 4px;font-weight:400;text-align:center;min-width:auto;margin-right:4px}::ng-deep .vx-form-group .selected .chip-container span.chip+span.chip{margin-left:4px}::ng-deep .vx-form-group .selected .chip-container span.chip.with-question{display:flex;align-items:center;justify-content:space-between;width:100%}::ng-deep .vx-form-group .selected .chip-container span.chip.with-question span.value{color:#1e5dd3;font-size:12px;font-weight:400;line-height:24px;padding:0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;max-width:calc(100% - 80px)}::ng-deep .vx-form-group .selected .chip-container span.chip.with-question span.label{background:#f1f1f1;border-radius:2px;color:#042e7d;font-size:9px;font-weight:600;text-transform:uppercase;padding-left:4px;padding-right:4px;line-height:12px;margin-left:8px}::ng-deep .vx-form-group .selected .chip-container span.value{color:#747576;font-size:13px;line-height:20px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 52px);padding:0 4px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text{color:#747576;font-size:10px;font-weight:500;padding:0 8px;width:122px;line-height:14px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text.first{position:relative;min-width:162px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text.first:before{background:#f1f1f1;content:\"\";position:absolute;top:0;right:0;height:calc(100% + 12px);width:1px}::ng-deep .vx-form-group .selected .chip-container span.checkpoint-point-text .no{color:#1e5dd3}::ng-deep .vx-form-group .selected .chip-container.plus span.chip{max-width:calc(50% - 35px)}::ng-deep .vx-form-group .selected .chip-container.more-one span.chip{max-width:50%}::ng-deep .vx-form-group .selected .chip-container .chip-inner{background:#fff;border-radius:2px;box-shadow:0 2px 4px #1e5dd31a;line-height:24px;padding:0 4px 0 8px;display:flex;align-items:center}::ng-deep .vx-form-group .selected .chip-container .chip-inner .chip{background:transparent;border-radius:0;box-shadow:none;height:auto;line-height:unset;padding:0;color:#747576;max-width:100px}::ng-deep .vx-form-group .selected .chip-container .chip-inner button.count{border-radius:20px;height:16px;padding:0 6px;border:none;font-size:9px;line-height:16px;margin-left:4px;min-width:20px}::ng-deep .vx-form-group .selected .chip-container .chip-inner button.count.user{background:#34aa44}::ng-deep .vx-form-group .selected .chip-container .chip-inner i.cross{cursor:pointer;position:relative;top:1px;font-size:8px}::ng-deep .vx-form-group .selected button.count{background:#1e5dd3;border-radius:2px;height:24px;padding:0 8px;border:1px solid #1e5dd3;cursor:pointer;outline:none;color:#fff;font:13px;font-weight:500;line-height:20px;white-space:nowrap;margin-left:8px}::ng-deep .vx-form-group .selected button.edit{border:none;border-radius:0;background:transparent;outline:none;cursor:pointer;display:block;font-size:11px;font-weight:600;color:#1e5dd3;text-transform:uppercase;white-space:nowrap;margin-left:8px}::ng-deep .vx-form-group .selected button.edit i{font-weight:400;font-size:8px;margin-right:4px}::ng-deep .vx-form-group .selected button.close-btn{background:transparent;border:none;padding:0;margin-left:8px;font-size:10px;color:#c7381b;display:flex;align-items:center}::ng-deep .vx-form-group .selected .workflow-label{min-width:92px;padding:4px;text-align:center;margin-left:-8px;margin-right:8px;border-right:1px solid #f1f1f1}::ng-deep .vx-form-group .selected .workflow-label p{margin:0;display:block;text-transform:uppercase}::ng-deep .vx-form-group .selected .workflow-label p.title{font-size:9px;line-height:12px;color:#161b2f;font-weight:500}::ng-deep .vx-form-group .selected .workflow-label p.description{font-size:11px;line-height:16px;color:#161b2f;font-weight:600}::ng-deep .vx-form-group .selected .workflow-label+.chip-container{width:calc(100% - 148px)}::ng-deep .vx-form-group .selected+.selected{margin-top:8px}::ng-deep .vx-form-group .selected+app-cs-switch{display:block;margin-top:8px}::ng-deep .vx-form-group .selected+app-cs-switch label.cs-switch span.value{white-space:nowrap;margin-right:5px;text-transform:uppercase}::ng-deep .vx-form-group .selected+app-cs-switch.who-toggle label.cs-switch span.value{color:#747576}::ng-deep .vx-form-group .selected+app-cs-radio{margin-top:8px!important}::ng-deep .vx-form-group .selected~app-cs-radio{margin-top:4px;display:block;width:100%}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item span.radio{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item span.value{font-size:11px;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0;max-width:100%;font-weight:500;color:#707070}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item span.value i{font-size:12px;color:#1e5dd3}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item svg{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group .selected~app-cs-radio label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}::ng-deep .vx-form-group .selected.readOnly{pointer-events:none}::ng-deep .vx-form-group .selected span.chip{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::ng-deep .vx-form-group .select-list{position:absolute;background:#ffffff;box-shadow:0 0 5px #1e5dd345;top:100%;right:0;left:0;z-index:2}::ng-deep .vx-form-group .select-list .vx-radio-group label.vx-radio-item{width:100%;padding:12px 16px}::ng-deep .vx-form-group .select-list .vx-radio-group label.vx-radio-item:hover{background:#f8f8f8}::ng-deep .vx-form-group vcomply-editor{margin-top:8px;display:block}::ng-deep .vx-form-group vcomply-editor .editor-container{border-radius:4px;border:1px solid #dbdbdb}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block{min-height:60px;padding:11px 15px;max-height:100px;line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block ul{padding:0 0 0 10px;margin-top:0}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block ul li{list-style:disc}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block ol{padding:0 0 0 10px;margin-top:0}::ng-deep .vx-form-group vcomply-editor .editor-container .editable-block ol li{list-style:decimal}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools{z-index:1;border-top:1px solid #dbdbdb;transition:none;border-radius:0 0 3px 3px;position:static}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button{height:22px!important;width:22px!important;padding:0 5px}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button svg{height:22px;width:12px}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button.submit{width:80px!important;line-height:22px;justify-content:center}::ng-deep .vx-form-group vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col .popover.small ul.option-list li button{width:100%!important;height:auto!important}::ng-deep .vx-form-group vcomply-editor .editor-container:focus-within{border-color:#1e5dd3!important;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group vcomply-editor .editor-container:focus-within .editor-tools{border-color:#1e5dd3!important}::ng-deep .vx-form-group vcomply-editor .editor-container:hover{border-color:#1e5dd3!important;box-shadow:0 3px 6px #1e5dd31a}::ng-deep .vx-form-group vcomply-editor .editor-container:hover .editor-tools{border-color:#1e5dd3!important}::ng-deep .vx-form-group vcomply-editor+app-cs-switch{margin-top:8px}::ng-deep .vx-form-group app-cs-switch label.cs-switch span.value{font-size:11px;color:#747576;text-transform:uppercase}::ng-deep .vx-form-group app-cs-switch+app-cs-switch{margin-top:8px}::ng-deep .vx-form-group .date-time-picker{display:flex;justify-content:space-between;height:40px;border-radius:4px;border:1px solid #dbdbdb;padding:11px 0;background:#ffffff}::ng-deep .vx-form-group .date-time-picker:focus-within{border-color:#1e5dd3;box-shadow:0 0 5px #1e5dd345}::ng-deep .vx-form-group .date-time-picker .picker-group{width:50%;position:relative;display:flex;align-items:center}::ng-deep .vx-form-group .date-time-picker .picker-group:first-of-type{border-right:1px solid #dbdbdb}::ng-deep .vx-form-group .date-time-picker .picker-group:only-of-type{border:none;width:100%}::ng-deep .vx-form-group .date-time-picker .picker-group input{height:38px;background:transparent;line-height:38px;font-size:13px;color:#747576;transition:all .2s ease-in-out;width:100%;font-weight:400;border:none;padding:0 12px 0 34px;outline:none}::ng-deep .vx-form-group .date-time-picker .picker-group input:focus,::ng-deep .vx-form-group .date-time-picker .picker-group input:hover{box-shadow:none;border:none}::ng-deep .vx-form-group .date-time-picker .picker-group input::placeholder{color:#999;font-size:13px}::ng-deep .vx-form-group .date-time-picker .picker-group input:-ms-input-placeholder{color:#999;font-size:13px}::ng-deep .vx-form-group .date-time-picker .picker-group input::-ms-input-placeholder{color:#999;font-size:13px}::ng-deep .vx-form-group .date-time-picker .picker-group i{display:flex;justify-content:center;align-items:center;height:16px;width:12px;position:absolute;left:12px;top:0;color:#747576;font-size:12px;pointer-events:none}::ng-deep .vx-form-group app-cs-radio.main-filed{margin-top:4px;display:block;width:100%}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item{width:100%;position:relative}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item span.radio{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item span.value{font-size:11px;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0;max-width:100%;color:#707070}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item span.value i{font-size:12px;color:#1e5dd3}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item svg{position:absolute;top:8px;left:12px}::ng-deep .vx-form-group app-cs-radio.main-filed label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}::ng-deep .vx-form-group app-cs-radio.disabled{pointer-events:none;opacity:.5;filter:grayscale(1);background:#f1f1f1}::ng-deep .vx-form-group .switch-row{display:flex}::ng-deep .vx-form-group .switch-row app-cs-switch{display:block;margin-top:8px}::ng-deep .vx-form-group .switch-row app-cs-switch label.cs-switch span.value{white-space:nowrap;margin-right:0;text-transform:uppercase;color:#747576!important}::ng-deep .vx-form-group .switch-row app-cs-switch label.cs-switch span.value i{display:inline-flex;font-size:11px;cursor:pointer;color:#1e5dd3;align-items:center;line-height:16px;margin:0 4px}::ng-deep .vx-form-group .switch-row app-cs-switch+app-cs-switch{margin-left:8px}::ng-deep .vx-form-group .switch-row.align-right{justify-content:flex-end}::ng-deep .vx-form-group .switch-row.align-right label.cs-switch span.value{margin-right:8px}::ng-deep .vx-form-group .risk-type-field{background:#f8f8f8;border:1px solid #dbdbdb;border-radius:4px;height:40px;display:flex;align-items:center;padding:4px;position:relative;z-index:1}::ng-deep .vx-form-group .risk-type-field .type-item{width:50%;position:relative}::ng-deep .vx-form-group .risk-type-field .type-item button{background:transparent;border:none;border-radius:0;color:#747576;font-size:11px;font-weight:600;text-transform:uppercase;width:100%;height:32px;padding:0 12px;text-align:left}::ng-deep .vx-form-group .risk-type-field .type-item button.disabled{background:transparent!important;color:#dbdbdb!important;filter:unset!important;opacity:unset!important;pointer-events:none;-webkit-user-select:none;user-select:none}::ng-deep .vx-form-group .risk-type-field .type-item .info{color:#1e5dd3;font-size:12px;position:absolute;top:10px;right:12px;cursor:pointer}::ng-deep .vx-form-group .risk-type-field .type-item.active button{color:#1e5dd3!important}::ng-deep .vx-form-group .risk-type-field .type-item:nth-child(2).active~.background-glider{transform:translate(100%)}::ng-deep .vx-form-group .risk-type-field .background-glider{background:#fff;border-radius:4px;box-shadow:0 1px 3px #161b2f26;position:absolute;display:flex;width:208px;height:32px;z-index:-1;transition:.25s ease-out}.left{width:36px;height:36px;margin-top:26px;margin-left:-58px;margin-right:20px;display:flex;justify-content:center;align-items:center;position:relative;z-index:10;border-radius:50%}.left.deadline-completed{margin-top:18px}.left.checked{background:transparent}.left img{width:36px}.left .checkIcon{width:32px;height:32px;background:#ffffff;border-radius:50%;stroke-width:4;stroke:#34aa44;stroke-miterlimit:10;box-shadow:inset 0 0 #34aa44;animation:fillCheck .4s ease-in-out .4s forwards,scale .3s ease-in-out .9s both;margin-top:0}.left .checkIcon__circle{stroke-dasharray:166;stroke-dashoffset:166;stroke-width:2;stroke-miterlimit:10;stroke:#34aa44;fill:none;animation:strokeCheck .6s cubic-bezier(.65,0,.45,1) forwards}.left .checkIcon__check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;animation:strokeCheck .3s cubic-bezier(.65,0,.45,1) .8s forwards}.right{width:100%}.right span.indicator{position:absolute;top:36px;left:-16px;font-size:12px;color:#f0b819;cursor:pointer}.form-group-row{display:flex;position:relative;transition:all .2s ease-in-out}.form-group-row.disabled{-webkit-user-select:none;user-select:none;pointer-events:none;filter:grayscale(1);z-index:2}.form-group-row.disabled .left{position:relative}.form-group-row.disabled .left:before{content:\"\";position:absolute;inset:2px 0 0 2px;background:#ffffff;opacity:.7;border-radius:50%;width:32px;height:32px}.form-group-row.disabled .right{opacity:.3}.form-group-row.active{pointer-events:none;filter:grayscale(0);z-index:2;opacity:1}.form-group-row.active .right .vx-form-group input,.form-group-row.active .right .vx-form-group .custom-input,.form-group-row.active .right .vx-form-group .selectBoxEnable{border-color:#1e5dd3;box-shadow:0 3px 6px #1e5dd31a}.form-group-row.active .right .vx-form-group .selectBoxEnable.disabled{border-color:#dbdbdb;box-shadow:none}::ng-deep .radio-group-selector app-cs-radio{margin-top:4px;display:block;width:100%}::ng-deep .radio-group-selector app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .radio-group-selector app-cs-radio label.radio-item .radio,::ng-deep .radio-group-selector app-cs-radio label.radio-item .radiomark{position:absolute!important;top:9px;left:12px}::ng-deep .radio-group-selector app-cs-radio label.radio-item .value{font-size:11px!important;text-transform:uppercase;border:1px solid #dbdbdb;border-radius:4px;padding:8px 8px 8px 36px;width:100%;display:flex;justify-content:space-between;margin:0!important;max-width:100%!important;font-weight:500!important;color:#707070!important}::ng-deep .radio-group-selector app-cs-radio label.radio-item .value i{font-size:12px;color:#1e5dd3}::ng-deep .radio-group-selector app-cs-radio label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}@keyframes strokeCheck{to{stroke-dashoffset:0}}@keyframes fillCheck{to{box-shadow:inset 0 0 0 2px #34aa44}}::ng-deep .wf-action-list{width:220px}::ng-deep .wf-action-list ul{padding:0;margin:0;animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both;background:#ffffff;box-shadow:0 3px 6px #1c5bd140;border-radius:4px;max-height:220px;overflow:auto}::ng-deep .wf-action-list ul.action-item{display:block}::ng-deep .wf-action-list ul.action-item li{list-style:none;border:none;border-bottom:1px solid #f1f1f1;display:block;width:100%;padding:0;background:transparent;border-radius:0;margin:0;height:auto;justify-content:flex-start;box-shadow:none}::ng-deep .wf-action-list ul.action-item li button{color:#6e717e;text-align:left;text-decoration:none;cursor:pointer;background:transparent;font-size:12px;text-transform:capitalize;display:flex;width:100%;padding:7.5px 11px;border:none}::ng-deep .wf-action-list ul.action-item li button i{font-size:16px;margin-right:10px;color:#1e5dd3}::ng-deep .wf-action-list ul.action-item li button:hover{background:#f3f3f3}::ng-deep .wf-action-list ul.action-item li .avatar-card{display:flex;align-items:center;width:100%;padding:7.5px}::ng-deep .wf-action-list ul.action-item li .avatar-card.within-con{display:block}::ng-deep .wf-action-list ul.action-item li .avatar-card .avatar{height:24px;width:24px!important;overflow:hidden;background:#1e5dd3;color:#fff;font-size:10px;display:inline-flex;margin-right:5px;border-radius:50%;align-items:center;justify-content:center;text-transform:uppercase}::ng-deep .wf-action-list ul.action-item li .avatar-card .avatar img{width:100%}::ng-deep .wf-action-list ul.action-item li .avatar-card .avatar+span.value{width:calc(100% - 29px)}::ng-deep .wf-action-list ul.action-item li .avatar-card span.value{width:100%;color:#6e717e;text-decoration:none;background:transparent;font-size:12px;text-transform:capitalize;display:block;font-weight:400;text-align-last:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:20px}::ng-deep .wf-action-list ul.action-item li .avatar-card span.value i{font-size:8px;color:#747576;cursor:pointer;margin-right:5px}::ng-deep .wf-action-list ul.action-item li .avatar-card.no-image{display:block}::ng-deep .wf-action-list ul.action-item li .avatar-card.no-image span.value{width:100%;display:block}::ng-deep .wf-action-list ul.action-item li .chip-item{color:#1e5dd3;padding:10px;display:flex;align-items:center}::ng-deep .wf-action-list ul.action-item li .chip-item i{color:#747576;margin-right:7px;font-size:10px;cursor:pointer;display:inline-flex}::ng-deep .wf-action-list ul.action-item li .chip-item span{display:block;width:auto;max-width:calc(100% - 17px);font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .wf-action-list ul.action-item li .chip-item span.chip-block{display:block;width:100%}::ng-deep .wf-action-list ul.action-item li .chip-item span.id{font-size:9px}::ng-deep .wf-action-list ul.action-item li .within{display:flex;align-items:center;justify-content:flex-start}::ng-deep .wf-action-list ul.action-item li .within .block{background:#f1f1f1;border-radius:2px;padding:0 2px;line-height:14px;font-size:9px;font-weight:500;color:#042e7d;margin-right:6px;display:block;text-transform:uppercase}::ng-deep .wf-action-list ul.action-item li .within .data{width:100%;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#747576;font-size:11px;font-weight:400;line-height:17px}::ng-deep .wf-action-list ul.action-item li:first-child{animation:action-list-open .25s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(2){animation:action-list-open .35s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(3){animation:action-list-open .45s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(4){animation:action-list-open .55s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(5){animation:action-list-open .65s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(6){animation:action-list-open .75s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(7){animation:action-list-open .85s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(8){animation:action-list-open .95s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(9){animation:action-list-open 1.05s cubic-bezier(.25,.46,.45,.94) both}::ng-deep .wf-action-list ul.action-item li:nth-child(10){animation:action-list-open 1.15s cubic-bezier(.25,.46,.45,.94) both}@keyframes action-list-open{0%{transform:translateY(50px)}to{transform:translateY(0)}}@keyframes scale-up-center{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}p.error-message{font-size:11px;font-weight:400;color:#eb2424;line-height:16px;margin-top:8px;margin-bottom:0}.edit-loader{position:absolute;top:-3px;left:-3px;width:46px;height:46px;transform:rotate(180deg)}.circular-loader{animation:rotate 2s linear infinite;height:100%;transform-origin:center center;width:100%;position:absolute;top:0;left:0;margin:auto}.loader-path{stroke-dasharray:150,200;stroke-dashoffset:-10;animation:dash 1.5s ease-in-out infinite;stroke-linecap:round}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35}to{stroke-dasharray:89,200;stroke-dashoffset:-124}}::ng-deep .dropdown{position:fixed;background:#ffffff;box-shadow:0 3px 6px #00000029;padding:24px 0;z-index:9;max-height:calc(100vh - 200px);overflow:auto}::ng-deep .dropdown ul.dropdown-list{padding:0 20px;margin:0;display:block}::ng-deep .dropdown ul.dropdown-list li{list-style:none}::ng-deep .dropdown ul.dropdown-list li app-cs-radio{display:flex}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item{width:100%;position:relative}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item span.radio{position:absolute;top:12px;left:12px}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item span.value{padding:11px 12px 11px 32px;width:100%;border:1px solid #bcbcbc;border-radius:4px;margin-left:0;max-width:100%}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item svg{position:absolute;top:12px;left:12px}::ng-deep .dropdown ul.dropdown-list li app-cs-radio label.radio-item input[type=radio]:checked~span.value{background:#e8feeb;border-color:#34aa44}::ng-deep .dropdown ul.dropdown-list li+li{margin-top:8px}app-smiley-dialog{position:relative;z-index:10}app-smiley-dialog-inline{position:absolute;top:-3px;right:0;bottom:0;z-index:999;width:520px;height:calc(100vh + 3px)}::ng-deep .vx-overlay{position:fixed;z-index:3;inset:0}dp-date-picker{width:100%;position:fixed!important;z-index:14;top:-40px;left:0}dp-date-picker input{width:100%;border:none;opacity:0;pointer-events:none}dp-date-picker input:focus{outline:none}dp-date-picker .dp-popup{width:412px;box-shadow:0 0 20px #161b2f26;background-color:#fff;border-radius:4px;animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both}dp-date-picker .dp-popup dp-day-calendar,dp-date-picker .dp-popup dp-month-calendar{width:100%;pointer-events:auto}dp-date-picker .dp-popup dp-day-calendar button,dp-date-picker .dp-popup dp-month-calendar button{background:transparent;border:none;outline:none}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-left,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right{width:40px;height:40px;display:flex;justify-content:center;align-items:center;border-radius:50%;font-size:14px}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn:hover,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-left:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left:hover,dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right:hover,dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right:hover{background-color:#f3f3f3}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn{display:none}dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn:before,dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn:before{content:\"\";height:10px;width:10px;border-radius:50%;background:#000000;display:inline-flex}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week{display:flex;justify-content:space-around}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays .dp-calendar-weekday,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays .dp-calendar-weekday,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week .dp-calendar-weekday,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week .dp-calendar-weekday{width:52px;border-left:none;border-bottom-color:#fff;color:#747576;font-size:11px;font-weight:600;text-transform:uppercase}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button{width:40px;height:40px;border-radius:50%;display:inline-flex;justify-content:center;align-items:center}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button:hover,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button:hover,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button:hover,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button:hover{background-color:#f3f3f3}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-selected,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button.dp-selected,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-selected,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-selected{background:#1e5dd3}dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-current-day,dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button.dp-current-day,dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-current-day,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-current-day{border:1px solid rgba(0,0,0,.38);color:#1e5dd3;background-color:#fff}dp-date-picker .dp-popup dp-day-calendar .dp-day-calendar-container,dp-date-picker .dp-popup dp-month-calendar .dp-day-calendar-container{padding:20px;border-radius:2px}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-nav-container,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-nav-container{display:flex;margin:0 0 20px;border:none}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-nav-container .dp-nav-header button,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-nav-container .dp-nav-header button{color:#000;font-size:17px;font-weight:500;margin:0 0 0 12px;padding:0}dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container,dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container{width:80px;display:flex}dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container .dp-calendar-nav-container-left button,dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container .dp-calendar-nav-container-left button,dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container .dp-calendar-nav-container-right button,dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container .dp-calendar-nav-container-right button{margin:0!important}dp-date-picker .dp-popup dp-day-calendar .dp-calendar-wrapper,dp-date-picker .dp-popup dp-month-calendar .dp-calendar-wrapper{border:none}dp-date-picker .dp-open+div{position:fixed!important;inset:0!important;display:flex;justify-content:center;align-items:center;z-index:99;pointer-events:none;background:rgba(0,0,0,.3)}@keyframes slide-bottom{0%{transform:translateY(-100px)}to{transform:translateY(0)}}::ng-deep span.file{display:block;width:20px;min-width:20px;border-radius:0 0 2px 2px;border:1px solid transparent;border-color:#747576;position:relative;margin-right:5px;border-top:none;margin-top:5px;background:#ffffff}::ng-deep span.file.table{margin-right:8px;width:18px;min-width:18px}::ng-deep span.file.table i{font-size:8px}::ng-deep span.file.table .format{height:8px;font-size:7px;line-height:8px;font-weight:400}::ng-deep span.file:before{position:absolute;border-radius:0;top:-4px;right:-1px;content:\"\";height:4px;width:4px;display:block;background:linear-gradient(45deg,#747576 0%,#747576 1%,#747576 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file:after{height:4px;left:-1px;right:3px;border-top:1px solid;border-right:none;border-left:1px solid;content:\"\";top:-4px;position:absolute;border-radius:2px 0 0;background:#ffffff}::ng-deep span.file .format{height:10px;font-size:6px;text-transform:uppercase;background:transparent;font-weight:600;text-align:center;display:block;line-height:10px}::ng-deep span.file i{font-size:10px;height:10px;display:flex;align-items:center;justify-content:center;color:#dbdbdb}::ng-deep span.file.docx{width:22px!important}::ng-deep span.file.pdf,::ng-deep span.file.template{border-color:#f31c39}::ng-deep span.file.pdf:before,::ng-deep span.file.template:before{background:linear-gradient(45deg,#f31c39 0%,#f31c39 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#f31c39\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.pdf:after,::ng-deep span.file.template:after{border-color:#f31c39}::ng-deep span.file.pdf .format,::ng-deep span.file.template .format{color:#f31c39}::ng-deep span.file.xlsx,::ng-deep span.file.xls,::ng-deep span.file.css,::ng-deep span.file.scss,::ng-deep span.file.less{border-color:#34aa44}::ng-deep span.file.xlsx:before,::ng-deep span.file.xls:before,::ng-deep span.file.css:before,::ng-deep span.file.scss:before,::ng-deep span.file.less:before{background:linear-gradient(45deg,#34aa44 0%,#34aa44 1%,#34aa44 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.xlsx:after,::ng-deep span.file.xls:after,::ng-deep span.file.css:after,::ng-deep span.file.scss:after,::ng-deep span.file.less:after{border-color:#34aa44;color:#34aa44}::ng-deep span.file.xlsx .format,::ng-deep span.file.xls .format,::ng-deep span.file.css .format,::ng-deep span.file.scss .format,::ng-deep span.file.less .format{color:#34aa44}::ng-deep span.file.doc,::ng-deep span.file.docx,::ng-deep span.file.psd{border-color:#1e5dd3}::ng-deep span.file.doc:before,::ng-deep span.file.docx:before,::ng-deep span.file.psd:before{background:linear-gradient(45deg,#1e5dd3 0%,#1e5dd3 1%,#1e5dd3 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.doc:after,::ng-deep span.file.docx:after,::ng-deep span.file.psd:after{border-color:#1e5dd3}::ng-deep span.file.doc .format,::ng-deep span.file.docx .format,::ng-deep span.file.psd .format{color:#1e5dd3}::ng-deep span.file.ppt,::ng-deep span.file.ai,::ng-deep span.file.html,::ng-deep span.file.jpg,::ng-deep span.file.jpeg,::ng-deep span.file.png{border-color:#f6882f}::ng-deep span.file.ppt:before,::ng-deep span.file.ai:before,::ng-deep span.file.html:before,::ng-deep span.file.jpg:before,::ng-deep span.file.jpeg:before,::ng-deep span.file.png:before{background:linear-gradient(45deg,#f6882f 0%,#f6882f 1%,#f6882f 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.ppt:after,::ng-deep span.file.ai:after,::ng-deep span.file.html:after,::ng-deep span.file.jpg:after,::ng-deep span.file.jpeg:after,::ng-deep span.file.png:after{border-color:#f6882f}::ng-deep span.file.ppt .format,::ng-deep span.file.ai .format,::ng-deep span.file.html .format,::ng-deep span.file.jpg .format,::ng-deep span.file.jpeg .format,::ng-deep span.file.png .format{color:#f6882f}::ng-deep span.file.php{border-color:#7aa6f7}::ng-deep span.file.php:before{background:linear-gradient(45deg,#7aa6f7 0%,#7aa6f7 1%,#7aa6f7 50%,rgba(41,137,216,0) 51%,rgba(125,185,232,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=\"#34aa44\",endColorstr=\"#007db9e8\",GradientType=1)}::ng-deep span.file.php:after{border-color:#7aa6f7}::ng-deep span.file.php .format{color:#7aa6f7}::ng-deep ngx-material-timepicker-container .timepicker-backdrop-overlay{background-color:#0000000d!important;z-index:9999999999!important}::ng-deep ngx-material-timepicker-container .timepicker-overlay{z-index:9999999999!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker{width:232px!important;border-radius:2px!important;box-shadow:0 4px 30px #161b2f26!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header{background-color:#fff!important;padding:0!important;border-radius:2px 2px 0 0}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container{display:block!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time{color:#000!important;width:150px!important;margin:0 auto;line-height:60px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control .timepicker-dial__control{font-size:40px;background-color:transparent!important;color:#000!important;font-weight:600;text-align:right;caret-color:transparent;outline:none;font-family:Poppins;line-height:56px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control .timepicker-dial__control:focus,::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control .timepicker-dial__control:hover{background-color:transparent!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time ngx-material-timepicker-dial-control:last-of-type .timepicker-dial__control{text-align:left}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__time span{padding:0 8px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period{display:flex!important;width:182px;margin:0 auto!important;background:#f1f1f1;padding:4px 10px;border-radius:20px;position:relative}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period:before{background:#f1f1f1;content:\"\";position:absolute;top:15px;left:-25px;width:calc(100% + 50px);height:2px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period{flex-direction:unset!important;position:relative;z-index:1}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period:after{content:\"\";position:absolute;right:-12px;top:0;border-left:solid 14px #f1f1f1;border-bottom:solid 12px transparent;border-top:solid 12px transparent;z-index:-1}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period:before{content:\"\";position:absolute;left:-18px;top:0;border-right:solid 14px #f1f1f1;border-bottom:solid 12px transparent;border-top:solid 12px transparent;z-index:-1}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period button{font-size:11px;background-color:transparent;padding:0;border-radius:20px;color:#747576;font-weight:600;font-family:Poppins;width:84px;height:24px}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period button.timepicker-dial__item_active{background:#fff!important;color:#1e5dd3!important;box-shadow:0 1px 2px #dbdbdb}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__header .timepicker-dial__container .timepicker-dial__period .timepicker-period button+button{margin-left:0!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face{width:200px!important;height:200px!important;padding:10px!important;background:transparent!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number--outer{height:92px!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number--outer span{color:#000}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number--outer span.active{color:#fff}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__clock-hand{height:80px!important;top:calc(50% - 80px)!important;background-color:#1e5dd3!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__number>span.active{background-color:#1e5dd3!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .clock-face .clock-face__clock-hand_minute:before{border:4px solid #1e5dd3!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions{display:flex!important;padding:10px 0 0!important;background:#fff!important;justify-content:space-around!important;border-radius:0 0 2px 2px!important;overflow:hidden}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions div:first-child ngx-material-timepicker-button button.timepicker-button{background:#f8f8f8;color:#1e5dd3}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions div ngx-material-timepicker-button button.timepicker-button{line-height:28px!important;width:100%;background:#1e5dd3;color:#fff;border-radius:0!important;height:32px!important;width:116px!important}::ng-deep ngx-material-timepicker-container ngx-material-timepicker-content .timepicker .timepicker__main-content .timepicker__actions div ngx-material-timepicker-button button.timepicker-button span{font-weight:500!important;font-size:11px;font-family:Poppins}::ng-deep marx-editor,::ng-deep vcomply-editor{display:block}::ng-deep marx-editor .editor-container,::ng-deep vcomply-editor .editor-container{border-radius:4px;border:1px solid #dbdbdb;transition:all .2s ease-in-out}::ng-deep marx-editor .editor-container:hover,::ng-deep vcomply-editor .editor-container:hover,::ng-deep marx-editor .editor-container:focus-within,::ng-deep vcomply-editor .editor-container:focus-within{border:1px solid #1e5dd3;box-shadow:0 3px 6px #1e5dd31a}::ng-deep marx-editor .editor-container mention-list ul li a,::ng-deep vcomply-editor .editor-container mention-list ul li a{font-size:16px!important}::ng-deep marx-editor .editor-container .editable-block,::ng-deep vcomply-editor .editor-container .editable-block{background:#fff;min-height:60px;padding:8px 12px;line-height:20px;font-size:13px;color:#747576;font-weight:400;transition:all .2s ease-in-out;width:100%}::ng-deep marx-editor .editor-container .editable-block:before,::ng-deep vcomply-editor .editor-container .editable-block:before{color:#747576!important}::ng-deep marx-editor .editor-container .editor-tools,::ng-deep vcomply-editor .editor-container .editor-tools{border-top:1px solid #dbdbdb;border-radius:0 0 3px 3px}::ng-deep marx-editor .editor-container .editor-tools:hover,::ng-deep vcomply-editor .editor-container .editor-tools:hover{border-color:#1e5dd3}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button,::ng-deep vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button{height:22px!important;width:22px!important;padding:0 5px}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button svg,::ng-deep vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button svg{height:22px;width:12px}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button.submit,::ng-deep vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col button.submit{width:80px!important;line-height:22px;justify-content:center}::ng-deep marx-editor .editor-container .editor-tools app-editor-menu .editor-menu .col .popover.small ul.option-list li button,::ng-deep vcomply-editor .editor-container .editor-tools app-editor-menu .editor-menu .col .popover.small ul.option-list li button{width:100%!important;height:auto!important}::ng-deep marx-modal .popup-modal-background,::ng-deep vcomply-modal .popup-modal-background{background-color:#161b2fcc!important}::ng-deep .within-box{background:#f1f1f1;border-radius:.125rem;color:#042e7d}::ng-deep .within-value{overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;word-break:break-word}\n"] }]
|
|
503
503
|
}], ctorParameters: function () { return [{ type: i1.UiKitService }, { type: i2.SnackBarService }, { type: i3.AuthService }]; }, propDecorators: { unloadNotification: [{
|
|
504
504
|
type: HostListener,
|
|
505
505
|
args: ['window:beforeunload', ['$event']]
|
|
@@ -597,4 +597,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
597
597
|
type: HostListener,
|
|
598
598
|
args: ['window:resize', ['$event']]
|
|
599
599
|
}] } });
|
|
600
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctZW5naW5lLWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi93b3JrZmxvdy1lbmdpbmUtY29udGFpbmVyL3dvcmtmbG93LWVuZ2luZS1jb250YWluZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvd29ya2Zsb3ctZW5naW5lLWNvbnRhaW5lci93b3JrZmxvdy1lbmdpbmUtY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFjLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFzQm5JLE1BQU0sT0FBTyxnQ0FBZ0M7SUFnQjNDLFlBQW1CLFlBQTBCLEVBQVUsUUFBeUIsRUFBUyxJQUFpQjtRQUF2RixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUFVLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBQVMsU0FBSSxHQUFKLElBQUksQ0FBYTtRQWQxRyx3QkFBbUIsR0FBRyxJQUFJLENBQUM7UUFDM0IsaUJBQVksR0FBRyxLQUFLLENBQUE7UUFDbkIsdUJBQWtCLEdBQWEsS0FBSyxDQUFDO1FBYzdCLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLFNBQUksR0FBRyxRQUFRLENBQUM7UUFDaEIsT0FBRSxHQUFHLEVBQUUsQ0FBQztRQUNSLGVBQVUsR0FBRyxRQUFRLENBQUM7UUFDckIsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3BDLHFCQUFnQixHQUFRLEVBQUUsQ0FBQztRQUMzQixxQkFBZ0IsR0FBZSxFQUFFLENBQUMsQ0FBQyx5Q0FBeUM7UUFD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QUFDLGNBQWMsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ1ksd0JBQXdCO3NCQUEvRSxTQUFTO3VCQUFDLHdCQUF3QixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDTixVQUFVO3NCQUF6RCxTQUFTO3VCQUFDLGdCQUFnQixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDRixVQUFVO3NCQUFyRCxTQUFTO3VCQUFDLFlBQVksRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ25CLFFBQVE7c0JBQTlCLFNBQVM7dUJBQUMsVUFBVTtnQkFDd0IsV0FBVztzQkFBdkQsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUN0QixNQUFNO3NCQUExQixTQUFTO3VCQUFDLFFBQVE7Z0JBQ00saUJBQWlCO3NCQUF6QyxTQUFTO3VCQUFDLFlBQVk7Z0JBQ0UsMkJBQTJCO3NCQUFuRCxTQUFTO3VCQUFDLFlBQVk7Z0JBQzJCLGtCQUFrQjtzQkFBbkUsU0FBUzt1QkFBQyxrQkFBa0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ1AsT0FBTztzQkFBL0MsU0FBUzt1QkFBQyxTQUFTLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNJLFNBQVM7c0JBQW5ELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFPaEMsT0FBTztzQkFBZixLQUFLO2dCQUcrQyxnQkFBZ0I7c0JBQXBFLFlBQVk7dUJBQUMseUJBQXlCLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBbUpuRCxVQUFVO3NCQURULFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWRkTXVsdGlwbGVSaXNrQ29tcG9uZW50IH0gZnJvbSAnLi4vYWRkLW11bHRpcGxlLXJpc2svYWRkLW11bHRpcGxlLXJpc2suY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29uZmlybWF0aW9uQWxlcnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2NvbmZpcm1hdGlvbi1hbGVydCc7XHJcbmltcG9ydCB7IElzc3VlQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2ludGVyZmFjZXMvaXNzdWUtZGF0YSc7XHJcbmltcG9ydCB7IFNuYWNrQmFyU2VydmljZSB9IGZyb20gJy4uL3VpLWtpdC9zbmFjay1iYXIvc25hY2stYmFyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBXb3JrZmxvd0Fzc2Vzc21lbnRDb21wb25lbnQgfSBmcm9tICcuLi93b3JrZmxvdy1hc3Nlc3NtZW50L3dvcmtmbG93LWFzc2Vzc21lbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSW1wb3J0QW5Bc3Nlc3NtZW50Q29tcG9uZW50IH0gZnJvbSAnLi4vd29ya2Zsb3ctYXNzZXNzbWVudC9pbXBvcnQtYW4tYXNzZXNzbWVudC9pbXBvcnQtYW4tYXNzZXNzbWVudC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBXb3JrZmxvd0NvbXBsaWFuY2VDb21wb25lbnQgfSBmcm9tICcuLi93b3JrZmxvdy1jb21wbGlhbmNlL3dvcmtmbG93LWNvbXBsaWFuY2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgV29ya2Zsb3dQb2xpY3lDb21wb25lbnQgfSBmcm9tICcuLi93b3JrZmxvdy1wb2xpY3kvd29ya2Zsb3ctcG9saWN5LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFdvcmtmbG93Umlza0NvbXBvbmVudCB9IGZyb20gJy4uL3dvcmtmbG93LXJpc2svd29ya2Zsb3ctcmlzay5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uL3dvcmtmbG93LXNlcnZpY2VzL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IFVpS2l0U2VydmljZSB9IGZyb20gJy4uL3dvcmtmbG93LXNlcnZpY2VzL3VpLWtpdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTG9nQW5Jc3N1ZUNvbXBvbmVudCB9IGZyb20gJy4vLi4vbG9nLWFuLWlzc3VlL2xvZy1hbi1pc3N1ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNb3JlT3B0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi8uLi9tb3JlLW9wdGlvbi9tb3JlLW9wdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBXb3JrZmxvd1Byb2dyYW1Db21wb25lbnQgfSBmcm9tICcuLi93b3JrZmxvdy1wcm9ncmFtL3dvcmtmbG93LXByb2dyYW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgV29ya2Zsb3dHcmNDb21wb25lbnQgfSBmcm9tICcuLi93b3JrZmxvdy1ncmMvd29ya2Zsb3ctZ3JjLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC12Y29tcGx5LXdvcmtmbG93LWVuZ2luZS1jb250YWluZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi93b3JrZmxvdy1lbmdpbmUtY29udGFpbmVyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi93b3JrZmxvdy1lbmdpbmUtY29udGFpbmVyLmNvbXBvbmVudC5sZXNzJywgJy4uL2Zvcm1zLmxlc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFdvcmtmbG93RW5naW5lQ29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuXHJcbiAgaXNIb3N0UmVmcmVzaEFjdGl2ZSA9IHRydWU7XHJcbiAgaXNSQ1NlbGVjdGVkID0gZmFsc2VcclxuICAgZmVhdHVyZUZsYWdfZ3JvdXBzIDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpiZWZvcmV1bmxvYWQnLCBbJyRldmVudCddKVxyXG4gIHVubG9hZE5vdGlmaWNhdGlvbigkZXZlbnQ6IGFueSkge1xyXG4gICAgY29uc3QgdG9rZW4gPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnY3VycmVudFVzZXInKVxyXG4gICAgaWYgKHRoaXMuaXNIb3N0UmVmcmVzaEFjdGl2ZSAmJiB0b2tlbikge1xyXG4gICAgICAkZXZlbnQucmV0dXJuVmFsdWUgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG5cclxuICB9XHJcbiAgY29uc3RydWN0b3IocHVibGljIHVpS2l0U2VydmljZTogVWlLaXRTZXJ2aWNlLCBwcml2YXRlIHNuYWNrQmFyOiBTbmFja0JhclNlcnZpY2UsIHB1YmxpYyBhdXRoOiBBdXRoU2VydmljZSkge1xyXG4gIH1cclxuICBASW5wdXQoKSB3b3JrZmxvd1R5cGUgPSAnJztcclxuICBASW5wdXQoKSBtb2RlID0gJ0NSRUFURSc7XHJcbiAgQElucHV0KCkgaWQgPSAnJztcclxuICBASW5wdXQoKSBvcGVuZWRGcm9tID0gJ0dMT0JBTCc7XHJcbiAgQE91dHB1dCgpIGNsb3NlV29ya2Zsb3cgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQElucHV0KCkgYWxsb3dlZFdvcmtmbG93czogYW55ID0gW107XHJcbiAgQElucHV0KCkgZnJhbWV3b3JrRGV0YWlsczogQXJyYXk8YW55PiA9IFtdOyAvLyBvbmx5IGZvciBjb21wbGlhbmNlIHBhcnQgZm9yIGZyYW1ld29ya1xyXG4gIEBJbnB1dCgpIHNlbGVjdGVkUkMgPSAnJztcclxuICBASW5wdXQoKSBzZWNvbmRhcnlPcGVuUG9ydGFsID0gJyc7XHJcbiAgQElucHV0KCkgZGVmYXVsdFJpc2tUeXBlID0gJ05PUk1BTCc7XHJcbiAgQElucHV0KCkgbW92ZVRvUmVnaXN0ZXJNb2RlID0nJztcclxuICBASW5wdXQoKSByZXBvbnNpYmlsaXR5RGF0YSA9IHsgLy8gb25seSB1c2VkIGJ5IGxvZyBhbiBpc3N1ZVxyXG4gICAgcmVzcG9uc2liaWxpdHlJZDogbnVsbCxcclxuICAgIHJlc3BvbnNpYmlsaXR5TmFtZTogJycsXHJcbiAgICByY0lkOm51bGxcclxuICB9O1xyXG4gIEBJbnB1dCgpIHBpZCA9ICcnO1xyXG4gIEBJbnB1dCgpIHByb2dyYW1UeXBlOiBudW1iZXIgPSAxO1xyXG4gIEBJbnB1dCgpIGlzc3VlRGF0YSA9e1xyXG4gICAgYXVkaXRQbGFuSWQgOiBudWxsLFxyXG4gICAgICBhdWRpdFBsYW5OYW1lICA6JycsXHJcbiAgICAgIHJjSWQ6IG51bGxcclxuICB9XHJcbiAgQElucHV0KCkgZW50cnVzdEJ1dHRvbk5hbWUgPSAnRW50cnVzdCdcclxuICBASW5wdXQoKSBjb25maWcgITogSXNzdWVDb25maWd1cmF0aW9uXHJcbiAgQElucHV0KCkgY29udmVydEZpbGVEYXRhID0ge31cclxuICBASW5wdXQoKSBzZWxlY3RlZENhdGVnb3J5ID0gJydcclxuXHJcbiAgQElucHV0KCkgc2VsZWN0ZWRQcm9ncmFtOiBhbnkgPSBudWxsO1xyXG4gIEBJbnB1dCgpIGNhbkZyYW1ld29ya0NoYW5nZTogYm9vbGVhbiA9IHRydWU7IC8vIGlmIGZyYW1ld29yayBjYW4gRWRpdGVkIG9yIG5vdDsgRm9yIENyZWF0ZSBhIHByb2dyYW1cclxuICBASW5wdXQoKSAvKiAgKi9cclxuICAvKiAgKi9cclxuICBASW5wdXQoKSBhZGRUb1Byb2dyYW1EZXRhaWxzOiB7XHJcbiAgICBfaWQ6IHN0cmluZztcclxuICAgIGZyYW1ld29ya19uYW1lOiBzdHJpbmc7XHJcbiAgICBpZD86IG51bWJlcjtcclxuICAgIHR5cGU6IHN0cmluZztcclxuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgfSA9IHtcclxuICAgIF9pZDogJycsXHJcbiAgICBmcmFtZXdvcmtfbmFtZTogJycsXHJcbiAgICBpZDogMCxcclxuICAgIHR5cGU6ICcnLFxyXG4gICAgZGVzY3JpcHRpb246ICcnXHJcbiAgfVxyXG4gIG9yZ0RldGFpbHM6IGFueTtcclxuICBwcm9ncmFtU2ltcGxpZnlGbGFnOiBib29sZWFuID0gZmFsc2U7XHJcbiAgaXNSZXNwb25zaWJpbGl0eVNpbXBsaWZ5RmxhZzogYm9vbGVhbiA9ZmFsc2U7XHJcblxyXG5cclxuXHJcblxyXG4gIGFuaW1hdGlvbiA9IHRydWU7XHJcbiAgd29ya2Zsb3dMaXN0ID0gZmFsc2U7XHJcbiAgc2hvd01vcmVPcHRpb24gPSB0cnVlO1xyXG4gIGlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWQgPSB0cnVlO1xyXG4gIGRpc2FibGVXb3JrZmxvd0NoYW5nZSE6IGJvb2xlYW47XHJcbiAgY2hlY2twb2ludENvdW50OiBudW1iZXIgPSAwO1xyXG4gIGN1cnJlbnRCdXNpbmVzc0N5Y2xlOmFueSA9ICcnO1xyXG4gIEBWaWV3Q2hpbGQoJ3Jpc2snLCB7IHN0YXRpYzogZmFsc2UgfSkgcmlza0NvbXBvbmVudCE6IFdvcmtmbG93Umlza0NvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKCdtdWx0aXBsZVJpc2snLCB7IHN0YXRpYzogZmFsc2UgfSkgcmlza0J1bGtVcGxvYWQhOiBBZGRNdWx0aXBsZVJpc2tDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnbXVsdGlwbGVSZXNwb25zaWJpbGl0eScsIHsgc3RhdGljOiBmYWxzZSB9KSByZXNwb25zaWJpbGl0eUJ1bGtVcGxvYWQhOiBBZGRNdWx0aXBsZVJpc2tDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgncmVzcG9uc2liaWxpdHknLCB7IHN0YXRpYzogZmFsc2UgfSkgY29tcGxpYW5jZSE6IFdvcmtmbG93Q29tcGxpYW5jZUNvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKCdtb3JlT3B0aW9uJywgeyBzdGF0aWM6IGZhbHNlIH0pIG1vcmVPcHRpb24hOiBNb3JlT3B0aW9uQ29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoJ2Ryb3Bkb3duJykgZHJvcGRvd24hOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ2Ryb3Bkb3duUm93JywgeyBzdGF0aWM6IGZhbHNlIH0pIGRyb3Bkb3duUm93ITogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCdwb2xpY3knKSBwb2xpY3khOiBXb3JrZmxvd1BvbGljeUNvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKCdsb2dBbklzc3VlJykgbG9nSXNzdWVDb21wb25lbnQhOiBMb2dBbklzc3VlQ29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoJ2Fzc2Vzc21lbnQnKSB3b3JrZmxvd0Fzc2Vzc21lbnRDb21wb25lbnQhOiBXb3JrZmxvd0Fzc2Vzc21lbnRDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnaW1wb3J0QXNzZXNzbWVudCcsIHsgc3RhdGljOiBmYWxzZSB9KSBpbXBvcnRBbkFzc2Vzc21lbnQhOiBJbXBvcnRBbkFzc2Vzc21lbnRDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgncHJvZ3JhbScsIHsgc3RhdGljOiBmYWxzZSB9KSBwcm9ncmFtICE6IFdvcmtmbG93UHJvZ3JhbUNvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKCdncmNPYmplY3QnLCB7IHN0YXRpYzogZmFsc2UgfSkgZ3JjT2JqZWN0ICE6IFdvcmtmbG93R3JjQ29tcG9uZW50O1xyXG5cclxuICBkcm9wZG93bkxlZnQhOiBhbnk7XHJcbiAgZHJvcGRvd25Ub3AhOiBhbnk7XHJcbiAgZHJvcGRvd25XaWR0aCE6IGFueTtcclxuICBjbG9zZU9uRXNjOiBib29sZWFuID0gZmFsc2U7XHJcbiAvLyBmZWF0dXJlIGZsYWdcclxuICBASW5wdXQoKSBmZWF0dXJlOiBhbnk7XHJcbiAgb3JnYW5pemF0aW9uRGV0YWlsczogYW55O1xyXG5cclxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duLmVzY2FwZScsIFsnJGV2ZW50J10pIG9uS2V5ZG93bkhhbmRsZXIoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcclxuICAgIGlmIChbdGhpcy5yaXNrQ29tcG9uZW50Py5zaG93U21pbGV5LFxyXG4gICAgdGhpcy5yaXNrQnVsa1VwbG9hZD8uc2hvd1NtaWxleSxcclxuICAgIHRoaXMucmVzcG9uc2liaWxpdHlCdWxrVXBsb2FkPy5zaG93U21pbGV5LFxyXG4gICAgdGhpcy5jb21wbGlhbmNlPy5zaG93U21pbGV5LFxyXG4gICAgdGhpcy5pbXBvcnRBbkFzc2Vzc21lbnQ/LnNob3dTbWlsZXksXHJcbiAgICB0aGlzLmxvZ0lzc3VlQ29tcG9uZW50Py5zaG93U21pbGV5XS5pbmNsdWRlcyh0cnVlKSB8fCB0aGlzLnByb2dyYW0/LmFjdGl2ZUxpc3QgfHwgdGhpcy5jb21wbGlhbmNlPy5hY3RpdmVTZWxlY3Rvcikge1xyXG4gICAgICAvL0RvIE5vdGhpbmdcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY2xvc2VXb3JrZmxvd0VuZ2luZSgpXHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgY3VycmVudFdvcmtmbG93ICE6IGFueTtcclxuICB3b3JrZmxvd1R5cGVMaXN0OiBhbnkgPSBbXHJcbiAgICB7IHdvcmtmbG93TmFtZTogJ0NyZWF0ZSBhIFJlc3BvbnNpYmlsaXR5JywgY29kZTogJ0NBUicsIHBlcm1pc3Npb25JZGVudGlmaWVyOiAnUkVTUE9OU0lCSUxJVFknIH0sXHJcbiAgICB7IHdvcmtmbG93TmFtZTogJ0NyZWF0ZSBNdWx0aXBsZSBSZXNwb25zaWJpbGl0aWVzJywgY29kZTogJ0NNUicsIHBlcm1pc3Npb25JZGVudGlmaWVyOiAnTVVMVElQTEVfUkVTUE9OU0lCSUxJVFknIH0sXHJcbiAgICB7IHdvcmtmbG93TmFtZTogJ0FkZCBhIFJpc2snLCBjb2RlOiAnQUFSJywgcGVybWlzc2lvbklkZW50aWZpZXI6ICdSSVNLJyB9LFxyXG4gICAgeyB3b3JrZmxvd05hbWU6ICdBZGQgTXVsdGlwbGUgUmlza3MnLCBjb2RlOiAnQU1SJywgcGVybWlzc2lvbklkZW50aWZpZXI6ICdNVUxUSVBMRV9SSVNLJyB9LFxyXG4gICAgeyB3b3JrZmxvd05hbWU6ICdDcmVhdGUgYSBQb2xpY3knLCBjb2RlOiAnQ0FQJywgcGVybWlzc2lvbklkZW50aWZpZXI6ICdQT0xJQ1knIH0sXHJcbiAgICB7IHdvcmtmbG93TmFtZTogJ0NyZWF0ZSBhIFN1cnZleScsIGNvZGU6ICdDQVMnLCBwZXJtaXNzaW9uSWRlbnRpZmllcjogJ1NVUlZFWScgfSxcclxuICAgIHsgd29ya2Zsb3dOYW1lOiAnQ3JlYXRlIGEgRm9ybScsIGNvZGU6ICdDQUYnLCBwZXJtaXNzaW9uSWRlbnRpZmllcjogJ0ZPUk0nIH0sXHJcbiAgICB7IHdvcmtmbG93TmFtZTogJ0xvZyBhbiBJc3N1ZScsIGNvZGU6ICdMQUknLCBwZXJtaXNzaW9uSWRlbnRpZmllcjogJ0lTU1VFJyB9LFxyXG4gICAgeyB3b3JrZmxvd05hbWU6ICdDcmVhdGUgYW4gQXNzZXNzbWVudCcsIGNvZGU6ICdBQUEnLCBwZXJtaXNzaW9uSWRlbnRpZmllcjogJ0FTU0VTU01FTlQnIH0sXHJcbiAgICB7IHdvcmtmbG93TmFtZTogJ0ltcG9ydCBhbiBBc3Nlc3NtZW50JywgY29kZTogJ0lBQScsIHBlcm1pc3Npb25JZGVudGlmaWVyOiAnSU1QT1JUX0FTU0VTU01FTlQnIH0sXHJcbiAgICB7IHdvcmtmbG93TmFtZTogJ0FkZCBhIFByb2dyYW0nLCBjb2RlOiAnQ0FQUicsIHBlcm1pc3Npb25JZGVudGlmaWVyOiAnUFJPR1JBTScgfSxcclxuICAgIHsgd29ya2Zsb3dOYW1lOiAnQWRkIGEgR1JDIE9iamVjdCcsIGNvZGU6ICdHUkMnLCBwZXJtaXNzaW9uSWRlbnRpZmllcjogJ0dSQ19PQkpFQ1RTJyB9XHJcbiAgXTtcclxuICBhZGRpdGlvbmFsSW5mb3JtYXRpb25MaXN0ID0gW1xyXG4gICAgJ09iamVjdGl2ZScsXHJcbiAgICAnUmVzcG9uc2liaWxpdHkgQ2VudGVyJyxcclxuICAgICdSZXNwb25zaWJpbGl0eSBDYXRlZ29yeSdcclxuICBdO1xyXG4gIGNvbmZpcm1hdGlvbkFsZXJ0Q29uZmlnOiBDb25maXJtYXRpb25BbGVydCA9IHsgaXNWaXNpYmxlOiBmYWxzZSB9O1xyXG4gIGNsb3NlV29ya2Zsb3dFbmdpbmUoZXZ0PzogYW55KSB7XHJcbiAgICBpZiAoZXZ0Py5jb25maXJtID09PSBmYWxzZSkge1xyXG4gICAgICB0aGlzLmNsb3NlV29ya2Zsb3cuZW1pdChldnQgPyBldnQuZXZ0IDogZXZ0KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY2xvc2VDb25maXJtKGV2dCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjbG9zZUNvbmZpcm0oZXZ0OiBhbnkpIHtcclxuICAgIHRoaXMuY29uZmlybWF0aW9uQWxlcnRDb25maWcgPSB7IGlzVmlzaWJsZTogdHJ1ZSwgbWVzc2FnZTogJ0lmIHlvdSBuYXZpZ2F0ZSBhd2F5LCBhbnkgdW5zYXZlZCBjaGFuZ2VzIHdpbGwgYmUgbG9zdC4nLCBhY3Rpb246ICdXT1JLRkxPV19DTE9TRScsIGRhdGE6IGV2dCB9O1xyXG4gIH1cclxuICBleGVjdXRlQ2xvc2UoZXZ0OiBhbnkpIHtcclxuICAgIGlmIChldnQuYWN0aW9uID09PSAnWUVTJykge1xyXG4gICAgICB0aGlzLmNsb3NlV29ya2Zsb3cuZW1pdCgpXHJcbiAgICB9XHJcbiAgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZXROZXR3b3JrTGlzdG5lcigpO1xyXG4gICAgdGhpcy5zZXRXb3JrZmxvdyh0aGlzLndvcmtmbG93VHlwZSwgdGhpcy53b3JrZmxvd1R5cGVMaXN0KTtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLmFuaW1hdGlvbiA9IGZhbHNlO1xyXG4gICAgfSwgNTAwKTtcclxuICAgIHRoaXMuc2V0V29ya2Zsb3codGhpcy53b3JrZmxvd1R5cGUsIHRoaXMud29ya2Zsb3dUeXBlTGlzdCk7XHJcbiAgICB0aGlzLmRlY2lkZVZpZXdNb3JlT3B0aW9uKCk7XHJcbiAgICB0aGlzLmZldGNoT3JnYW5pemF0aW9uRGV0YWlscygpO1xyXG4gICAgdGhpcy5nZXRVc2VyRGV0YWlscygpO1xyXG4gICAgY29uc29sZS5sb2coXCJhZGRUb1Byb2dyYW1EZXRhaWxzID09PT5cIiwgdGhpcy5hZGRUb1Byb2dyYW1EZXRhaWxzKVxyXG4gICAgdGhpcy5wcm9ncmFtU2ltcGxpZnlGbGFnID0gdGhpcy5mZWF0dXJlLmlzRmVhdHVyZUVuYWJsZWQoJ2ZmX3Byb2dyYW1fc2ltcGxpZnknKTtcclxuICAgIHRoaXMuZmVhdHVyZUZsYWdfZ3JvdXBzID0gdGhpcy5mZWF0dXJlLmlzRmVhdHVyZUVuYWJsZWQoJ2ZmX3Jlc3BvbnNpYmlsaXR5X2dyb3VwcycpO1xyXG4gICAgdGhpcy5pc1Jlc3BvbnNpYmlsaXR5U2ltcGxpZnkoKTtcclxuICAgIFxyXG4gIH1cclxuXHJcbiAgc2V0TmV0d29ya0xpc3RuZXIoKSB7XHJcbiAgICBhZGRFdmVudExpc3RlbmVyKCdvZmZsaW5lJywgKGUpID0+IHtcclxuICAgICAgdGhpcy5zbmFja0Jhci5zaG93KCdDb25uZWN0aW9uIGxvc3QhPGJyPkNoZWNrIHlvdXIgbmV0d29yayBjb25uZWN0aXZpdHkuJywgJ2FsZXJ0JylcclxuICAgIH0pO1xyXG4gICAgYWRkRXZlbnRMaXN0ZW5lcignb25saW5lJywgKGUpID0+IHtcclxuICAgICAgdGhpcy5zbmFja0Jhci5zaG93KCdZb3VcXCdyZSBiYWNrIG9ubGluZSEnLCAnc3VjY2VzcycpXHJcbiAgICB9KTtcclxuICB9XHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy53b3JrZmxvd1R5cGVMaXN0ID0gdGhpcy53b3JrZmxvd1R5cGVMaXN0LmZpbHRlcigod29ya2Zsb3c6IGFueSkgPT4ge1xyXG4gICAgICBpZiAodGhpcy5hbGxvd2VkV29ya2Zsb3dzLmluY2x1ZGVzKHdvcmtmbG93LnBlcm1pc3Npb25JZGVudGlmaWVyKSkge1xyXG4gICAgICAgIHJldHVybiB3b3JrZmxvdztcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICBpZiAodGhpcy5vcGVuZWRGcm9tID09PSAnUklTS19UUkVBVE1FTlQnKSB7XHJcbiAgICAgIHRoaXMuaXNXb3JrZmxvd1NlbGVjdG9yRW5hYmxlZCA9IHRydWU7XHJcbiAgICAgIHRoaXMuZGlzYWJsZVdvcmtmbG93Q2hhbmdlID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGRlY2lkZVZpZXdNb3JlT3B0aW9uKHR5cGU/OiBib29sZWFuKSB7XHJcbiAgICBpZih0eXBlKXtcclxuICAgICAgdGhpcy5jbG9zZU9uRXNjID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBpZiAoKHRoaXMuY3VycmVudFdvcmtmbG93Py5jb2RlID09PSAnQ01SJyB8fCB0aGlzLmN1cnJlbnRXb3JrZmxvdz8uY29kZSA9PT0gJ0FNUicgfHwgdGhpcy5jdXJyZW50V29ya2Zsb3c/LmNvZGUgPT09ICdBQUEnIHx8IHRoaXMuY3VycmVudFdvcmtmbG93Py5jb2RlID09PSAnSUFBJykpIHtcclxuICAgICAgdGhpcy5zaG93TW9yZU9wdGlvbiA9IGZhbHNlO1xyXG4gICAgICBpZiAodHlwZSA9PT0gdHJ1ZSkge1xyXG4gICAgICAgIHRoaXMuaXNXb3JrZmxvd1NlbGVjdG9yRW5hYmxlZCA9IGZhbHNlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuaXNXb3JrZmxvd1NlbGVjdG9yRW5hYmxlZCA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmICh0eXBlID09PSB0cnVlKSB7IHRoaXMuc2hvd01vcmVPcHRpb24gPSBmYWxzZTsgdGhpcy5pc1dvcmtmbG93U2VsZWN0b3JFbmFibGVkID0gZmFsc2U7IH1cclxuICAgICAgaWYgKHR5cGUgPT09IGZhbHNlKSB7IHRoaXMuc2hvd01vcmVPcHRpb24gPSB0cnVlOyB0aGlzLmlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWQgPSB0cnVlOyB9XHJcbiAgICAgIGlmICh0eXBlID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgICB0aGlzLnNob3dNb3JlT3B0aW9uID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLmlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWQgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdWJtaXQoKSB7XHJcbiAgICBzd2l0Y2ggKHRoaXMuY3VycmVudFdvcmtmbG93Py5jb2RlKSB7XHJcbiAgICAgIGNhc2UgJ0FBUic6XHJcbiAgICAgICAgdGhpcy5yaXNrQ29tcG9uZW50LnN1Ym1pdFJpc2soKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnTEFJJzpcclxuICAgICAgICB0aGlzLmxvZ0lzc3VlQ29tcG9uZW50LmFkZElzc3VlKCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ0NBUic6XHJcbiAgICAgICAgdGhpcy5jb21wbGlhbmNlLnN1Ym1pdFJlc3BvbnNpYmlsaXR5KCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ0NBUCc6XHJcbiAgICAgICAgdGhpcy5wb2xpY3kuc3VibWl0UG9saWN5KCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ0FBQSc6XHJcbiAgICAgICAgdGhpcy53b3JrZmxvd0Fzc2Vzc21lbnRDb21wb25lbnQuc3VibWl0QXNzZXNzbWVudCgpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdDQVBSJzp7XHJcbiAgICAgICAgdGhpcy5wcm9ncmFtLnNhdmVQcm9ncmFtKCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgICAgLy8gY2FzZSAnSUFBJzpcclxuICAgICAgLy8gICB0aGlzLmltcG9ydEFuQXNzZXNzbWVudC5zdWJtaXRBc3Nlc3NtZW50KCk7XHJcblxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZWRpdFdvcmtmbG93KCkge1xyXG4gICAgdGhpcy53b3JrZmxvd0xpc3QgPSAhdGhpcy53b3JrZmxvd0xpc3Q7XHJcbiAgICBjb25zdCBkcm9wZG93biA9IHRoaXMuZHJvcGRvd24ubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgIHRoaXMuZHJvcGRvd25MZWZ0ID0gZHJvcGRvd24ubGVmdDtcclxuICAgIHRoaXMuZHJvcGRvd25Ub3AgPSBkcm9wZG93bi50b3AgKyBkcm9wZG93bi5oZWlnaHQ7XHJcbiAgICB0aGlzLmRyb3Bkb3duV2lkdGggPSBkcm9wZG93bi53aWR0aDtcclxuICB9XHJcbiAgY2xvc2VXb3JrZmxvd0xpc3QoKSB7XHJcbiAgICB0aGlzLndvcmtmbG93TGlzdCA9IGZhbHNlO1xyXG4gIH1cclxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcclxuICBzaXplQ2hhbmdlKGV2ZW50OiBhbnkpIHtcclxuICAgIHRoaXMud29ya2Zsb3dMaXN0ID0gZmFsc2U7XHJcbiAgfVxyXG4gIGNoYW5nZVdvcmtmbG93KGV2dDogYW55LCBzZWxlY3RlZFdvcmtmbG93OiBhbnkpIHtcclxuICAgIGlmIChzZWxlY3RlZFdvcmtmbG93Py5jb2RlID09PSB0aGlzLmN1cnJlbnRXb3JrZmxvdz8uY29kZSkgeyByZXR1cm47IH1cclxuICAgIHRoaXMuY29uZmlybWF0aW9uQWxlcnRDb25maWcgPSB7IGlzVmlzaWJsZTogdHJ1ZSwgbWVzc2FnZTogJ0lmIHlvdSBjaGFuZ2UgdGhlIHdvcmtmbG93LCBhbnkgdW5zYXZlZCBjaGFuZ2VzIHdvdWxkIGJlIGxvc3QuJywgYWN0aW9uOiAnV09SS0ZMT1dfQ0hBTkdFJywgZGF0YTogc2VsZWN0ZWRXb3JrZmxvdyB9O1xyXG4gIH1cclxuXHJcbiAgY29uZmlybVdvcmtmbG93Q2hhbmdlKGV2dDogYW55KSB7XHJcbiAgICBjb25zb2xlLmxvZyhcImV2ZW50ID09PT09PlwiLCBldnQpXHJcbiAgICBpZiAoZXZ0LmFjdGlvbiA9PT0gJ1lFUycpIHtcclxuICAgICAgdGhpcy5jbG9zZU9uRXNjID0gdHJ1ZTtcclxuICAgICAgc3dpdGNoIChldnQucGF5bG9hZC5hY3Rpb24pIHtcclxuICAgICAgICBjYXNlICdXT1JLRkxPV19DSEFOR0UnOlxyXG4gICAgICAgICAgdGhpcy5jdXJyZW50V29ya2Zsb3cgPSBldnQ/LnBheWxvYWQ/LmRhdGEgPz8gbnVsbDtcclxuICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnRXb3JrZmxvdz8uY29kZSkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5tb3JlT3B0aW9uKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5tb3JlT3B0aW9uLnJlc2V0QWxsKHRoaXMuY3VycmVudFdvcmtmbG93Py5jb2RlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLmRlY2lkZVZpZXdNb3JlT3B0aW9uKCk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnRURJVF9SSVNLJzpcclxuICAgICAgICAgIHRoaXMucmlza0NvbXBvbmVudC5jcmVhdGVSaXNrKHRoaXMucmlza0NvbXBvbmVudC5yaXNrRm9ybSk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdQT0xJQ1lfUE9SVEFMJzpcclxuICAgICAgICAgIHRoaXMucG9saWN5LmNvbmZpcm1Qb2xpY3lQb3J0YWwoZXZ0LmFjdGlvbik7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdXT1JLRkxPV19DTE9TRSc6XHJcbiAgICAgICAgICB0aGlzLmNsb3NlV29ya2Zsb3cuZW1pdChldnQ/LnBheWxvYWQ/LmRhdGEpXHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdjaGVja3BvaW50JzpcclxuICAgICAgICAgIHRoaXMubW9yZU9wdGlvbi5tb3JlT3B0aW9uc0xpc3QuQ0FSLmZvckVhY2goKG9wdGlvbjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChvcHRpb24/LmNvZGUgPT09ICdBU1NFU1NNRU5UJyB8fCBvcHRpb24/LmNvZGUgPT09ICdDSEVDS1BPSU5UU19ORVcnKSB7XHJcbiAgICAgICAgICAgICAgb3B0aW9uLmlzRGlzYWJsZWQgPSBmYWxzZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaWYgKG9wdGlvbj8uY29kZSA9PT0gJ0NIRUNLUE9JTlRTJykge1xyXG4gICAgICAgICAgICAgIG9wdGlvbi5pc0Rpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgIHRoaXMuY29tcGxpYW5jZS5yZW1vdmVDaGVja3BvaW50KCk7XHJcbiAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgY2FzZSAnUk9MRSc6XHJcbiAgICAgICAgICB0aGlzLnByb2dyYW0ucmVtb3ZlKGV2dC5wYXlsb2FkLmRhdGEsICdST0xFJylcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgY2FzZSAnbmV3LWNoZWNrcG9pbnRzJzpcclxuICAgICAgICB0aGlzLm1vcmVPcHRpb24ubW9yZU9wdGlvbnNMaXN0LkNBUi5mb3JFYWNoKChvcHRpb246IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKG9wdGlvbj8uY29kZSA9PT0gJ0FTU0VTU01FTlQnICYmICFldnQucGF5bG9hZC5pc0RhdGFSZW1vdmVkKSB7XHJcbiAgICAgICAgICAgIG9wdGlvbi5pc0Rpc2FibGVkID0gZmFsc2U7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgaWYgKG9wdGlvbj8uY29kZSA9PT0gJ0NIRUNLUE9JTlRTJyAmJiAhZXZ0LnBheWxvYWQuaXNEYXRhUmVtb3ZlZCkge1xyXG4gICAgICAgICAgICBvcHRpb24uaXNEaXNhYmxlZCA9IHRydWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZihldnQucGF5bG9hZC5pc0NoZWNrcG9pbnRDaGVja2VkICYmIG9wdGlvbj8uY29kZSA9PT0gJ0NIRUNLUE9JTlRTX05FVycpIHtcclxuICAgICAgICAgICAgICBvcHRpb24uY2hlY2tlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIHRoaXMuY29tcGxpYW5jZS5tb3JlT3B0aW9ucy5DSEVDS1BPSU5UU19ORVcgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgdGhpcy5jb21wbGlhbmNlLnJlbW92ZSgnbmV3LWNoZWNrcG9pbnRzJyk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnYXNzaWduZWVUeXBlQ2hhbmdlJzogdGhpcy5jb21wbGlhbmNlLnJlc3BvbnNpYmlsaXR5Rm9ybS5hc3NpZ25lZXMud2hvQ2FuQ29tcGxldGUgPSAnQUxMJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29tcGxpYW5jZS5yZXNwb25zaWJpbGl0eUZvcm0uYXNzaWduZWVzLmxpc3QgPSB0aGlzLmNvbXBsaWFuY2Uuc2V0TGlzdCh0aGlzLmNvbXBsaWFuY2UuYXNzaWduZWVzTGlzdCwgdGhpcy5jb21wbGlhbmNlLm9yaWdpbmFsQXNzaWduZWUsICdlbXBsb3llZV9pZCcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJ0aGlzLmNvbXBsaWFuY2UucmVzcG9uc2liaWxpdHlGb3JtID09PlwiLCB0aGlzLmNvbXBsaWFuY2UucmVzcG9uc2liaWxpdHlGb3JtKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5mZWF0dXJlRmxhZ19ncm91cHMpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb21wbGlhbmNlWydyZXNwb25zaWJpbGl0eUZvcm0nXVsnYXNzaWduZWVHcm91cHMnXVsnbGlzdCddID0gW107XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnc2VxdWVudGlhbCc6IHRoaXMuY29tcGxpYW5jZVsncmVzcG9uc2liaWxpdHlGb3JtJ11bJ3Jldmlld2VycyddWydzZXF1ZW50aWFsV29ya2Zsb3cnXSA9IHRydWU7IGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ2FueVJldmlld2VyJzogdGhpcy5jb21wbGlhbmNlWydyZXNwb25zaWJpbGl0eUZvcm0nXVsncmV2aWV3ZXJzJ11bJ3NlcXVlbnRpYWxXb3JrZmxvdyddID0gZmFsc2U7IGJyZWFrO1xyXG5cclxuXHJcbiAgICAgIH1cclxuXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBzd2l0Y2ggKGV2dC5wYXlsb2FkLmFjdGlvbikge1xyXG5cclxuICAgICAgICBjYXNlICdQT0xJQ1lfUE9SVEFMJzpcclxuICAgICAgICAgIHRoaXMucG9saWN5LmNvbmZpcm1Qb2xpY3lQb3J0YWwoZXZ0LmFjdGlvbik7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdhc3NpZ25lZVR5cGVDaGFuZ2UnOiAgdGhpcy5jb21wbGlhbmNlLnJlc3BvbnNpYmlsaXR5Rm9ybS5hc3NpZ25lZXMud2hvQ2FuQ29tcGxldGUgPSAnQU5ZX09ORSc7IGJyZWFrO1xyXG5cclxuICAgICAgICBjYXNlICdzZXF1ZW50aWFsJzogdGhpcy5jb21wbGlhbmNlWydyZXNwb25zaWJpbGl0eUZvcm0nXVsncmV2aWV3ZXJzJ11bJ3NlcXVlbnRpYWxXb3JrZmxvdyddID0gZmFsc2U7IGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ2FueVJldmlld2VyJzogdGhpcy5jb21wbGlhbmNlWydyZXNwb25zaWJpbGl0eUZvcm0nXVsncmV2aWV3ZXJzJ11bJ3NlcXVlbnRpYWxXb3JrZmxvdyddID0gdHJ1ZTsgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMuY29uZmlybWF0aW9uQWxlcnRDb25maWcgPSB7IGlzVmlzaWJsZTogZmFsc2UsIG1lc3NhZ2U6ICcnLCBhY3Rpb246ICcnLCBkYXRhOiBudWxsIH07XHJcbiAgICByZXR1cm4gZXZ0O1xyXG4gIH1cclxuXHJcbiAgc2V0V29ya2Zsb3cod29ya0Zsb3dDb2RlOiBhbnksIHdvcmtGbG93TGlzdDogYW55KSB7XHJcbiAgICBjb25zdCBzZWxlY3RlZFdvcmtmbG93ID0gd29ya0Zsb3dMaXN0LmZpbmQoKGVsZW1lbnQ6IGFueSkgPT4gZWxlbWVudD8uY29kZSA9PT0gd29ya0Zsb3dDb2RlKTtcclxuICAgIHNlbGVjdGVkV29ya2Zsb3cgPyB0aGlzLmN1cnJlbnRXb3JrZmxvdyA9IHNlbGVjdGVkV29ya2Zsb3cgOiB0aGlzLmN1cnJlbnRXb3JrZmxvdyA9IG51bGw7XHJcbiAgICByZXR1cm4gc2VsZWN0ZWRXb3JrZmxvdztcclxuICB9XHJcblxyXG4gIGFkZE1vcmVJbmZvKGV2ZW50OiBhbnkpIHtcclxuICAgIGNvbnNvbGUubG9nKFwiPT09PT09PT09PT09PT0+MVwiLGV2ZW50KVxyXG4gICAgc3dpdGNoICh0aGlzLmN1cnJlbnRXb3JrZmxvdz8uY29kZSkge1xyXG4gICAgICBjYXNlICdBQVInOlxyXG4gICAgICAgIHRoaXMucmlza0NvbXBvbmVudC5hZGRNb3JlSW5mbyhldmVudCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ0xBSSc6XHJcbiAgICAgICAgdGhpcy5sb2dJc3N1ZUNvbXBvbmVudC5hZGRNb3JlSW5mbyhldmVudCk7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlICdDQVInOlxyXG4gICAgICAgIGlmIChldmVudD8uY29kZSA9PT0gXCJDSEVDS1BPSU5UU1wiKSB7XHJcbiAgICAgICAgICB0aGlzLm9uUmVtb3ZpbmdDaGVja3BvaW50KCdjaGVja3BvaW50Jyk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoZXZlbnQ/LmNvZGUgPT09ICdDSEVDS1BPSU5UU19ORVcnKXtcclxuICAgICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5tb3JlT3B0aW9uLm1vcmVPcHRpb25zTGlzdC5DQVIuZmluZEluZGV4KChlbGU6IGFueSkgPT4gZWxlPy5jb2RlID09PSAnQVNTRVNTTUVOVCcpO1xyXG4gICAgICAgICAgdGhpcy5tb3JlT3B0aW9uLm1vcmVPcHRpb25zTGlzdC5DQVJbaW5kZXhdLmlzRGlzYWJsZWQgPSBldmVudC5jaGVja2VkID8gdHJ1ZSA6IGZhbHNlO1xyXG4gICAgICAgICAgaWYoIGV2ZW50LmNoZWNrcG9pbnRfbmV3ICYmIHRoaXMuY2hlY2twb2ludENvdW50KSB7XHJcbiAgICAgICAgICAgIHRoaXMub25SZW1vdmluZ0NoZWNrcG9pbnQoJ25ldy1jaGVja3BvaW50cycsIHRydWUpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc3QgQ0hFQ0tQT0lOVF9JTkRFWCA9IHRoaXMubW9yZU9wdGlvbi5tb3JlT3B0aW9uc0xpc3QuQ0FSLmZpbmRJbmRleCgoZWxlOiBhbnkpID0+IGVsZT8uY29kZSA9PT0gJ0NIRUNLUE9JTlRTX05FVycpO1xyXG4gICAgICAgICAgICB0aGlzLmNvbXBsaWFuY2UubW9yZU9wdGlvbnMuQ0hFQ0tQT0lOVFNfTkVXID0gZXZlbnQuY2hlY2tlZDtcclxuICAgICAgICAgICAgaWYoZXZlbnQuY2hlY2twb2ludF9uZXcpIHtcclxuICAgICAgICAgICAgICBjb25zdCBpc0NoZWNrZWQgPSBldmVudC5jaGVja2VkID8gZmFsc2UgOiB0cnVlO1xyXG4gICAgICAgICAgICAgICBldmVudC5jaGVja2VkID0gaXNDaGVja2VkO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0aGlzLm1vcmVPcHRpb24ubW9yZU9wdGlvbnNMaXN0LkNBUltDSEVDS1BPSU5UX0lOREVYXSA9IGV2ZW50O1xyXG4gICAgICAgICAgICB0aGlzLm1vcmVPcHRpb24ubW9yZU9wdGlvbnNMaXN0LkNBUltpbmRleF0uaXNEaXNhYmxlZCA9IGV2ZW50LmNoZWNrZWRcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoZXZlbnQ/LmNvZGUgPT09ICdBU1NFU1NNRU5UJyl7XHJcbiAgICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMubW9yZU9wdGlvbi5tb3JlT3B0aW9uc0xpc3QuQ0FSLmZpbmRJbmRleCgoZWxlOiBhbnkpID0+IGVsZT8uY29kZSA9PT0gJ0NIRUNLUE9JTlRTX05FVycpO1xyXG4gICAgICAgICAgdGhpcy5tb3JlT3B0aW9uLm1vcmVPcHRpb25zTGlzdC5DQVJbaW5kZXhdLmlzRGlzYWJsZWQgPSBldmVudC5jaGVja2VkO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmNvbXBsaWFuY2UuYWRkTW9yZUluZm8oZXZlbnQpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdDQVAnOlxyXG4gICAgICAgIHRoaXMucG9saWN5LmFkZE1vcmVJbmZvKGV2ZW50KTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnQ0FQUic6XHJcbiAgICAgICAgdGhpcy5wcm9ncmFtLmFkZE1vcmVJbmZvKGV2ZW50KTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnR1JDJzpcclxuICAgICAgICB0aGlzLmdyY09iamVjdC5hZGRNb3JlSW5mbyhldmVudCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwb3B1bGF0ZU1vcmVPcHRpb24oZXZlbnQ6IGFueSkge1xyXG4gICAgY29uc29sZS5sb2coXCI9PT09PT09PT09PT09PT5cIixldmVudClcclxuICAgIGlmICh0aGlzLm1vcmVPcHRpb24pIHtcclxuICAgICAgdGhpcy5tb3JlT3B0aW9uLnBvcHVsYXRlKGV2ZW50KTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG4gIGhpZGVFbGVtZW50c0Zyb21Nb3JlT3B0aW9ucyhldmVudDogYW55KSB7XHJcbiAgICB0aGlzLm1vcmVPcHRpb24/LmhpZGVFbGVtZW50cyhldmVudCk7XHJcbiAgfVxyXG5cclxuICBzaG93Q29uZmlybWF0aW9uUG9wdXAoY29uZmlnOiBDb25maXJtYXRpb25BbGVydCkge1xyXG4gICAgdGhpcy5jb25maXJtYXRpb25BbGVydENvbmZpZyA9IGNvbmZpZztcclxuICB9XHJcblxyXG4gIGJ1bGtVcGxvYWRCcm93c2UoZXZlbnQ6IGFueSkge1xyXG4gICAgc3dpdGNoIChldmVudCkge1xyXG4gICAgICBjYXNlICdBTVInOlxyXG4gICAgICAgIHRoaXMucmlza0J1bGtVcGxvYWQudHJpZ2dlckJyb3dzZUZpbGUoKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnQ01SJzpcclxuICAgICAgICB0aGlzLnJlc3BvbnNpYmlsaXR5QnVsa1VwbG9hZC50cmlnZ2VyQnJvd3NlRmlsZSgpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdJQUEnOlxyXG4gICAgICAgIHRoaXMuaW1wb3J0QW5Bc3Nlc3NtZW50LnRyaWdnZXJCcm93c2VGaWxlKCk7XHJcblxyXG5cclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBvblJlc2V0Rm9ybSgpIHtcclxuICAgIHRoaXMubW9kZSA9ICdDUkVBVEUnO1xyXG4gICAgdGhpcy5lbnRydXN0QnV0dG9uTmFtZSA9ICdFbnRydXN0JztcclxuICB9XHJcbiAgc2hpZnRUb0VkaXRNb2RlKCkge1xyXG4gICAgdGhpcy5tb2RlID0gJ0VESVQnXHJcbiAgfVxyXG4gIHNjcm9sbEZvcm0oKSB7XHJcbiAgICBpZiAodGhpcy5kcm9wZG93blJvdz8ubmF0aXZlRWxlbWVudD8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk/LnRvcCA8IDM4KSB7XHJcbiAgICAgIHRoaXMuZHJvcGRvd25Sb3c/Lm5hdGl2ZUVsZW1lbnQ/LmNsYXNzTGlzdD8uYWRkKCdoaWRlJyk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmRyb3Bkb3duUm93Py5uYXRpdmVFbGVtZW50Py5jbGFzc0xpc3Q/LnJlbW92ZSgnaGlkZScpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICpcclxuICAgKiBAcGFyYW0gZXZlbnQgd2hpY2ggbW9yZSBvcHRpb25zIHdlIGFyZSByZW1vdmluZy5cclxuICAgKiBAcGFyYW0gaXNDaGVja3BvaW50Q2hlY2tlZCAgaXMgdHJ1ZSBpZiB2YWx1ZSBjaGVja3BvaW50cyBpcyByZW1vdmVkIGJ5IGNsaWNraW5nIG9uIG1vcmUgb3B0aW9uc1xyXG4gICAqL1xyXG4gIG9uUmVtb3ZpbmdDaGVja3BvaW50KGV2ZW50OiBzdHJpbmcsIGlzQ2hlY2twb2ludENoZWNrZWQ/OiBib29sZWFuLCBpc0RhdGFSZW1vdmVkPzogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgbGV0IG1zZyA9ICcnO1xyXG4gICAgaWYoZXZlbnQgPT09ICduZXctY2hlY2twb2ludHMnKSB7XHJcbiAgICAgIG1zZyA9ICdJZiB5b3UgY2hvb3NlIHRvIHJlbW92ZSB0aGVzZSBDaGVja3BvaW50cywgdGhleSB3aWxsIGJlIGRlbGV0ZWQgYW5kIGNhbm5vdCBiZSByZXN0b3JlZC4gSG93ZXZlciwgeW91IHdpbGwgc3RpbGwgYmUgYWJsZSB0byBjcmVhdGUgbmV3IENoZWNrcG9pbnRzIG9yIGxpbmsgYW4gQXNzZXNzbWVudC4nXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBtc2cgPSAnSWYgeW91IGNob29zZSB0byByZW1vdmUgdGhlc2UgY2hlY2twb2ludHMsIHRoZXkgd2lsbCBiZSBkZWxldGVkIGFuZCBjYW5ub3QgYmUgcmVzdG9yZWQuJ1xyXG4gICAgfVxyXG4gICAgdGhpcy5jb25maXJtYXRpb25BbGVydENvbmZpZyA9IHsgaXNWaXNpYmxlOiB0cnVlLCBtZXNzYWdlOiBtc2csIGFjdGlvbjogZXZlbnQsIGRhdGE6IHsgdHlwZTogJ3Jlc3BvbnNpYmlsaXR5Q2hlY2twb2ludCcgfSAsIGlzQ2hlY2twb2ludENoZWNrZWQ6IChpc0NoZWNrcG9pbnRDaGVja2VkID8/IGZhbHNlKSwgaXNEYXRhUmVtb3ZlZDogKGlzRGF0YVJlbW92ZWQgPz8gZmFsc2UpfTtcclxuICB9XHJcblxyXG4gIG9uUmVtb3ZpbmdSb2xlKGV2ZW50OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGxldCBtc2cgPSAnJztcclxuICAgIGlmKGV2ZW50KSB7XHJcbiAgICAgIG1zZyA9ICdJZiB5b3UgY2hhbmdlIHRoZSByb2xlcywgYW55IHVuc2F2ZWQgY2hhbmdlcyB3b3VsZCBiZSBsb3N0LidcclxuICAgIH1cclxuICAgIHRoaXMuY29uZmlybWF0aW9uQWxlcnRDb25maWcgPSB7IGlzVmlzaWJsZTogdHJ1ZSwgbWVzc2FnZTogbXNnLCBhY3Rpb246ICdST0xFJywgZGF0YTogZXZlbnR9XHJcbiAgfVxyXG5cclxuICBpc0Fzc2Vzc21lbnREaXNhYmxlZChpc0Rpc2FibGVkOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLm1vcmVPcHRpb24ubW9yZU9wdGlvbnNMaXN0LkNBUi5mb3JFYWNoKChvcHRpb246IGFueSkgPT4ge1xyXG4gICAgICBpZiAob3B0aW9uPy5jb2RlID09PSAnQVNTRVNTTUVOVCcgfHwgb3B0aW9uPy5jb2RlID09PSAnQ0hFQ0tQT0lOVFNfTkVXJykge1xyXG4gICAgICAgIG9wdGlvbi5pc0Rpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBkaXNhYmxlTW9yZU9wdGlvbnMod29ya2Zsb3dDb2RlOmFueSxkaXNhYmxlZEVsZW1lbnRzQ29kZTphbnkpe1xyXG4gICAgaWYoT2JqZWN0LmtleXModGhpcy5tb3JlT3B0aW9uLm1vcmVPcHRpb25zTGlzdCkuaW5jbHVkZXMod29ya2Zsb3dDb2RlKSl7XHJcbiAgICAgIHRoaXMubW9yZU9wdGlvbi5tb3JlT3B0aW9uc0xpc3Rbd29ya2Zsb3dDb2RlXS5mb3JFYWNoKChvcHRpb246IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChkaXNhYmxlZEVsZW1lbnRzQ29kZS5pbmNsdWRlcyhvcHRpb24/LmNvZGUpKSB7XHJcbiAgICAgICAgICBvcHRpb24uaXNEaXNhYmxlZCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uQ2hlY2twb2ludFNlbGVjdGlvbihldmVudDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLmNoZWNrcG9pbnRDb3VudCA9IGV2ZW50O1xyXG5cclxuICB9XHJcblxyXG4gIG9uUmNTZWxlY3RlZChpc1JjU2VsZWN0ZWQ6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIHRoaXMuaXNSQ1NlbGVjdGVkID0gaXNSY1NlbGVjdGVkO1xyXG4gIH1cclxuXHJcbiAgZmV0Y2hPcmdhbml6YXRpb25EZXRhaWxzKCl7XHJcbiAgICB0aGlzLmF1dGguZ2V0T3JnYW5pemF0aW9uRGV0YWlscygpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6KHJlczphbnkpPT57XHJcbiAgICAgICAgdGhpcy5vcmdEZXRhaWxzID0gcmVzO1xyXG4gICAgICAgIGlmKHJlcz8uYnVzaW5lc3NfY3ljbGVzX2FyciAmJiByZXM/LmJ1c2luZXNzX2N5Y2xlc19hcnI/Lmxlbmd0aCl7XHJcbiAgICAgICAgICBjb25zdCBzZWxlY3RlZCA9IHJlcz8uYnVzaW5lc3NfY3ljbGVzX2Fyci5maWx0ZXIoKGVsZTphbnkpID0+IGVsZT8uc2VsZWN0ZWQpO1xyXG4gICAgICAgICAgY29uc3Qgc3BsaXR0ZWQgPSBzZWxlY3RlZFswXS5idXNpbmVzc19jeWNsZT8uc3BsaXQoJy0nKTtcclxuICAgICAgICAgdGhpcy5jdXJyZW50QnVzaW5lc3NDeWNsZSA9IGAke3NwbGl0dGVkWzBdPy5zbGljZSgyKX0gLSAke3NwbGl0dGVkWzFdPy5zbGljZSg0KX1gXHJcbiAgICAgICAgfX1cclxuICAgIH0pXHJcbiAgfVxyXG4gIGdldFVzZXJEZXRhaWxzKCkge1xyXG4gICAgdGhpcy5hdXRoLmdldFVzZXJJbmZvKCkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZihyZXMpe1xyXG4gICAgICAgIHRoaXMuYXV0aC51c2VyRGV0YWlscyA9IHJlcztcclxuICAgICAgfVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIGFzc2lnbmVlVHlwZUNoYW5nZSgpIHtcclxuICAgIHRoaXMuY29uZmlybWF0aW9uQWxlcnRDb25maWcgPSB7IGlzVmlzaWJsZTogdHJ1ZSwgbWVzc2FnZTogJ1RoaXMgYWN0aW9uIHdpbGwgcmVzZXQgdGhlIGNoYW5nZXMgYW5kIGFzc2lnbiB0aGUgcmVzcG9uc2liaWxpdHkgYmFjayB0byB0aGUgb3JpZ2luYWwgYXNzaWduZWUuJywgYWN0aW9uOiAnYXNzaWduZWVUeXBlQ2hhbmdlJywgZGF0YToge30gLCBpc1JlZEFsZXJ0OiB0cnVlfTtcclxuICB9XHJcblxyXG4gIC8vIGV2ZW50ID0+ICdzZXF1ZW50aWFsJyB8fCAnYW55UmV2aWV3ZXInXHJcbiAgb25SZXZpZXdlckNoYW5nZShldmVudDogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBjb21tb25UZXh0OiBzdHJpbmcgPSAnT25jZSBjb25maXJtZWQsIHRoZSBuZXcgcmV2aWV3IHdvcmtmbG93IHdpbGwgYmUgYXBwbGljYWJsZSBmb3IgYWxsIGN1cnJlbnQgYW5kIGZ1dHVyZSByZXZpZXcgZHVlIGRhdGVzLidcclxuICAgIGNvbnN0IG1zZyA9IGNvbW1vblRleHQgKyAgKGV2ZW50ID09PSAnYW55UmV2aWV3ZXInID8gYElmIGFueSByZXZpZXdlciBoYWQgY29tcGxldGVkIHRoZSByZXZpZXcsIHRoZSBjdXJyZW50IHJldmlldyBkdWUgZGF0ZSB3aWxsIGJlIGNsb3NlZCBhbmQgdGhlIHJldmlldyBzdGF0dXMgd2lsbCBiZSB1cGRhdGVkIHRvICdDb21wbGV0ZWQnLmA6ICcnKVxyXG4gICAgdGhpcy5jb25maXJtYXRpb25BbGVydENvbmZpZyA9IHsgaXNWaXNpYmxlOiB0cnVlLCBtZXNzYWdlOiBtc2csIGFjdGlvbjogZXZlbnQsIH07XHJcbiAgfVxyXG5cclxuICBpc1Jlc3BvbnNpYmlsaXR5U2ltcGxpZnkoKXtcclxuICAgIGlmKHRoaXMuZmVhdHVyZS5pc0ZlYXR1cmVFbmFibGVkKCdmZl9yZXNwb25zaWJpbGl0eV9zaW1wbGlmaWNhdGlvbicpKXtcclxuICAgICAgdGhpcy53b3JrZmxvd1R5cGVMaXN0WzBdLndvcmtmbG93TmFtZSA9ICdBZGQgYSBSZXNwb25zaWJpbGl0eSc7XHJcbiAgICAgIHRoaXMud29ya2Zsb3dUeXBlTGlzdFsxXS53b3JrZmxvd05hbWUgPSAnQWRkIE11bHRpcGxlIFJlc3BvbnNpYmlsaXRpZXMnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcbiIsIjxhcHAtc25hY2stYmFyPjwvYXBwLXNuYWNrLWJhcj5cclxuPGRpdiBjbGFzcz1cIndvcmtmbG93LWVuZ2luZS1vdmVybGF5XCI+PC9kaXY+XHJcbjxkaXZcclxuICBjbGFzcz1cIndvcmtmbG93LWVuZ2luZVwiXHJcbiAgW2NsYXNzLmFuaW1hdGVdPVwiYW5pbWF0aW9uXCJcclxuICBbY2xhc3MuYmddPVwiXHJcbiAgICAoIWlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWQgfHwgcmlza0J1bGtVcGxvYWQ/LnNob3dDYXRlZ29yeUxpc3QpICYmXHJcbiAgICAhcG9saWN5Py5zaG93Q3JlYXRlRG9jdW1lbnRzXHJcbiAgXCJcclxuPlxyXG4gIDxkaXZcclxuICAgIGNsYXNzPVwid29ya2Zsb3ctZW5naW5lLWNvbnRhaW5lclwiXHJcbiAgICBbbmdTd2l0Y2hdPVwiY3VycmVudFdvcmtmbG93Py5jb2RlXCJcclxuICAgIFtjbGFzcy53aXRoLXByZXZpZXctYXNzZXNzbWVudF09XCIoYXV0aD8ucHJldmlld1BhbmVsIHwgYXN5bmMpID09PSB0cnVlXCJcclxuICA+XHJcbiAgICA8YnV0dG9uXHJcbiAgICAgIChjbGljayk9XCJjbG9zZVdvcmtmbG93RW5naW5lKClcIlxyXG4gICAgICBpZD1cImNsb3NlLXdvcmtmbG93LWVuZ2luZS1idG5cIlxyXG4gICAgICBjbGFzcz1cImNsb3NlXCJcclxuICAgICAgW2FwcFRvb2x0aXBdPVwiJ1tFc2NdIHRvIGNsb3NlJ1wiXHJcbiAgICAgIHBsYWNlbWVudD1cImxlZnRcIlxyXG4gICAgICBkZWxheT1cIjBcIlxyXG4gICAgICB0eXBlPVwiYmxhY2tcIlxyXG4gICAgICBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCJcclxuICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIlxyXG4gICAgICAgIGNvbmZpcm1hdGlvbkFsZXJ0Q29uZmlnPy5pc1Zpc2libGUgfHwgIWlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWRcclxuICAgICAgXCJcclxuICAgICAgW2NsYXNzLnNtaWxleS1vcGVuZWRdPVwiXHJcbiAgICAgICAgcmlza0NvbXBvbmVudD8uc2hvd1NtaWxleSB8fFxyXG4gICAgICAgIGxvZ0lzc3VlQ29tcG9uZW50Py5zaG93U21pbGV5IHx8XHJcbiAgICAgICAgY29tcGxpYW5jZT8uc2hvd1NtaWxleSB8fFxyXG4gICAgICAgIHBvbGljeT8uc2hvd0NyZWF0ZURvY3VtZW50cyB8fFxyXG4gICAgICAgIHJlc3BvbnNpYmlsaXR5QnVsa1VwbG9hZD8uc2hvd1NtaWxleSB8fFxyXG4gICAgICAgIHJlc3BvbnNpYmlsaXR5QnVsa1VwbG9hZD8uc2hvd0V4Y2VsIHx8XHJcbiAgICAgICAgcmlza0J1bGtVcGxvYWQ/LnNob3dTbWlsZXkgfHxcclxuICAgICAgICByaXNrQnVsa1VwbG9hZD8uc2hvd0V4Y2VsIHx8XHJcbiAgICAgICAgcHJvZ3JhbT8uc2hvd1NtaWxleSB8fFxyXG4gICAgICAgIGltcG9ydEFuQXNzZXNzbWVudD8uc2hvd1NtaWxleVxyXG4gICAgICBcIlxyXG4gICAgPlxyXG4gICAgICA8aSBjbGFzcz1cImljb25zXCI+JiN4ZTkzZjs8L2k+XHJcbiAgICA8L2J1dHRvbj5cclxuICAgIDxkaXZcclxuICAgICAgKm5nSWY9XCIhdWlLaXRTZXJ2aWNlLmlzU21pbGV5T25cIlxyXG4gICAgICBjbGFzcz1cIndvcmtmbG93LWVuZ2luZS1tb3JlXCJcclxuICAgICAgW2hpZGRlbl09XCJzaG93TW9yZU9wdGlvbiA9PT0gZmFsc2UgfHwgcG9saWN5Py5zaG93Q3JlYXRlRG9jdW1lbnRzXCJcclxuICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImNvbmZpcm1hdGlvbkFsZXJ0Q29uZmlnPy5pc1Zpc2libGVcIlxyXG4gICAgICBbY2xhc3MucmVhZC1vbmx5XT1cInVpS2l0U2VydmljZT8uaXNMb2FkZXJcIlxyXG4gICAgPlxyXG4gICAgICA8YXBwLW1vcmUtb3B0aW9uXHJcbiAgICAgICAgI21vcmVPcHRpb25cclxuICAgICAgICBbY3VycmVudFdvcmtmbG93XT1cImN1cnJlbnRXb3JrZmxvdz8uY29kZVwiXHJcbiAgICAgICAgW2lzRWRpdE1vZGVdPVwibW9kZSA9PT0gJ0VESVQnXCJcclxuICAgICAgICBbaXNSQ1NlbGVjdGVkXT1cImlzUkNTZWxlY3RlZFwiXHJcbiAgICAgICAgW29wZW5lZEZyb21dPVwib3BlbmVkRnJvbVwiXHJcbiAgICAgICAgKHNlbGVjdGVkT3B0aW9uKT1cImFkZE1vcmVJbmZvKCRldmVudClcIlxyXG4gICAgICAgIFtpc1Byb2dyYW1TZWxlY3RlZF09XCJzZWxlY3RlZFByb2dyYW1cIlxyXG4gICAgICAgIFthbGxvd2VkRmVhdHVyZV09XCJmZWF0dXJlXCJcclxuICAgICAgICBbb3JnRGV0YWlsc0RhdGFdPVwib3JnRGV0YWlsc1wiXHJcbiAgICAgID5cclxuICAgICAgPC9hcHAtbW9yZS1vcHRpb24+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJ3b3JrZmxvdy1lbmdpbmUtZm9ybVwiXHJcbiAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJjb25maXJtYXRpb25BbGVydENvbmZpZz8uaXNWaXNpYmxlXCJcclxuICAgICAgW2NsYXNzLm5vLXNoYWRvd109XCJcclxuICAgICAgICBjdXJyZW50V29ya2Zsb3c/LmNvZGUgPT0gJ0FNUicgfHxcclxuICAgICAgICBjdXJyZW50V29ya2Zsb3c/LmNvZGUgPT0gJ0NNUicgfHxcclxuICAgICAgICBjdXJyZW50V29ya2Zsb3c/LmNvZGUgPT0gJ0FBQScgfHxcclxuICAgICAgICB1aUtpdFNlcnZpY2UuaXNTbWlsZXlPbiB8fFxyXG4gICAgICAgIHBvbGljeT8uc2hvd0NyZWF0ZURvY3VtZW50c1xyXG4gICAgICBcIlxyXG4gICAgPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCIgKHNjcm9sbCk9XCJzY3JvbGxGb3JtKClcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAqbmdJZj1cIlxyXG4gICAgICAgICAgICAhWydWSUVXX0FVRElUX0VYRUNVVElPTl9TVU1NQVJZJywgJ0VYRUNVVEVfQVVESVRfUExBTiddLmluY2x1ZGVzKFxyXG4gICAgICAgICAgICAgIG9wZW5lZEZyb21cclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICpuZ0lmPVwiISh1aUtpdFNlcnZpY2UuaXNTbWlsZXlPbiB8fCBwb2xpY3k/LnNob3dDcmVhdGVEb2N1bWVudHMpXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWdyb3VwLXJvd1wiXHJcbiAgICAgICAgICAgICNkcm9wZG93blJvd1xyXG4gICAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiXHJcbiAgICAgICAgICAgICAgbW9kZSA9PT0gJ0VESVQnIHx8XHJcbiAgICAgICAgICAgICAgIWlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWQgfHxcclxuICAgICAgICAgICAgICBkaXNhYmxlV29ya2Zsb3dDaGFuZ2UgfHxcclxuICAgICAgICAgICAgICBzZWxlY3RlZFByb2dyYW1cclxuICAgICAgICAgICAgXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnRcIiBbY2xhc3MuY2hlY2tlZF09XCJjdXJyZW50V29ya2Zsb3dcIj5cclxuICAgICAgICAgICAgICA8c3ZnXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImNoZWNrSWNvblwiXHJcbiAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgNTIgNTJcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDxjaXJjbGVcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja0ljb25fX2NpcmNsZVwiXHJcbiAgICAgICAgICAgICAgICAgIGN4PVwiMjZcIlxyXG4gICAgICAgICAgICAgICAgICBjeT1cIjI2XCJcclxuICAgICAgICAgICAgICAgICAgcj1cIjI1XCJcclxuICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2hlY2tJY29uX19jaGVja1wiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgZD1cIk0xNC4xIDI3LjJsNy4xIDcuMiAxNi43LTE2LjhcIlxyXG4gICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyaWdodFwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mb3JtLWdyb3VwXCIgI2Ryb3Bkb3duPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiXHJcbiAgICAgICAgICAgICAgICAgID5TZWxlY3QgYSBXb3JrZmxvdzxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIj4qPC9zcGFuPjwvbGFiZWxcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzZWxlY3RcIlxyXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cIiFjdXJyZW50V29ya2Zsb3dcIlxyXG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZWRpdFdvcmtmbG93KClcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBwbGFjZWhvbGRlcj1cIlNlbGVjdCBhIFdvcmtmbG93XCIgcmVhZG9ubHkgLz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkIGZpcnN0LWZpZWxkXCIgKm5nSWY9XCJjdXJyZW50V29ya2Zsb3dcIj5cclxuICAgICAgICAgICAgICAgICAgPCEtLSB7e2N1cnJlbnRXb3JrZmxvdyB8IGpzb259fSAtLT5cclxuICAgICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2hpcENvbnRhaW5lciB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LXBsLTIgdngtcHItMiB2eC1tci0yXCJcclxuICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNoaXBOYW1lIHZ4LWZzLTExIHZ4LWxhYmVsLXR4dCBuby13aWR0aFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbYXBwVG9vbHRpcF09XCJjdXJyZW50V29ya2Zsb3c/LndvcmtmbG93TmFtZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJib3R0b20tbGVmdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBkZWxheT1cIjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJsYWNrXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFt0b29sdGlwTWFuZGF0b3J5XT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgID57eyBjdXJyZW50V29ya2Zsb3c/LndvcmtmbG93TmFtZSB9fTwvc3BhblxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImNoaXAtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hpcFwiIFtjbGFzcy5kaXNhYmxlZF09XCJmYWxzZVwiPnt7Y3VycmVudFdvcmtmbG93Py53b3JrZmxvd05hbWV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImVkaXRcIlxyXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJlZGl0V29ya2Zsb3coKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIhd29ya2Zsb3dMaXN0XCJcclxuICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOWJhOzwvaT4gRWRpdFxyXG4gICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cIlxyXG4gICAgICAgICAgICAgICAgICAgIGN1cnJlbnRXb3JrZmxvdz8uY29kZSA9PT0gJ0NBUFInICYmXHJcbiAgICAgICAgICAgICAgICAgICAgY3VycmVudEJ1c2luZXNzQ3ljbGUgJiZcclxuICAgICAgICAgICAgICAgICAgICAhcHJvZ3JhbVNpbXBsaWZ5RmxhZ1xyXG4gICAgICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInByb2dyYW0tYnVzaW5lc3MtY3ljbGUgdngtZnMtMTEgdngtdHh0LXdoaXRlIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtcHQtMiB2eC1wYi0xIHZ4LXBsLTIgdngtcHItMVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnMgdngtZnMtMTIgdngtbXItMVwiPiYjeGU5NjM7PC9pPiBUaGlzIHByb2dyYW0gaXNcclxuICAgICAgICAgICAgICAgICAgYmVpbmcgc2V0LXVwIGZvciB0aGUgYnVzaW5lc3MgY3ljbGU6XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidngtZnctNjAwIHZ4LW1sLTFcIj57e1xyXG4gICAgICAgICAgICAgICAgICAgIGN1cnJlbnRCdXNpbmVzc0N5Y2xlXHJcbiAgICAgICAgICAgICAgICAgIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPCEtLSA8YXBwLWNyZWF0ZS1kb2N1bWVudHM+PC9hcHAtY3JlYXRlLWRvY3VtZW50cz4gLS0+XHJcbiAgICAgICAgPCEtLSA8YXBwLWJ1bGstdmlldz48L2FwcC1idWxrLXZpZXc+IC0tPlxyXG4gICAgICAgIDwhLS0gPGFwcC1idWxrLXJlc3BvbnNpYmlsaXR5LXZpZXc+PC9hcHAtYnVsay1yZXNwb25zaWJpbGl0eS12aWV3PiAtLT5cclxuICAgICAgICA8YXBwLXdvcmtmbG93LWNvbXBsaWFuY2VcclxuICAgICAgICAgIChkaXNjb25uZWN0UmVmcmVzaCk9XCJpc0hvc3RSZWZyZXNoQWN0aXZlID0gJGV2ZW50XCJcclxuICAgICAgICAgIFtvcmdEZXRhaWxzXT1cIm9yZ0RldGFpbHNcIlxyXG4gICAgICAgICAgW2lzRW50cnVzdF09XCJlbnRydXN0QnV0dG9uTmFtZS50b0xvd2VyQ2FzZSgpID09ICdlbnRydXN0J1wiXHJcbiAgICAgICAgICBbcmVzcG9uc2liaWxpdHlJZF09XCJpZFwiXHJcbiAgICAgICAgICBbbW9kZV09XCJtb2RlXCJcclxuICAgICAgICAgIFtmcmFtZXdvcmtEZXRhaWxzXT1cImZyYW1ld29ya0RldGFpbHNcIlxyXG4gICAgICAgICAgKGNsb3NlV29ya2Zsb3cpPVwiY2xvc2VXb3JrZmxvd0VuZ2luZSgkZXZlbnQpXCJcclxuICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInQ0FSJ1wiXHJcbiAgICAgICAgICAjcmVzcG9uc2liaWxpdHlcclxuICAgICAgICAgIChwaWNrZXJDaGFuZ2VkKT1cImRlY2lkZVZpZXdNb3JlT3B0aW9uKCRldmVudClcIlxyXG4gICAgICAgICAgKHBvcHVsYXRlT3B0aW9uKT1cInBvcHVsYXRlTW9yZU9wdGlvbigkZXZlbnQpXCJcclxuICAgICAgICAgIChoaWRlRWxlbWVudHNGcm9tTW9yZU9wdGlvbnMpPVwiaGlkZUVsZW1lbnRzRnJvbU1vcmVPcHRpb25zKCRldmVudClcIlxyXG4gICAgICAgICAgW3NlbGVjdGVkUkNdPVwic2VsZWN0ZWRSQ1wiXHJcbiAgICAgICAgICBbY2xvc2VPbkVzY109XCJjbG9zZU9uRXNjXCJcclxuICAgICAgICAgIChhc3NpZ25lZVR5cGVDaGFuZ2UpPVwiYXNzaWduZWVUeXBlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgKG9uUmV2aWV3ZXJUeXBlQ2hhbmdlKT1cIm9uUmV2aWV3ZXJDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICBbZmVhdHVyZV09XCJmZWF0dXJlXCJcclxuICAgICAgICAgIFtvcGVuZWRGcm9tXT1cIm9wZW5lZEZyb21cIlxyXG4gICAgICAgICAgKHJjU2VsZWN0ZWQpPVwib25SY1NlbGVjdGVkKCRldmVudClcIlxyXG4gICAgICAgICAgKHJlc2V0Rm9ybSk9XCJvblJlc2V0Rm9ybSgpXCJcclxuICAgICAgICAgIChvblJlbW92aW5nQ2hlY2twb2ludCk9XCJvblJlbW92aW5nQ2hlY2twb2ludCgkZXZlbnQsIGZhbHNlLCB0cnVlKVwiXHJcbiAgICAgICAgICAoaXNBc3Nlc3NtZW50RGlzYWJsZWQpPVwiaXNBc3Nlc3NtZW50RGlzYWJsZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAoY2hlY2twb2ludENvdW50VXBkYXRlZCk9XCJjaGVja3BvaW50Q291bnQgPSAkZXZlbnRcIlxyXG4gICAgICAgICAgW3NlbGVjdGVkUHJvZ3JhbV09XCJzZWxlY3RlZFByb2dyYW1cIlxyXG4gICAgICAgID48L2FwcC13b3JrZmxvdy1jb21wbGlhbmNlPlxyXG4gICAgICAgIDxhcHAtd29ya2Zsb3ctcmlza1xyXG4gICAgICAgICAgW3NlY29uZGFyeU9wZW5Qb3J0YWxdPVwic2Vjb25kYXJ5T3BlblBvcnRhbFwiXHJcbiAgICAgICAgICBbb3BlbmVkRnJvbV09XCJvcGVuZWRGcm9tXCJcclxuICAgICAgICAgIChkaXNjb25uZWN0UmVmcmVzaCk9XCJpc0hvc3RSZWZyZXNoQWN0aXZlID0gJGV2ZW50XCJcclxuICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInQUFSJ1wiXHJcbiAgICAgICAgICAjcmlza1xyXG4gICAgICAgICAgKHNob3dDb25maXJtYXRpb25BbGVydCk9XCJzaG93Q29uZmlybWF0aW9uUG9wdXAoJGV2ZW50KVwiXHJcbiAgICAgICAgICAoaGlkZUVsZW1lbnRzRnJvbU1vcmVPcHRpb25zKT1cImhpZGVFbGVtZW50c0Zyb21Nb3JlT3B0aW9ucygkZXZlbnQpXCJcclxuICAgICAgICAgIChjbG9zZVdvcmtmbG93KT1cImNsb3NlV29ya2Zsb3dFbmdpbmUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAocGlja2VyQ2hhbmdlZCk9XCJkZWNpZGVWaWV3TW9yZU9wdGlvbigkZXZlbnQpXCJcclxuICAgICAgICAgIChwb3B1bGF0ZU9wdGlvbik9XCJwb3B1bGF0ZU1vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAocmVmcmVzaEZvcm0pPVwib25SZXNldEZvcm0oKVwiXHJcbiAgICAgICAgICBbbW9kZV09XCJtb2RlXCJcclxuICAgICAgICAgIFtyaXNrSWRdPVwiaWRcIlxyXG4gICAgICAgICAgW2ZlYXR1cmVdPVwiZmVhdHVyZVwiXHJcbiAgICAgICAgPjwvYXBwLXdvcmtmbG93LXJpc2s+XHJcbiAgICAgICAgPGFwcC13b3JrZmxvdy1wb2xpY3lcclxuICAgICAgICAgIChkaXNjb25uZWN0UmVmcmVzaCk9XCJpc0hvc3RSZWZyZXNoQWN0aXZlID0gJGV2ZW50XCJcclxuICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInQ0FQJ1wiXHJcbiAgICAgICAgICAjcG9saWN5XHJcbiAgICAgICAgICAoc2hvd0NvbmZpcm1hdGlvbkFsZXJ0KT1cInNob3dDb25maXJtYXRpb25Qb3B1cCgkZXZlbnQpXCJcclxuICAgICAgICAgIChzaGlmdFRvRWRpdE1vZGUpPVwic2hpZnRUb0VkaXRNb2RlKClcIlxyXG4gICAgICAgICAgW2ZlYXR1cmVdPVwiZmVhdHVyZVwiXHJcbiAgICAgICAgICBbcG9saWN5SWRdPVwiaWRcIlxyXG4gICAgICAgICAgW21vZGVdPVwibW9kZVwiXHJcbiAgICAgICAgICBbY29udmVydEZpbGVEYXRhXT1cImNvbnZlcnRGaWxlRGF0YVwiXHJcbiAgICAgICAgICBbc2VsZWN0ZWRDYXRlZ29yeV09XCJzZWxlY3RlZENhdGVnb3J5XCJcclxuICAgICAgICAgIChwb3B1bGF0ZU9wdGlvbik9XCJwb3B1bGF0ZU1vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAocGlja2VyQ2hhbmdlZCk9XCJkZWNpZGVWaWV3TW9yZU9wdGlvbigkZXZlbnQpXCJcclxuICAgICAgICA+PC9hcHAtd29ya2Zsb3ctcG9saWN5PlxyXG4gICAgICAgIDxhcHAtd29ya2Zsb3ctc3VydmV5LWZvcm1cclxuICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInQ0FTJ1wiXHJcbiAgICAgICAgICAjc3VydmV5Rm9ybVxyXG4gICAgICAgID48L2FwcC13b3JrZmxvdy1zdXJ2ZXktZm9ybT5cclxuICAgICAgICA8YXBwLWFkZC1tdWx0aXBsZS1yaXNrXHJcbiAgICAgICAgICAoZGlzY29ubmVjdFJlZnJlc2gpPVwiaXNIb3N0UmVmcmVzaEFjdGl2ZSA9ICRldmVudFwiXHJcbiAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ0FNUidcIlxyXG4gICAgICAgICAgI211bHRpcGxlUmlza1xyXG4gICAgICAgICAgKHBpY2tlckNoYW5nZWQpPVwiZGVjaWRlVmlld01vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAoY2xvc2VXb3JrZmxvdyk9XCJjbG9zZVdvcmtmbG93RW5naW5lKCRldmVudClcIlxyXG4gICAgICAgID48L2FwcC1hZGQtbXVsdGlwbGUtcmlzaz5cclxuICAgICAgICA8IS0tIDxhcHAtYWRkLW11bHRpcGxlLXJlc3BvbnNpYmlsaXR5ICAoZGlzY29ubmVjdFJlZnJlc2gpPVwiaXNIb3N0UmVmcmVzaEFjdGl2ZSA9ICRldmVudFwiICAgIChjbG9zZVdvcmtmbG93KT1cImNsb3NlV29ya2Zsb3dFbmdpbmUoJGV2ZW50KVwiICpuZ1N3aXRjaENhc2U9XCInQ01SJ1wiICNtdWx0aXBsZVJlc3BvbnNpYmlsaXR5PlxyXG4gICAgICAgICAgICAgICAgPC9hcHAtYWRkLW11bHRpcGxlLXJlc3BvbnNpYmlsaXR5PiAtLT5cclxuXHJcbiAgICAgICAgPGxpYi1hZGQtbXVsdGlwbGUtcmVzcG9uc2liaWxpdHktY29udGFpbmVyXHJcbiAgICAgICAgICBbb3JnRGV0YWlsc109XCJvcmdEZXRhaWxzXCJcclxuICAgICAgICAgIChkaXNjb25uZWN0UmVmcmVzaCk9XCJpc0hvc3RSZWZyZXNoQWN0aXZlID0gJGV2ZW50XCJcclxuICAgICAgICAgIChjbG9zZVdvcmtmbG93KT1cImNsb3NlV29ya2Zsb3dFbmdpbmUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ0NNUidcIlxyXG4gICAgICAgICAgW2ZlYXR1cmVdPVwiZmVhdHVyZVwiXHJcbiAgICAgICAgICAjbXVsdGlwbGVSZXNwb25zaWJpbGl0eVxyXG4gICAgICAgID48L2xpYi1hZGQtbXVsdGlwbGUtcmVzcG9uc2liaWxpdHktY29udGFpbmVyPlxyXG4gICAgICAgIDwhLS0gTmV3IExvZyBhbiBJc3N1ZSAtLT5cclxuICAgICAgICA8YXBwLWxvZy1hbi1pc3N1ZVxyXG4gICAgICAgICAgW2lzc3VlRGV0YWlsc109XCJpc3N1ZURhdGFcIlxyXG4gICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidMQUknXCJcclxuICAgICAgICAgIFtyZXBvbnNpYmlsaXR5RGF0YV09XCJyZXBvbnNpYmlsaXR5RGF0YVwiXHJcbiAgICAgICAgICBbb3BlbmVkRnJvbV09XCJvcGVuZWRGcm9tXCJcclxuICAgICAgICAgIFtpc3N1ZUlkXT1cImlkXCJcclxuICAgICAgICAgICNsb2dBbklzc3VlXHJcbiAgICAgICAgICAoZGlzY29ubmVjdFJlZnJlc2gpPVwiaXNIb3N0UmVmcmVzaEFjdGl2ZSA9ICRldmVudFwiXHJcbiAgICAgICAgICAoY2xvc2VXb3JrZmxvdyk9XCJjbG9zZVdvcmtmbG93RW5naW5lKCRldmVudClcIlxyXG4gICAgICAgICAgKHBpY2tlckNoYW5nZWQpPVwiZGVjaWRlVmlld01vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAocG9wdWxhdGVPcHRpb24pPVwicG9wdWxhdGVNb3JlT3B0aW9uKCRldmVudClcIlxyXG4gICAgICAgICAgWyhtb2RlKV09XCJtb2RlXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9hcHAtbG9nLWFuLWlzc3VlPlxyXG4gICAgICAgIDwhLS0gT2xkIExvZyBhbiBpc3N1ZSAtLT5cclxuICAgICAgICA8IS0tIDxhcHAtbG9nLWFuLWlzc3VlICpuZ1N3aXRjaENhc2U9XCInTEFJJ1wiIFtyZXNwb25zaWJpbGl0aWVzRGF0YV09XCJyZXBvbnNpYmlsdHlEYXRhXCIgW29wZW5lZEZyb21dPVwib3BlbmVkRnJvbVwiXHJcbiAgICAgICAgICAgICAgICAjbG9nQW5Jc3N1ZSAoY2xvc2VXb3JrZmxvdyk9XCJjbG9zZVdvcmtmbG93RW5naW5lKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgKHBpY2tlckNoYW5nZWQpPVwiZGVjaWRlVmlld01vcmVPcHRpb24oJGV2ZW50KVwiIChwb3B1bGF0ZU9wdGlvbik9XCJwb3B1bGF0ZU1vcmVPcHRpb24oJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICA8L2FwcC1sb2ctYW4taXNzdWU+IC0tPlxyXG5cclxuICAgICAgICA8YXBwLXdvcmtmbG93LWFzc2Vzc21lbnRcclxuICAgICAgICAgIFthc3Nlc3NtZW50SWRdPVwiaWRcIlxyXG4gICAgICAgICAgKHBpY2tlckNoYW5nZWQpPVwiZGVjaWRlVmlld01vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICBbb3BlbmVkRnJvbV09XCJvcGVuZWRGcm9tXCJcclxuICAgICAgICAgIChkaXNjb25uZWN0UmVmcmVzaCk9XCJpc0hvc3RSZWZyZXNoQWN0aXZlID0gJGV2ZW50XCJcclxuICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInQUFBJ1wiXHJcbiAgICAgICAgICAoc2hvd0NvbmZpcm1hdGlvbkFsZXJ0KT1cInNob3dDb25maXJtYXRpb25Qb3B1cCgkZXZlbnQpXCJcclxuICAgICAgICAgIChjbG9zZVdvcmtmbG93KT1cImNsb3NlV29ya2Zsb3dFbmdpbmUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAocGlja2VyQ2hhbmdlZCk9XCJkZWNpZGVWaWV3TW9yZU9wdGlvbigkZXZlbnQpXCJcclxuICAgICAgICAgIChwb3B1bGF0ZU9wdGlvbik9XCJwb3B1bGF0ZU1vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAocmVmcmVzaEZvcm0pPVwib25SZXNldEZvcm0oKVwiXHJcbiAgICAgICAgICBbbW9kZV09XCJtb2RlXCJcclxuICAgICAgICAgICNhc3Nlc3NtZW50XHJcbiAgICAgICAgPjwvYXBwLXdvcmtmbG93LWFzc2Vzc21lbnQ+XHJcbiAgICAgICAgPGFwcC1pbXBvcnQtYW4tYXNzZXNzbWVudFxyXG4gICAgICAgICAgKHBpY2tlckNoYW5nZWQpPVwiZGVjaWRlVmlld01vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAoZGlzY29ubmVjdFJlZnJlc2gpPVwiaXNIb3N0UmVmcmVzaEFjdGl2ZSA9ICRldmVudFwiXHJcbiAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ0lBQSdcIlxyXG4gICAgICAgICAgKHNob3dDb25maXJtYXRpb25BbGVydCk9XCJzaG93Q29uZmlybWF0aW9uUG9wdXAoJGV2ZW50KVwiXHJcbiAgICAgICAgICAoY2xvc2VXb3JrZmxvdyk9XCJjbG9zZVdvcmtmbG93RW5naW5lKCRldmVudClcIlxyXG4gICAgICAgICAgKHBpY2tlckNoYW5nZWQpPVwiZGVjaWRlVmlld01vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAocG9wdWxhdGVPcHRpb24pPVwicG9wdWxhdGVNb3JlT3B0aW9uKCRldmVudClcIlxyXG4gICAgICAgICAgKHJlZnJlc2hGb3JtKT1cIm9uUmVzZXRGb3JtKClcIlxyXG4gICAgICAgICAgI2ltcG9ydEFzc2Vzc21lbnRcclxuICAgICAgICA+PC9hcHAtaW1wb3J0LWFuLWFzc2Vzc21lbnQ+XHJcbiAgICAgICAgPCEtLSA8YXBwLXdvcmtmbG93LXByb2dyYW0gI3Byb2dyYW0gKm5nU3dpdGNoQ2FzZT1cIidDQVBSJ1wiIChwaWNrZXJDaGFuZ2VkKT1cImRlY2lkZVZpZXdNb3JlT3B0aW9uKCRldmVudClcIiAoZGlzY29ubmVjdFJlZnJlc2gpPVwiaXNIb3N0UmVmcmVzaEFjdGl2ZSA9ICRldmVudFwiPjwvYXBwLXdvcmtmbG93LXByb2dyYW0+IC0tPlxyXG4gICAgICAgIDxhcHAtd29ya2Zsb3ctcHJvZ3JhbVxyXG4gICAgICAgICAgI3Byb2dyYW1cclxuICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInQ0FQUidcIlxyXG4gICAgICAgICAgW29yZ0RldGFpbHNdPVwib3JnRGV0YWlsc1wiXHJcbiAgICAgICAgICBbYWxsb3dlZEZlYXR1cmVdPVwiZmVhdHVyZVwiXHJcbiAgICAgICAgICAoZGlzYWJsZUVsZW1lbnRzRnJvbU1vcmVPcHRpb25zKT1cImRpc2FibGVNb3JlT3B0aW9ucygnQ0FQUicsICRldmVudClcIlxyXG4gICAgICAgICAgW3Byb2dyYW1UeXBlXT1cInByb2dyYW1UeXBlXCJcclxuICAgICAgICAgIChwaWNrZXJDaGFuZ2VkKT1cImRlY2lkZVZpZXdNb3JlT3B0aW9uKCRldmVudClcIlxyXG4gICAgICAgICAgKGRpc2Nvbm5lY3RSZWZyZXNoKT1cImlzSG9zdFJlZnJlc2hBY3RpdmUgPSAkZXZlbnRcIlxyXG4gICAgICAgICAgKHNob3dDb25maXJtYXRpb25BbGVydCk9XCJzaG93Q29uZmlybWF0aW9uUG9wdXAoJGV2ZW50KVwiXHJcbiAgICAgICAgICAoY2xvc2VXb3JrZmxvdyk9XCJjbG9zZVdvcmtmbG93RW5naW5lKCRldmVudClcIlxyXG4gICAgICAgICAgKHBpY2tlckNoYW5nZWQpPVwiZGVjaWRlVmlld01vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAocG9wdWxhdGVPcHRpb24pPVwicG9wdWxhdGVNb3JlT3B0aW9uKCRldmVudClcIlxyXG4gICAgICAgICAgKHJlZnJlc2hGb3JtKT1cIm9uUmVzZXRGb3JtKClcIlxyXG4gICAgICAgICAgW21vZGVdPVwibW9kZVwiXHJcbiAgICAgICAgICBbcHJvZ3JhbUlkXT1cImlkXCJcclxuICAgICAgICAgIChvblJlbW92aW5nUm9sZSk9XCJvblJlbW92aW5nUm9sZSgkZXZlbnQpXCJcclxuICAgICAgICAgIFtjYW5GcmFtZXdvcmtDaGFuZ2VdPVwiY2FuRnJhbWV3b3JrQ2hhbmdlXCJcclxuICAgICAgICAgIFthZGRUb1Byb2dyYW1EZXRhaWxzXT1cImFkZFRvUHJvZ3JhbURldGFpbHNcIlxyXG4gICAgICAgID48L2FwcC13b3JrZmxvdy1wcm9ncmFtPlxyXG5cclxuICAgICAgICA8IS0tIEdSQyBPYmplY3QgLS0+XHJcbiAgICAgICAgPGxpYi1ncmMtb2JqZWN0LWNvbnRhaW5lclxyXG4gICAgICAgICAgI2dyY09iamVjdFxyXG4gICAgICAgICAgKm5nSWY9XCJ0cnVlXCJcclxuICAgICAgICAgIChwb3B1bGF0ZU9wdGlvbik9XCJwb3B1bGF0ZU1vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgPjwvbGliLWdyYy1vYmplY3QtY29udGFpbmVyPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIGNsYXNzPVwic3VibWl0XCJcclxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIWlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWRcIlxyXG4gICAgICAgICpuZ1N3aXRjaENhc2U9XCInQUFSJ1wiXHJcbiAgICAgICAgKGNsaWNrKT1cInN1Ym1pdCgpXCJcclxuICAgICAgPlxyXG4gICAgICAgIHt7XHJcbiAgICAgICAgICBtb2RlID09PSBcIkVESVRcIiAmJiBvcGVuZWRGcm9tICE9PSBcIk1PVkVfVE9fUkVHSVNURVJcIlxyXG4gICAgICAgICAgICA/IFwiVXBkYXRlXCJcclxuICAgICAgICAgICAgOiBcIkFkZFwiXHJcbiAgICAgICAgfX1cclxuICAgICAgPC9idXR0b24+XHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICBjbGFzcz1cInN1Ym1pdFwiXHJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIlxyXG4gICAgICAgICAgIWlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWQgfHxcclxuICAgICAgICAgICFyaXNrQnVsa1VwbG9hZD8uY2F0ZWdvcnk/LnNlbGVjdGVkQ2F0ZWdvcnlcclxuICAgICAgICBcIlxyXG4gICAgICAgIChjbGljayk9XCJidWxrVXBsb2FkQnJvd3NlKCdBTVInKVwiXHJcbiAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidBTVInXCJcclxuICAgICAgPlxyXG4gICAgICAgIEJyb3dzZVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIGNsYXNzPVwic3VibWl0XCJcclxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIWlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWRcIlxyXG4gICAgICAgIChjbGljayk9XCJidWxrVXBsb2FkQnJvd3NlKCdDTVInKVwiXHJcbiAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidDTVInXCJcclxuICAgICAgPlxyXG4gICAgICAgIEJyb3dzZVxyXG4gICAgICA8L2J1dHRvbj5cclxuXHJcbiAgICAgIDwhLS0gVGhpcyBoYXMgdGVybmFyeSBvcGVyYXRpb24gdG8gaGFuZGxlIHRoZSBib3RoIHNjZW5hcmlvcyBvZiBob3cgaXQgd29ya3Mgd2l0aCBjb21wbGlhbmNlIGFuZCBwcm9ncmFtIG1vZHVsZSwgcGxlYXNlIGRvbid0IGNoYW5nZSB0aGlzLiAtLT5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIGNsYXNzPVwic3VibWl0XCJcclxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIWlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWRcIlxyXG4gICAgICAgIChjbGljayk9XCJzdWJtaXQoKVwiXHJcbiAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidDQVInXCJcclxuICAgICAgPlxyXG4gICAgICAgIHt7XHJcbiAgICAgICAgICBlbnRydXN0QnV0dG9uTmFtZSAhPT0gXCJcIiAmJiBtb2RlICE9PSBcIkVESVRcIlxyXG4gICAgICAgICAgICA/IGVudHJ1c3RCdXR0b25OYW1lXHJcbiAgICAgICAgICAgIDogbW9kZSA9PT0gXCJFRElUXCJcclxuICAgICAgICAgICAgPyBcIlVQREFURVwiXHJcbiAgICAgICAgICAgIDogXCJFbnRydXN0XCJcclxuICAgICAgICB9fVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIGNsYXNzPVwic3VibWl0XCJcclxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIWlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWRcIlxyXG4gICAgICAgIChjbGljayk9XCJzdWJtaXQoKVwiXHJcbiAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidDQVAnXCJcclxuICAgICAgPlxyXG4gICAgICAgIHt7XHJcbiAgICAgICAgICBjb252ZXJ0RmlsZURhdGEuZmlsZU5hbWVcclxuICAgICAgICAgICAgPyBcIk5FWFRcIlxyXG4gICAgICAgICAgICA6IG1vZGUgPT0gXCJFRElUXCJcclxuICAgICAgICAgICAgPyBcIlVwZGF0ZVwiXHJcbiAgICAgICAgICAgIDogXCJDb250aW51ZSB0byBkcmFmdFwiXHJcbiAgICAgICAgfX1cclxuICAgICAgPC9idXR0b24+XHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICBjbGFzcz1cInN1Ym1pdFwiXHJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIiFpc1dvcmtmbG93U2VsZWN0b3JFbmFibGVkXCJcclxuICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ0NBUydcIlxyXG4gICAgICA+XHJcbiAgICAgICAgQ29udGludWUgdG8gZHJhZnRcclxuICAgICAgPC9idXR0b24+XHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICBjbGFzcz1cInN1Ym1pdFwiXHJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIiFpc1dvcmtmbG93U2VsZWN0b3JFbmFibGVkXCJcclxuICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ0xBSSdcIlxyXG4gICAgICAgIChjbGljayk9XCJzdWJtaXQoKVwiXHJcbiAgICAgID5cclxuICAgICAgICB7eyBtb2RlID09PSBcIkVESVRcIiA/IFwiVXBkYXRlXCIgOiBcIkFkZFwiIH19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8YnV0dG9uXHJcbiAgICAgICAgY2xhc3M9XCJzdWJtaXRcIlxyXG4gICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCIhaXNXb3JrZmxvd1NlbGVjdG9yRW5hYmxlZFwiXHJcbiAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidBQUEnXCJcclxuICAgICAgICAoY2xpY2spPVwic3VibWl0KClcIlxyXG4gICAgICA+XHJcbiAgICAgICAge3sgbW9kZSA9PT0gXCJFRElUXCIgPyBcIlVwZGF0ZVwiIDogXCJDb250aW51ZSB0byBkcmFmdFwiIH19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8YnV0dG9uXHJcbiAgICAgICAgY2xhc3M9XCJzdWJtaXRcIlxyXG4gICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCIhaXNXb3JrZmxvd1NlbGVjdG9yRW5hYmxlZFwiXHJcbiAgICAgICAgKGNsaWNrKT1cImJ1bGtVcGxvYWRCcm93c2UoJ0lBQScpXCJcclxuICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ0lBQSdcIlxyXG4gICAgICA+XHJcbiAgICAgICAgQnJvd3NlXHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8YnV0dG9uXHJcbiAgICAgICAgY2xhc3M9XCJzdWJtaXRcIlxyXG4gICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCIhaXNXb3JrZmxvd1NlbGVjdG9yRW5hYmxlZCB8fCAhcHJvZ3JhbT8udmFsaWRcIlxyXG4gICAgICAgIChjbGljayk9XCJzdWJtaXQoJ0NBUFInKVwiXHJcbiAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidDQVBSJ1wiXHJcbiAgICAgID5cclxuICAgICAgICB7eyBtb2RlID09PSBcIkVESVRcIiA/IFwiVXBkYXRlXCIgOiBcIlNhdmVcIiB9fVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgICAgPGRpdlxyXG4gICAgICAgIGNsYXNzPVwiZHJvcGRvd25cIlxyXG4gICAgICAgICpuZ0lmPVwid29ya2Zsb3dMaXN0XCJcclxuICAgICAgICAoY2xpY2spPVwiY2xvc2VXb3JrZmxvd0xpc3QoKVwiXHJcbiAgICAgICAgW3N0eWxlLnRvcC5weF09XCJkcm9wZG93blRvcFwiXHJcbiAgICAgICAgW3N0eWxlLmxlZnQucHhdPVwiZHJvcGRvd25MZWZ0XCJcclxuICAgICAgICBbc3R5bGUud2lkdGgucHhdPVwiZHJvcGRvd25XaWR0aFwiXHJcbiAgICAgID5cclxuICAgICAgICA8dWwgY2xhc3M9XCJkcm9wZG93bi1saXN0XCI+XHJcbiAgICAgICAgICA8bGlcclxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IHdvcmtmbG93IG9mIHdvcmtmbG93VHlwZUxpc3RcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwiY2hhbmdlV29ya2Zsb3coJGV2ZW50LCB3b3JrZmxvdylcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8YXBwLWNzLXJhZGlvXHJcbiAgICAgICAgICAgICAgW3ZhbHVlXT1cIndvcmtmbG93Py5jb2RlXCJcclxuICAgICAgICAgICAgICBbY2hlY2tlZF09XCJjdXJyZW50V29ya2Zsb3c/LmNvZGUgPT09IHdvcmtmbG93Py5jb2RlXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIHt7IHdvcmtmbG93Py53b3JrZmxvd05hbWUgfX08L2FwcC1jcy1yYWRpb1xyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICA8L2xpPlxyXG4gICAgICAgIDwvdWw+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2XHJcbiAgICAgICAgY2xhc3M9XCJkcm9wZG93bi1vdmVybGF5XCJcclxuICAgICAgICAqbmdJZj1cIndvcmtmbG93TGlzdFwiXHJcbiAgICAgICAgKGNsaWNrKT1cImNsb3NlV29ya2Zsb3dMaXN0KClcIlxyXG4gICAgICA+PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxhcHAtY29uZmlybWF0aW9uLWFsZXJ0XHJcbiAgICAgIGlkPVwiY29uZmlybWF0aW9uLWRpYWxvZ3VlXCJcclxuICAgICAgKGFjdGlvbik9XCJjb25maXJtV29ya2Zsb3dDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICpuZ0lmPVwiY29uZmlybWF0aW9uQWxlcnRDb25maWc/LmlzVmlzaWJsZVwiXHJcbiAgICAgIFttZXNzYWdlXT1cImNvbmZpcm1hdGlvbkFsZXJ0Q29uZmlnPy5tZXNzYWdlXCJcclxuICAgICAgW2NvbmZpZ109XCJjb25maXJtYXRpb25BbGVydENvbmZpZ1wiXHJcbiAgICA+PC9hcHAtY29uZmlybWF0aW9uLWFsZXJ0PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|
|
600
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctZW5naW5lLWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi93b3JrZmxvdy1lbmdpbmUtY29udGFpbmVyL3dvcmtmbG93LWVuZ2luZS1jb250YWluZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvd29ya2Zsb3ctZW5naW5lLWNvbnRhaW5lci93b3JrZmxvdy1lbmdpbmUtY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFjLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFzQm5JLE1BQU0sT0FBTyxnQ0FBZ0M7SUFnQjNDLFlBQW1CLFlBQTBCLEVBQVUsUUFBeUIsRUFBUyxJQUFpQjtRQUF2RixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUFVLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBQVMsU0FBSSxHQUFKLElBQUksQ0FBYTtRQWQxRyx3QkFBbUIsR0FBRyxJQUFJLENBQUM7UUFDM0IsaUJBQVksR0FBRyxLQUFLLENBQUE7UUFDbkIsdUJBQWtCLEdBQWEsS0FBSyxDQUFDO1FBYzdCLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLFNBQUksR0FBRyxRQUFRLENBQUM7UUFDaEIsT0FBRSxHQUFHLEVBQUUsQ0FBQztRQUNSLGVBQVUsR0FBRyxRQUFRLENBQUM7UUFDckIsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3BDLHFCQUFnQixHQUFRLEVBQUUsQ0FBQztRQUMzQixxQkFBZ0IsR0FBZSxFQUFFLENBQUMsQ0FBQyx5Q0FBeUM7UUFD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QUFDLGNBQWMsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ1ksd0JBQXdCO3NCQUEvRSxTQUFTO3VCQUFDLHdCQUF3QixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDTixVQUFVO3NCQUF6RCxTQUFTO3VCQUFDLGdCQUFnQixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDRixVQUFVO3NCQUFyRCxTQUFTO3VCQUFDLFlBQVksRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ25CLFFBQVE7c0JBQTlCLFNBQVM7dUJBQUMsVUFBVTtnQkFDd0IsV0FBVztzQkFBdkQsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUN0QixNQUFNO3NCQUExQixTQUFTO3VCQUFDLFFBQVE7Z0JBQ00saUJBQWlCO3NCQUF6QyxTQUFTO3VCQUFDLFlBQVk7Z0JBQ0UsMkJBQTJCO3NCQUFuRCxTQUFTO3VCQUFDLFlBQVk7Z0JBQzJCLGtCQUFrQjtzQkFBbkUsU0FBUzt1QkFBQyxrQkFBa0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ1AsT0FBTztzQkFBL0MsU0FBUzt1QkFBQyxTQUFTLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNJLFNBQVM7c0JBQW5ELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFPaEMsT0FBTztzQkFBZixLQUFLO2dCQUcrQyxnQkFBZ0I7c0JBQXBFLFlBQVk7dUJBQUMseUJBQXlCLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBbUpuRCxVQUFVO3NCQURULFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWRkTXVsdGlwbGVSaXNrQ29tcG9uZW50IH0gZnJvbSAnLi4vYWRkLW11bHRpcGxlLXJpc2svYWRkLW11bHRpcGxlLXJpc2suY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29uZmlybWF0aW9uQWxlcnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2NvbmZpcm1hdGlvbi1hbGVydCc7XHJcbmltcG9ydCB7IElzc3VlQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2ludGVyZmFjZXMvaXNzdWUtZGF0YSc7XHJcbmltcG9ydCB7IFNuYWNrQmFyU2VydmljZSB9IGZyb20gJy4uL3VpLWtpdC9zbmFjay1iYXIvc25hY2stYmFyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBXb3JrZmxvd0Fzc2Vzc21lbnRDb21wb25lbnQgfSBmcm9tICcuLi93b3JrZmxvdy1hc3Nlc3NtZW50L3dvcmtmbG93LWFzc2Vzc21lbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSW1wb3J0QW5Bc3Nlc3NtZW50Q29tcG9uZW50IH0gZnJvbSAnLi4vd29ya2Zsb3ctYXNzZXNzbWVudC9pbXBvcnQtYW4tYXNzZXNzbWVudC9pbXBvcnQtYW4tYXNzZXNzbWVudC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBXb3JrZmxvd0NvbXBsaWFuY2VDb21wb25lbnQgfSBmcm9tICcuLi93b3JrZmxvdy1jb21wbGlhbmNlL3dvcmtmbG93LWNvbXBsaWFuY2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgV29ya2Zsb3dQb2xpY3lDb21wb25lbnQgfSBmcm9tICcuLi93b3JrZmxvdy1wb2xpY3kvd29ya2Zsb3ctcG9saWN5LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFdvcmtmbG93Umlza0NvbXBvbmVudCB9IGZyb20gJy4uL3dvcmtmbG93LXJpc2svd29ya2Zsb3ctcmlzay5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uL3dvcmtmbG93LXNlcnZpY2VzL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IFVpS2l0U2VydmljZSB9IGZyb20gJy4uL3dvcmtmbG93LXNlcnZpY2VzL3VpLWtpdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTG9nQW5Jc3N1ZUNvbXBvbmVudCB9IGZyb20gJy4vLi4vbG9nLWFuLWlzc3VlL2xvZy1hbi1pc3N1ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNb3JlT3B0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi8uLi9tb3JlLW9wdGlvbi9tb3JlLW9wdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBXb3JrZmxvd1Byb2dyYW1Db21wb25lbnQgfSBmcm9tICcuLi93b3JrZmxvdy1wcm9ncmFtL3dvcmtmbG93LXByb2dyYW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgV29ya2Zsb3dHcmNDb21wb25lbnQgfSBmcm9tICcuLi93b3JrZmxvdy1ncmMvd29ya2Zsb3ctZ3JjLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC12Y29tcGx5LXdvcmtmbG93LWVuZ2luZS1jb250YWluZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi93b3JrZmxvdy1lbmdpbmUtY29udGFpbmVyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi93b3JrZmxvdy1lbmdpbmUtY29udGFpbmVyLmNvbXBvbmVudC5sZXNzJywgJy4uL2Zvcm1zLmxlc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFdvcmtmbG93RW5naW5lQ29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuXHJcbiAgaXNIb3N0UmVmcmVzaEFjdGl2ZSA9IHRydWU7XHJcbiAgaXNSQ1NlbGVjdGVkID0gZmFsc2VcclxuICAgZmVhdHVyZUZsYWdfZ3JvdXBzIDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpiZWZvcmV1bmxvYWQnLCBbJyRldmVudCddKVxyXG4gIHVubG9hZE5vdGlmaWNhdGlvbigkZXZlbnQ6IGFueSkge1xyXG4gICAgY29uc3QgdG9rZW4gPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnY3VycmVudFVzZXInKVxyXG4gICAgaWYgKHRoaXMuaXNIb3N0UmVmcmVzaEFjdGl2ZSAmJiB0b2tlbikge1xyXG4gICAgICAkZXZlbnQucmV0dXJuVmFsdWUgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG5cclxuICB9XHJcbiAgY29uc3RydWN0b3IocHVibGljIHVpS2l0U2VydmljZTogVWlLaXRTZXJ2aWNlLCBwcml2YXRlIHNuYWNrQmFyOiBTbmFja0JhclNlcnZpY2UsIHB1YmxpYyBhdXRoOiBBdXRoU2VydmljZSkge1xyXG4gIH1cclxuICBASW5wdXQoKSB3b3JrZmxvd1R5cGUgPSAnJztcclxuICBASW5wdXQoKSBtb2RlID0gJ0NSRUFURSc7XHJcbiAgQElucHV0KCkgaWQgPSAnJztcclxuICBASW5wdXQoKSBvcGVuZWRGcm9tID0gJ0dMT0JBTCc7XHJcbiAgQE91dHB1dCgpIGNsb3NlV29ya2Zsb3cgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQElucHV0KCkgYWxsb3dlZFdvcmtmbG93czogYW55ID0gW107XHJcbiAgQElucHV0KCkgZnJhbWV3b3JrRGV0YWlsczogQXJyYXk8YW55PiA9IFtdOyAvLyBvbmx5IGZvciBjb21wbGlhbmNlIHBhcnQgZm9yIGZyYW1ld29ya1xyXG4gIEBJbnB1dCgpIHNlbGVjdGVkUkMgPSAnJztcclxuICBASW5wdXQoKSBzZWNvbmRhcnlPcGVuUG9ydGFsID0gJyc7XHJcbiAgQElucHV0KCkgZGVmYXVsdFJpc2tUeXBlID0gJ05PUk1BTCc7XHJcbiAgQElucHV0KCkgbW92ZVRvUmVnaXN0ZXJNb2RlID0nJztcclxuICBASW5wdXQoKSByZXBvbnNpYmlsaXR5RGF0YSA9IHsgLy8gb25seSB1c2VkIGJ5IGxvZyBhbiBpc3N1ZVxyXG4gICAgcmVzcG9uc2liaWxpdHlJZDogbnVsbCxcclxuICAgIHJlc3BvbnNpYmlsaXR5TmFtZTogJycsXHJcbiAgICByY0lkOm51bGxcclxuICB9O1xyXG4gIEBJbnB1dCgpIHBpZCA9ICcnO1xyXG4gIEBJbnB1dCgpIHByb2dyYW1UeXBlOiBudW1iZXIgPSAxO1xyXG4gIEBJbnB1dCgpIGlzc3VlRGF0YSA9e1xyXG4gICAgYXVkaXRQbGFuSWQgOiBudWxsLFxyXG4gICAgICBhdWRpdFBsYW5OYW1lICA6JycsXHJcbiAgICAgIHJjSWQ6IG51bGxcclxuICB9XHJcbiAgQElucHV0KCkgZW50cnVzdEJ1dHRvbk5hbWUgPSAnRW50cnVzdCdcclxuICBASW5wdXQoKSBjb25maWcgITogSXNzdWVDb25maWd1cmF0aW9uXHJcbiAgQElucHV0KCkgY29udmVydEZpbGVEYXRhID0ge31cclxuICBASW5wdXQoKSBzZWxlY3RlZENhdGVnb3J5ID0gJydcclxuXHJcbiAgQElucHV0KCkgc2VsZWN0ZWRQcm9ncmFtOiBhbnkgPSBudWxsO1xyXG4gIEBJbnB1dCgpIGNhbkZyYW1ld29ya0NoYW5nZTogYm9vbGVhbiA9IHRydWU7IC8vIGlmIGZyYW1ld29yayBjYW4gRWRpdGVkIG9yIG5vdDsgRm9yIENyZWF0ZSBhIHByb2dyYW1cclxuICBASW5wdXQoKSAvKiAgKi9cclxuICAvKiAgKi9cclxuICBASW5wdXQoKSBhZGRUb1Byb2dyYW1EZXRhaWxzOiB7XHJcbiAgICBfaWQ6IHN0cmluZztcclxuICAgIGZyYW1ld29ya19uYW1lOiBzdHJpbmc7XHJcbiAgICBpZD86IG51bWJlcjtcclxuICAgIHR5cGU6IHN0cmluZztcclxuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgfSA9IHtcclxuICAgIF9pZDogJycsXHJcbiAgICBmcmFtZXdvcmtfbmFtZTogJycsXHJcbiAgICBpZDogMCxcclxuICAgIHR5cGU6ICcnLFxyXG4gICAgZGVzY3JpcHRpb246ICcnXHJcbiAgfVxyXG4gIG9yZ0RldGFpbHM6IGFueTtcclxuICBwcm9ncmFtU2ltcGxpZnlGbGFnOiBib29sZWFuID0gZmFsc2U7XHJcbiAgaXNSZXNwb25zaWJpbGl0eVNpbXBsaWZ5RmxhZzogYm9vbGVhbiA9ZmFsc2U7XHJcblxyXG5cclxuXHJcblxyXG4gIGFuaW1hdGlvbiA9IHRydWU7XHJcbiAgd29ya2Zsb3dMaXN0ID0gZmFsc2U7XHJcbiAgc2hvd01vcmVPcHRpb24gPSB0cnVlO1xyXG4gIGlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWQgPSB0cnVlO1xyXG4gIGRpc2FibGVXb3JrZmxvd0NoYW5nZSE6IGJvb2xlYW47XHJcbiAgY2hlY2twb2ludENvdW50OiBudW1iZXIgPSAwO1xyXG4gIGN1cnJlbnRCdXNpbmVzc0N5Y2xlOmFueSA9ICcnO1xyXG4gIEBWaWV3Q2hpbGQoJ3Jpc2snLCB7IHN0YXRpYzogZmFsc2UgfSkgcmlza0NvbXBvbmVudCE6IFdvcmtmbG93Umlza0NvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKCdtdWx0aXBsZVJpc2snLCB7IHN0YXRpYzogZmFsc2UgfSkgcmlza0J1bGtVcGxvYWQhOiBBZGRNdWx0aXBsZVJpc2tDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnbXVsdGlwbGVSZXNwb25zaWJpbGl0eScsIHsgc3RhdGljOiBmYWxzZSB9KSByZXNwb25zaWJpbGl0eUJ1bGtVcGxvYWQhOiBBZGRNdWx0aXBsZVJpc2tDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgncmVzcG9uc2liaWxpdHknLCB7IHN0YXRpYzogZmFsc2UgfSkgY29tcGxpYW5jZSE6IFdvcmtmbG93Q29tcGxpYW5jZUNvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKCdtb3JlT3B0aW9uJywgeyBzdGF0aWM6IGZhbHNlIH0pIG1vcmVPcHRpb24hOiBNb3JlT3B0aW9uQ29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoJ2Ryb3Bkb3duJykgZHJvcGRvd24hOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ2Ryb3Bkb3duUm93JywgeyBzdGF0aWM6IGZhbHNlIH0pIGRyb3Bkb3duUm93ITogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCdwb2xpY3knKSBwb2xpY3khOiBXb3JrZmxvd1BvbGljeUNvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKCdsb2dBbklzc3VlJykgbG9nSXNzdWVDb21wb25lbnQhOiBMb2dBbklzc3VlQ29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoJ2Fzc2Vzc21lbnQnKSB3b3JrZmxvd0Fzc2Vzc21lbnRDb21wb25lbnQhOiBXb3JrZmxvd0Fzc2Vzc21lbnRDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnaW1wb3J0QXNzZXNzbWVudCcsIHsgc3RhdGljOiBmYWxzZSB9KSBpbXBvcnRBbkFzc2Vzc21lbnQhOiBJbXBvcnRBbkFzc2Vzc21lbnRDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgncHJvZ3JhbScsIHsgc3RhdGljOiBmYWxzZSB9KSBwcm9ncmFtICE6IFdvcmtmbG93UHJvZ3JhbUNvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKCdncmNPYmplY3QnLCB7IHN0YXRpYzogZmFsc2UgfSkgZ3JjT2JqZWN0ICE6IFdvcmtmbG93R3JjQ29tcG9uZW50O1xyXG5cclxuICBkcm9wZG93bkxlZnQhOiBhbnk7XHJcbiAgZHJvcGRvd25Ub3AhOiBhbnk7XHJcbiAgZHJvcGRvd25XaWR0aCE6IGFueTtcclxuICBjbG9zZU9uRXNjOiBib29sZWFuID0gZmFsc2U7XHJcbiAvLyBmZWF0dXJlIGZsYWdcclxuICBASW5wdXQoKSBmZWF0dXJlOiBhbnk7XHJcbiAgb3JnYW5pemF0aW9uRGV0YWlsczogYW55O1xyXG5cclxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duLmVzY2FwZScsIFsnJGV2ZW50J10pIG9uS2V5ZG93bkhhbmRsZXIoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcclxuICAgIGlmIChbdGhpcy5yaXNrQ29tcG9uZW50Py5zaG93U21pbGV5LFxyXG4gICAgdGhpcy5yaXNrQnVsa1VwbG9hZD8uc2hvd1NtaWxleSxcclxuICAgIHRoaXMucmVzcG9uc2liaWxpdHlCdWxrVXBsb2FkPy5zaG93U21pbGV5LFxyXG4gICAgdGhpcy5jb21wbGlhbmNlPy5zaG93U21pbGV5LFxyXG4gICAgdGhpcy5pbXBvcnRBbkFzc2Vzc21lbnQ/LnNob3dTbWlsZXksXHJcbiAgICB0aGlzLmxvZ0lzc3VlQ29tcG9uZW50Py5zaG93U21pbGV5XS5pbmNsdWRlcyh0cnVlKSB8fCB0aGlzLnByb2dyYW0/LmFjdGl2ZUxpc3QgfHwgdGhpcy5jb21wbGlhbmNlPy5hY3RpdmVTZWxlY3Rvcikge1xyXG4gICAgICAvL0RvIE5vdGhpbmdcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY2xvc2VXb3JrZmxvd0VuZ2luZSgpXHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgY3VycmVudFdvcmtmbG93ICE6IGFueTtcclxuICB3b3JrZmxvd1R5cGVMaXN0OiBhbnkgPSBbXHJcbiAgICB7IHdvcmtmbG93TmFtZTogJ0NyZWF0ZSBhIFJlc3BvbnNpYmlsaXR5JywgY29kZTogJ0NBUicsIHBlcm1pc3Npb25JZGVudGlmaWVyOiAnUkVTUE9OU0lCSUxJVFknIH0sXHJcbiAgICB7IHdvcmtmbG93TmFtZTogJ0NyZWF0ZSBNdWx0aXBsZSBSZXNwb25zaWJpbGl0aWVzJywgY29kZTogJ0NNUicsIHBlcm1pc3Npb25JZGVudGlmaWVyOiAnTVVMVElQTEVfUkVTUE9OU0lCSUxJVFknIH0sXHJcbiAgICB7IHdvcmtmbG93TmFtZTogJ0FkZCBhIFJpc2snLCBjb2RlOiAnQUFSJywgcGVybWlzc2lvbklkZW50aWZpZXI6ICdSSVNLJyB9LFxyXG4gICAgeyB3b3JrZmxvd05hbWU6ICdBZGQgTXVsdGlwbGUgUmlza3MnLCBjb2RlOiAnQU1SJywgcGVybWlzc2lvbklkZW50aWZpZXI6ICdNVUxUSVBMRV9SSVNLJyB9LFxyXG4gICAgeyB3b3JrZmxvd05hbWU6ICdDcmVhdGUgYSBQb2xpY3knLCBjb2RlOiAnQ0FQJywgcGVybWlzc2lvbklkZW50aWZpZXI6ICdQT0xJQ1knIH0sXHJcbiAgICB7IHdvcmtmbG93TmFtZTogJ0NyZWF0ZSBhIFN1cnZleScsIGNvZGU6ICdDQVMnLCBwZXJtaXNzaW9uSWRlbnRpZmllcjogJ1NVUlZFWScgfSxcclxuICAgIHsgd29ya2Zsb3dOYW1lOiAnQ3JlYXRlIGEgRm9ybScsIGNvZGU6ICdDQUYnLCBwZXJtaXNzaW9uSWRlbnRpZmllcjogJ0ZPUk0nIH0sXHJcbiAgICB7IHdvcmtmbG93TmFtZTogJ0xvZyBhbiBJc3N1ZScsIGNvZGU6ICdMQUknLCBwZXJtaXNzaW9uSWRlbnRpZmllcjogJ0lTU1VFJyB9LFxyXG4gICAgeyB3b3JrZmxvd05hbWU6ICdDcmVhdGUgYW4gQXNzZXNzbWVudCcsIGNvZGU6ICdBQUEnLCBwZXJtaXNzaW9uSWRlbnRpZmllcjogJ0FTU0VTU01FTlQnIH0sXHJcbiAgICB7IHdvcmtmbG93TmFtZTogJ0ltcG9ydCBhbiBBc3Nlc3NtZW50JywgY29kZTogJ0lBQScsIHBlcm1pc3Npb25JZGVudGlmaWVyOiAnSU1QT1JUX0FTU0VTU01FTlQnIH0sXHJcbiAgICB7IHdvcmtmbG93TmFtZTogJ0FkZCBhIFByb2dyYW0nLCBjb2RlOiAnQ0FQUicsIHBlcm1pc3Npb25JZGVudGlmaWVyOiAnUFJPR1JBTScgfSxcclxuICAgIHsgd29ya2Zsb3dOYW1lOiAnQWRkIGEgR1JDIE9iamVjdCcsIGNvZGU6ICdHUkMnLCBwZXJtaXNzaW9uSWRlbnRpZmllcjogJ0dSQ19PQkpFQ1RTJyB9XHJcbiAgXTtcclxuICBhZGRpdGlvbmFsSW5mb3JtYXRpb25MaXN0ID0gW1xyXG4gICAgJ09iamVjdGl2ZScsXHJcbiAgICAnUmVzcG9uc2liaWxpdHkgQ2VudGVyJyxcclxuICAgICdSZXNwb25zaWJpbGl0eSBDYXRlZ29yeSdcclxuICBdO1xyXG4gIGNvbmZpcm1hdGlvbkFsZXJ0Q29uZmlnOiBDb25maXJtYXRpb25BbGVydCA9IHsgaXNWaXNpYmxlOiBmYWxzZSB9O1xyXG4gIGNsb3NlV29ya2Zsb3dFbmdpbmUoZXZ0PzogYW55KSB7XHJcbiAgICBpZiAoZXZ0Py5jb25maXJtID09PSBmYWxzZSkge1xyXG4gICAgICB0aGlzLmNsb3NlV29ya2Zsb3cuZW1pdChldnQgPyBldnQuZXZ0IDogZXZ0KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY2xvc2VDb25maXJtKGV2dCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjbG9zZUNvbmZpcm0oZXZ0OiBhbnkpIHtcclxuICAgIHRoaXMuY29uZmlybWF0aW9uQWxlcnRDb25maWcgPSB7IGlzVmlzaWJsZTogdHJ1ZSwgbWVzc2FnZTogJ0lmIHlvdSBuYXZpZ2F0ZSBhd2F5LCBhbnkgdW5zYXZlZCBjaGFuZ2VzIHdpbGwgYmUgbG9zdC4nLCBhY3Rpb246ICdXT1JLRkxPV19DTE9TRScsIGRhdGE6IGV2dCB9O1xyXG4gIH1cclxuICBleGVjdXRlQ2xvc2UoZXZ0OiBhbnkpIHtcclxuICAgIGlmIChldnQuYWN0aW9uID09PSAnWUVTJykge1xyXG4gICAgICB0aGlzLmNsb3NlV29ya2Zsb3cuZW1pdCgpXHJcbiAgICB9XHJcbiAgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZXROZXR3b3JrTGlzdG5lcigpO1xyXG4gICAgdGhpcy5zZXRXb3JrZmxvdyh0aGlzLndvcmtmbG93VHlwZSwgdGhpcy53b3JrZmxvd1R5cGVMaXN0KTtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLmFuaW1hdGlvbiA9IGZhbHNlO1xyXG4gICAgfSwgNTAwKTtcclxuICAgIHRoaXMuc2V0V29ya2Zsb3codGhpcy53b3JrZmxvd1R5cGUsIHRoaXMud29ya2Zsb3dUeXBlTGlzdCk7XHJcbiAgICB0aGlzLmRlY2lkZVZpZXdNb3JlT3B0aW9uKCk7XHJcbiAgICB0aGlzLmZldGNoT3JnYW5pemF0aW9uRGV0YWlscygpO1xyXG4gICAgdGhpcy5nZXRVc2VyRGV0YWlscygpO1xyXG4gICAgY29uc29sZS5sb2coXCJhZGRUb1Byb2dyYW1EZXRhaWxzID09PT5cIiwgdGhpcy5hZGRUb1Byb2dyYW1EZXRhaWxzKVxyXG4gICAgdGhpcy5wcm9ncmFtU2ltcGxpZnlGbGFnID0gdGhpcy5mZWF0dXJlLmlzRmVhdHVyZUVuYWJsZWQoJ2ZmX3Byb2dyYW1fc2ltcGxpZnknKTtcclxuICAgIHRoaXMuZmVhdHVyZUZsYWdfZ3JvdXBzID0gdGhpcy5mZWF0dXJlLmlzRmVhdHVyZUVuYWJsZWQoJ2ZmX3Jlc3BvbnNpYmlsaXR5X2dyb3VwcycpO1xyXG4gICAgdGhpcy5pc1Jlc3BvbnNpYmlsaXR5U2ltcGxpZnkoKTtcclxuICAgIFxyXG4gIH1cclxuXHJcbiAgc2V0TmV0d29ya0xpc3RuZXIoKSB7XHJcbiAgICBhZGRFdmVudExpc3RlbmVyKCdvZmZsaW5lJywgKGUpID0+IHtcclxuICAgICAgdGhpcy5zbmFja0Jhci5zaG93KCdDb25uZWN0aW9uIGxvc3QhPGJyPkNoZWNrIHlvdXIgbmV0d29yayBjb25uZWN0aXZpdHkuJywgJ2FsZXJ0JylcclxuICAgIH0pO1xyXG4gICAgYWRkRXZlbnRMaXN0ZW5lcignb25saW5lJywgKGUpID0+IHtcclxuICAgICAgdGhpcy5zbmFja0Jhci5zaG93KCdZb3VcXCdyZSBiYWNrIG9ubGluZSEnLCAnc3VjY2VzcycpXHJcbiAgICB9KTtcclxuICB9XHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy53b3JrZmxvd1R5cGVMaXN0ID0gdGhpcy53b3JrZmxvd1R5cGVMaXN0LmZpbHRlcigod29ya2Zsb3c6IGFueSkgPT4ge1xyXG4gICAgICBpZiAodGhpcy5hbGxvd2VkV29ya2Zsb3dzLmluY2x1ZGVzKHdvcmtmbG93LnBlcm1pc3Npb25JZGVudGlmaWVyKSkge1xyXG4gICAgICAgIHJldHVybiB3b3JrZmxvdztcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICBpZiAodGhpcy5vcGVuZWRGcm9tID09PSAnUklTS19UUkVBVE1FTlQnKSB7XHJcbiAgICAgIHRoaXMuaXNXb3JrZmxvd1NlbGVjdG9yRW5hYmxlZCA9IHRydWU7XHJcbiAgICAgIHRoaXMuZGlzYWJsZVdvcmtmbG93Q2hhbmdlID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGRlY2lkZVZpZXdNb3JlT3B0aW9uKHR5cGU/OiBib29sZWFuKSB7XHJcbiAgICBpZih0eXBlKXtcclxuICAgICAgdGhpcy5jbG9zZU9uRXNjID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBpZiAoKHRoaXMuY3VycmVudFdvcmtmbG93Py5jb2RlID09PSAnQ01SJyB8fCB0aGlzLmN1cnJlbnRXb3JrZmxvdz8uY29kZSA9PT0gJ0FNUicgfHwgdGhpcy5jdXJyZW50V29ya2Zsb3c/LmNvZGUgPT09ICdBQUEnIHx8IHRoaXMuY3VycmVudFdvcmtmbG93Py5jb2RlID09PSAnSUFBJykpIHtcclxuICAgICAgdGhpcy5zaG93TW9yZU9wdGlvbiA9IGZhbHNlO1xyXG4gICAgICBpZiAodHlwZSA9PT0gdHJ1ZSkge1xyXG4gICAgICAgIHRoaXMuaXNXb3JrZmxvd1NlbGVjdG9yRW5hYmxlZCA9IGZhbHNlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuaXNXb3JrZmxvd1NlbGVjdG9yRW5hYmxlZCA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmICh0eXBlID09PSB0cnVlKSB7IHRoaXMuc2hvd01vcmVPcHRpb24gPSBmYWxzZTsgdGhpcy5pc1dvcmtmbG93U2VsZWN0b3JFbmFibGVkID0gZmFsc2U7IH1cclxuICAgICAgaWYgKHR5cGUgPT09IGZhbHNlKSB7IHRoaXMuc2hvd01vcmVPcHRpb24gPSB0cnVlOyB0aGlzLmlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWQgPSB0cnVlOyB9XHJcbiAgICAgIGlmICh0eXBlID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgICB0aGlzLnNob3dNb3JlT3B0aW9uID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLmlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWQgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdWJtaXQoKSB7XHJcbiAgICBzd2l0Y2ggKHRoaXMuY3VycmVudFdvcmtmbG93Py5jb2RlKSB7XHJcbiAgICAgIGNhc2UgJ0FBUic6XHJcbiAgICAgICAgdGhpcy5yaXNrQ29tcG9uZW50LnN1Ym1pdFJpc2soKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnTEFJJzpcclxuICAgICAgICB0aGlzLmxvZ0lzc3VlQ29tcG9uZW50LmFkZElzc3VlKCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ0NBUic6XHJcbiAgICAgICAgdGhpcy5jb21wbGlhbmNlLnN1Ym1pdFJlc3BvbnNpYmlsaXR5KCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ0NBUCc6XHJcbiAgICAgICAgdGhpcy5wb2xpY3kuc3VibWl0UG9saWN5KCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ0FBQSc6XHJcbiAgICAgICAgdGhpcy53b3JrZmxvd0Fzc2Vzc21lbnRDb21wb25lbnQuc3VibWl0QXNzZXNzbWVudCgpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdDQVBSJzp7XHJcbiAgICAgICAgdGhpcy5wcm9ncmFtLnNhdmVQcm9ncmFtKCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgICAgLy8gY2FzZSAnSUFBJzpcclxuICAgICAgLy8gICB0aGlzLmltcG9ydEFuQXNzZXNzbWVudC5zdWJtaXRBc3Nlc3NtZW50KCk7XHJcblxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZWRpdFdvcmtmbG93KCkge1xyXG4gICAgdGhpcy53b3JrZmxvd0xpc3QgPSAhdGhpcy53b3JrZmxvd0xpc3Q7XHJcbiAgICBjb25zdCBkcm9wZG93biA9IHRoaXMuZHJvcGRvd24ubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgIHRoaXMuZHJvcGRvd25MZWZ0ID0gZHJvcGRvd24ubGVmdDtcclxuICAgIHRoaXMuZHJvcGRvd25Ub3AgPSBkcm9wZG93bi50b3AgKyBkcm9wZG93bi5oZWlnaHQ7XHJcbiAgICB0aGlzLmRyb3Bkb3duV2lkdGggPSBkcm9wZG93bi53aWR0aDtcclxuICB9XHJcbiAgY2xvc2VXb3JrZmxvd0xpc3QoKSB7XHJcbiAgICB0aGlzLndvcmtmbG93TGlzdCA9IGZhbHNlO1xyXG4gIH1cclxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcclxuICBzaXplQ2hhbmdlKGV2ZW50OiBhbnkpIHtcclxuICAgIHRoaXMud29ya2Zsb3dMaXN0ID0gZmFsc2U7XHJcbiAgfVxyXG4gIGNoYW5nZVdvcmtmbG93KGV2dDogYW55LCBzZWxlY3RlZFdvcmtmbG93OiBhbnkpIHtcclxuICAgIGlmIChzZWxlY3RlZFdvcmtmbG93Py5jb2RlID09PSB0aGlzLmN1cnJlbnRXb3JrZmxvdz8uY29kZSkgeyByZXR1cm47IH1cclxuICAgIHRoaXMuY29uZmlybWF0aW9uQWxlcnRDb25maWcgPSB7IGlzVmlzaWJsZTogdHJ1ZSwgbWVzc2FnZTogJ0lmIHlvdSBjaGFuZ2UgdGhlIHdvcmtmbG93LCBhbnkgdW5zYXZlZCBjaGFuZ2VzIHdvdWxkIGJlIGxvc3QuJywgYWN0aW9uOiAnV09SS0ZMT1dfQ0hBTkdFJywgZGF0YTogc2VsZWN0ZWRXb3JrZmxvdyB9O1xyXG4gIH1cclxuXHJcbiAgY29uZmlybVdvcmtmbG93Q2hhbmdlKGV2dDogYW55KSB7XHJcbiAgICBjb25zb2xlLmxvZyhcImV2ZW50ID09PT09PlwiLCBldnQpXHJcbiAgICBpZiAoZXZ0LmFjdGlvbiA9PT0gJ1lFUycpIHtcclxuICAgICAgdGhpcy5jbG9zZU9uRXNjID0gdHJ1ZTtcclxuICAgICAgc3dpdGNoIChldnQucGF5bG9hZC5hY3Rpb24pIHtcclxuICAgICAgICBjYXNlICdXT1JLRkxPV19DSEFOR0UnOlxyXG4gICAgICAgICAgdGhpcy5jdXJyZW50V29ya2Zsb3cgPSBldnQ/LnBheWxvYWQ/LmRhdGEgPz8gbnVsbDtcclxuICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnRXb3JrZmxvdz8uY29kZSkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5tb3JlT3B0aW9uKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5tb3JlT3B0aW9uLnJlc2V0QWxsKHRoaXMuY3VycmVudFdvcmtmbG93Py5jb2RlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLmRlY2lkZVZpZXdNb3JlT3B0aW9uKCk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnRURJVF9SSVNLJzpcclxuICAgICAgICAgIHRoaXMucmlza0NvbXBvbmVudC5jcmVhdGVSaXNrKHRoaXMucmlza0NvbXBvbmVudC5yaXNrRm9ybSk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdQT0xJQ1lfUE9SVEFMJzpcclxuICAgICAgICAgIHRoaXMucG9saWN5LmNvbmZpcm1Qb2xpY3lQb3J0YWwoZXZ0LmFjdGlvbik7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdXT1JLRkxPV19DTE9TRSc6XHJcbiAgICAgICAgICB0aGlzLmNsb3NlV29ya2Zsb3cuZW1pdChldnQ/LnBheWxvYWQ/LmRhdGEpXHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdjaGVja3BvaW50JzpcclxuICAgICAgICAgIHRoaXMubW9yZU9wdGlvbi5tb3JlT3B0aW9uc0xpc3QuQ0FSLmZvckVhY2goKG9wdGlvbjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChvcHRpb24/LmNvZGUgPT09ICdBU1NFU1NNRU5UJyB8fCBvcHRpb24/LmNvZGUgPT09ICdDSEVDS1BPSU5UU19ORVcnKSB7XHJcbiAgICAgICAgICAgICAgb3B0aW9uLmlzRGlzYWJsZWQgPSBmYWxzZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaWYgKG9wdGlvbj8uY29kZSA9PT0gJ0NIRUNLUE9JTlRTJykge1xyXG4gICAgICAgICAgICAgIG9wdGlvbi5pc0Rpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgIHRoaXMuY29tcGxpYW5jZS5yZW1vdmVDaGVja3BvaW50KCk7XHJcbiAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgY2FzZSAnUk9MRSc6XHJcbiAgICAgICAgICB0aGlzLnByb2dyYW0ucmVtb3ZlKGV2dC5wYXlsb2FkLmRhdGEsICdST0xFJylcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgY2FzZSAnbmV3LWNoZWNrcG9pbnRzJzpcclxuICAgICAgICB0aGlzLm1vcmVPcHRpb24ubW9yZU9wdGlvbnNMaXN0LkNBUi5mb3JFYWNoKChvcHRpb246IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKG9wdGlvbj8uY29kZSA9PT0gJ0FTU0VTU01FTlQnICYmICFldnQucGF5bG9hZC5pc0RhdGFSZW1vdmVkKSB7XHJcbiAgICAgICAgICAgIG9wdGlvbi5pc0Rpc2FibGVkID0gZmFsc2U7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgaWYgKG9wdGlvbj8uY29kZSA9PT0gJ0NIRUNLUE9JTlRTJyAmJiAhZXZ0LnBheWxvYWQuaXNEYXRhUmVtb3ZlZCkge1xyXG4gICAgICAgICAgICBvcHRpb24uaXNEaXNhYmxlZCA9IHRydWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZihldnQucGF5bG9hZC5pc0NoZWNrcG9pbnRDaGVja2VkICYmIG9wdGlvbj8uY29kZSA9PT0gJ0NIRUNLUE9JTlRTX05FVycpIHtcclxuICAgICAgICAgICAgICBvcHRpb24uY2hlY2tlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIHRoaXMuY29tcGxpYW5jZS5tb3JlT3B0aW9ucy5DSEVDS1BPSU5UU19ORVcgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgdGhpcy5jb21wbGlhbmNlLnJlbW92ZSgnbmV3LWNoZWNrcG9pbnRzJyk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnYXNzaWduZWVUeXBlQ2hhbmdlJzogdGhpcy5jb21wbGlhbmNlLnJlc3BvbnNpYmlsaXR5Rm9ybS5hc3NpZ25lZXMud2hvQ2FuQ29tcGxldGUgPSAnQUxMJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29tcGxpYW5jZS5yZXNwb25zaWJpbGl0eUZvcm0uYXNzaWduZWVzLmxpc3QgPSB0aGlzLmNvbXBsaWFuY2Uuc2V0TGlzdCh0aGlzLmNvbXBsaWFuY2UuYXNzaWduZWVzTGlzdCwgdGhpcy5jb21wbGlhbmNlLm9yaWdpbmFsQXNzaWduZWUsICdlbXBsb3llZV9pZCcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJ0aGlzLmNvbXBsaWFuY2UucmVzcG9uc2liaWxpdHlGb3JtID09PlwiLCB0aGlzLmNvbXBsaWFuY2UucmVzcG9uc2liaWxpdHlGb3JtKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5mZWF0dXJlRmxhZ19ncm91cHMpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb21wbGlhbmNlWydyZXNwb25zaWJpbGl0eUZvcm0nXVsnYXNzaWduZWVHcm91cHMnXVsnbGlzdCddID0gW107XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnc2VxdWVudGlhbCc6IHRoaXMuY29tcGxpYW5jZVsncmVzcG9uc2liaWxpdHlGb3JtJ11bJ3Jldmlld2VycyddWydzZXF1ZW50aWFsV29ya2Zsb3cnXSA9IHRydWU7IGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ2FueVJldmlld2VyJzogdGhpcy5jb21wbGlhbmNlWydyZXNwb25zaWJpbGl0eUZvcm0nXVsncmV2aWV3ZXJzJ11bJ3NlcXVlbnRpYWxXb3JrZmxvdyddID0gZmFsc2U7IGJyZWFrO1xyXG5cclxuXHJcbiAgICAgIH1cclxuXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBzd2l0Y2ggKGV2dC5wYXlsb2FkLmFjdGlvbikge1xyXG5cclxuICAgICAgICBjYXNlICdQT0xJQ1lfUE9SVEFMJzpcclxuICAgICAgICAgIHRoaXMucG9saWN5LmNvbmZpcm1Qb2xpY3lQb3J0YWwoZXZ0LmFjdGlvbik7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdhc3NpZ25lZVR5cGVDaGFuZ2UnOiAgdGhpcy5jb21wbGlhbmNlLnJlc3BvbnNpYmlsaXR5Rm9ybS5hc3NpZ25lZXMud2hvQ2FuQ29tcGxldGUgPSAnQU5ZX09ORSc7IGJyZWFrO1xyXG5cclxuICAgICAgICBjYXNlICdzZXF1ZW50aWFsJzogdGhpcy5jb21wbGlhbmNlWydyZXNwb25zaWJpbGl0eUZvcm0nXVsncmV2aWV3ZXJzJ11bJ3NlcXVlbnRpYWxXb3JrZmxvdyddID0gZmFsc2U7IGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ2FueVJldmlld2VyJzogdGhpcy5jb21wbGlhbmNlWydyZXNwb25zaWJpbGl0eUZvcm0nXVsncmV2aWV3ZXJzJ11bJ3NlcXVlbnRpYWxXb3JrZmxvdyddID0gdHJ1ZTsgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMuY29uZmlybWF0aW9uQWxlcnRDb25maWcgPSB7IGlzVmlzaWJsZTogZmFsc2UsIG1lc3NhZ2U6ICcnLCBhY3Rpb246ICcnLCBkYXRhOiBudWxsIH07XHJcbiAgICByZXR1cm4gZXZ0O1xyXG4gIH1cclxuXHJcbiAgc2V0V29ya2Zsb3cod29ya0Zsb3dDb2RlOiBhbnksIHdvcmtGbG93TGlzdDogYW55KSB7XHJcbiAgICBjb25zdCBzZWxlY3RlZFdvcmtmbG93ID0gd29ya0Zsb3dMaXN0LmZpbmQoKGVsZW1lbnQ6IGFueSkgPT4gZWxlbWVudD8uY29kZSA9PT0gd29ya0Zsb3dDb2RlKTtcclxuICAgIHNlbGVjdGVkV29ya2Zsb3cgPyB0aGlzLmN1cnJlbnRXb3JrZmxvdyA9IHNlbGVjdGVkV29ya2Zsb3cgOiB0aGlzLmN1cnJlbnRXb3JrZmxvdyA9IG51bGw7XHJcbiAgICByZXR1cm4gc2VsZWN0ZWRXb3JrZmxvdztcclxuICB9XHJcblxyXG4gIGFkZE1vcmVJbmZvKGV2ZW50OiBhbnkpIHtcclxuICAgIGNvbnNvbGUubG9nKFwiPT09PT09PT09PT09PT0+MVwiLGV2ZW50KVxyXG4gICAgc3dpdGNoICh0aGlzLmN1cnJlbnRXb3JrZmxvdz8uY29kZSkge1xyXG4gICAgICBjYXNlICdBQVInOlxyXG4gICAgICAgIHRoaXMucmlza0NvbXBvbmVudC5hZGRNb3JlSW5mbyhldmVudCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ0xBSSc6XHJcbiAgICAgICAgdGhpcy5sb2dJc3N1ZUNvbXBvbmVudC5hZGRNb3JlSW5mbyhldmVudCk7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlICdDQVInOlxyXG4gICAgICAgIGlmIChldmVudD8uY29kZSA9PT0gXCJDSEVDS1BPSU5UU1wiKSB7XHJcbiAgICAgICAgICB0aGlzLm9uUmVtb3ZpbmdDaGVja3BvaW50KCdjaGVja3BvaW50Jyk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoZXZlbnQ/LmNvZGUgPT09ICdDSEVDS1BPSU5UU19ORVcnKXtcclxuICAgICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5tb3JlT3B0aW9uLm1vcmVPcHRpb25zTGlzdC5DQVIuZmluZEluZGV4KChlbGU6IGFueSkgPT4gZWxlPy5jb2RlID09PSAnQVNTRVNTTUVOVCcpO1xyXG4gICAgICAgICAgdGhpcy5tb3JlT3B0aW9uLm1vcmVPcHRpb25zTGlzdC5DQVJbaW5kZXhdLmlzRGlzYWJsZWQgPSBldmVudC5jaGVja2VkID8gdHJ1ZSA6IGZhbHNlO1xyXG4gICAgICAgICAgaWYoIGV2ZW50LmNoZWNrcG9pbnRfbmV3ICYmIHRoaXMuY2hlY2twb2ludENvdW50KSB7XHJcbiAgICAgICAgICAgIHRoaXMub25SZW1vdmluZ0NoZWNrcG9pbnQoJ25ldy1jaGVja3BvaW50cycsIHRydWUpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc3QgQ0hFQ0tQT0lOVF9JTkRFWCA9IHRoaXMubW9yZU9wdGlvbi5tb3JlT3B0aW9uc0xpc3QuQ0FSLmZpbmRJbmRleCgoZWxlOiBhbnkpID0+IGVsZT8uY29kZSA9PT0gJ0NIRUNLUE9JTlRTX05FVycpO1xyXG4gICAgICAgICAgICB0aGlzLmNvbXBsaWFuY2UubW9yZU9wdGlvbnMuQ0hFQ0tQT0lOVFNfTkVXID0gZXZlbnQuY2hlY2tlZDtcclxuICAgICAgICAgICAgaWYoZXZlbnQuY2hlY2twb2ludF9uZXcpIHtcclxuICAgICAgICAgICAgICBjb25zdCBpc0NoZWNrZWQgPSBldmVudC5jaGVja2VkID8gZmFsc2UgOiB0cnVlO1xyXG4gICAgICAgICAgICAgICBldmVudC5jaGVja2VkID0gaXNDaGVja2VkO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0aGlzLm1vcmVPcHRpb24ubW9yZU9wdGlvbnNMaXN0LkNBUltDSEVDS1BPSU5UX0lOREVYXSA9IGV2ZW50O1xyXG4gICAgICAgICAgICB0aGlzLm1vcmVPcHRpb24ubW9yZU9wdGlvbnNMaXN0LkNBUltpbmRleF0uaXNEaXNhYmxlZCA9IGV2ZW50LmNoZWNrZWRcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoZXZlbnQ/LmNvZGUgPT09ICdBU1NFU1NNRU5UJyl7XHJcbiAgICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMubW9yZU9wdGlvbi5tb3JlT3B0aW9uc0xpc3QuQ0FSLmZpbmRJbmRleCgoZWxlOiBhbnkpID0+IGVsZT8uY29kZSA9PT0gJ0NIRUNLUE9JTlRTX05FVycpO1xyXG4gICAgICAgICAgdGhpcy5tb3JlT3B0aW9uLm1vcmVPcHRpb25zTGlzdC5DQVJbaW5kZXhdLmlzRGlzYWJsZWQgPSBldmVudC5jaGVja2VkO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmNvbXBsaWFuY2UuYWRkTW9yZUluZm8oZXZlbnQpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdDQVAnOlxyXG4gICAgICAgIHRoaXMucG9saWN5LmFkZE1vcmVJbmZvKGV2ZW50KTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnQ0FQUic6XHJcbiAgICAgICAgdGhpcy5wcm9ncmFtLmFkZE1vcmVJbmZvKGV2ZW50KTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnR1JDJzpcclxuICAgICAgICB0aGlzLmdyY09iamVjdC5hZGRNb3JlSW5mbyhldmVudCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwb3B1bGF0ZU1vcmVPcHRpb24oZXZlbnQ6IGFueSkge1xyXG4gICAgY29uc29sZS5sb2coXCI9PT09PT09PT09PT09PT5cIixldmVudClcclxuICAgIGlmICh0aGlzLm1vcmVPcHRpb24pIHtcclxuICAgICAgdGhpcy5tb3JlT3B0aW9uLnBvcHVsYXRlKGV2ZW50KTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG4gIGhpZGVFbGVtZW50c0Zyb21Nb3JlT3B0aW9ucyhldmVudDogYW55KSB7XHJcbiAgICB0aGlzLm1vcmVPcHRpb24/LmhpZGVFbGVtZW50cyhldmVudCk7XHJcbiAgfVxyXG5cclxuICBzaG93Q29uZmlybWF0aW9uUG9wdXAoY29uZmlnOiBDb25maXJtYXRpb25BbGVydCkge1xyXG4gICAgdGhpcy5jb25maXJtYXRpb25BbGVydENvbmZpZyA9IGNvbmZpZztcclxuICB9XHJcblxyXG4gIGJ1bGtVcGxvYWRCcm93c2UoZXZlbnQ6IGFueSkge1xyXG4gICAgc3dpdGNoIChldmVudCkge1xyXG4gICAgICBjYXNlICdBTVInOlxyXG4gICAgICAgIHRoaXMucmlza0J1bGtVcGxvYWQudHJpZ2dlckJyb3dzZUZpbGUoKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnQ01SJzpcclxuICAgICAgICB0aGlzLnJlc3BvbnNpYmlsaXR5QnVsa1VwbG9hZC50cmlnZ2VyQnJvd3NlRmlsZSgpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdJQUEnOlxyXG4gICAgICAgIHRoaXMuaW1wb3J0QW5Bc3Nlc3NtZW50LnRyaWdnZXJCcm93c2VGaWxlKCk7XHJcblxyXG5cclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBvblJlc2V0Rm9ybSgpIHtcclxuICAgIHRoaXMubW9kZSA9ICdDUkVBVEUnO1xyXG4gICAgdGhpcy5lbnRydXN0QnV0dG9uTmFtZSA9ICdFbnRydXN0JztcclxuICB9XHJcbiAgc2hpZnRUb0VkaXRNb2RlKCkge1xyXG4gICAgdGhpcy5tb2RlID0gJ0VESVQnXHJcbiAgfVxyXG4gIHNjcm9sbEZvcm0oKSB7XHJcbiAgICBpZiAodGhpcy5kcm9wZG93blJvdz8ubmF0aXZlRWxlbWVudD8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk/LnRvcCA8IDM4KSB7XHJcbiAgICAgIHRoaXMuZHJvcGRvd25Sb3c/Lm5hdGl2ZUVsZW1lbnQ/LmNsYXNzTGlzdD8uYWRkKCdoaWRlJyk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmRyb3Bkb3duUm93Py5uYXRpdmVFbGVtZW50Py5jbGFzc0xpc3Q/LnJlbW92ZSgnaGlkZScpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICpcclxuICAgKiBAcGFyYW0gZXZlbnQgd2hpY2ggbW9yZSBvcHRpb25zIHdlIGFyZSByZW1vdmluZy5cclxuICAgKiBAcGFyYW0gaXNDaGVja3BvaW50Q2hlY2tlZCAgaXMgdHJ1ZSBpZiB2YWx1ZSBjaGVja3BvaW50cyBpcyByZW1vdmVkIGJ5IGNsaWNraW5nIG9uIG1vcmUgb3B0aW9uc1xyXG4gICAqL1xyXG4gIG9uUmVtb3ZpbmdDaGVja3BvaW50KGV2ZW50OiBzdHJpbmcsIGlzQ2hlY2twb2ludENoZWNrZWQ/OiBib29sZWFuLCBpc0RhdGFSZW1vdmVkPzogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgbGV0IG1zZyA9ICcnO1xyXG4gICAgaWYoZXZlbnQgPT09ICduZXctY2hlY2twb2ludHMnKSB7XHJcbiAgICAgIG1zZyA9ICdJZiB5b3UgY2hvb3NlIHRvIHJlbW92ZSB0aGVzZSBDaGVja3BvaW50cywgdGhleSB3aWxsIGJlIGRlbGV0ZWQgYW5kIGNhbm5vdCBiZSByZXN0b3JlZC4gSG93ZXZlciwgeW91IHdpbGwgc3RpbGwgYmUgYWJsZSB0byBjcmVhdGUgbmV3IENoZWNrcG9pbnRzIG9yIGxpbmsgYW4gQXNzZXNzbWVudC4nXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBtc2cgPSAnSWYgeW91IGNob29zZSB0byByZW1vdmUgdGhlc2UgY2hlY2twb2ludHMsIHRoZXkgd2lsbCBiZSBkZWxldGVkIGFuZCBjYW5ub3QgYmUgcmVzdG9yZWQuJ1xyXG4gICAgfVxyXG4gICAgdGhpcy5jb25maXJtYXRpb25BbGVydENvbmZpZyA9IHsgaXNWaXNpYmxlOiB0cnVlLCBtZXNzYWdlOiBtc2csIGFjdGlvbjogZXZlbnQsIGRhdGE6IHsgdHlwZTogJ3Jlc3BvbnNpYmlsaXR5Q2hlY2twb2ludCcgfSAsIGlzQ2hlY2twb2ludENoZWNrZWQ6IChpc0NoZWNrcG9pbnRDaGVja2VkID8/IGZhbHNlKSwgaXNEYXRhUmVtb3ZlZDogKGlzRGF0YVJlbW92ZWQgPz8gZmFsc2UpfTtcclxuICB9XHJcblxyXG4gIG9uUmVtb3ZpbmdSb2xlKGV2ZW50OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGxldCBtc2cgPSAnJztcclxuICAgIGlmKGV2ZW50KSB7XHJcbiAgICAgIG1zZyA9ICdJZiB5b3UgY2hhbmdlIHRoZSByb2xlcywgYW55IHVuc2F2ZWQgY2hhbmdlcyB3b3VsZCBiZSBsb3N0LidcclxuICAgIH1cclxuICAgIHRoaXMuY29uZmlybWF0aW9uQWxlcnRDb25maWcgPSB7IGlzVmlzaWJsZTogdHJ1ZSwgbWVzc2FnZTogbXNnLCBhY3Rpb246ICdST0xFJywgZGF0YTogZXZlbnR9XHJcbiAgfVxyXG5cclxuICBpc0Fzc2Vzc21lbnREaXNhYmxlZChpc0Rpc2FibGVkOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLm1vcmVPcHRpb24ubW9yZU9wdGlvbnNMaXN0LkNBUi5mb3JFYWNoKChvcHRpb246IGFueSkgPT4ge1xyXG4gICAgICBpZiAob3B0aW9uPy5jb2RlID09PSAnQVNTRVNTTUVOVCcgfHwgb3B0aW9uPy5jb2RlID09PSAnQ0hFQ0tQT0lOVFNfTkVXJykge1xyXG4gICAgICAgIG9wdGlvbi5pc0Rpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBkaXNhYmxlTW9yZU9wdGlvbnMod29ya2Zsb3dDb2RlOmFueSxkaXNhYmxlZEVsZW1lbnRzQ29kZTphbnkpe1xyXG4gICAgaWYoT2JqZWN0LmtleXModGhpcy5tb3JlT3B0aW9uLm1vcmVPcHRpb25zTGlzdCkuaW5jbHVkZXMod29ya2Zsb3dDb2RlKSl7XHJcbiAgICAgIHRoaXMubW9yZU9wdGlvbi5tb3JlT3B0aW9uc0xpc3Rbd29ya2Zsb3dDb2RlXS5mb3JFYWNoKChvcHRpb246IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChkaXNhYmxlZEVsZW1lbnRzQ29kZS5pbmNsdWRlcyhvcHRpb24/LmNvZGUpKSB7XHJcbiAgICAgICAgICBvcHRpb24uaXNEaXNhYmxlZCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uQ2hlY2twb2ludFNlbGVjdGlvbihldmVudDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLmNoZWNrcG9pbnRDb3VudCA9IGV2ZW50O1xyXG5cclxuICB9XHJcblxyXG4gIG9uUmNTZWxlY3RlZChpc1JjU2VsZWN0ZWQ6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIHRoaXMuaXNSQ1NlbGVjdGVkID0gaXNSY1NlbGVjdGVkO1xyXG4gIH1cclxuXHJcbiAgZmV0Y2hPcmdhbml6YXRpb25EZXRhaWxzKCl7XHJcbiAgICB0aGlzLmF1dGguZ2V0T3JnYW5pemF0aW9uRGV0YWlscygpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6KHJlczphbnkpPT57XHJcbiAgICAgICAgdGhpcy5vcmdEZXRhaWxzID0gcmVzO1xyXG4gICAgICAgIGlmKHJlcz8uYnVzaW5lc3NfY3ljbGVzX2FyciAmJiByZXM/LmJ1c2luZXNzX2N5Y2xlc19hcnI/Lmxlbmd0aCl7XHJcbiAgICAgICAgICBjb25zdCBzZWxlY3RlZCA9IHJlcz8uYnVzaW5lc3NfY3ljbGVzX2Fyci5maWx0ZXIoKGVsZTphbnkpID0+IGVsZT8uc2VsZWN0ZWQpO1xyXG4gICAgICAgICAgY29uc3Qgc3BsaXR0ZWQgPSBzZWxlY3RlZFswXS5idXNpbmVzc19jeWNsZT8uc3BsaXQoJy0nKTtcclxuICAgICAgICAgdGhpcy5jdXJyZW50QnVzaW5lc3NDeWNsZSA9IGAke3NwbGl0dGVkWzBdPy5zbGljZSgyKX0gLSAke3NwbGl0dGVkWzFdPy5zbGljZSg0KX1gXHJcbiAgICAgICAgfX1cclxuICAgIH0pXHJcbiAgfVxyXG4gIGdldFVzZXJEZXRhaWxzKCkge1xyXG4gICAgdGhpcy5hdXRoLmdldFVzZXJJbmZvKCkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZihyZXMpe1xyXG4gICAgICAgIHRoaXMuYXV0aC51c2VyRGV0YWlscyA9IHJlcztcclxuICAgICAgfVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIGFzc2lnbmVlVHlwZUNoYW5nZSgpIHtcclxuICAgIHRoaXMuY29uZmlybWF0aW9uQWxlcnRDb25maWcgPSB7IGlzVmlzaWJsZTogdHJ1ZSwgbWVzc2FnZTogJ1RoaXMgYWN0aW9uIHdpbGwgcmVzZXQgdGhlIGNoYW5nZXMgYW5kIGFzc2lnbiB0aGUgcmVzcG9uc2liaWxpdHkgYmFjayB0byB0aGUgb3JpZ2luYWwgYXNzaWduZWUuJywgYWN0aW9uOiAnYXNzaWduZWVUeXBlQ2hhbmdlJywgZGF0YToge30gLCBpc1JlZEFsZXJ0OiB0cnVlfTtcclxuICB9XHJcblxyXG4gIC8vIGV2ZW50ID0+ICdzZXF1ZW50aWFsJyB8fCAnYW55UmV2aWV3ZXInXHJcbiAgb25SZXZpZXdlckNoYW5nZShldmVudDogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBjb21tb25UZXh0OiBzdHJpbmcgPSAnT25jZSBjb25maXJtZWQsIHRoZSBuZXcgcmV2aWV3IHdvcmtmbG93IHdpbGwgYmUgYXBwbGljYWJsZSBmb3IgYWxsIGN1cnJlbnQgYW5kIGZ1dHVyZSByZXZpZXcgZHVlIGRhdGVzLidcclxuICAgIGNvbnN0IG1zZyA9IGNvbW1vblRleHQgKyAgKGV2ZW50ID09PSAnYW55UmV2aWV3ZXInID8gYElmIGFueSByZXZpZXdlciBoYWQgY29tcGxldGVkIHRoZSByZXZpZXcsIHRoZSBjdXJyZW50IHJldmlldyBkdWUgZGF0ZSB3aWxsIGJlIGNsb3NlZCBhbmQgdGhlIHJldmlldyBzdGF0dXMgd2lsbCBiZSB1cGRhdGVkIHRvICdDb21wbGV0ZWQnLmA6ICcnKVxyXG4gICAgdGhpcy5jb25maXJtYXRpb25BbGVydENvbmZpZyA9IHsgaXNWaXNpYmxlOiB0cnVlLCBtZXNzYWdlOiBtc2csIGFjdGlvbjogZXZlbnQsIH07XHJcbiAgfVxyXG5cclxuICBpc1Jlc3BvbnNpYmlsaXR5U2ltcGxpZnkoKXtcclxuICAgIGlmKHRoaXMuZmVhdHVyZS5pc0ZlYXR1cmVFbmFibGVkKCdmZl9yZXNwb25zaWJpbGl0eV9zaW1wbGlmaWNhdGlvbicpKXtcclxuICAgICAgdGhpcy53b3JrZmxvd1R5cGVMaXN0WzBdLndvcmtmbG93TmFtZSA9ICdBZGQgYSBSZXNwb25zaWJpbGl0eSc7XHJcbiAgICAgIHRoaXMud29ya2Zsb3dUeXBlTGlzdFsxXS53b3JrZmxvd05hbWUgPSAnQWRkIE11bHRpcGxlIFJlc3BvbnNpYmlsaXRpZXMnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcbiIsIjxhcHAtc25hY2stYmFyPjwvYXBwLXNuYWNrLWJhcj5cclxuPGRpdiBjbGFzcz1cIndvcmtmbG93LWVuZ2luZS1vdmVybGF5XCI+PC9kaXY+XHJcbjxkaXZcclxuICBjbGFzcz1cIndvcmtmbG93LWVuZ2luZVwiXHJcbiAgW2NsYXNzLmFuaW1hdGVdPVwiYW5pbWF0aW9uXCJcclxuICBbY2xhc3MuYmddPVwiXHJcbiAgICAoIWlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWQgfHwgcmlza0J1bGtVcGxvYWQ/LnNob3dDYXRlZ29yeUxpc3QpICYmXHJcbiAgICAhcG9saWN5Py5zaG93Q3JlYXRlRG9jdW1lbnRzXHJcbiAgXCJcclxuPlxyXG4gIDxkaXZcclxuICAgIGNsYXNzPVwid29ya2Zsb3ctZW5naW5lLWNvbnRhaW5lclwiXHJcbiAgICBbbmdTd2l0Y2hdPVwiY3VycmVudFdvcmtmbG93Py5jb2RlXCJcclxuICAgIFtjbGFzcy53aXRoLXByZXZpZXctYXNzZXNzbWVudF09XCIoYXV0aD8ucHJldmlld1BhbmVsIHwgYXN5bmMpID09PSB0cnVlXCJcclxuICA+XHJcbiAgICA8YnV0dG9uXHJcbiAgICAgIChjbGljayk9XCJjbG9zZVdvcmtmbG93RW5naW5lKClcIlxyXG4gICAgICBpZD1cImNsb3NlLXdvcmtmbG93LWVuZ2luZS1idG5cIlxyXG4gICAgICBjbGFzcz1cImNsb3NlXCJcclxuICAgICAgW2FwcFRvb2x0aXBdPVwiJ1tFc2NdIHRvIGNsb3NlJ1wiXHJcbiAgICAgIHBsYWNlbWVudD1cImxlZnRcIlxyXG4gICAgICBkZWxheT1cIjBcIlxyXG4gICAgICB0eXBlPVwiYmxhY2tcIlxyXG4gICAgICBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCJcclxuICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIlxyXG4gICAgICAgIGNvbmZpcm1hdGlvbkFsZXJ0Q29uZmlnPy5pc1Zpc2libGUgfHwgIWlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWRcclxuICAgICAgXCJcclxuICAgICAgW2NsYXNzLnNtaWxleS1vcGVuZWRdPVwiXHJcbiAgICAgICAgcmlza0NvbXBvbmVudD8uc2hvd1NtaWxleSB8fFxyXG4gICAgICAgIGxvZ0lzc3VlQ29tcG9uZW50Py5zaG93U21pbGV5IHx8XHJcbiAgICAgICAgY29tcGxpYW5jZT8uc2hvd1NtaWxleSB8fFxyXG4gICAgICAgIHBvbGljeT8uc2hvd0NyZWF0ZURvY3VtZW50cyB8fFxyXG4gICAgICAgIHJlc3BvbnNpYmlsaXR5QnVsa1VwbG9hZD8uc2hvd1NtaWxleSB8fFxyXG4gICAgICAgIHJlc3BvbnNpYmlsaXR5QnVsa1VwbG9hZD8uc2hvd0V4Y2VsIHx8XHJcbiAgICAgICAgcmlza0J1bGtVcGxvYWQ/LnNob3dTbWlsZXkgfHxcclxuICAgICAgICByaXNrQnVsa1VwbG9hZD8uc2hvd0V4Y2VsIHx8XHJcbiAgICAgICAgcHJvZ3JhbT8uc2hvd1NtaWxleSB8fFxyXG4gICAgICAgIGltcG9ydEFuQXNzZXNzbWVudD8uc2hvd1NtaWxleVxyXG4gICAgICBcIlxyXG4gICAgPlxyXG4gICAgICA8aSBjbGFzcz1cImljb25zXCI+JiN4ZTkzZjs8L2k+XHJcbiAgICA8L2J1dHRvbj5cclxuICAgIDxkaXZcclxuICAgICAgKm5nSWY9XCIhdWlLaXRTZXJ2aWNlLmlzU21pbGV5T25cIlxyXG4gICAgICBjbGFzcz1cIndvcmtmbG93LWVuZ2luZS1tb3JlXCJcclxuICAgICAgW2hpZGRlbl09XCJzaG93TW9yZU9wdGlvbiA9PT0gZmFsc2UgfHwgcG9saWN5Py5zaG93Q3JlYXRlRG9jdW1lbnRzXCJcclxuICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImNvbmZpcm1hdGlvbkFsZXJ0Q29uZmlnPy5pc1Zpc2libGVcIlxyXG4gICAgICBbY2xhc3MucmVhZC1vbmx5XT1cInVpS2l0U2VydmljZT8uaXNMb2FkZXJcIlxyXG4gICAgPlxyXG4gICAgICA8YXBwLW1vcmUtb3B0aW9uXHJcbiAgICAgICAgI21vcmVPcHRpb25cclxuICAgICAgICBbY3VycmVudFdvcmtmbG93XT1cImN1cnJlbnRXb3JrZmxvdz8uY29kZVwiXHJcbiAgICAgICAgW2lzRWRpdE1vZGVdPVwibW9kZSA9PT0gJ0VESVQnXCJcclxuICAgICAgICBbaXNSQ1NlbGVjdGVkXT1cImlzUkNTZWxlY3RlZFwiXHJcbiAgICAgICAgW29wZW5lZEZyb21dPVwib3BlbmVkRnJvbVwiXHJcbiAgICAgICAgKHNlbGVjdGVkT3B0aW9uKT1cImFkZE1vcmVJbmZvKCRldmVudClcIlxyXG4gICAgICAgIFtpc1Byb2dyYW1TZWxlY3RlZF09XCJzZWxlY3RlZFByb2dyYW1cIlxyXG4gICAgICAgIFthbGxvd2VkRmVhdHVyZV09XCJmZWF0dXJlXCJcclxuICAgICAgICBbb3JnRGV0YWlsc0RhdGFdPVwib3JnRGV0YWlsc1wiXHJcbiAgICAgID5cclxuICAgICAgPC9hcHAtbW9yZS1vcHRpb24+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJ3b3JrZmxvdy1lbmdpbmUtZm9ybVwiXHJcbiAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJjb25maXJtYXRpb25BbGVydENvbmZpZz8uaXNWaXNpYmxlXCJcclxuICAgICAgW2NsYXNzLm5vLXNoYWRvd109XCJcclxuICAgICAgICBjdXJyZW50V29ya2Zsb3c/LmNvZGUgPT0gJ0FNUicgfHxcclxuICAgICAgICBjdXJyZW50V29ya2Zsb3c/LmNvZGUgPT0gJ0NNUicgfHxcclxuICAgICAgICBjdXJyZW50V29ya2Zsb3c/LmNvZGUgPT0gJ0FBQScgfHxcclxuICAgICAgICB1aUtpdFNlcnZpY2UuaXNTbWlsZXlPbiB8fFxyXG4gICAgICAgIHBvbGljeT8uc2hvd0NyZWF0ZURvY3VtZW50c1xyXG4gICAgICBcIlxyXG4gICAgPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCIgKHNjcm9sbCk9XCJzY3JvbGxGb3JtKClcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAqbmdJZj1cIlxyXG4gICAgICAgICAgICAhWydWSUVXX0FVRElUX0VYRUNVVElPTl9TVU1NQVJZJywgJ0VYRUNVVEVfQVVESVRfUExBTiddLmluY2x1ZGVzKFxyXG4gICAgICAgICAgICAgIG9wZW5lZEZyb21cclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICpuZ0lmPVwiISh1aUtpdFNlcnZpY2UuaXNTbWlsZXlPbiB8fCBwb2xpY3k/LnNob3dDcmVhdGVEb2N1bWVudHMpXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWdyb3VwLXJvd1wiXHJcbiAgICAgICAgICAgICNkcm9wZG93blJvd1xyXG4gICAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiXHJcbiAgICAgICAgICAgICAgbW9kZSA9PT0gJ0VESVQnIHx8XHJcbiAgICAgICAgICAgICAgIWlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWQgfHxcclxuICAgICAgICAgICAgICBkaXNhYmxlV29ya2Zsb3dDaGFuZ2UgfHxcclxuICAgICAgICAgICAgICBzZWxlY3RlZFByb2dyYW1cclxuICAgICAgICAgICAgXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnRcIiBbY2xhc3MuY2hlY2tlZF09XCJjdXJyZW50V29ya2Zsb3dcIj5cclxuICAgICAgICAgICAgICA8c3ZnXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImNoZWNrSWNvblwiXHJcbiAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgNTIgNTJcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDxjaXJjbGVcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja0ljb25fX2NpcmNsZVwiXHJcbiAgICAgICAgICAgICAgICAgIGN4PVwiMjZcIlxyXG4gICAgICAgICAgICAgICAgICBjeT1cIjI2XCJcclxuICAgICAgICAgICAgICAgICAgcj1cIjI1XCJcclxuICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2hlY2tJY29uX19jaGVja1wiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgZD1cIk0xNC4xIDI3LjJsNy4xIDcuMiAxNi43LTE2LjhcIlxyXG4gICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyaWdodFwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mb3JtLWdyb3VwXCIgI2Ryb3Bkb3duPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiXHJcbiAgICAgICAgICAgICAgICAgID5TZWxlY3QgYSBXb3JrZmxvdzxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIj4qPC9zcGFuPjwvbGFiZWxcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzZWxlY3RcIlxyXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cIiFjdXJyZW50V29ya2Zsb3dcIlxyXG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZWRpdFdvcmtmbG93KClcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBwbGFjZWhvbGRlcj1cIlNlbGVjdCBhIFdvcmtmbG93XCIgcmVhZG9ubHkgLz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkIGZpcnN0LWZpZWxkXCIgKm5nSWY9XCJjdXJyZW50V29ya2Zsb3dcIj5cclxuICAgICAgICAgICAgICAgICAgPCEtLSB7e2N1cnJlbnRXb3JrZmxvdyB8IGpzb259fSAtLT5cclxuICAgICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2hpcENvbnRhaW5lciB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LXBsLTIgdngtcHItMiB2eC1tci0yXCJcclxuICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNoaXBOYW1lIHZ4LWZzLTExIHZ4LWxhYmVsLXR4dCBuby13aWR0aFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbYXBwVG9vbHRpcF09XCJjdXJyZW50V29ya2Zsb3c/LndvcmtmbG93TmFtZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJib3R0b20tbGVmdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBkZWxheT1cIjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJsYWNrXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFt0b29sdGlwTWFuZGF0b3J5XT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgID57eyBjdXJyZW50V29ya2Zsb3c/LndvcmtmbG93TmFtZSB9fTwvc3BhblxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImNoaXAtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hpcFwiIFtjbGFzcy5kaXNhYmxlZF09XCJmYWxzZVwiPnt7Y3VycmVudFdvcmtmbG93Py53b3JrZmxvd05hbWV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImVkaXRcIlxyXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJlZGl0V29ya2Zsb3coKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIhd29ya2Zsb3dMaXN0XCJcclxuICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOWJhOzwvaT4gRWRpdFxyXG4gICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cIlxyXG4gICAgICAgICAgICAgICAgICAgIGN1cnJlbnRXb3JrZmxvdz8uY29kZSA9PT0gJ0NBUFInICYmXHJcbiAgICAgICAgICAgICAgICAgICAgY3VycmVudEJ1c2luZXNzQ3ljbGUgJiZcclxuICAgICAgICAgICAgICAgICAgICAhcHJvZ3JhbVNpbXBsaWZ5RmxhZ1xyXG4gICAgICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInByb2dyYW0tYnVzaW5lc3MtY3ljbGUgdngtZnMtMTEgdngtdHh0LXdoaXRlIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtcHQtMiB2eC1wYi0xIHZ4LXBsLTIgdngtcHItMVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnMgdngtZnMtMTIgdngtbXItMVwiPiYjeGU5NjM7PC9pPiBUaGlzIHByb2dyYW0gaXNcclxuICAgICAgICAgICAgICAgICAgYmVpbmcgc2V0LXVwIGZvciB0aGUgYnVzaW5lc3MgY3ljbGU6XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidngtZnctNjAwIHZ4LW1sLTFcIj57e1xyXG4gICAgICAgICAgICAgICAgICAgIGN1cnJlbnRCdXNpbmVzc0N5Y2xlXHJcbiAgICAgICAgICAgICAgICAgIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPCEtLSA8YXBwLWNyZWF0ZS1kb2N1bWVudHM+PC9hcHAtY3JlYXRlLWRvY3VtZW50cz4gLS0+XHJcbiAgICAgICAgPCEtLSA8YXBwLWJ1bGstdmlldz48L2FwcC1idWxrLXZpZXc+IC0tPlxyXG4gICAgICAgIDwhLS0gPGFwcC1idWxrLXJlc3BvbnNpYmlsaXR5LXZpZXc+PC9hcHAtYnVsay1yZXNwb25zaWJpbGl0eS12aWV3PiAtLT5cclxuICAgICAgICA8YXBwLXdvcmtmbG93LWNvbXBsaWFuY2VcclxuICAgICAgICAgIChkaXNjb25uZWN0UmVmcmVzaCk9XCJpc0hvc3RSZWZyZXNoQWN0aXZlID0gJGV2ZW50XCJcclxuICAgICAgICAgIFtvcmdEZXRhaWxzXT1cIm9yZ0RldGFpbHNcIlxyXG4gICAgICAgICAgW2lzRW50cnVzdF09XCJlbnRydXN0QnV0dG9uTmFtZS50b0xvd2VyQ2FzZSgpID09ICdlbnRydXN0J1wiXHJcbiAgICAgICAgICBbcmVzcG9uc2liaWxpdHlJZF09XCJpZFwiXHJcbiAgICAgICAgICBbbW9kZV09XCJtb2RlXCJcclxuICAgICAgICAgIFtmcmFtZXdvcmtEZXRhaWxzXT1cImZyYW1ld29ya0RldGFpbHNcIlxyXG4gICAgICAgICAgKGNsb3NlV29ya2Zsb3cpPVwiY2xvc2VXb3JrZmxvd0VuZ2luZSgkZXZlbnQpXCJcclxuICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInQ0FSJ1wiXHJcbiAgICAgICAgICAjcmVzcG9uc2liaWxpdHlcclxuICAgICAgICAgIChwaWNrZXJDaGFuZ2VkKT1cImRlY2lkZVZpZXdNb3JlT3B0aW9uKCRldmVudClcIlxyXG4gICAgICAgICAgKHBvcHVsYXRlT3B0aW9uKT1cInBvcHVsYXRlTW9yZU9wdGlvbigkZXZlbnQpXCJcclxuICAgICAgICAgIChoaWRlRWxlbWVudHNGcm9tTW9yZU9wdGlvbnMpPVwiaGlkZUVsZW1lbnRzRnJvbU1vcmVPcHRpb25zKCRldmVudClcIlxyXG4gICAgICAgICAgW3NlbGVjdGVkUkNdPVwic2VsZWN0ZWRSQ1wiXHJcbiAgICAgICAgICBbY2xvc2VPbkVzY109XCJjbG9zZU9uRXNjXCJcclxuICAgICAgICAgIChhc3NpZ25lZVR5cGVDaGFuZ2UpPVwiYXNzaWduZWVUeXBlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgKG9uUmV2aWV3ZXJUeXBlQ2hhbmdlKT1cIm9uUmV2aWV3ZXJDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICBbZmVhdHVyZV09XCJmZWF0dXJlXCJcclxuICAgICAgICAgIFtvcGVuZWRGcm9tXT1cIm9wZW5lZEZyb21cIlxyXG4gICAgICAgICAgKHJjU2VsZWN0ZWQpPVwib25SY1NlbGVjdGVkKCRldmVudClcIlxyXG4gICAgICAgICAgKHJlc2V0Rm9ybSk9XCJvblJlc2V0Rm9ybSgpXCJcclxuICAgICAgICAgIChvblJlbW92aW5nQ2hlY2twb2ludCk9XCJvblJlbW92aW5nQ2hlY2twb2ludCgkZXZlbnQsIGZhbHNlLCB0cnVlKVwiXHJcbiAgICAgICAgICAoaXNBc3Nlc3NtZW50RGlzYWJsZWQpPVwiaXNBc3Nlc3NtZW50RGlzYWJsZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAoY2hlY2twb2ludENvdW50VXBkYXRlZCk9XCJjaGVja3BvaW50Q291bnQgPSAkZXZlbnRcIlxyXG4gICAgICAgICAgW3NlbGVjdGVkUHJvZ3JhbV09XCJzZWxlY3RlZFByb2dyYW1cIlxyXG4gICAgICAgID48L2FwcC13b3JrZmxvdy1jb21wbGlhbmNlPlxyXG4gICAgICAgIDxhcHAtd29ya2Zsb3ctcmlza1xyXG4gICAgICAgICAgW3NlY29uZGFyeU9wZW5Qb3J0YWxdPVwic2Vjb25kYXJ5T3BlblBvcnRhbFwiXHJcbiAgICAgICAgICBbb3BlbmVkRnJvbV09XCJvcGVuZWRGcm9tXCJcclxuICAgICAgICAgIChkaXNjb25uZWN0UmVmcmVzaCk9XCJpc0hvc3RSZWZyZXNoQWN0aXZlID0gJGV2ZW50XCJcclxuICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInQUFSJ1wiXHJcbiAgICAgICAgICAjcmlza1xyXG4gICAgICAgICAgKHNob3dDb25maXJtYXRpb25BbGVydCk9XCJzaG93Q29uZmlybWF0aW9uUG9wdXAoJGV2ZW50KVwiXHJcbiAgICAgICAgICAoaGlkZUVsZW1lbnRzRnJvbU1vcmVPcHRpb25zKT1cImhpZGVFbGVtZW50c0Zyb21Nb3JlT3B0aW9ucygkZXZlbnQpXCJcclxuICAgICAgICAgIChjbG9zZVdvcmtmbG93KT1cImNsb3NlV29ya2Zsb3dFbmdpbmUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAocGlja2VyQ2hhbmdlZCk9XCJkZWNpZGVWaWV3TW9yZU9wdGlvbigkZXZlbnQpXCJcclxuICAgICAgICAgIChwb3B1bGF0ZU9wdGlvbik9XCJwb3B1bGF0ZU1vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAocmVmcmVzaEZvcm0pPVwib25SZXNldEZvcm0oKVwiXHJcbiAgICAgICAgICBbbW9kZV09XCJtb2RlXCJcclxuICAgICAgICAgIFtyaXNrSWRdPVwiaWRcIlxyXG4gICAgICAgICAgW2ZlYXR1cmVdPVwiZmVhdHVyZVwiXHJcbiAgICAgICAgPjwvYXBwLXdvcmtmbG93LXJpc2s+XHJcbiAgICAgICAgPGFwcC13b3JrZmxvdy1wb2xpY3lcclxuICAgICAgICAgIChkaXNjb25uZWN0UmVmcmVzaCk9XCJpc0hvc3RSZWZyZXNoQWN0aXZlID0gJGV2ZW50XCJcclxuICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInQ0FQJ1wiXHJcbiAgICAgICAgICAjcG9saWN5XHJcbiAgICAgICAgICAoc2hvd0NvbmZpcm1hdGlvbkFsZXJ0KT1cInNob3dDb25maXJtYXRpb25Qb3B1cCgkZXZlbnQpXCJcclxuICAgICAgICAgIChzaGlmdFRvRWRpdE1vZGUpPVwic2hpZnRUb0VkaXRNb2RlKClcIlxyXG4gICAgICAgICAgW2ZlYXR1cmVdPVwiZmVhdHVyZVwiXHJcbiAgICAgICAgICBbcG9saWN5SWRdPVwiaWRcIlxyXG4gICAgICAgICAgW21vZGVdPVwibW9kZVwiXHJcbiAgICAgICAgICBbY29udmVydEZpbGVEYXRhXT1cImNvbnZlcnRGaWxlRGF0YVwiXHJcbiAgICAgICAgICBbc2VsZWN0ZWRDYXRlZ29yeV09XCJzZWxlY3RlZENhdGVnb3J5XCJcclxuICAgICAgICAgIChwb3B1bGF0ZU9wdGlvbik9XCJwb3B1bGF0ZU1vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAocGlja2VyQ2hhbmdlZCk9XCJkZWNpZGVWaWV3TW9yZU9wdGlvbigkZXZlbnQpXCJcclxuICAgICAgICA+PC9hcHAtd29ya2Zsb3ctcG9saWN5PlxyXG4gICAgICAgIDxhcHAtd29ya2Zsb3ctc3VydmV5LWZvcm1cclxuICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInQ0FTJ1wiXHJcbiAgICAgICAgICAjc3VydmV5Rm9ybVxyXG4gICAgICAgID48L2FwcC13b3JrZmxvdy1zdXJ2ZXktZm9ybT5cclxuICAgICAgICA8YXBwLWFkZC1tdWx0aXBsZS1yaXNrXHJcbiAgICAgICAgICAoZGlzY29ubmVjdFJlZnJlc2gpPVwiaXNIb3N0UmVmcmVzaEFjdGl2ZSA9ICRldmVudFwiXHJcbiAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ0FNUidcIlxyXG4gICAgICAgICAgI211bHRpcGxlUmlza1xyXG4gICAgICAgICAgKHBpY2tlckNoYW5nZWQpPVwiZGVjaWRlVmlld01vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAoY2xvc2VXb3JrZmxvdyk9XCJjbG9zZVdvcmtmbG93RW5naW5lKCRldmVudClcIlxyXG4gICAgICAgID48L2FwcC1hZGQtbXVsdGlwbGUtcmlzaz5cclxuICAgICAgICA8IS0tIDxhcHAtYWRkLW11bHRpcGxlLXJlc3BvbnNpYmlsaXR5ICAoZGlzY29ubmVjdFJlZnJlc2gpPVwiaXNIb3N0UmVmcmVzaEFjdGl2ZSA9ICRldmVudFwiICAgIChjbG9zZVdvcmtmbG93KT1cImNsb3NlV29ya2Zsb3dFbmdpbmUoJGV2ZW50KVwiICpuZ1N3aXRjaENhc2U9XCInQ01SJ1wiICNtdWx0aXBsZVJlc3BvbnNpYmlsaXR5PlxyXG4gICAgICAgICAgICAgICAgPC9hcHAtYWRkLW11bHRpcGxlLXJlc3BvbnNpYmlsaXR5PiAtLT5cclxuXHJcbiAgICAgICAgPGxpYi1hZGQtbXVsdGlwbGUtcmVzcG9uc2liaWxpdHktY29udGFpbmVyXHJcbiAgICAgICAgICBbb3JnRGV0YWlsc109XCJvcmdEZXRhaWxzXCJcclxuICAgICAgICAgIChkaXNjb25uZWN0UmVmcmVzaCk9XCJpc0hvc3RSZWZyZXNoQWN0aXZlID0gJGV2ZW50XCJcclxuICAgICAgICAgIChjbG9zZVdvcmtmbG93KT1cImNsb3NlV29ya2Zsb3dFbmdpbmUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ0NNUidcIlxyXG4gICAgICAgICAgW2ZlYXR1cmVdPVwiZmVhdHVyZVwiXHJcbiAgICAgICAgICAjbXVsdGlwbGVSZXNwb25zaWJpbGl0eVxyXG4gICAgICAgID48L2xpYi1hZGQtbXVsdGlwbGUtcmVzcG9uc2liaWxpdHktY29udGFpbmVyPlxyXG4gICAgICAgIDwhLS0gTmV3IExvZyBhbiBJc3N1ZSAtLT5cclxuICAgICAgICA8YXBwLWxvZy1hbi1pc3N1ZVxyXG4gICAgICAgICAgW2lzc3VlRGV0YWlsc109XCJpc3N1ZURhdGFcIlxyXG4gICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidMQUknXCJcclxuICAgICAgICAgIFtyZXBvbnNpYmlsaXR5RGF0YV09XCJyZXBvbnNpYmlsaXR5RGF0YVwiXHJcbiAgICAgICAgICBbb3BlbmVkRnJvbV09XCJvcGVuZWRGcm9tXCJcclxuICAgICAgICAgIFtpc3N1ZUlkXT1cImlkXCJcclxuICAgICAgICAgICNsb2dBbklzc3VlXHJcbiAgICAgICAgICAoZGlzY29ubmVjdFJlZnJlc2gpPVwiaXNIb3N0UmVmcmVzaEFjdGl2ZSA9ICRldmVudFwiXHJcbiAgICAgICAgICAoY2xvc2VXb3JrZmxvdyk9XCJjbG9zZVdvcmtmbG93RW5naW5lKCRldmVudClcIlxyXG4gICAgICAgICAgKHBpY2tlckNoYW5nZWQpPVwiZGVjaWRlVmlld01vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAocG9wdWxhdGVPcHRpb24pPVwicG9wdWxhdGVNb3JlT3B0aW9uKCRldmVudClcIlxyXG4gICAgICAgICAgWyhtb2RlKV09XCJtb2RlXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9hcHAtbG9nLWFuLWlzc3VlPlxyXG4gICAgICAgIDwhLS0gT2xkIExvZyBhbiBpc3N1ZSAtLT5cclxuICAgICAgICA8IS0tIDxhcHAtbG9nLWFuLWlzc3VlICpuZ1N3aXRjaENhc2U9XCInTEFJJ1wiIFtyZXNwb25zaWJpbGl0aWVzRGF0YV09XCJyZXBvbnNpYmlsdHlEYXRhXCIgW29wZW5lZEZyb21dPVwib3BlbmVkRnJvbVwiXHJcbiAgICAgICAgICAgICAgICAjbG9nQW5Jc3N1ZSAoY2xvc2VXb3JrZmxvdyk9XCJjbG9zZVdvcmtmbG93RW5naW5lKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgKHBpY2tlckNoYW5nZWQpPVwiZGVjaWRlVmlld01vcmVPcHRpb24oJGV2ZW50KVwiIChwb3B1bGF0ZU9wdGlvbik9XCJwb3B1bGF0ZU1vcmVPcHRpb24oJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICA8L2FwcC1sb2ctYW4taXNzdWU+IC0tPlxyXG5cclxuICAgICAgICA8YXBwLXdvcmtmbG93LWFzc2Vzc21lbnRcclxuICAgICAgICAgIFthc3Nlc3NtZW50SWRdPVwiaWRcIlxyXG4gICAgICAgICAgKHBpY2tlckNoYW5nZWQpPVwiZGVjaWRlVmlld01vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICBbb3BlbmVkRnJvbV09XCJvcGVuZWRGcm9tXCJcclxuICAgICAgICAgIChkaXNjb25uZWN0UmVmcmVzaCk9XCJpc0hvc3RSZWZyZXNoQWN0aXZlID0gJGV2ZW50XCJcclxuICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInQUFBJ1wiXHJcbiAgICAgICAgICAoc2hvd0NvbmZpcm1hdGlvbkFsZXJ0KT1cInNob3dDb25maXJtYXRpb25Qb3B1cCgkZXZlbnQpXCJcclxuICAgICAgICAgIChjbG9zZVdvcmtmbG93KT1cImNsb3NlV29ya2Zsb3dFbmdpbmUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAocGlja2VyQ2hhbmdlZCk9XCJkZWNpZGVWaWV3TW9yZU9wdGlvbigkZXZlbnQpXCJcclxuICAgICAgICAgIChwb3B1bGF0ZU9wdGlvbik9XCJwb3B1bGF0ZU1vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAocmVmcmVzaEZvcm0pPVwib25SZXNldEZvcm0oKVwiXHJcbiAgICAgICAgICBbbW9kZV09XCJtb2RlXCJcclxuICAgICAgICAgICNhc3Nlc3NtZW50XHJcbiAgICAgICAgPjwvYXBwLXdvcmtmbG93LWFzc2Vzc21lbnQ+XHJcbiAgICAgICAgPGFwcC1pbXBvcnQtYW4tYXNzZXNzbWVudFxyXG4gICAgICAgICAgKHBpY2tlckNoYW5nZWQpPVwiZGVjaWRlVmlld01vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAoZGlzY29ubmVjdFJlZnJlc2gpPVwiaXNIb3N0UmVmcmVzaEFjdGl2ZSA9ICRldmVudFwiXHJcbiAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ0lBQSdcIlxyXG4gICAgICAgICAgKHNob3dDb25maXJtYXRpb25BbGVydCk9XCJzaG93Q29uZmlybWF0aW9uUG9wdXAoJGV2ZW50KVwiXHJcbiAgICAgICAgICAoY2xvc2VXb3JrZmxvdyk9XCJjbG9zZVdvcmtmbG93RW5naW5lKCRldmVudClcIlxyXG4gICAgICAgICAgKHBpY2tlckNoYW5nZWQpPVwiZGVjaWRlVmlld01vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAocG9wdWxhdGVPcHRpb24pPVwicG9wdWxhdGVNb3JlT3B0aW9uKCRldmVudClcIlxyXG4gICAgICAgICAgKHJlZnJlc2hGb3JtKT1cIm9uUmVzZXRGb3JtKClcIlxyXG4gICAgICAgICAgI2ltcG9ydEFzc2Vzc21lbnRcclxuICAgICAgICA+PC9hcHAtaW1wb3J0LWFuLWFzc2Vzc21lbnQ+XHJcbiAgICAgICAgPCEtLSA8YXBwLXdvcmtmbG93LXByb2dyYW0gI3Byb2dyYW0gKm5nU3dpdGNoQ2FzZT1cIidDQVBSJ1wiIChwaWNrZXJDaGFuZ2VkKT1cImRlY2lkZVZpZXdNb3JlT3B0aW9uKCRldmVudClcIiAoZGlzY29ubmVjdFJlZnJlc2gpPVwiaXNIb3N0UmVmcmVzaEFjdGl2ZSA9ICRldmVudFwiPjwvYXBwLXdvcmtmbG93LXByb2dyYW0+IC0tPlxyXG4gICAgICAgIDxhcHAtd29ya2Zsb3ctcHJvZ3JhbVxyXG4gICAgICAgICAgI3Byb2dyYW1cclxuICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInQ0FQUidcIlxyXG4gICAgICAgICAgW29yZ0RldGFpbHNdPVwib3JnRGV0YWlsc1wiXHJcbiAgICAgICAgICBbYWxsb3dlZEZlYXR1cmVdPVwiZmVhdHVyZVwiXHJcbiAgICAgICAgICAoZGlzYWJsZUVsZW1lbnRzRnJvbU1vcmVPcHRpb25zKT1cImRpc2FibGVNb3JlT3B0aW9ucygnQ0FQUicsICRldmVudClcIlxyXG4gICAgICAgICAgW3Byb2dyYW1UeXBlXT1cInByb2dyYW1UeXBlXCJcclxuICAgICAgICAgIChwaWNrZXJDaGFuZ2VkKT1cImRlY2lkZVZpZXdNb3JlT3B0aW9uKCRldmVudClcIlxyXG4gICAgICAgICAgKGRpc2Nvbm5lY3RSZWZyZXNoKT1cImlzSG9zdFJlZnJlc2hBY3RpdmUgPSAkZXZlbnRcIlxyXG4gICAgICAgICAgKHNob3dDb25maXJtYXRpb25BbGVydCk9XCJzaG93Q29uZmlybWF0aW9uUG9wdXAoJGV2ZW50KVwiXHJcbiAgICAgICAgICAoY2xvc2VXb3JrZmxvdyk9XCJjbG9zZVdvcmtmbG93RW5naW5lKCRldmVudClcIlxyXG4gICAgICAgICAgKHBpY2tlckNoYW5nZWQpPVwiZGVjaWRlVmlld01vcmVPcHRpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAocG9wdWxhdGVPcHRpb24pPVwicG9wdWxhdGVNb3JlT3B0aW9uKCRldmVudClcIlxyXG4gICAgICAgICAgKHJlZnJlc2hGb3JtKT1cIm9uUmVzZXRGb3JtKClcIlxyXG4gICAgICAgICAgW21vZGVdPVwibW9kZVwiXHJcbiAgICAgICAgICBbcHJvZ3JhbUlkXT1cImlkXCJcclxuICAgICAgICAgIChvblJlbW92aW5nUm9sZSk9XCJvblJlbW92aW5nUm9sZSgkZXZlbnQpXCJcclxuICAgICAgICAgIFtjYW5GcmFtZXdvcmtDaGFuZ2VdPVwiY2FuRnJhbWV3b3JrQ2hhbmdlXCJcclxuICAgICAgICAgIFthZGRUb1Byb2dyYW1EZXRhaWxzXT1cImFkZFRvUHJvZ3JhbURldGFpbHNcIlxyXG4gICAgICAgID48L2FwcC13b3JrZmxvdy1wcm9ncmFtPlxyXG5cclxuICAgICAgICA8IS0tIEdSQyBPYmplY3QgLS0+XHJcbiAgICAgICAgPGxpYi1ncmMtb2JqZWN0LWNvbnRhaW5lclxyXG4gICAgICAgICAgI2dyY09iamVjdFxyXG4gICAgICAgICAgKm5nSWY9XCJmYWxzZVwiXHJcbiAgICAgICAgICAocG9wdWxhdGVPcHRpb24pPVwicG9wdWxhdGVNb3JlT3B0aW9uKCRldmVudClcIlxyXG4gICAgICAgID48L2xpYi1ncmMtb2JqZWN0LWNvbnRhaW5lcj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICBjbGFzcz1cInN1Ym1pdFwiXHJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIiFpc1dvcmtmbG93U2VsZWN0b3JFbmFibGVkXCJcclxuICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ0FBUidcIlxyXG4gICAgICAgIChjbGljayk9XCJzdWJtaXQoKVwiXHJcbiAgICAgID5cclxuICAgICAgICB7e1xyXG4gICAgICAgICAgbW9kZSA9PT0gXCJFRElUXCIgJiYgb3BlbmVkRnJvbSAhPT0gXCJNT1ZFX1RPX1JFR0lTVEVSXCJcclxuICAgICAgICAgICAgPyBcIlVwZGF0ZVwiXHJcbiAgICAgICAgICAgIDogXCJBZGRcIlxyXG4gICAgICAgIH19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8YnV0dG9uXHJcbiAgICAgICAgY2xhc3M9XCJzdWJtaXRcIlxyXG4gICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJcclxuICAgICAgICAgICFpc1dvcmtmbG93U2VsZWN0b3JFbmFibGVkIHx8XHJcbiAgICAgICAgICAhcmlza0J1bGtVcGxvYWQ/LmNhdGVnb3J5Py5zZWxlY3RlZENhdGVnb3J5XHJcbiAgICAgICAgXCJcclxuICAgICAgICAoY2xpY2spPVwiYnVsa1VwbG9hZEJyb3dzZSgnQU1SJylcIlxyXG4gICAgICAgICpuZ1N3aXRjaENhc2U9XCInQU1SJ1wiXHJcbiAgICAgID5cclxuICAgICAgICBCcm93c2VcclxuICAgICAgPC9idXR0b24+XHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICBjbGFzcz1cInN1Ym1pdFwiXHJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIiFpc1dvcmtmbG93U2VsZWN0b3JFbmFibGVkXCJcclxuICAgICAgICAoY2xpY2spPVwiYnVsa1VwbG9hZEJyb3dzZSgnQ01SJylcIlxyXG4gICAgICAgICpuZ1N3aXRjaENhc2U9XCInQ01SJ1wiXHJcbiAgICAgID5cclxuICAgICAgICBCcm93c2VcclxuICAgICAgPC9idXR0b24+XHJcblxyXG4gICAgICA8IS0tIFRoaXMgaGFzIHRlcm5hcnkgb3BlcmF0aW9uIHRvIGhhbmRsZSB0aGUgYm90aCBzY2VuYXJpb3Mgb2YgaG93IGl0IHdvcmtzIHdpdGggY29tcGxpYW5jZSBhbmQgcHJvZ3JhbSBtb2R1bGUsIHBsZWFzZSBkb24ndCBjaGFuZ2UgdGhpcy4gLS0+XHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICBjbGFzcz1cInN1Ym1pdFwiXHJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIiFpc1dvcmtmbG93U2VsZWN0b3JFbmFibGVkXCJcclxuICAgICAgICAoY2xpY2spPVwic3VibWl0KClcIlxyXG4gICAgICAgICpuZ1N3aXRjaENhc2U9XCInQ0FSJ1wiXHJcbiAgICAgID5cclxuICAgICAgICB7e1xyXG4gICAgICAgICAgZW50cnVzdEJ1dHRvbk5hbWUgIT09IFwiXCIgJiYgbW9kZSAhPT0gXCJFRElUXCJcclxuICAgICAgICAgICAgPyBlbnRydXN0QnV0dG9uTmFtZVxyXG4gICAgICAgICAgICA6IG1vZGUgPT09IFwiRURJVFwiXHJcbiAgICAgICAgICAgID8gXCJVUERBVEVcIlxyXG4gICAgICAgICAgICA6IFwiRW50cnVzdFwiXHJcbiAgICAgICAgfX1cclxuICAgICAgPC9idXR0b24+XHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICBjbGFzcz1cInN1Ym1pdFwiXHJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIiFpc1dvcmtmbG93U2VsZWN0b3JFbmFibGVkXCJcclxuICAgICAgICAoY2xpY2spPVwic3VibWl0KClcIlxyXG4gICAgICAgICpuZ1N3aXRjaENhc2U9XCInQ0FQJ1wiXHJcbiAgICAgID5cclxuICAgICAgICB7e1xyXG4gICAgICAgICAgY29udmVydEZpbGVEYXRhLmZpbGVOYW1lXHJcbiAgICAgICAgICAgID8gXCJORVhUXCJcclxuICAgICAgICAgICAgOiBtb2RlID09IFwiRURJVFwiXHJcbiAgICAgICAgICAgID8gXCJVcGRhdGVcIlxyXG4gICAgICAgICAgICA6IFwiQ29udGludWUgdG8gZHJhZnRcIlxyXG4gICAgICAgIH19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8YnV0dG9uXHJcbiAgICAgICAgY2xhc3M9XCJzdWJtaXRcIlxyXG4gICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCIhaXNXb3JrZmxvd1NlbGVjdG9yRW5hYmxlZFwiXHJcbiAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidDQVMnXCJcclxuICAgICAgPlxyXG4gICAgICAgIENvbnRpbnVlIHRvIGRyYWZ0XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8YnV0dG9uXHJcbiAgICAgICAgY2xhc3M9XCJzdWJtaXRcIlxyXG4gICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCIhaXNXb3JrZmxvd1NlbGVjdG9yRW5hYmxlZFwiXHJcbiAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidMQUknXCJcclxuICAgICAgICAoY2xpY2spPVwic3VibWl0KClcIlxyXG4gICAgICA+XHJcbiAgICAgICAge3sgbW9kZSA9PT0gXCJFRElUXCIgPyBcIlVwZGF0ZVwiIDogXCJBZGRcIiB9fVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIGNsYXNzPVwic3VibWl0XCJcclxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIWlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWRcIlxyXG4gICAgICAgICpuZ1N3aXRjaENhc2U9XCInQUFBJ1wiXHJcbiAgICAgICAgKGNsaWNrKT1cInN1Ym1pdCgpXCJcclxuICAgICAgPlxyXG4gICAgICAgIHt7IG1vZGUgPT09IFwiRURJVFwiID8gXCJVcGRhdGVcIiA6IFwiQ29udGludWUgdG8gZHJhZnRcIiB9fVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIGNsYXNzPVwic3VibWl0XCJcclxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIWlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWRcIlxyXG4gICAgICAgIChjbGljayk9XCJidWxrVXBsb2FkQnJvd3NlKCdJQUEnKVwiXHJcbiAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidJQUEnXCJcclxuICAgICAgPlxyXG4gICAgICAgIEJyb3dzZVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIGNsYXNzPVwic3VibWl0XCJcclxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIWlzV29ya2Zsb3dTZWxlY3RvckVuYWJsZWQgfHwgIXByb2dyYW0/LnZhbGlkXCJcclxuICAgICAgICAoY2xpY2spPVwic3VibWl0KCdDQVBSJylcIlxyXG4gICAgICAgICpuZ1N3aXRjaENhc2U9XCInQ0FQUidcIlxyXG4gICAgICA+XHJcbiAgICAgICAge3sgbW9kZSA9PT0gXCJFRElUXCIgPyBcIlVwZGF0ZVwiIDogXCJTYXZlXCIgfX1cclxuICAgICAgPC9idXR0b24+XHJcbiAgICAgIDxkaXZcclxuICAgICAgICBjbGFzcz1cImRyb3Bkb3duXCJcclxuICAgICAgICAqbmdJZj1cIndvcmtmbG93TGlzdFwiXHJcbiAgICAgICAgKGNsaWNrKT1cImNsb3NlV29ya2Zsb3dMaXN0KClcIlxyXG4gICAgICAgIFtzdHlsZS50b3AucHhdPVwiZHJvcGRvd25Ub3BcIlxyXG4gICAgICAgIFtzdHlsZS5sZWZ0LnB4XT1cImRyb3Bkb3duTGVmdFwiXHJcbiAgICAgICAgW3N0eWxlLndpZHRoLnB4XT1cImRyb3Bkb3duV2lkdGhcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPHVsIGNsYXNzPVwiZHJvcGRvd24tbGlzdFwiPlxyXG4gICAgICAgICAgPGxpXHJcbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCB3b3JrZmxvdyBvZiB3b3JrZmxvd1R5cGVMaXN0XCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cImNoYW5nZVdvcmtmbG93KCRldmVudCwgd29ya2Zsb3cpXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGFwcC1jcy1yYWRpb1xyXG4gICAgICAgICAgICAgIFt2YWx1ZV09XCJ3b3JrZmxvdz8uY29kZVwiXHJcbiAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiY3VycmVudFdvcmtmbG93Py5jb2RlID09PSB3b3JrZmxvdz8uY29kZVwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICB7eyB3b3JrZmxvdz8ud29ya2Zsb3dOYW1lIH19PC9hcHAtY3MtcmFkaW9cclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgPC9saT5cclxuICAgICAgICA8L3VsPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdlxyXG4gICAgICAgIGNsYXNzPVwiZHJvcGRvd24tb3ZlcmxheVwiXHJcbiAgICAgICAgKm5nSWY9XCJ3b3JrZmxvd0xpc3RcIlxyXG4gICAgICAgIChjbGljayk9XCJjbG9zZVdvcmtmbG93TGlzdCgpXCJcclxuICAgICAgPjwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8YXBwLWNvbmZpcm1hdGlvbi1hbGVydFxyXG4gICAgICBpZD1cImNvbmZpcm1hdGlvbi1kaWFsb2d1ZVwiXHJcbiAgICAgIChhY3Rpb24pPVwiY29uZmlybVdvcmtmbG93Q2hhbmdlKCRldmVudClcIlxyXG4gICAgICAqbmdJZj1cImNvbmZpcm1hdGlvbkFsZXJ0Q29uZmlnPy5pc1Zpc2libGVcIlxyXG4gICAgICBbbWVzc2FnZV09XCJjb25maXJtYXRpb25BbGVydENvbmZpZz8ubWVzc2FnZVwiXHJcbiAgICAgIFtjb25maWddPVwiY29uZmlybWF0aW9uQWxlcnRDb25maWdcIlxyXG4gICAgPjwvYXBwLWNvbmZpcm1hdGlvbi1hbGVydD5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
|