vcomply-workflow-engine 2.6.84 → 2.6.85
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/bundles/vcomply-workflow-engine.umd.js +1924 -581
- package/bundles/vcomply-workflow-engine.umd.js.map +1 -1
- package/esm2015/lib/add-multiple-responsibility/add-multiple-responsibility.component.js +11 -4
- package/esm2015/lib/add-multiple-responsibility/add-multiple-responsibility.component.ngfactory.js +28 -40
- package/esm2015/lib/add-multiple-responsibility/add-multiple-responsibility.component.ngsummary.json +1 -1
- package/esm2015/lib/add-multiple-responsibility-container/add-multiple-responsibility-container.component.js +172 -0
- package/esm2015/lib/add-multiple-responsibility-container/add-multiple-responsibility-container.component.ngfactory.js +84 -0
- package/esm2015/lib/add-multiple-responsibility-container/add-multiple-responsibility-container.component.ngsummary.json +1 -0
- package/esm2015/lib/add-multiple-responsibility-with-tab/add-multiple-responsibility-with-tab.component.js +1252 -0
- package/esm2015/lib/add-multiple-responsibility-with-tab/add-multiple-responsibility-with-tab.component.ngfactory.js +70 -0
- package/esm2015/lib/add-multiple-responsibility-with-tab/add-multiple-responsibility-with-tab.component.ngsummary.json +1 -0
- package/esm2015/lib/log-an-issue/log-an-issue.component.ngfactory.js +6 -6
- package/esm2015/lib/more-option/more-option.component.js +8 -2
- package/esm2015/lib/more-option/more-option.component.ngfactory.js +1 -1
- package/esm2015/lib/more-option/more-option.component.ngsummary.json +1 -1
- package/esm2015/lib/services/bulk-upload.service.js +43 -0
- package/esm2015/lib/services/bulk-upload.service.ngsummary.json +1 -0
- package/esm2015/lib/sharedComponents/assessment-editor/components/add-page-details/add-page-details.component.ngfactory.js +4 -4
- package/esm2015/lib/sharedComponents/assessment-editor/components/add-segment-popup/add-segment-popup.component.ngfactory.js +4 -4
- package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview.module.ngfactory.js +3 -3
- package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview.module.ngsummary.json +1 -1
- package/esm2015/lib/sharedComponents/assessment-editor/components/setting-response-segment/setting-response-segment.component.ngfactory.js +4 -4
- package/esm2015/lib/sharedComponents/assessment-editor/create-assessment.module.ngfactory.js +3 -3
- package/esm2015/lib/sharedComponents/assessment-editor/create-assessment.module.ngsummary.json +1 -1
- package/esm2015/lib/sharedComponents/bulk-responsibility-view/bulk-responsibility-view.component.js +18 -5
- package/esm2015/lib/sharedComponents/bulk-responsibility-view/bulk-responsibility-view.component.ngfactory.js +440 -30
- package/esm2015/lib/sharedComponents/bulk-responsibility-view/bulk-responsibility-view.component.ngsummary.json +1 -1
- package/esm2015/lib/sharedComponents/checkpoint/checkpoints-questions/checkpoints-questions.component.ngfactory.js +4 -4
- package/esm2015/lib/sharedComponents/framework-list/framework-list-table/framework-list-table.component.js +2 -2
- package/esm2015/lib/sharedComponents/framework-list/framework-list-table/framework-list-table.component.ngfactory.js +1 -1
- package/esm2015/lib/sharedComponents/framework-list/framework-list.component.js +18 -23
- package/esm2015/lib/sharedComponents/framework-list/framework-list.component.ngfactory.js +4 -4
- package/esm2015/lib/sharedComponents/framework-list/framework-list.component.ngsummary.json +1 -1
- package/esm2015/lib/sharedComponents/frequency/frequency-annual/frequency-annual.component.js +2 -3
- package/esm2015/lib/sharedComponents/frequency/frequency-annual/frequency-annual.component.ngfactory.js +14 -15
- package/esm2015/lib/sharedComponents/frequency/frequency-annual/frequency-annual.component.ngsummary.json +1 -1
- package/esm2015/lib/sharedComponents/frequency/frequency-biannual/frequency-biannual.component.js +2 -3
- package/esm2015/lib/sharedComponents/frequency/frequency-biannual/frequency-biannual.component.ngfactory.js +14 -15
- package/esm2015/lib/sharedComponents/frequency/frequency-biannual/frequency-biannual.component.ngsummary.json +1 -1
- package/esm2015/lib/sharedComponents/frequency/frequency-container/frequency-container.component.js +2 -10
- package/esm2015/lib/sharedComponents/frequency/frequency-container/frequency-container.component.ngfactory.js +9 -9
- package/esm2015/lib/sharedComponents/frequency/frequency-container/frequency-container.component.ngsummary.json +1 -1
- package/esm2015/lib/sharedComponents/frequency/frequency-daily/frequency-daily.component.js +2 -3
- package/esm2015/lib/sharedComponents/frequency/frequency-daily/frequency-daily.component.ngfactory.js +11 -12
- package/esm2015/lib/sharedComponents/frequency/frequency-daily/frequency-daily.component.ngsummary.json +1 -1
- package/esm2015/lib/sharedComponents/frequency/frequency-monthly/frequency-monthly.component.js +2 -3
- package/esm2015/lib/sharedComponents/frequency/frequency-monthly/frequency-monthly.component.ngfactory.js +14 -15
- package/esm2015/lib/sharedComponents/frequency/frequency-monthly/frequency-monthly.component.ngsummary.json +1 -1
- package/esm2015/lib/sharedComponents/frequency/frequency-one-time/frequency-one-time.component.js +2 -3
- package/esm2015/lib/sharedComponents/frequency/frequency-one-time/frequency-one-time.component.ngfactory.js +16 -17
- package/esm2015/lib/sharedComponents/frequency/frequency-one-time/frequency-one-time.component.ngsummary.json +1 -1
- package/esm2015/lib/sharedComponents/frequency/frequency-quarterly/frequency-quarterly.component.js +2 -3
- package/esm2015/lib/sharedComponents/frequency/frequency-quarterly/frequency-quarterly.component.ngfactory.js +14 -15
- package/esm2015/lib/sharedComponents/frequency/frequency-quarterly/frequency-quarterly.component.ngsummary.json +1 -1
- package/esm2015/lib/sharedComponents/frequency/frequency-weekly/frequency-weekly.component.js +2 -3
- package/esm2015/lib/sharedComponents/frequency/frequency-weekly/frequency-weekly.component.ngfactory.js +14 -15
- package/esm2015/lib/sharedComponents/frequency/frequency-weekly/frequency-weekly.component.ngsummary.json +1 -1
- package/esm2015/lib/workflow-assessment/workflow-assessment.component.ngfactory.js +4 -4
- package/esm2015/lib/workflow-compliance/workflow-compliance.component.js +53 -142
- package/esm2015/lib/workflow-compliance/workflow-compliance.component.ngfactory.js +324 -365
- package/esm2015/lib/workflow-compliance/workflow-compliance.component.ngsummary.json +1 -1
- package/esm2015/lib/workflow-engine-container/workflow-engine-container.component.js +13 -2
- package/esm2015/lib/workflow-engine-container/workflow-engine-container.component.ngfactory.js +11 -11
- package/esm2015/lib/workflow-engine-container/workflow-engine-container.component.ngsummary.json +1 -1
- package/esm2015/lib/workflow-engine.module.js +5 -5
- package/esm2015/lib/workflow-engine.module.ngfactory.js +3 -3
- package/esm2015/lib/workflow-engine.module.ngsummary.json +1 -1
- package/esm2015/lib/workflow-policy/workflow-policy.component.js +8 -5
- package/esm2015/lib/workflow-policy/workflow-policy.component.ngfactory.js +5 -5
- package/esm2015/lib/workflow-policy/workflow-policy.component.ngsummary.json +1 -1
- package/esm2015/lib/workflow-program/create-program-ui/create-program-ui.module.ngfactory.js +1 -1
- package/esm2015/lib/workflow-program/create-program-ui/role-list/role-list.component.js +3 -2
- package/esm2015/lib/workflow-program/create-program-ui/role-list/role-list.component.ngfactory.js +12 -12
- package/esm2015/lib/workflow-program/create-program-ui/role-list/role-list.component.ngsummary.json +1 -1
- package/esm2015/lib/workflow-program/workflow-program.component.js +24 -5
- package/esm2015/lib/workflow-program/workflow-program.component.ngfactory.js +268 -252
- package/esm2015/lib/workflow-program/workflow-program.component.ngsummary.json +1 -1
- package/esm2015/lib/workflow-risk/workflow-risk.component.ngfactory.js +5 -5
- package/esm2015/lib/workflow-services/add-risk.service.js +3 -3
- package/esm2015/lib/workflow-services/frequency.service.js +41 -12
- package/esm2015/lib/workflow-services/programs.service.js +4 -5
- package/esm2015/lib/workflow-services/responsibility.service.js +14 -34
- package/esm2015/lib/workflow-services/responsibility.service.ngsummary.json +1 -1
- package/esm2015/lib/workflow-survey-form/workflow-survey-form.component.ngfactory.js +4 -4
- package/esm2015/vcomply-workflow-engine.js +191 -190
- package/esm2015/vcomply-workflow-engine.ngsummary.json +1 -1
- package/fesm2015/vcomply-workflow-engine.js +1682 -367
- package/fesm2015/vcomply-workflow-engine.js.map +1 -1
- package/lib/add-multiple-responsibility/add-multiple-responsibility.component.d.ts +2 -0
- package/lib/add-multiple-responsibility-container/add-multiple-responsibility-container.component.d.ts +31 -0
- package/lib/{sharedComponents/system-task-selector/system-task-selector.component.ngfactory.d.ts → add-multiple-responsibility-container/add-multiple-responsibility-container.component.ngfactory.d.ts} +0 -0
- package/lib/add-multiple-responsibility-with-tab/add-multiple-responsibility-with-tab.component.d.ts +159 -0
- package/lib/{sharedComponents/tab-selector/tab-selector.component.ngfactory.d.ts → add-multiple-responsibility-with-tab/add-multiple-responsibility-with-tab.component.ngfactory.d.ts} +0 -0
- package/lib/more-option/more-option.component.d.ts +2 -0
- package/lib/services/bulk-upload.service.d.ts +6 -0
- package/lib/sharedComponents/bulk-responsibility-view/bulk-responsibility-view.component.d.ts +5 -0
- package/lib/sharedComponents/framework-list/framework-list.component.d.ts +2 -0
- package/lib/sharedComponents/frequency/frequency-annual/frequency-annual.component.d.ts +0 -1
- package/lib/sharedComponents/frequency/frequency-biannual/frequency-biannual.component.d.ts +0 -1
- package/lib/sharedComponents/frequency/frequency-container/frequency-container.component.d.ts +0 -1
- package/lib/sharedComponents/frequency/frequency-daily/frequency-daily.component.d.ts +0 -1
- package/lib/sharedComponents/frequency/frequency-monthly/frequency-monthly.component.d.ts +0 -1
- package/lib/sharedComponents/frequency/frequency-one-time/frequency-one-time.component.d.ts +0 -1
- package/lib/sharedComponents/frequency/frequency-quarterly/frequency-quarterly.component.d.ts +0 -1
- package/lib/sharedComponents/frequency/frequency-weekly/frequency-weekly.component.d.ts +0 -1
- package/lib/workflow-compliance/workflow-compliance.component.d.ts +0 -10
- package/lib/workflow-engine-container/workflow-engine-container.component.d.ts +8 -0
- package/lib/workflow-policy/workflow-policy.component.d.ts +3 -2
- package/lib/workflow-program/create-program-ui/role-list/role-list.component.d.ts +1 -0
- package/lib/workflow-program/workflow-program.component.d.ts +6 -0
- package/lib/workflow-services/add-risk.service.d.ts +1 -1
- package/lib/workflow-services/frequency.service.d.ts +1 -1
- package/lib/workflow-services/responsibility.service.d.ts +0 -1
- package/package.json +2 -2
- package/vcomply-workflow-engine.d.ts +190 -189
- package/vcomply-workflow-engine.metadata.json +1 -1
- package/esm2015/lib/sharedComponents/system-task-selector/system-task-selector.component.js +0 -55
- package/esm2015/lib/sharedComponents/system-task-selector/system-task-selector.component.ngfactory.js +0 -75
- package/esm2015/lib/sharedComponents/system-task-selector/system-task-selector.component.ngsummary.json +0 -1
- package/esm2015/lib/sharedComponents/tab-selector/tab-selector.component.js +0 -41
- package/esm2015/lib/sharedComponents/tab-selector/tab-selector.component.ngfactory.js +0 -23
- package/esm2015/lib/sharedComponents/tab-selector/tab-selector.component.ngsummary.json +0 -1
- package/lib/sharedComponents/system-task-selector/system-task-selector.component.d.ts +0 -19
- package/lib/sharedComponents/tab-selector/tab-selector.component.d.ts +0 -17
|
@@ -1 +1 @@
|
|
|
1
|
-
{"moduleName":null,"summaries":[{"symbol":{"__symbol":0,"members":[]},"metadata":{"__symbolic":"class","members":{"form":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]},"arguments":["form",{"read":{"__symbol":2,"members":[]}}]}]}],"datePicker":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]},"arguments":["datePicker"]}]}],"pickerChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":3,"members":[]}}]}],"populateOption":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":3,"members":[]}}]}],"closeWorkflow":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":3,"members":[]}}]}],"showConfirmationAlert":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":3,"members":[]}}]}],"disconnectRefresh":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":3,"members":[]}}]}],"refreshForm":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":3,"members":[]}}]}],"hideElementsFromMoreOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":3,"members":[]}}]}],"onRemovingRole":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":3,"members":[]}}]}],"disableElementsFromMoreOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":3,"members":[]}}]}],"mode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":4,"members":[]}}]}],"programId":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":4,"members":[]}}]}],"programType":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":4,"members":[]}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbol":5,"members":[]},{"__symbol":6,"members":[]},{"__symbol":7,"members":[]},{"__symbol":8,"members":[]},{"__symbol":9,"members":[]}]}],"noWhitespaceValidator":[{"__symbolic":"method"}],"blankArrayValidator":[{"__symbolic":"method"}],"currentUser":[{"__symbolic":"method"}],"setFormField":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"populateOptionalFields":[{"__symbolic":"method"}],"addMoreInfo":[{"__symbolic":"method"}],"formChangeListner":[{"__symbolic":"method"}],"handleFormFieldChange":[{"__symbolic":"method"}],"activateList":[{"__symbolic":"method"}],"listAction":[{"__symbolic":"method"}],"remove":[{"__symbolic":"method"}],"removeRole":[{"__symbolic":"method"}],"setDefaultAssignee":[{"__symbolic":"method"}],"setDefaultAssigneeOnRemove":[{"__symbolic":"method"}],"setDefaultReviewer":[{"__symbolic":"method"}],"setDefaultOverseer":[{"__symbolic":"method"}],"setDefaultReviewerOnRemove":[{"__symbolic":"method"}],"setDefaultOverseerOnRemove":[{"__symbolic":"method"}],"fieldDeselector":[{"__symbolic":"method"}],"markasTouchedSelector":[{"__symbolic":"method"}],"fetchRoles":[{"__symbolic":"method"}],"fetchRC":[{"__symbolic":"method"}],"fetchUsersAssociatedWithRoles":[{"__symbolic":"method"}],"fetchGroupsAssociatedWithRoles":[{"__symbolic":"method"}],"setDefaultOwners":[{"__symbolic":"method"}],"fetchOrganizationUsers":[{"__symbolic":"method"}],"fetchOrganizationGroup":[{"__symbolic":"method"}],"selectFile":[{"__symbolic":"method"}],"uploadFiles":[{"__symbolic":"method"}],"deleteAttachment":[{"__symbolic":"method"}],"selectAllRoleOwner":[{"__symbolic":"method"}],"uniqueByProp":[{"__symbolic":"method"}],"setList":[{"__symbolic":"method"}],"saveProgram":[{"__symbolic":"method"}],"action":[{"__symbolic":"method"}],"viewPrograms":[{"__symbolic":"method"}],"resetForm":[{"__symbolic":"method"}],"closeSmiley":[{"__symbolic":"method"}],"getProgramDetails":[{"__symbolic":"method"}],"populateMembers":[{"__symbolic":"method"}],"populateGroups":[{"__symbolic":"method"}],"resetAdditionalOption":[{"__symbolic":"method"}],"checkProgramOptionField":[{"__symbolic":"method"}]}},"type":{"summaryKind":1,"type":{"reference":{"__symbol":0,"members":[]},"diDeps":[{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":5,"members":[]}}}},{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":6,"members":[]}}}},{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":7,"members":[]}}}},{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":8,"members":[]}}}},{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":9,"members":[]}}}}],"lifecycleHooks":[0]},"isComponent":true,"selector":"app-workflow-program","exportAs":null,"inputs":{"mode":"mode","programId":"programId","programType":"programType"},"outputs":{"pickerChanged":"pickerChanged","populateOption":"populateOption","closeWorkflow":"closeWorkflow","showConfirmationAlert":"showConfirmationAlert","disconnectRefresh":"disconnectRefresh","refreshForm":"refreshForm","hideElementsFromMoreOptions":"hideElementsFromMoreOptions","onRemovingRole":"onRemovingRole","disableElementsFromMoreOptions":"disableElementsFromMoreOptions"},"hostListeners":{},"hostProperties":{},"hostAttributes":{},"providers":[],"viewProviders":[],"queries":[],"guards":{},"viewQueries":[{"selectors":[{"value":"form"}],"first":true,"descendants":true,"propertyName":"form","read":{"identifier":{"reference":{"__symbol":2,"members":[]}}}},{"selectors":[{"value":"datePicker"}],"first":true,"descendants":true,"propertyName":"datePicker","read":null}],"entryComponents":[],"changeDetection":1,"template":{"ngContentSelectors":[],"encapsulation":0,"styles":[],"animations":[]},"componentViewType":{"__symbol":10,"members":[]},"rendererType":{"__symbol":11,"members":[]},"componentFactory":{"__symbol":12,"members":[]}}}],"symbols":[{"__symbol":0,"name":"WorkflowProgramComponent","filePath":"./workflow-program.component"},{"__symbol":1,"name":"ViewChild","filePath":"@angular/core"},{"__symbol":2,"name":"ElementRef","filePath":"@angular/core"},{"__symbol":3,"name":"Output","filePath":"@angular/core"},{"__symbol":4,"name":"Input","filePath":"@angular/core"},{"__symbol":5,"name":"FormBuilder","filePath":"@angular/forms"},{"__symbol":6,"name":"ProgramsService","filePath":"../workflow-services/programs.service"},{"__symbol":7,"name":"AuthService","filePath":"../workflow-services/auth.service"},{"__symbol":8,"name":"UiKitService","filePath":"../workflow-services/ui-kit.service"},{"__symbol":9,"name":"ChangeDetectorRef","filePath":"@angular/core"},{"__symbol":10,"name":"View_WorkflowProgramComponent_0","filePath":"./workflow-program.component.ngfactory"},{"__symbol":11,"name":"RenderType_WorkflowProgramComponent","filePath":"./workflow-program.component.ngfactory"},{"__symbol":12,"name":"WorkflowProgramComponentNgFactory","filePath":"./workflow-program.component.ngfactory"}]}
|
|
1
|
+
{"moduleName":null,"summaries":[{"symbol":{"__symbol":0,"members":[]},"metadata":{"__symbolic":"class","members":{"form":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]},"arguments":["form",{"read":{"__symbol":2,"members":[]}}]}]}],"datePicker":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]},"arguments":["datePicker"]}]}],"pickerChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":3,"members":[]}}]}],"populateOption":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":3,"members":[]}}]}],"closeWorkflow":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":3,"members":[]}}]}],"showConfirmationAlert":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":3,"members":[]}}]}],"disconnectRefresh":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":3,"members":[]}}]}],"refreshForm":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":3,"members":[]}}]}],"hideElementsFromMoreOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":3,"members":[]}}]}],"onRemovingRole":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":3,"members":[]}}]}],"disableElementsFromMoreOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":3,"members":[]}}]}],"canFrameworkChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":4,"members":[]}}]}],"mode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":4,"members":[]}}]}],"programId":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":4,"members":[]}}]}],"programType":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":4,"members":[]}}]}],"allowedFeature":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":4,"members":[]}}]}],"addToProgramDetails":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":4,"members":[]}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbol":5,"members":[]},{"__symbol":6,"members":[]},{"__symbol":7,"members":[]},{"__symbol":8,"members":[]},{"__symbol":9,"members":[]}]}],"noWhitespaceValidator":[{"__symbolic":"method"}],"blankArrayValidator":[{"__symbolic":"method"}],"currentUser":[{"__symbolic":"method"}],"setFormField":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"populateOptionalFields":[{"__symbolic":"method"}],"addMoreInfo":[{"__symbolic":"method"}],"formChangeListner":[{"__symbolic":"method"}],"handleFormFieldChange":[{"__symbolic":"method"}],"activateList":[{"__symbolic":"method"}],"listAction":[{"__symbolic":"method"}],"remove":[{"__symbolic":"method"}],"removeRole":[{"__symbolic":"method"}],"setDefaultAssignee":[{"__symbolic":"method"}],"setDefaultAssigneeOnRemove":[{"__symbolic":"method"}],"setDefaultReviewer":[{"__symbolic":"method"}],"setDefaultOverseer":[{"__symbolic":"method"}],"setDefaultReviewerOnRemove":[{"__symbolic":"method"}],"setDefaultOverseerOnRemove":[{"__symbolic":"method"}],"fieldDeselector":[{"__symbolic":"method"}],"markasTouchedSelector":[{"__symbolic":"method"}],"fetchRoles":[{"__symbolic":"method"}],"fetchRC":[{"__symbolic":"method"}],"fetchUsersAssociatedWithRoles":[{"__symbolic":"method"}],"fetchGroupsAssociatedWithRoles":[{"__symbolic":"method"}],"setDefaultOwners":[{"__symbolic":"method"}],"fetchOrganizationUsers":[{"__symbolic":"method"}],"fetchOrganizationGroup":[{"__symbolic":"method"}],"selectFile":[{"__symbolic":"method"}],"uploadFiles":[{"__symbolic":"method"}],"deleteAttachment":[{"__symbolic":"method"}],"selectAllRoleOwner":[{"__symbolic":"method"}],"uniqueByProp":[{"__symbolic":"method"}],"setList":[{"__symbolic":"method"}],"saveProgram":[{"__symbolic":"method"}],"action":[{"__symbolic":"method"}],"viewPrograms":[{"__symbolic":"method"}],"resetForm":[{"__symbolic":"method"}],"closeSmiley":[{"__symbolic":"method"}],"getProgramDetails":[{"__symbolic":"method"}],"populateMembers":[{"__symbolic":"method"}],"populateGroups":[{"__symbolic":"method"}],"resetAdditionalOption":[{"__symbolic":"method"}],"checkProgramOptionField":[{"__symbolic":"method"}],"enablefeature":[{"__symbolic":"method"}]}},"type":{"summaryKind":1,"type":{"reference":{"__symbol":0,"members":[]},"diDeps":[{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":5,"members":[]}}}},{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":6,"members":[]}}}},{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":7,"members":[]}}}},{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":8,"members":[]}}}},{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":9,"members":[]}}}}],"lifecycleHooks":[0]},"isComponent":true,"selector":"app-workflow-program","exportAs":null,"inputs":{"canFrameworkChange":"canFrameworkChange","mode":"mode","programId":"programId","programType":"programType","allowedFeature":"allowedFeature","addToProgramDetails":"addToProgramDetails"},"outputs":{"pickerChanged":"pickerChanged","populateOption":"populateOption","closeWorkflow":"closeWorkflow","showConfirmationAlert":"showConfirmationAlert","disconnectRefresh":"disconnectRefresh","refreshForm":"refreshForm","hideElementsFromMoreOptions":"hideElementsFromMoreOptions","onRemovingRole":"onRemovingRole","disableElementsFromMoreOptions":"disableElementsFromMoreOptions"},"hostListeners":{},"hostProperties":{},"hostAttributes":{},"providers":[],"viewProviders":[],"queries":[],"guards":{},"viewQueries":[{"selectors":[{"value":"form"}],"first":true,"descendants":true,"propertyName":"form","read":{"identifier":{"reference":{"__symbol":2,"members":[]}}}},{"selectors":[{"value":"datePicker"}],"first":true,"descendants":true,"propertyName":"datePicker","read":null}],"entryComponents":[],"changeDetection":1,"template":{"ngContentSelectors":[],"encapsulation":0,"styles":[],"animations":[]},"componentViewType":{"__symbol":10,"members":[]},"rendererType":{"__symbol":11,"members":[]},"componentFactory":{"__symbol":12,"members":[]}}}],"symbols":[{"__symbol":0,"name":"WorkflowProgramComponent","filePath":"./workflow-program.component"},{"__symbol":1,"name":"ViewChild","filePath":"@angular/core"},{"__symbol":2,"name":"ElementRef","filePath":"@angular/core"},{"__symbol":3,"name":"Output","filePath":"@angular/core"},{"__symbol":4,"name":"Input","filePath":"@angular/core"},{"__symbol":5,"name":"FormBuilder","filePath":"@angular/forms"},{"__symbol":6,"name":"ProgramsService","filePath":"../workflow-services/programs.service"},{"__symbol":7,"name":"AuthService","filePath":"../workflow-services/auth.service"},{"__symbol":8,"name":"UiKitService","filePath":"../workflow-services/ui-kit.service"},{"__symbol":9,"name":"ChangeDetectorRef","filePath":"@angular/core"},{"__symbol":10,"name":"View_WorkflowProgramComponent_0","filePath":"./workflow-program.component.ngfactory"},{"__symbol":11,"name":"RenderType_WorkflowProgramComponent","filePath":"./workflow-program.component.ngfactory"},{"__symbol":12,"name":"WorkflowProgramComponentNgFactory","filePath":"./workflow-program.component.ngfactory"}]}
|
|
@@ -23,8 +23,8 @@ import * as i15 from "../formgroup/select/cs-select/cs-select.component";
|
|
|
23
23
|
import * as i16 from "../formgroup/select/select.service";
|
|
24
24
|
import * as i17 from "../formgroup/select/cs-select/cs-select.component.ngfactory";
|
|
25
25
|
import * as i18 from "../sharedComponents/pipes/spaceTrim.pipe";
|
|
26
|
-
import * as i19 from "../../../../../node_modules/vcomply-editor/
|
|
27
|
-
import * as i20 from "
|
|
26
|
+
import * as i19 from "../../../../../node_modules/vcomply-editor/marx-editor.ngfactory";
|
|
27
|
+
import * as i20 from "marx-editor";
|
|
28
28
|
import * as i21 from "../ui-kit/click-outside/click-outside.directive";
|
|
29
29
|
import * as i22 from "../sharedComponents/responsibility-centers-list/responsibility-centers-list.component.ngfactory";
|
|
30
30
|
import * as i23 from "../sharedComponents/responsibility-centers-list/responsibility-centers-list.component";
|
|
@@ -340,7 +340,7 @@ function View_WorkflowRiskComponent_58(_l) { return i2.ɵvid(0, [(_l()(), i2.ɵe
|
|
|
340
340
|
} if (("clickOutside" === en)) {
|
|
341
341
|
var pd_2 = (_co.checkMitigationPlan() !== false);
|
|
342
342
|
ad = (pd_2 && ad);
|
|
343
|
-
} return ad; }, i19.
|
|
343
|
+
} return ad; }, i19.View_MarxEditorComponent_0, i19.RenderType_MarxEditorComponent)), i2.ɵdid(19, 4898816, null, 0, i20.MarxEditorComponent, [], { editorConfig: [0, "editorConfig"] }, null), i2.ɵprd(1024, null, i3.NG_VALUE_ACCESSOR, function (p0_0) { return [p0_0]; }, [i20.MarxEditorComponent]), i2.ɵdid(21, 671744, null, 0, i3.NgModel, [[8, null], [8, null], [8, null], [6, i3.NG_VALUE_ACCESSOR]], { model: [0, "model"] }, { update: "ngModelChange" }), i2.ɵprd(2048, null, i3.NgControl, null, [i3.NgModel]), i2.ɵdid(23, 16384, null, 0, i3.NgControlStatus, [[4, i3.NgControl]], null, null), i2.ɵdid(24, 16384, null, 0, i21.ClickOutsideDirective, [i2.ElementRef], null, { clickOutside: "clickOutside" })], function (_ck, _v) { var _co = _v.component; var currVal_0 = _co.scrollToBottom; _ck(_v, 1, 0, currVal_0); var currVal_2 = (i2.ɵunv(_v, 5, 0, i2.ɵnov(_v, 6).transform(_co.riskForm.mitigationDescriptionPlan)) === ""); _ck(_v, 5, 0, currVal_2); var currVal_3 = (i2.ɵunv(_v, 8, 0, i2.ɵnov(_v, 9).transform(_co.riskForm.mitigationDescriptionPlan)) !== ""); _ck(_v, 8, 0, currVal_3); var currVal_4 = "Specify the mitigation plan that can be undertaken to mitigate the risk."; var currVal_5 = "bottom"; var currVal_6 = "white"; var currVal_7 = true; _ck(_v, 16, 0, currVal_4, currVal_5, currVal_6, currVal_7); var currVal_15 = _co.mitigationDescriptionPlan; _ck(_v, 19, 0, currVal_15); var currVal_16 = _co.riskForm.mitigationDescriptionPlan; _ck(_v, 21, 0, currVal_16); }, function (_ck, _v) { var _co = _v.component; var currVal_1 = (i2.ɵunv(_v, 2, 0, i2.ɵnov(_v, 3).transform(_co.riskForm.mitigationDescriptionPlan)) !== ""); _ck(_v, 2, 0, currVal_1); var currVal_8 = i2.ɵnov(_v, 23).is("untouched"); var currVal_9 = i2.ɵnov(_v, 23).is("touched"); var currVal_10 = i2.ɵnov(_v, 23).is("pristine"); var currVal_11 = i2.ɵnov(_v, 23).is("dirty"); var currVal_12 = i2.ɵnov(_v, 23).is("valid"); var currVal_13 = i2.ɵnov(_v, 23).is("invalid"); var currVal_14 = i2.ɵnov(_v, 23).is("pending"); _ck(_v, 18, 0, currVal_8, currVal_9, currVal_10, currVal_11, currVal_12, currVal_13, currVal_14); }); }
|
|
344
344
|
function View_WorkflowRiskComponent_1(_l) { return i2.ɵvid(0, [(_l()(), i2.ɵeld(0, 0, null, null, 137, "div", [["class", "workflw-risk"]], null, null, null, null, null)), (_l()(), i2.ɵeld(1, 0, null, null, 27, "div", [["class", "form-group-row"]], [[2, "active", null], [2, "disabled", null]], null, null, null, null)), (_l()(), i2.ɵeld(2, 0, null, null, 4, "div", [["class", "left"]], [[2, "checked", null]], null, null, null, null)), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowRiskComponent_2)), i2.ɵdid(4, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowRiskComponent_3)), i2.ɵdid(6, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵeld(7, 0, null, null, 21, "div", [["class", "right"]], null, null, null, null, null)), (_l()(), i2.ɵeld(8, 0, null, null, 20, "div", [["class", "vx-form-group"]], null, null, null, null, null)), (_l()(), i2.ɵeld(9, 0, null, null, 3, "label", [["class", "vx-control-panel"]], null, null, null, null, null)), (_l()(), i2.ɵted(-1, null, ["Risk Type "])), (_l()(), i2.ɵeld(11, 0, null, null, 1, "span", [["class", "required"]], null, null, null, null, null)), (_l()(), i2.ɵted(-1, null, ["*"])), (_l()(), i2.ɵeld(13, 0, null, null, 13, "div", [["class", "risk-type-field"]], null, null, null, null, null)), (_l()(), i2.ɵeld(14, 0, null, null, 5, "div", [["class", "type-item"]], [[2, "active", null]], null, null, null, null)), (_l()(), i2.ɵeld(15, 0, null, null, 1, "button", [], [[2, "disabled", null]], [[null, "click"]], function (_v, en, $event) { var ad = true; var _co = _v.component; if (("click" === en)) {
|
|
345
345
|
var pd_0 = (_co.changeRisk("NORMAL") !== false);
|
|
346
346
|
ad = (pd_0 && ad);
|
|
@@ -386,7 +386,7 @@ function View_WorkflowRiskComponent_1(_l) { return i2.ɵvid(0, [(_l()(), i2.ɵel
|
|
|
386
386
|
} if (("clickOutside" === en)) {
|
|
387
387
|
var pd_2 = (_co.checkDescription() !== false);
|
|
388
388
|
ad = (pd_2 && ad);
|
|
389
|
-
} return ad; }, i19.
|
|
389
|
+
} return ad; }, i19.View_MarxEditorComponent_0, i19.RenderType_MarxEditorComponent)), i2.ɵdid(48, 4898816, null, 0, i20.MarxEditorComponent, [], { editorConfig: [0, "editorConfig"] }, null), i2.ɵprd(1024, null, i3.NG_VALUE_ACCESSOR, function (p0_0) { return [p0_0]; }, [i20.MarxEditorComponent]), i2.ɵdid(50, 671744, null, 0, i3.NgModel, [[8, null], [8, null], [8, null], [6, i3.NG_VALUE_ACCESSOR]], { model: [0, "model"] }, { update: "ngModelChange" }), i2.ɵprd(2048, null, i3.NgControl, null, [i3.NgModel]), i2.ɵdid(52, 16384, null, 0, i3.NgControlStatus, [[4, i3.NgControl]], null, null), i2.ɵdid(53, 16384, null, 0, i21.ClickOutsideDirective, [i2.ElementRef], null, { clickOutside: "clickOutside" }), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowRiskComponent_10)), i2.ɵdid(55, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵeld(56, 0, null, null, 27, "div", [["class", "form-group-row"]], [[2, "active", null], [2, "disabled", null]], null, null, null, null)), (_l()(), i2.ɵeld(57, 0, null, null, 4, "div", [["class", "left"]], [[2, "checked", null]], null, null, null, null)), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowRiskComponent_11)), i2.ɵdid(59, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowRiskComponent_12)), i2.ɵdid(61, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵeld(62, 0, null, null, 21, "div", [["class", "right"]], null, null, null, null, null)), (_l()(), i2.ɵeld(63, 0, null, null, 20, "div", [["class", "vx-form-group"]], null, null, null, null, null)), (_l()(), i2.ɵeld(64, 0, null, null, 6, "label", [["class", "vx-control-panel"]], null, null, null, null, null)), (_l()(), i2.ɵted(-1, null, ["Responsibility Center "])), (_l()(), i2.ɵeld(66, 0, null, null, 1, "span", [["class", "required"]], null, null, null, null, null)), (_l()(), i2.ɵted(-1, null, ["*"])), (_l()(), i2.ɵeld(68, 0, null, null, 2, "i", [["class", "icons"], ["delay", "0"], ["placement", "bottom"], ["type", "white"]], null, [[null, "mouseenter"], [null, "mouseover"], [null, "mouseleave"], [null, "mouseout"], [null, "click"]], function (_v, en, $event) { var ad = true; if (("mouseenter" === en)) {
|
|
390
390
|
var pd_0 = (i2.ɵnov(_v, 69).onMouseEnter() !== false);
|
|
391
391
|
ad = (pd_0 && ad);
|
|
392
392
|
} if (("mouseover" === en)) {
|
|
@@ -481,4 +481,4 @@ export function View_WorkflowRiskComponent_0(_l) { return i2.ɵvid(0, [i2.ɵpid(
|
|
|
481
481
|
export function View_WorkflowRiskComponent_Host_0(_l) { return i2.ɵvid(0, [(_l()(), i2.ɵeld(0, 0, null, null, 1, "app-workflow-risk", [], null, null, null, View_WorkflowRiskComponent_0, RenderType_WorkflowRiskComponent)), i2.ɵdid(1, 114688, null, 0, i32.WorkflowRiskComponent, [i33.AddRiskService, i34.AuthService, i35.UiKitService, i36.SnackBarService, [2, i37.Configurations]], null, null)], function (_ck, _v) { _ck(_v, 1, 0); }, null); }
|
|
482
482
|
var WorkflowRiskComponentNgFactory = i2.ɵccf("app-workflow-risk", i32.WorkflowRiskComponent, View_WorkflowRiskComponent_Host_0, { mode: "mode", riskId: "riskId", defaultRiskType: "defaultRiskType", moveToRegisterMode: "moveToRegisterMode", secondaryOpenPortal: "secondaryOpenPortal", openedFrom: "openedFrom" }, { showConfirmationAlert: "showConfirmationAlert", pickerChanged: "pickerChanged", populateOption: "populateOption", closeWorkflow: "closeWorkflow", disconnectRefresh: "disconnectRefresh", refreshForm: "refreshForm", hideElementsFromMoreOptions: "hideElementsFromMoreOptions" }, []);
|
|
483
483
|
export { WorkflowRiskComponentNgFactory as WorkflowRiskComponentNgFactory };
|
|
484
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctcmlzay5jb21wb25lbnQubmdmYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvd29ya2Zsb3ctcmlzay93b3JrZmxvdy1yaXNrLmNvbXBvbmVudC5uZ2ZhY3RvcnkudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi93b3JrZmxvdy1yaXNrL3dvcmtmbG93LXJpc2suY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Z0VDS1ksaUxBQTZHO2dFQUU3RywwS0FJTSxLQUZGLDZLQUF1RSxLQUN2RSx3S0FBOEU7Z0VBaUI5RSxvR0FBMEQsS0FBbkIsNENBQWU7Z0VBUTFELGlMQUEySztnRUFFM0ssMEtBSU0sS0FGRiw2S0FBdUUsS0FDdkUsd0tBQThFO2dFQU05RTs7Ozs7Ozs7Ozs7Ozs7d0JBRW9HO01BRnZFOzt3QkFBbUM7TUFBQzs7d0JBQXlDO01BQ3RHOzt3QkFBMkM7TUFBQzs7d0JBQTRCO01BRDVFLDRtQkFFb0csaURBRHBELG1CQUE0QixpQkFENUUsWUFFb0csRUFEcEQsU0FBNEIsMkJBRDVFLDBaQUVvRztnRUFDcEcsaUdBTU0sS0FMRix1R0FFTSxLQURGLCtGQUE2QyxLQUF6QixnQ0FBa0IsTUFFMUMsd0tBQ2dELFlBRDNCOzt3QkFBdUM7TUFBNUQsd0JBQ2dELEtBRDJCLDRGQUN6QyxLQUFaLG1DQUFRLE1BQUksa0NBQUsseURBSGYsMkRBQWtCO2dFQUs5QyxvR0FBbUYsS0FBbkIsNENBQWU7aUVBRS9FLG9HQUFvSixLQUExQixtREFBc0I7aUVBUXBKLGdNQUM4RztpRUFFOUcsMEtBSU0sS0FGRiw2S0FBdUUsS0FDdkUsd0tBQThFO2lFQVc5RSwrRkFHTSxLQUZGLHdOQUMy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RixJQUV2RixzTEFFbUYsSUFDbkYsdUxBSWlCLElBQ2pCLHVMQUFzRCxJQUlsRCx1TEFNMkIsaURBN1pMLG9CQUFtQixhQUE3QyxZQStYTSxFQS9Yb0IsU0FBbUIsR0FnWVosNENBQStCLEdBQWhFLFlBSWtDLEVBSkQsU0FBK0IsR0FNaEQsK0NBQWtDLEdBQWxELFlBR3VGLEVBSHZFLFNBQWtDLEdBSy9CLGtEQUFxQyxHQUF4RCxZQUVtRixFQUZoRSxTQUFxQyxHQUd4QyxrREFBcUMsR0FBckQsYUFJaUIsRUFKRCxTQUFxQyxHQUtsQyxtQkFBYyxTQUFqQyxhQUFzRCxFQUFuQyxTQUFjLEdBS3pCLG1CQUFrQixhQUR0QixhQU0yQixFQUx2QixTQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGkwIGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaTAuQ29tcG9uZW50RmFjdG9yeTtcbiIsIjxkaXYgY2xhc3M9XCJ3b3JrZmx3LXJpc2tcIiAqbmdJZj1cIiFzaG93U21pbGV5XCI+XHJcbiAgICA8IS0tIFJpc2sgVHlwZSAtLT5cclxuICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwLXJvd1wiIFtjbGFzcy5hY3RpdmVdPVwiZmFsc2VcIlxyXG4gICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJmYWxzZVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0XCIgW2NsYXNzLmNoZWNrZWRdPVwiZmFsc2VcIj5cclxuICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvd2hhdC5zdmdcIiBhbHQ9XCJpbVwiICpuZ0lmPVwidHJ1ZVwiPlxyXG5cclxuICAgICAgICAgICAgPHN2ZyAqbmdJZj1cImZhbHNlXCIgY2xhc3M9XCJjaGVja0ljb25cIlxyXG4gICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgNTIgNTJcIj5cclxuICAgICAgICAgICAgICAgIDxjaXJjbGUgY2xhc3M9XCJjaGVja0ljb25fX2NpcmNsZVwiIGN4PVwiMjZcIiBjeT1cIjI2XCIgcj1cIjI1XCIgZmlsbD1cIm5vbmVcIiAvPlxyXG4gICAgICAgICAgICAgICAgPHBhdGggY2xhc3M9XCJjaGVja0ljb25fX2NoZWNrXCIgZmlsbD1cIm5vbmVcIiBkPVwiTTE0LjEgMjcuMmw3LjEgNy4yIDE2LjctMTYuOFwiIC8+XHJcbiAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyaWdodFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidngtZm9ybS1ncm91cFwiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiPlJpc2sgVHlwZSA8c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj48L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJpc2stdHlwZS1maWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0eXBlLWl0ZW1cIiBbY2xhc3MuYWN0aXZlXT1cInJpc2tGb3JtPy5yaXNrVHlwZSA9PT0gJ05PUk1BTCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBbY2xhc3MuZGlzYWJsZWRdPVwiIXJpc2tUeXBlQ2hhbmdlQWxsb3dlZFwiIChjbGljayk9XCJjaGFuZ2VSaXNrKCdOT1JNQUwnKVwiPkFERCBUTyBSSVNLIFJFR0lTVEVSPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnMgaW5mb1wiIFthcHBUb29sdGlwXT1cIidUaGlzIG9wdGlvbiBsZXRzIHlvdSBhZGQgYSByaXNrIGRpcmVjdGx5IHRvIHRoZSBSaXNrIFJlZ2lzdGVyLiBUaGUgcmlzayBvd25lcnMgd2lsbCByZWNlaXZlIGFuIGFsZXJ0IGFuZCB0aGV5IGNhbiBiZWdpbiB0aGUgdGhlIHJpc2sgYXNzZXNzbWVudCBwcm9jZXNzLidcIiBwbGFjZW1lbnQ9XCJib3R0b20tcmlnaHRcIiBkZWxheT1cIjBcIiB0eXBlPVwid2hpdGVcIiBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZTkzMjs8L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInR5cGUtaXRlbVwiIFtjbGFzcy5hY3RpdmVdPVwicmlza0Zvcm0/LnJpc2tUeXBlID09PSAnUkVQT1JURUQnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gW2NsYXNzLmRpc2FibGVkXT1cIiFyaXNrVHlwZUNoYW5nZUFsbG93ZWRcIiAoY2xpY2spPVwiY2hhbmdlUmlzaygnUkVQT1JURUQnKVwiPlJFUE9SVCBBIFJJU0s8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29ucyBpbmZvXCIgW2FwcFRvb2x0aXBdPVwiJ1RoaXMgb3B0aW9ucyBsZXRzIHlvdSByZXBvcnQgYSByaXNrIGFuZCBhc3NpZ24gaXQgdG8gdGhlIHJpc2sgb3duZXJzLiBUaGUgcmlzayBvd25lcnMgd2lsbCBoYXZlIHRoZSBvcHRpb24gdG8gZWl0aGVyIGFkZCB0aGUgcmlzayB0byB0aGUgUmlzayBSZWdpc3RlciBvciBmbGFnIGl0IGZvciBhIGZvbGxvdy11cCBhdCBhIGxhdGVyIGRhdGUuJ1wiIHBsYWNlbWVudD1cImJvdHRvbS1yaWdodFwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlOTMyOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImJhY2tncm91bmQtZ2xpZGVyXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8cCAqbmdJZj1cImZhbHNlXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+QWRkIGEgcmlzayB0eXBlPC9wPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPCEtLSBSaXNrIE5hbWUgLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cC1yb3dcIiBbY2xhc3MuYWN0aXZlXT1cImZhbHNlXCJcclxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIGFjdGl2ZVNlbGVjdG9yICYmIGFjdGl2ZVNlbGVjdG9yICE9PSAnbmFtZScgICYmIHNpZGVTZWxlY3RvckVsZW1lbnRzLmluY2x1ZGVzKGFjdGl2ZVNlbGVjdG9yKVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0XCIgW2NsYXNzLmNoZWNrZWRdPVwicmlza0Zvcm0udGl0bGVcIj5cclxuICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvd2hhdC5zdmdcIiBhbHQ9XCJpbVwiICpuZ0lmPVwicmlza0Zvcm0/LnRpdGxlPy50cmltKCk/Lmxlbmd0aCA9PT0gMCB8fCBhY3RpdmVTZWxlY3RvciA9PT0gJ25hbWUnXCI+XHJcblxyXG4gICAgICAgICAgICA8c3ZnICpuZ0lmPVwicmlza0Zvcm0/LnRpdGxlPy50cmltKCk/Lmxlbmd0aCA+IDAgJiYgYWN0aXZlU2VsZWN0b3IgIT09ICduYW1lJ1wiIGNsYXNzPVwiY2hlY2tJY29uXCJcclxuICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDUyIDUyXCI+XHJcbiAgICAgICAgICAgICAgICA8Y2lyY2xlIGNsYXNzPVwiY2hlY2tJY29uX19jaXJjbGVcIiBjeD1cIjI2XCIgY3k9XCIyNlwiIHI9XCIyNVwiIGZpbGw9XCJub25lXCIgLz5cclxuICAgICAgICAgICAgICAgIDxwYXRoIGNsYXNzPVwiY2hlY2tJY29uX19jaGVja1wiIGZpbGw9XCJub25lXCIgZD1cIk0xNC4xIDI3LjJsNy4xIDcuMiAxNi43LTE2LjhcIiAvPlxyXG4gICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicmlnaHRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWZvcm0tZ3JvdXBcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5SaXNrIE5hbWUgPHNwYW4gY2xhc3M9XCJyZXF1aXJlZFwiPio8L3NwYW4+PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCBzcGFjZVRyaW0gdHlwZT1cInRleHRcIiAoa2V5ZG93bik9XCJhY3RpdmVTZWxlY3RvciA9ICduYW1lJ1wiIChmb2N1c2luKT1cImFjdGl2YXRlU2VsZWN0b3IoJ25hbWUnLHRydWUpXCJcclxuICAgICAgICAgICAgICAgICAgICAoZm9jdXNvdXQpPVwiYWN0aXZhdGVTZWxlY3RvcignbmFtZScsZmFsc2UpXCIgWyhuZ01vZGVsKV09XCJyaXNrRm9ybS50aXRsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJBZGQgYSByaXNrIG5hbWVcIiAqbmdJZj1cInJpc2tGb3JtPy50aXRsZT8udHJpbSgpID09JycgfHwgYWN0aXZlU2VsZWN0b3IgPT09ICduYW1lJ1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkXCIgKm5nSWY9XCJyaXNrRm9ybT8udGl0bGU/LnRyaW0oKSE9ICcnICYmIGFjdGl2ZVNlbGVjdG9yICE9PSAnbmFtZSdcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPnt7cmlza0Zvcm0udGl0bGV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiZWRpdFwiIChjbGljayk9XCJhY3RpdmF0ZVNlbGVjdG9yKCduYW1lJyx0cnVlKVwiIHR5cGU9XCJidXR0b25cIj48aVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpY29uc1wiPiYjeGU5YmE7PC9pPiBFZGl0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxwICpuZ0lmPVwic3VibWl0dGVkICYmICghcmlza0Zvcm0udGl0bGUpXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+QWRkIGEgcmlzayBuYW1lPC9wPlxyXG4gICAgICAgICAgICAgICAgPG1hcngtZWRpdG9yIFsobmdNb2RlbCldPVwicmlza0Zvcm0uZGVzY3JpcHRpb25cIiBbZWRpdG9yQ29uZmlnXT1cImRlc2NyaXB0aW9uXCIgKGNsaWNrT3V0c2lkZSk9XCJjaGVja0Rlc2NyaXB0aW9uKClcIj48L21hcngtZWRpdG9yPlxyXG4gICAgICAgICAgICAgICAgPHAgKm5nSWY9XCJzdWJtaXR0ZWQgJiYgKHJpc2tGb3JtLnJpc2tUeXBlID09PSdSRVBPUlRFRCcgJiYgIXJpc2tGb3JtPy5kZXNjcmlwdGlvbj8udHJpbSgpPy5sZW5ndGgpXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+QWRkIGEgcmlzayBkZXNjcmlwdGlvbjwvcD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDwhLS0gUmVzcG9uc2liaWxpdHkgQ2VudGVyIC0tPlxyXG4gICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAtcm93XCIgW2NsYXNzLmFjdGl2ZV09XCJhY3RpdmVTZWxlY3RvciA9PT0gJ3JjJ1wiXHJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIiBhY3RpdmVTZWxlY3RvciAmJiBhY3RpdmVTZWxlY3RvciAhPT0gJ3JjJyAmJiBzaWRlU2VsZWN0b3JFbGVtZW50cy5pbmNsdWRlcyhhY3RpdmVTZWxlY3RvcilcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdFwiIFtjbGFzcy5jaGVja2VkXT1cInJpc2tGb3JtPy5yZXNwb25zaWJpbGl0eUNlbnRlcnNMaXN0Py5sZW5ndGg+MFwiPlxyXG4gICAgICAgICAgICA8aW1nICpuZ0lmPVwicmlza0Zvcm0/LnJlc3BvbnNpYmlsaXR5Q2VudGVyc0xpc3Q/Lmxlbmd0aD09MCB8fCBhY3RpdmVTZWxlY3RvciA9PT0gJ3JjJ1wiXHJcbiAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvcmVzcG9uc2liaWxpdHktY2VudGVyLnN2Z1wiIGFsdD1cIlwiPlxyXG5cclxuICAgICAgICAgICAgPHN2ZyAqbmdJZj1cInJpc2tGb3JtPy5yZXNwb25zaWJpbGl0eUNlbnRlcnNMaXN0Py5sZW5ndGg+MCAmJiBhY3RpdmVTZWxlY3RvciAhPT0gJ3JjJ1wiIGNsYXNzPVwiY2hlY2tJY29uXCJcclxuICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDUyIDUyXCI+XHJcbiAgICAgICAgICAgICAgICA8Y2lyY2xlIGNsYXNzPVwiY2hlY2tJY29uX19jaXJjbGVcIiBjeD1cIjI2XCIgY3k9XCIyNlwiIHI9XCIyNVwiIGZpbGw9XCJub25lXCIgLz5cclxuICAgICAgICAgICAgICAgIDxwYXRoIGNsYXNzPVwiY2hlY2tJY29uX19jaGVja1wiIGZpbGw9XCJub25lXCIgZD1cIk0xNC4xIDI3LjJsNy4xIDcuMiAxNi43LTE2LjhcIiAvPlxyXG4gICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicmlnaHRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWZvcm0tZ3JvdXBcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5SZXNwb25zaWJpbGl0eSBDZW50ZXIgPHNwYW4gY2xhc3M9XCJyZXF1aXJlZFwiPio8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiIFthcHBUb29sdGlwXT1cIidSZXNwb25zaWJpbGl0eSBDZW50ZXJzIHJlcHJlc2VudCB0aGUgY29ycG9yYXRlIGFuZCBvcGVyYXRpb25hbCBpbmZyYXN0cnVjdHVyZSBvZiBhbiBvcmdhbml6YXRpb24uIE9uZSBvciBtb3JlIFJlc3BvbnNpYmlsaXR5IENlbnRlcnMgY2FuIGJlIGV4cG9zZWQgdG8gYSByaXNrIGFuZCBhY2NvcmRpbmdseSwgdGhlIHJpc2sgbXVzdCBiZSBhc3Nlc3NlZCBhZ2FpbnN0IGVhY2ggUmVzcG9uc2liaWxpdHkgQ2VudGVyLidcIlxyXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXHJcbiAgICAgICAgICAgICAgICAgICAgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZTkxZjs8L2k+XHJcbiAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdFwiICpuZ0lmPVwicmlza0Zvcm0/LnJlc3BvbnNpYmlsaXR5Q2VudGVyc0xpc3Q/Lmxlbmd0aD09MFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIChjbGljayk9XCJhY3RpdmF0ZVNlbGVjdG9yKCdyYycsdHJ1ZSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIlNlbGVjdCBSZXNwb25zaWJpbGl0eSBDZW50ZXIocylcIiByZWFkb25seT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkXCIgKm5nSWY9XCJyaXNrRm9ybT8ucmVzcG9uc2liaWxpdHlDZW50ZXJzTGlzdD8ubGVuZ3RoPjBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1jb250YWluZXJcIiBbY2xhc3MubW9yZS1vbmVdPVwicmlza0Zvcm0/LnJlc3BvbnNpYmlsaXR5Q2VudGVyc0xpc3Q/Lmxlbmd0aD4xXCIgW2NsYXNzLnBsdXNdPVwicmlza0Zvcm0/LnJlc3BvbnNpYmlsaXR5Q2VudGVyc0xpc3Q/Lmxlbmd0aD4yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hpcFwiICpuZ0Zvcj1cImxldCByY05hbWUgb2Ygcmlza0Zvcm0/LnJlc3BvbnNpYmlsaXR5Q2VudGVyc0xpc3Q/LnNsaWNlKDAsMilcIj48aVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaWNvbnNcIiAoY2xpY2spPVwicmVtb3ZlKCdyYycscmNOYW1lKVwiPiYjeGU5MGQ7PC9pPiB7e3JjTmFtZS5pdGVtX25hbWV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNvdW50XCIgKm5nSWY9XCJyaXNrRm9ybT8ucmVzcG9uc2liaWxpdHlDZW50ZXJzTGlzdD8ubGVuZ3RoID4gMlwiIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwUG9wb3ZlciAoY2xpY2spPVwicG9wb3ZlclJDLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+K1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3tyaXNrRm9ybT8ucmVzcG9uc2liaWxpdHlDZW50ZXJzTGlzdD8uc2xpY2UoMikubGVuZ3RofX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFjdGl2ZVNlbGVjdG9yICE9PSAncmMnXCIgY2xhc3M9XCJlZGl0XCIgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJhY3RpdmF0ZVNlbGVjdG9yKCdyYycsdHJ1ZSlcIj48aSBjbGFzcz1cImljb25zXCI+JiN4ZTliYTs8L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEVkaXQ8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPHAgKm5nSWY9XCJzdWJtaXR0ZWQgJiYgKHJpc2tGb3JtPy5yZXNwb25zaWJpbGl0eUNlbnRlcnNMaXN0Py5sZW5ndGg9PTApXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+QXNzaWduXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcyByaXNrIHRvIGEgUmVzcG9uc2liaWxpdHkgQ2VudGVyKHMpPC9wPlxyXG4gICAgICAgICAgICAgICAgPGFwcC1wb3BvdmVyICNwb3BvdmVyUkMgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tbGlzdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCByY05hbWUgb2Ygcmlza0Zvcm0/LnJlc3BvbnNpYmlsaXR5Q2VudGVyc0xpc3QgfCBzbGljZTogMjsgbGV0IGogPSBpbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb25zXCIgKGNsaWNrKT1cInJlbW92ZSgncmMnLHJjTmFtZSlcIj4mI3hlOTBkOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHJjTmFtZS5pdGVtX25hbWUgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8IS0tIFJJU0sgT1dORVIgLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cC1yb3dcIiBbY2xhc3MuYWN0aXZlXT1cImFjdGl2ZVNlbGVjdG9yID09PSAnb3duZXInXCJcclxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIGFjdGl2ZVNlbGVjdG9yICYmIGFjdGl2ZVNlbGVjdG9yICE9PSAnb3duZXInICYmIHNpZGVTZWxlY3RvckVsZW1lbnRzLmluY2x1ZGVzKGFjdGl2ZVNlbGVjdG9yKVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0XCIgW2NsYXNzLmNoZWNrZWRdPVwicmlza0Zvcm0/Lm93bmVyc0xpc3Q/Lmxlbmd0aD4wXCI+XHJcbiAgICAgICAgICAgIDxpbWcgKm5nSWY9XCJyaXNrRm9ybT8ub3duZXJzTGlzdD8ubGVuZ3RoID09MCB8fCBhY3RpdmVTZWxlY3RvciA9PT0gJ293bmVyJ1wiXHJcbiAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvaW0tY3JlYXRpbmcuc3ZnXCIgYWx0PVwiXCIgLz5cclxuXHJcbiAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJyaXNrRm9ybT8ub3duZXJzTGlzdD8ubGVuZ3RoPjAgJiYgYWN0aXZlU2VsZWN0b3IgIT09ICdvd25lcidcIiBjbGFzcz1cImNoZWNrSWNvblwiXHJcbiAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCA1MiA1MlwiPlxyXG4gICAgICAgICAgICAgICAgPGNpcmNsZSBjbGFzcz1cImNoZWNrSWNvbl9fY2lyY2xlXCIgY3g9XCIyNlwiIGN5PVwiMjZcIiByPVwiMjVcIiBmaWxsPVwibm9uZVwiIC8+XHJcbiAgICAgICAgICAgICAgICA8cGF0aCBjbGFzcz1cImNoZWNrSWNvbl9fY2hlY2tcIiBmaWxsPVwibm9uZVwiIGQ9XCJNMTQuMSAyNy4ybDcuMSA3LjIgMTYuNy0xNi44XCIgLz5cclxuICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJpZ2h0XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mb3JtLWdyb3VwXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+UklTSyBPV05FUiA8c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb25zXCIgW2FwcFRvb2x0aXBdPVwiJ1RoaXMgaXMgdGhlIHBlcnNvbiB0aGF0IGlzIHJlc3BvbnNpYmxlIGZvciBtYW5hZ2luZyB0aGUgcmlzay4nXCJcclxuICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJib3R0b21cIlxyXG4gICAgICAgICAgICAgICAgICAgIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiPiYjeGU5MWY7PC9pPlxyXG4gICAgICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3RcIiAqbmdJZj1cInJpc2tGb3JtPy5vd25lcnNMaXN0Py5sZW5ndGggPT0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgKGNsaWNrKT1cImFjdGl2YXRlU2VsZWN0b3IoJ293bmVyJyx0cnVlKVwiIHBsYWNlaG9sZGVyPVwiU2VsZWN0IFJpc2sgT3duZXIocylcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZWFkb25seT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0ZWRcIiAqbmdJZj1cInJpc2tGb3JtPy5vd25lcnNMaXN0Py5sZW5ndGg+MFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWNvbnRhaW5lclwiIFtjbGFzcy5tb3JlLW9uZV09XCJyaXNrRm9ybT8ub3duZXJzTGlzdD8ubGVuZ3RoPjFcIiBbY2xhc3MucGx1c109XCJyaXNrRm9ybT8ub3duZXJzTGlzdD8ubGVuZ3RoPjJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIocmlza0Zvcm0/Lm93bmVyc0xpc3R8c2hvcnRNZXJnZSA6IG5vblJlbW92YWJsZVVzZXJzTGlzdCkgYXMgb3duZXJMaXN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hpcFwiICpuZ0Zvcj1cImxldCBvd25lciBvZiBvd25lckxpc3Q/LnNsaWNlKDAsMilcIj48aSBjbGFzcz1cImljb25zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIW5vblJlbW92YWJsZVVzZXJzTGlzdC5pbmNsdWRlcyhvd25lcj8ubWVtYmVyX2lkKVwiIChjbGljayk9XCJyZW1vdmUoJ293bmVyJyxvd25lcilcIj4mI3hlOTBkOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7b3duZXI/Lm1lbWJlcl9uYW1lfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJjb3VudFwiICpuZ0lmPVwicmlza0Zvcm0/Lm93bmVyc0xpc3Q/Lmxlbmd0aCA+IDJcIiB0eXBlPVwiYnV0dG9uXCIgYXBwUG9wb3ZlclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInBvcG92ZXJPd25lci5wb3BvdmVyKClcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPitcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7cmlza0Zvcm0/Lm93bmVyc0xpc3Q/LnNsaWNlKDIpLmxlbmd0aH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiYWN0aXZlU2VsZWN0b3IgIT09ICdvd25lcidcIiBjbGFzcz1cImVkaXRcIiB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImFjdGl2YXRlU2VsZWN0b3IoJ293bmVyJyx0cnVlKVwiPjxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOWJhOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgRWRpdDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8cCAqbmdJZj1cInN1Ym1pdHRlZCAmJiAocmlza0Zvcm0/Lm93bmVyc0xpc3Q/Lmxlbmd0aD09PTApXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+U2VsZWN0IE93bmVyKHMpIGZvciB0aGlzIHJpc2suPC9wPlxyXG4gICAgICAgICAgICAgICAgPGFwcC1wb3BvdmVyICNwb3BvdmVyT3duZXIgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tbGlzdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihyaXNrRm9ybT8ub3duZXJzTGlzdHxzaG9ydE1lcmdlIDogbm9uUmVtb3ZhYmxlVXNlcnNMaXN0KSBhcyBvd25lclBvcFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBvd25lciBvZiBvd25lclBvcCB8IHNsaWNlOiAyOyBsZXQgaiA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF2YXRhci1jYXJkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpICpuZ0lmID0gXCIhbm9uUmVtb3ZhYmxlVXNlcnNMaXN0LmluY2x1ZGVzKG93bmVyPy5tZW1iZXJfaWQpXCIgY2xhc3M9XCJpY29uc1wiIChjbGljayk9XCJyZW1vdmUoJ293bmVyJyxvd25lcilcIj4mI3hlOTBkOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IG93bmVyLm1lbWJlcl9uYW1lIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8IS0tIFJpc2sgQ2F0ZWdvcnkgLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cC1yb3dcIiBbY2xhc3MuYWN0aXZlXT1cImFjdGl2ZVNlbGVjdG9yID09PSAnY2F0ZWdvcnknXCJcclxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIGFjdGl2ZVNlbGVjdG9yICYmIGFjdGl2ZVNlbGVjdG9yICE9PSAnY2F0ZWdvcnknICYmIHNpZGVTZWxlY3RvckVsZW1lbnRzLmluY2x1ZGVzKGFjdGl2ZVNlbGVjdG9yKVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0XCIgW2NsYXNzLmNoZWNrZWRdPVwicmlza0Zvcm0/LmNhdGVnb3J5Py5zZWxlY3RlZENhdGVnb3J5XCI+XHJcbiAgICAgICAgICAgIDxpbWcgKm5nSWY9XCIhcmlza0Zvcm0/LmNhdGVnb3J5Py5zZWxlY3RlZENhdGVnb3J5IHx8IGFjdGl2ZVNlbGVjdG9yID09PSAnY2F0ZWdvcnknXCJcclxuICAgICAgICAgICAgICAgIHNyYz1cImh0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvd29ya2Zsb3ctZW5naW5lL2Fzc2V0cy93b3JrZmxvdy9jYXRlZ29yeS5zdmdcIiBhbHQ9XCJcIiAvPlxyXG5cclxuICAgICAgICAgICAgPHN2ZyBjbGFzcz1cImNoZWNrSWNvblwiICpuZ0lmPVwicmlza0Zvcm0/LmNhdGVnb3J5Py5zZWxlY3RlZENhdGVnb3J5ICYmIGFjdGl2ZVNlbGVjdG9yICE9PSAnY2F0ZWdvcnknXCJcclxuICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDUyIDUyXCI+XHJcbiAgICAgICAgICAgICAgICA8Y2lyY2xlIGNsYXNzPVwiY2hlY2tJY29uX19jaXJjbGVcIiBjeD1cIjI2XCIgY3k9XCIyNlwiIHI9XCIyNVwiIGZpbGw9XCJub25lXCIgLz5cclxuICAgICAgICAgICAgICAgIDxwYXRoIGNsYXNzPVwiY2hlY2tJY29uX19jaGVja1wiIGZpbGw9XCJub25lXCIgZD1cIk0xNC4xIDI3LjJsNy4xIDcuMiAxNi43LTE2LjhcIiAvPlxyXG4gICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicmlnaHRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWZvcm0tZ3JvdXBcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5SaXNrIENhdGVnb3J5XHJcbiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiIFthcHBUb29sdGlwXT1cIidSaXNrIENhdGVnb3JpZXMgYXJlIHVzZWQgdG8gZ3JvdXAgc2ltaWxhciByaXNrcy4nXCJcclxuICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJib3R0b21cIlxyXG4gICAgICAgICAgICAgICAgICAgIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiPiYjeGU5MWY7PC9pPjwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0XCIgKm5nSWY9XCIhcmlza0Zvcm0/LmNhdGVnb3J5Py5zZWxlY3RlZENhdGVnb3J5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgKGNsaWNrKT1cImFjdGl2YXRlU2VsZWN0b3IoJ2NhdGVnb3J5Jyx0cnVlKVwiIHBsYWNlaG9sZGVyPVwiU2VsZWN0IFJpc2sgQ2F0ZWdvcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZWFkb25seT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkXCIgKm5nSWY9XCJyaXNrRm9ybT8uY2F0ZWdvcnk/LnNlbGVjdGVkQ2F0ZWdvcnlcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlwXCI+PGkgY2xhc3M9XCJpY29uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZSgnY2F0ZWdvcnknLHJpc2tGb3JtLmNhdGVnb3J5LnNlbGVjdGVkQ2F0ZWdvcnkpXCI+JiN4ZTkwZDs8L2k+e3tyaXNrRm9ybT8uY2F0ZWdvcnk/LnNlbGVjdGVkQ2F0ZWdvcnk/LmNhdGVnb3J5X25hbWV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFjdGl2ZVNlbGVjdG9yICE9PSAnY2F0ZWdvcnknXCIgY2xhc3M9XCJlZGl0XCIgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJhY3RpdmF0ZVNlbGVjdG9yKCdjYXRlZ29yeScsdHJ1ZSlcIj48aSBjbGFzcz1cImljb25zXCI+JiN4ZTliYTs8L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEVkaXQ8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInJpc2tGb3JtPy5jYXRlZ29yeUN1c3RvbVRhZ3M/Lmxlbmd0aD4wXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidngtZm9ybS1ncm91cFwiICpuZ0Zvcj1cImxldCB0YWcgb2Ygcmlza0Zvcm0uY2F0ZWdvcnlDdXN0b21UYWdzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiPnt7dGFnLmN1c3RvbV90YWdfbmFtZX19PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBbKG5nTW9kZWwpXT1cInRhZy5jdXN0b21fdGFnX3ZhbHVlXCIgW3BsYWNlaG9sZGVyXT1cInRhZy5jdXN0b21fdGFnX25hbWVcIj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDwhLS0gQXNzZXNzbWVudCBEZWFkbGluZSAtLT5cclxuICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwLXJvd1wiIFtjbGFzcy5hY3RpdmVdPVwiYWN0aXZlU2VsZWN0b3IgPT09ICdhc3Nlc3NtZW50J1wiIGlkPVwiZGVhZGxpbmVcIlxyXG4gICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCIgYWN0aXZlU2VsZWN0b3IgJiYgYWN0aXZlU2VsZWN0b3IgIT09ICdhc3Nlc3NtZW50JyAgJiYgc2lkZVNlbGVjdG9yRWxlbWVudHMuaW5jbHVkZXMoYWN0aXZlU2VsZWN0b3IpXCJcclxuICAgICAgICAqbmdJZj1cIiFzZXR0aW5nc0luZm8/LmFzc2Vzc21lbnRfZGVhZGxpbmVfZW5hYmxlICYmIHJpc2tGb3JtPy5yaXNrVHlwZSAhPT0gJ1JFUE9SVEVEJyAmJiAoKGN1cnJlbnRUaW1lU3RhbXAgPCBlZGl0RGV0YWlscz8uYXNzZXNzbWVudF9kYXRlX3RpbWVzdGFtcCkgfHwgIWVkaXREZXRhaWxzPy5JZkFzc2Vzc21lbnREb25lIClcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdFwiIFtjbGFzcy5jaGVja2VkXT1cInJpc2tGb3JtPy5hc3Nlc3NtZW50X2RlYWRsaW5lX2RheXM+PTFcIj5cclxuICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvd2hlbi5zdmdcIlxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJyaXNrRm9ybT8uYXNzZXNzbWVudF9kZWFkbGluZV9kYXlzPDEgfHwgYWN0aXZlU2VsZWN0b3IgPT09ICdhc3Nlc3NtZW50J1wiIGFsdD1cIlwiIC8+XHJcbiAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJjaGVja0ljb25cIiAqbmdJZj1cInJpc2tGb3JtPy5hc3Nlc3NtZW50X2RlYWRsaW5lX2RheXM+PTEgJiYgYWN0aXZlU2VsZWN0b3IgIT09ICdhc3Nlc3NtZW50J1wiXHJcbiAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCA1MiA1MlwiPlxyXG4gICAgICAgICAgICAgICAgPGNpcmNsZSBjbGFzcz1cImNoZWNrSWNvbl9fY2lyY2xlXCIgY3g9XCIyNlwiIGN5PVwiMjZcIiByPVwiMjVcIiBmaWxsPVwibm9uZVwiIC8+XHJcbiAgICAgICAgICAgICAgICA8cGF0aCBjbGFzcz1cImNoZWNrSWNvbl9fY2hlY2tcIiBmaWxsPVwibm9uZVwiIGQ9XCJNMTQuMSAyNy4ybDcuMSA3LjIgMTYuNy0xNi44XCIgLz5cclxuICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJpZ2h0XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mb3JtLWdyb3VwXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+QXNzZXNzbWVudCBEZWFkbGluZSA8c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb25zXCIgW2FwcFRvb2x0aXBdPVwiJ1RoaXMgaXMgdGhlIGRhdGUgdGhhdCB0aGUgaW5oZXJlbnQgcmlzayBhc3Nlc3NtZW50IG11c3QgYmUgY29tcGxldGVkIGJ5LidcIlxyXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXHJcbiAgICAgICAgICAgICAgICAgICAgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZTkxZjs8L2k+PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dFwiPlNldCBOdW1iZXIgb2YgZGF5czwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXAgY291bnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJjaGFuZ2VSaXNrQXNzZXNzbWVudCgnc3VidHJhY3QnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiPiYjeGVhNTM7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJudW1iZXJcIiBbKG5nTW9kZWwpXT1cInJpc2tGb3JtLmFzc2Vzc21lbnRfZGVhZGxpbmVfZGF5c1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZm9jdXNpbik9XCJhY3RpdmF0ZVNlbGVjdG9yKCdhc3Nlc3NtZW50Jyx0cnVlKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZm9jdXNvdXQpPVwiYWN0aXZhdGVTZWxlY3RvcignYXNzZXNzbWVudCcsZmFsc2UpXCIgbmFtZT1cInJpc2tBc3Nlc3NtZW50RGVhZGxpbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsaWRhdGVBc3Nlc3NtZW50ICNkZWFkbGluZT1cIm5nTW9kZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlUmlza0Fzc2Vzc21lbnREZWFkbGluZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmtleWRvd249XCJyZXR1cm4gZXZlbnQua2V5Q29kZSAhPT0gMTkwXCIgbWluPVwiMFwiIG9uaW5wdXQ9XCJ0aGlzLnZhbHVlID0gTWF0aC5hYnModGhpcy52YWx1ZSlcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJjaGFuZ2VSaXNrQXNzZXNzbWVudCgnYWRkJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTE1OzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxwICpuZ0lmPVwic3VibWl0dGVkICYmIChyaXNrRm9ybT8uYXNzZXNzbWVudF9kZWFkbGluZV9kYXlzPDEpXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgRW50ZXIgYSB2YWx1ZSBncmVhdGVyIHRoYW4gMC5cclxuICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIiAqbmdJZj1cInJpc2tGb3JtPy5hc3Nlc3NtZW50X2RlYWRsaW5lX2RheXM+PTFcIj5cclxuICAgICAgICAgICAgICAgICAgICBUaGlzIHJpc2sgYXNzZXNzbWVudCBuZWVkcyB0byBiZSBjb21wbGV0ZWQgYnkge3sgZGF0ZSB8IGRhdGU6ICdkZCBNTU0geXl5eScgfX1cclxuICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8IS0tIFJpc2sgT3ZlcnNlZXIgLS0+XHJcbiAgICA8ZGl2IFthcHBTY3JvbGxJblZpZXddPVwic2Nyb2xsVG9Cb3R0b21cIiBjbGFzcz1cImZvcm0tZ3JvdXAtcm93XCIgW2NsYXNzLmFjdGl2ZV09XCJhY3RpdmVTZWxlY3RvciA9PT0gJ292ZXJzZWVyJ1wiXHJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIiBhY3RpdmVTZWxlY3RvciAmJiBhY3RpdmVTZWxlY3RvciAhPT0gJ292ZXJzZWVyJyAmJiBzaWRlU2VsZWN0b3JFbGVtZW50cy5pbmNsdWRlcyhhY3RpdmVTZWxlY3RvcilcIlxyXG4gICAgICAgICpuZ0lmPVwicmlza0Zvcm0uYWRkT3ZlcnNlZXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdFwiIFtjbGFzcy5jaGVja2VkXT1cInJpc2tGb3JtPy5vdmVyc2VlcnNMaXN0Py5sZW5ndGg+MFwiPlxyXG4gICAgICAgICAgICA8aW1nICpuZ0lmPVwicmlza0Zvcm0/Lm92ZXJzZWVyc0xpc3Q/Lmxlbmd0aD09MCB8fCBhY3RpdmVTZWxlY3RvciA9PT0gJ292ZXJzZWVyJ1wiXHJcbiAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvb3ZlcnNpZ2h0LnN2Z1wiIGFsdD1cIlwiIC8+XHJcbiAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJjaGVja0ljb25cIiAqbmdJZj1cInJpc2tGb3JtPy5vdmVyc2VlcnNMaXN0Py5sZW5ndGg+MCAmJiBhY3RpdmVTZWxlY3RvciAhPT0gJ292ZXJzZWVyJ1wiXHJcbiAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCA1MiA1MlwiPlxyXG4gICAgICAgICAgICAgICAgPGNpcmNsZSBjbGFzcz1cImNoZWNrSWNvbl9fY2lyY2xlXCIgY3g9XCIyNlwiIGN5PVwiMjZcIiByPVwiMjVcIiBmaWxsPVwibm9uZVwiIC8+XHJcbiAgICAgICAgICAgICAgICA8cGF0aCBjbGFzcz1cImNoZWNrSWNvbl9fY2hlY2tcIiBmaWxsPVwibm9uZVwiIGQ9XCJNMTQuMSAyNy4ybDcuMSA3LjIgMTYuNy0xNi44XCIgLz5cclxuICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJpZ2h0XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mb3JtLWdyb3VwXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+UmlzayBPdmVyc2VlcjxpIGNsYXNzPVwiaWNvbnNcIiBbYXBwVG9vbHRpcF09XCInVGhpcyBpcyB0aGUgcGVyc29uIHRoYXQgaXMgcmVzcG9uc2libGUgZm9yIG92ZXJzZWVpbmcgdGhlIHJpc2sgYnV0IHdobyBpcyBub3QgcmVzcG9uc2libGUgZm9yIG1hbmFnaW5nIHRoZSByaXNrLidcIlxyXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXHJcbiAgICAgICAgICAgICAgICAgICAgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZTkxZjs8L2k+PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3RcIiAqbmdJZj1cInJpc2tGb3JtPy5vdmVyc2VlcnNMaXN0Py5sZW5ndGg9PTBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiAoY2xpY2spPVwiYWN0aXZhdGVTZWxlY3Rvcignb3ZlcnNlZXInLHRydWUpXCIgcGxhY2Vob2xkZXI9XCJTZWxlY3QgUmlzayBPdmVyc2VlcihzKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRvbmx5PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0ZWRcIiAqbmdJZj1cInJpc2tGb3JtPy5vdmVyc2VlcnNMaXN0Py5sZW5ndGg+MFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWNvbnRhaW5lclwiIFtjbGFzcy5tb3JlLW9uZV09XCJyaXNrRm9ybT8ub3ZlcnNlZXJzTGlzdD8ubGVuZ3RoPjFcIiBbY2xhc3MucGx1c109XCJyaXNrRm9ybT8ub3ZlcnNlZXJzTGlzdD8ubGVuZ3RoPjJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlwXCIgKm5nRm9yPVwibGV0IG93bmVyIG9mIHJpc2tGb3JtPy5vdmVyc2VlcnNMaXN0Py5zbGljZSgwLDIpXCI+PGkgY2xhc3M9XCJpY29uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZSgnb3ZlcnNlZXInLG93bmVyKVwiPiYjeGU5MGQ7PC9pPiB7e293bmVyLm1lbWJlcl9uYW1lfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJjb3VudFwiICpuZ0lmPVwicmlza0Zvcm0/Lm92ZXJzZWVyc0xpc3Q/Lmxlbmd0aCA+IDJcIiB0eXBlPVwiYnV0dG9uXCIgYXBwUG9wb3ZlclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInBvcG92ZXJPdmVyc2Vlci5wb3BvdmVyKClcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPitcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7cmlza0Zvcm0/Lm92ZXJzZWVyc0xpc3Q/LnNsaWNlKDIpLmxlbmd0aH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJhY3RpdmVTZWxlY3RvciAhPT0gJ292ZXJzZWVyJ1wiIGNsYXNzPVwiZWRpdFwiIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiYWN0aXZhdGVTZWxlY3Rvcignb3ZlcnNlZXInLHRydWUpXCI+PGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5YmE7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBFZGl0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxhcHAtcG9wb3ZlciAjcG9wb3Zlck92ZXJzZWVyIFtkb250Q2xvc2VvbkNsaWNrXT1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWxpc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgb3duZXIgb2Ygcmlza0Zvcm0/Lm92ZXJzZWVyc0xpc3QgfCBzbGljZTogMjsgbGV0IGogPSBpbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb25zXCIgKGNsaWNrKT1cInJlbW92ZSgnb3ZlcnNlZXInLG93bmVyKVwiPiYjeGU5MGQ7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgb3duZXIubWVtYmVyX25hbWUgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8IS0tIFJpc2sgTWl0aWdhdGlvbiBQcmlvcml0eSAtLT5cclxuICAgIDxkaXYgW2FwcFNjcm9sbEluVmlld109XCJzY3JvbGxUb0JvdHRvbVwiIGNsYXNzPVwiZm9ybS1ncm91cC1yb3dcIiBbY2xhc3MuYWN0aXZlXT1cImZhbHNlXCJcclxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiYWN0aXZlU2VsZWN0b3IgJiYgc2lkZVNlbGVjdG9yRWxlbWVudHMuaW5jbHVkZXMoYWN0aXZlU2VsZWN0b3IpXCJcclxuICAgICAgICAqbmdJZj1cInJpc2tGb3JtLmFkZE1pdGlnYXRpb25cIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdFwiIFtjbGFzcy5jaGVja2VkXT1cInJpc2tGb3JtLm1pdGlnYXRpb25cIj5cclxuICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvcHJpb3JpdHkuc3ZnXCIgKm5nSWY9XCIhcmlza0Zvcm0ubWl0aWdhdGlvblwiIGFsdD1cIlwiIC8+XHJcbiAgICAgICAgICAgIDwhLS0gPHN2ZyB2aWV3Qm94PVwiMjUgMjUgNTAgNTBcIiBjbGFzcz1cImVkaXQtbG9hZGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8Y2lyY2xlIGN4PVwiNTBcIiBjeT1cIjUwXCIgcj1cIjIwXCIgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCIjMWU1ZGQzXCIgc3Ryb2tlLXdpZHRoPVwiM1wiIGNsYXNzPVwibG9hZGVyLXBhdGhcIj48L2NpcmNsZT5cclxuICAgICAgICAgICAgPC9zdmc+IC0tPlxyXG4gICAgICAgICAgICA8c3ZnIGNsYXNzPVwiY2hlY2tJY29uXCIgKm5nSWY9XCJyaXNrRm9ybS5taXRpZ2F0aW9uXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgNTIgNTJcIj5cclxuICAgICAgICAgICAgICAgIDxjaXJjbGUgY2xhc3M9XCJjaGVja0ljb25fX2NpcmNsZVwiIGN4PVwiMjZcIiBjeT1cIjI2XCIgcj1cIjI1XCIgZmlsbD1cIm5vbmVcIiAvPlxyXG4gICAgICAgICAgICAgICAgPHBhdGggY2xhc3M9XCJjaGVja0ljb25fX2NoZWNrXCIgZmlsbD1cIm5vbmVcIiBkPVwiTTE0LjEgMjcuMmw3LjEgNy4yIDE2LjctMTYuOFwiIC8+XHJcbiAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyaWdodFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidngtZm9ybS1ncm91cFwiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiPlJpc2sgTWl0aWdhdGlvbiBQcmlvcml0eVxyXG4gICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnNcIiBbYXBwVG9vbHRpcF09XCInVGhpcyBzZXRzIHRoZSBwcmlvcml0eSBsZXZlbCBmb3IgdGhlIG1pdGlnYXRpb24gb2YgZWFjaCByaXNrLidcIlxyXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXHJcbiAgICAgICAgICAgICAgICAgICAgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZTkxZjs8L2k+PC9sYWJlbD5cclxuXHJcbiAgICAgICAgICAgICAgICA8Y3Mtc2VsZWN0IFsobmdNb2RlbCldPVwicmlza0Zvcm0ubWl0aWdhdGlvblwiIFtwbGFjZWhvbGRlcl09XCInU2VsZWN0IGEgbWl0aWdhdGlvbiBwcmlvcml0eSdcIlxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9XCJyaXNrRm9ybS5taXRpZ2F0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGNzLW9wdGlvbiAqbmdGb3I9XCJsZXQgZGF0YSBvZiBtaXRpZ2F0aW9uRGV0YWlsc1wiIFt2YWx1ZV09XCJkYXRhPy5taXRpZ2F0aW9uX2lkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbG9yXT1cImRhdGE/Lm1pdGlnYXRpb25fY29sb3JcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAge3sgZGF0YS5taXRpZ2F0aW9uX25hbWUgfX1cclxuICAgICAgICAgICAgICAgICAgICA8L2NzLW9wdGlvbj5cclxuICAgICAgICAgICAgICAgIDwvY3Mtc2VsZWN0PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPCEtLSBSZWNvbW1lbmRlZCBNaXRpZ2F0aW9uIFBsYW4gLS0+XHJcbiAgICA8ZGl2IFthcHBTY3JvbGxJblZpZXddPVwic2Nyb2xsVG9Cb3R0b21cIiBjbGFzcz1cImZvcm0tZ3JvdXAtcm93XCIgKm5nSWY9XCJyaXNrRm9ybT8uYWRkTWl0aWdhdGlvblBsYW5cIj5cclxuICAgICAgICAgIDxkaXYgaWQ9XCJyaXNrU3BhY2VcIiBjbGFzcz1cImxlZnRcIiBbY2xhc3MuY2hlY2tlZF09XCIocmlza0Zvcm0ubWl0aWdhdGlvbkRlc2NyaXB0aW9uUGxhbiB8IHNwYWNlVHJpbSkgIT09ICcnXCI+XHJcbiAgICAgICAgICAgIDxpbWcgKm5nSWY9XCIocmlza0Zvcm0ubWl0aWdhdGlvbkRlc2NyaXB0aW9uUGxhbiB8IHNwYWNlVHJpbSkgPT09JydcIlxyXG4gICAgICAgICAgICAgIHNyYz1cImh0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvd29ya2Zsb3ctZW5naW5lL2Fzc2V0cy93b3JrZmxvdy9vYmplY3RpdmVzLnN2Z1wiIGFsdD1cIlwiIC8+XHJcbiAgICAgICAgICAgIDxzdmcgKm5nSWY9XCIocmlza0Zvcm0ubWl0aWdhdGlvbkRlc2NyaXB0aW9uUGxhbiB8IHNwYWNlVHJpbSkgIT09ICcnXCIgY2xhc3M9XCJjaGVja0ljb25cIiBcclxuICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCA1MiA1MlwiPlxyXG4gICAgICAgICAgICAgIDxjaXJjbGUgY2xhc3M9XCJjaGVja0ljb25fX2NpcmNsZVwiIGN4PVwiMjZcIiBjeT1cIjI2XCIgcj1cIjI1XCIgZmlsbD1cIm5vbmVcIiAvPlxyXG4gICAgICAgICAgICAgIDxwYXRoIGNsYXNzPVwiY2hlY2tJY29uX19jaGVja1wiIGZpbGw9XCJub25lXCIgZD1cIk0xNC4xIDI3LjJsNy4xIDcuMiAxNi43LTE2LjhcIiAvPlxyXG4gICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInJpZ2h0XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mb3JtLWdyb3VwXCI+XHJcbiAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cIlwiIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiPlJlY29tbWVuZGVkIE1pdGlnYXRpb24gUGxhbnM8bGluayByZWw9XCJtYW5pZmVzdFwiIGhyZWY9XCIuL21hbmlmZXN0Lmpzb25cIj5cclxuICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnNcIiBbYXBwVG9vbHRpcF09XCInU3BlY2lmeSB0aGUgbWl0aWdhdGlvbiBwbGFuIHRoYXQgY2FuIGJlIHVuZGVydGFrZW4gdG8gbWl0aWdhdGUgdGhlIHJpc2suJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwiYm90dG9tXCJcclxuICAgICAgICAgICAgICAgICAgICBkZWxheT1cIjBcIiB0eXBlPVwid2hpdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlOTFmOzwvaT5cclxuICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgICAgICAgIDxtYXJ4LWVkaXRvciBbKG5nTW9kZWwpXT1cInJpc2tGb3JtLm1pdGlnYXRpb25EZXNjcmlwdGlvblBsYW5cIlxyXG4gICAgICAgICAgICAgICAgW2VkaXRvckNvbmZpZ109XCJtaXRpZ2F0aW9uRGVzY3JpcHRpb25QbGFuXCIgKGNsaWNrT3V0c2lkZSk9XCJjaGVja01pdGlnYXRpb25QbGFuKClcIj5cclxuICAgICAgICAgICAgICA8L21hcngtZWRpdG9yPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG48L2Rpdj5cclxuPGFwcC1yZXNwb25zaWJpbGl0eS1jZW50ZXJzLWxpc3QgKm5nSWY9XCJhY3RpdmVTZWxlY3RvciA9PT0gJ3JjJ1wiIFtyZXNwb25zaWJpbGl0eUNlbnRlcnNMaXN0XT1cInJlc3BvbnNpYmlsaXR5Q2VudGVyc0xpc3RcIlxyXG4gICAgW3NlbGVjdGVkUmVzcG9uc2liaWxpdHlDZW50ZXJzXT1cInJpc2tGb3JtLnJlc3BvbnNpYmlsaXR5Q2VudGVyc0xpc3RcIiBbcmNJZEtleV09XCIncmNfaWQnXCJcclxuICAgIChzYXZlU2VsZWN0ZWRMaXN0KT1cInNhdmVTZWxlY3RlZFJDTGlzdCgkZXZlbnQpXCIgKGNsb3NlUmNMaXN0KT1cImFjdGl2YXRlU2VsZWN0b3IoJ3JjJyxmYWxzZSlcIlxyXG4gICAgW3Npbmd1bGFyVGV4dF09XCInUmVzcG9uc2liaWxpdHkgQ2VudGVyIHNlbGVjdGVkJ1wiIFtwbHVyYWxUZXh0XT1cIidSZXNwb25zaWJpbGl0eSBDZW50ZXJzIHNlbGVjdGVkJ1wiID5cclxuPC9hcHAtcmVzcG9uc2liaWxpdHktY2VudGVycy1saXN0PlxyXG5cclxuPGFwcC1vd25lci1saXN0ICpuZ0lmPVwiYWN0aXZlU2VsZWN0b3IgPT09ICdvd25lcidcIiBbdXNlcnNMaXN0XT1cIm93bmVyc0xpc3RcIiBbc2VsZWN0ZWRVc2Vyc109XCJyaXNrRm9ybS5vd25lcnNMaXN0XCJcclxuICAgIFt1c2VySWRLZXldPVwiJ21lbWJlcl9pZCdcIiBbaXRlbUVtYWlsS2V5XT1cIidtZW1iZXJfZW1haWwnXCIgW2l0ZW1OYW1lS2V5XT1cIidtZW1iZXJfbmFtZSdcIiAoc2F2ZVNlbGVjdGVkTGlzdCk9XCJzYXZlU2VsZWN0ZWRPd25lcnNMaXN0KCRldmVudClcIlxyXG4gICAgW25vblJlbW92YWJsZVVzZXJzTGlzdF09XCJub25SZW1vdmFibGVVc2Vyc0xpc3RcIiAoY2xvc2VVc2Vyc0xpc3QpPVwiYWN0aXZhdGVTZWxlY3Rvcignb3duZXInLGZhbHNlKVwiXHJcbiAgICBbc2luZ3VsYXJUZXh0XT1cIidVc2VyIHNlbGVjdGVkJ1wiIFtwbHVyYWxUZXh0XT1cIidVc2VycyBzZWxlY3RlZCdcIiA+PC9hcHAtb3duZXItbGlzdD5cclxuXHJcbjxhcHAtY2F0ZWdvcnktbGlzdCAqbmdJZj1cImFjdGl2ZVNlbGVjdG9yID09PSAnY2F0ZWdvcnknXCIgW2NhdGVnb3J5TGlzdF09XCJjYXRlZ29yeUxpc3RcIlxyXG4gICAgW3NlbGVjdGVkQ2F0ZWdvcnldPVwicmlza0Zvcm0uY2F0ZWdvcnlcIiAoc2F2ZVNlbGVjdGVkQ2F0ZWdvcnkpPVwic2F2ZVNlbGVjdGVkQ2F0ZWdvcnkoJGV2ZW50KVwiXHJcbiAgICAoY2xvc2VDYXRlZ29yaWVzTGlzdCk9XCJhY3RpdmF0ZVNlbGVjdG9yKCdjYXRlZ29yeScsZmFsc2UpXCI+PC9hcHAtY2F0ZWdvcnktbGlzdD5cclxuPGFwcC1vd25lci1saXN0ICpuZ0lmPVwiYWN0aXZlU2VsZWN0b3IgPT09ICdvdmVyc2VlcidcIiBbdXNlcnNMaXN0XT1cIm92ZXJzZWVyc0xpc3RcIlxyXG4gICAgW3NlbGVjdGVkVXNlcnNdPVwicmlza0Zvcm0ub3ZlcnNlZXJzTGlzdFwiIFt1c2VySWRLZXldPVwiJ21lbWJlcl9pZCdcIiBbaXRlbU5hbWVLZXldPVwiJ21lbWJlcl9uYW1lJ1wiIFtpdGVtRW1haWxLZXldPVwiJ21lbWJlcl9lbWFpbCdcIlxyXG4gICAgKHNhdmVTZWxlY3RlZExpc3QpPVwic2F2ZVNlbGVjdGVkT3ZlcnNlZXJzTGlzdCgkZXZlbnQpXCIgKGNsb3NlVXNlcnNMaXN0KT1cImFjdGl2YXRlU2VsZWN0b3IoJ292ZXJzZWVyJyxmYWxzZSlcIlxyXG4gICAgW3Npbmd1bGFyVGV4dF09XCInVXNlciBzZWxlY3RlZCdcIiBbcGx1cmFsVGV4dF09XCInVXNlcnMgc2VsZWN0ZWQnXCIgPlxyXG48L2FwcC1vd25lci1saXN0PlxyXG48YXBwLWxvYWRlci1pbmxpbmUgKm5nSWY9XCJsb2FkZXJcIj48L2FwcC1sb2FkZXItaW5saW5lPlxyXG48IS0tIDxhcHAtc21pbGV5LWRpYWxvZyAqbmdJZj1cInNob3dTbWlsZXlcIiBbbWVzc2FnZV09XCJzbWlsZXlNZXNzYWdlXCIgW2FjdGlvbkJ1dHRvbnNdPVwiYWN0aW9uQnV0dG9uc1wiXHJcbiAgICAoYWN0aW9uKT1cImFjdGlvbigkZXZlbnQpXCIgKGNsb3NlU21pbGV5KT1cImNsb3NlU21pbGV5KCRldmVudClcIj48L2FwcC1zbWlsZXktZGlhbG9nPiAtLT5cclxuXHJcbiAgICA8YXBwLXNtaWxleS1kaWFsb2ctaW5saW5lXHJcbiAgICAgICAgKm5nSWY9XCJzaG93U21pbGV5XCJcclxuICAgICAgICBbbWVzc2FnZV09XCJzbWlsZXlNZXNzYWdlXCJcclxuICAgICAgICBbYWN0aW9uQnV0dG9uc109XCJhY3Rpb25CdXR0b25zXCJcclxuICAgICAgICAoYWN0aW9uKT1cImFjdGlvbigkZXZlbnQpXCJcclxuICAgICAgICAoY2xvc2VTbWlsZXkpPVwiY2xvc2VTbWlsZXkoJGV2ZW50KVwiPlxyXG4gICAgPC9hcHAtc21pbGV5LWRpYWxvZy1pbmxpbmU+XHJcbiJdfQ==
|
|
484
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctcmlzay5jb21wb25lbnQubmdmYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvd29ya2Zsb3ctcmlzay93b3JrZmxvdy1yaXNrLmNvbXBvbmVudC5uZ2ZhY3RvcnkudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi93b3JrZmxvdy1yaXNrL3dvcmtmbG93LXJpc2suY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Z0VDS1ksaUxBQTZHO2dFQUU3RywwS0FJTSxLQUZGLDZLQUF1RSxLQUN2RSx3S0FBOEU7Z0VBaUI5RSxvR0FBMEQsS0FBbkIsNENBQWU7Z0VBUTFELGlMQUEySztnRUFFM0ssMEtBSU0sS0FGRiw2S0FBdUUsS0FDdkUsd0tBQThFO2dFQU05RTs7Ozs7Ozs7Ozs7Ozs7d0JBRW9HO01BRnZFOzt3QkFBbUM7TUFBQzs7d0JBQXlDO01BQ3RHOzt3QkFBMkM7TUFBQzs7d0JBQTRCO01BRDVFLDRtQkFFb0csaURBRHBELG1CQUE0QixpQkFENUUsWUFFb0csRUFEcEQsU0FBNEIsMkJBRDVFLDBaQUVvRztnRUFDcEcsaUdBTU0sS0FMRix1R0FFTSxLQURGLCtGQUE2QyxLQUF6QixnQ0FBa0IsTUFFMUMsd0tBQ2dELFlBRDNCOzt3QkFBdUM7TUFBNUQsd0JBQ2dELEtBRDJCLDRGQUN6QyxLQUFaLG1DQUFRLE1BQUksa0NBQUsseURBSGYsMkRBQWtCO2dFQUs5QyxvR0FBbUYsS0FBbkIsNENBQWU7aUVBRS9FLG9HQUFvSixLQUExQixtREFBc0I7aUVBUXBKLGdNQUM4RztpRUFFOUcsMEtBSU0sS0FGRiw2S0FBdUUsS0FDdkUsd0tBQThFO2lFQVc5RSwrRkFHTSxLQUZGLHdOQUMy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RixJQUV2RixzTEFFbUYsSUFDbkYsdUxBSWlCLElBQ2pCLHVMQUFzRCxJQUlsRCx1TEFNMkIsaURBN1pMLG9CQUFtQixhQUE3QyxZQStYTSxFQS9Yb0IsU0FBbUIsR0FnWVosNENBQStCLEdBQWhFLFlBSWtDLEVBSkQsU0FBK0IsR0FNaEQsK0NBQWtDLEdBQWxELFlBR3VGLEVBSHZFLFNBQWtDLEdBSy9CLGtEQUFxQyxHQUF4RCxZQUVtRixFQUZoRSxTQUFxQyxHQUd4QyxrREFBcUMsR0FBckQsYUFJaUIsRUFKRCxTQUFxQyxHQUtsQyxtQkFBYyxTQUFqQyxhQUFzRCxFQUFuQyxTQUFjLEdBS3pCLG1CQUFrQixhQUR0QixhQU0yQixFQUx2QixTQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGkwIGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaTAuQ29tcG9uZW50RmFjdG9yeTtcbiIsIjxkaXYgY2xhc3M9XCJ3b3JrZmx3LXJpc2tcIiAqbmdJZj1cIiFzaG93U21pbGV5XCI+XHJcbiAgICA8IS0tIFJpc2sgVHlwZSAtLT5cclxuICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwLXJvd1wiIFtjbGFzcy5hY3RpdmVdPVwiZmFsc2VcIlxyXG4gICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJmYWxzZVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0XCIgW2NsYXNzLmNoZWNrZWRdPVwiZmFsc2VcIj5cclxuICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvd2hhdC5zdmdcIiBhbHQ9XCJpbVwiICpuZ0lmPVwidHJ1ZVwiPlxyXG5cclxuICAgICAgICAgICAgPHN2ZyAqbmdJZj1cImZhbHNlXCIgY2xhc3M9XCJjaGVja0ljb25cIlxyXG4gICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgNTIgNTJcIj5cclxuICAgICAgICAgICAgICAgIDxjaXJjbGUgY2xhc3M9XCJjaGVja0ljb25fX2NpcmNsZVwiIGN4PVwiMjZcIiBjeT1cIjI2XCIgcj1cIjI1XCIgZmlsbD1cIm5vbmVcIiAvPlxyXG4gICAgICAgICAgICAgICAgPHBhdGggY2xhc3M9XCJjaGVja0ljb25fX2NoZWNrXCIgZmlsbD1cIm5vbmVcIiBkPVwiTTE0LjEgMjcuMmw3LjEgNy4yIDE2LjctMTYuOFwiIC8+XHJcbiAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyaWdodFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidngtZm9ybS1ncm91cFwiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiPlJpc2sgVHlwZSA8c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj48L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJpc2stdHlwZS1maWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0eXBlLWl0ZW1cIiBbY2xhc3MuYWN0aXZlXT1cInJpc2tGb3JtPy5yaXNrVHlwZSA9PT0gJ05PUk1BTCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBbY2xhc3MuZGlzYWJsZWRdPVwiIXJpc2tUeXBlQ2hhbmdlQWxsb3dlZFwiIChjbGljayk9XCJjaGFuZ2VSaXNrKCdOT1JNQUwnKVwiPkFERCBUTyBSSVNLIFJFR0lTVEVSPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnMgaW5mb1wiIFthcHBUb29sdGlwXT1cIidUaGlzIG9wdGlvbiBsZXRzIHlvdSBhZGQgYSByaXNrIGRpcmVjdGx5IHRvIHRoZSBSaXNrIFJlZ2lzdGVyLiBUaGUgcmlzayBvd25lcnMgd2lsbCByZWNlaXZlIGFuIGFsZXJ0IGFuZCB0aGV5IGNhbiBiZWdpbiB0aGUgdGhlIHJpc2sgYXNzZXNzbWVudCBwcm9jZXNzLidcIiBwbGFjZW1lbnQ9XCJib3R0b20tcmlnaHRcIiBkZWxheT1cIjBcIiB0eXBlPVwid2hpdGVcIiBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZTkzMjs8L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInR5cGUtaXRlbVwiIFtjbGFzcy5hY3RpdmVdPVwicmlza0Zvcm0/LnJpc2tUeXBlID09PSAnUkVQT1JURUQnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gW2NsYXNzLmRpc2FibGVkXT1cIiFyaXNrVHlwZUNoYW5nZUFsbG93ZWRcIiAoY2xpY2spPVwiY2hhbmdlUmlzaygnUkVQT1JURUQnKVwiPlJFUE9SVCBBIFJJU0s8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29ucyBpbmZvXCIgW2FwcFRvb2x0aXBdPVwiJ1RoaXMgb3B0aW9ucyBsZXRzIHlvdSByZXBvcnQgYSByaXNrIGFuZCBhc3NpZ24gaXQgdG8gdGhlIHJpc2sgb3duZXJzLiBUaGUgcmlzayBvd25lcnMgd2lsbCBoYXZlIHRoZSBvcHRpb24gdG8gZWl0aGVyIGFkZCB0aGUgcmlzayB0byB0aGUgUmlzayBSZWdpc3RlciBvciBmbGFnIGl0IGZvciBhIGZvbGxvdy11cCBhdCBhIGxhdGVyIGRhdGUuJ1wiIHBsYWNlbWVudD1cImJvdHRvbS1yaWdodFwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlOTMyOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImJhY2tncm91bmQtZ2xpZGVyXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8cCAqbmdJZj1cImZhbHNlXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+QWRkIGEgcmlzayB0eXBlPC9wPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPCEtLSBSaXNrIE5hbWUgLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cC1yb3dcIiBbY2xhc3MuYWN0aXZlXT1cImZhbHNlXCJcclxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIGFjdGl2ZVNlbGVjdG9yICYmIGFjdGl2ZVNlbGVjdG9yICE9PSAnbmFtZScgICYmIHNpZGVTZWxlY3RvckVsZW1lbnRzLmluY2x1ZGVzKGFjdGl2ZVNlbGVjdG9yKVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0XCIgW2NsYXNzLmNoZWNrZWRdPVwicmlza0Zvcm0udGl0bGVcIj5cclxuICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvd2hhdC5zdmdcIiBhbHQ9XCJpbVwiICpuZ0lmPVwicmlza0Zvcm0/LnRpdGxlPy50cmltKCk/Lmxlbmd0aCA9PT0gMCB8fCBhY3RpdmVTZWxlY3RvciA9PT0gJ25hbWUnXCI+XHJcblxyXG4gICAgICAgICAgICA8c3ZnICpuZ0lmPVwicmlza0Zvcm0/LnRpdGxlPy50cmltKCk/Lmxlbmd0aCA+IDAgJiYgYWN0aXZlU2VsZWN0b3IgIT09ICduYW1lJ1wiIGNsYXNzPVwiY2hlY2tJY29uXCJcclxuICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDUyIDUyXCI+XHJcbiAgICAgICAgICAgICAgICA8Y2lyY2xlIGNsYXNzPVwiY2hlY2tJY29uX19jaXJjbGVcIiBjeD1cIjI2XCIgY3k9XCIyNlwiIHI9XCIyNVwiIGZpbGw9XCJub25lXCIgLz5cclxuICAgICAgICAgICAgICAgIDxwYXRoIGNsYXNzPVwiY2hlY2tJY29uX19jaGVja1wiIGZpbGw9XCJub25lXCIgZD1cIk0xNC4xIDI3LjJsNy4xIDcuMiAxNi43LTE2LjhcIiAvPlxyXG4gICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicmlnaHRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWZvcm0tZ3JvdXBcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5SaXNrIE5hbWUgPHNwYW4gY2xhc3M9XCJyZXF1aXJlZFwiPio8L3NwYW4+PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCBzcGFjZVRyaW0gdHlwZT1cInRleHRcIiAoa2V5ZG93bik9XCJhY3RpdmVTZWxlY3RvciA9ICduYW1lJ1wiIChmb2N1c2luKT1cImFjdGl2YXRlU2VsZWN0b3IoJ25hbWUnLHRydWUpXCJcclxuICAgICAgICAgICAgICAgICAgICAoZm9jdXNvdXQpPVwiYWN0aXZhdGVTZWxlY3RvcignbmFtZScsZmFsc2UpXCIgWyhuZ01vZGVsKV09XCJyaXNrRm9ybS50aXRsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJBZGQgYSByaXNrIG5hbWVcIiAqbmdJZj1cInJpc2tGb3JtPy50aXRsZT8udHJpbSgpID09JycgfHwgYWN0aXZlU2VsZWN0b3IgPT09ICduYW1lJ1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkXCIgKm5nSWY9XCJyaXNrRm9ybT8udGl0bGU/LnRyaW0oKSE9ICcnICYmIGFjdGl2ZVNlbGVjdG9yICE9PSAnbmFtZSdcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPnt7cmlza0Zvcm0udGl0bGV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiZWRpdFwiIChjbGljayk9XCJhY3RpdmF0ZVNlbGVjdG9yKCduYW1lJyx0cnVlKVwiIHR5cGU9XCJidXR0b25cIj48aVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpY29uc1wiPiYjeGU5YmE7PC9pPiBFZGl0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxwICpuZ0lmPVwic3VibWl0dGVkICYmICghcmlza0Zvcm0udGl0bGUpXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+QWRkIGEgcmlzayBuYW1lPC9wPlxyXG4gICAgICAgICAgICAgICAgPG1hcngtZWRpdG9yIFsobmdNb2RlbCldPVwicmlza0Zvcm0uZGVzY3JpcHRpb25cIiBbZWRpdG9yQ29uZmlnXT1cImRlc2NyaXB0aW9uXCIgKGNsaWNrT3V0c2lkZSk9XCJjaGVja0Rlc2NyaXB0aW9uKClcIj48L21hcngtZWRpdG9yPlxyXG4gICAgICAgICAgICAgICAgPHAgKm5nSWY9XCJzdWJtaXR0ZWQgJiYgKHJpc2tGb3JtLnJpc2tUeXBlID09PSdSRVBPUlRFRCcgJiYgIXJpc2tGb3JtPy5kZXNjcmlwdGlvbj8udHJpbSgpPy5sZW5ndGgpXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+QWRkIGEgcmlzayBkZXNjcmlwdGlvbjwvcD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDwhLS0gUmVzcG9uc2liaWxpdHkgQ2VudGVyIC0tPlxyXG4gICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAtcm93XCIgW2NsYXNzLmFjdGl2ZV09XCJhY3RpdmVTZWxlY3RvciA9PT0gJ3JjJ1wiXHJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIiBhY3RpdmVTZWxlY3RvciAmJiBhY3RpdmVTZWxlY3RvciAhPT0gJ3JjJyAmJiBzaWRlU2VsZWN0b3JFbGVtZW50cy5pbmNsdWRlcyhhY3RpdmVTZWxlY3RvcilcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdFwiIFtjbGFzcy5jaGVja2VkXT1cInJpc2tGb3JtPy5yZXNwb25zaWJpbGl0eUNlbnRlcnNMaXN0Py5sZW5ndGg+MFwiPlxyXG4gICAgICAgICAgICA8aW1nICpuZ0lmPVwicmlza0Zvcm0/LnJlc3BvbnNpYmlsaXR5Q2VudGVyc0xpc3Q/Lmxlbmd0aD09MCB8fCBhY3RpdmVTZWxlY3RvciA9PT0gJ3JjJ1wiXHJcbiAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvcmVzcG9uc2liaWxpdHktY2VudGVyLnN2Z1wiIGFsdD1cIlwiPlxyXG5cclxuICAgICAgICAgICAgPHN2ZyAqbmdJZj1cInJpc2tGb3JtPy5yZXNwb25zaWJpbGl0eUNlbnRlcnNMaXN0Py5sZW5ndGg+MCAmJiBhY3RpdmVTZWxlY3RvciAhPT0gJ3JjJ1wiIGNsYXNzPVwiY2hlY2tJY29uXCJcclxuICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDUyIDUyXCI+XHJcbiAgICAgICAgICAgICAgICA8Y2lyY2xlIGNsYXNzPVwiY2hlY2tJY29uX19jaXJjbGVcIiBjeD1cIjI2XCIgY3k9XCIyNlwiIHI9XCIyNVwiIGZpbGw9XCJub25lXCIgLz5cclxuICAgICAgICAgICAgICAgIDxwYXRoIGNsYXNzPVwiY2hlY2tJY29uX19jaGVja1wiIGZpbGw9XCJub25lXCIgZD1cIk0xNC4xIDI3LjJsNy4xIDcuMiAxNi43LTE2LjhcIiAvPlxyXG4gICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicmlnaHRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWZvcm0tZ3JvdXBcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5SZXNwb25zaWJpbGl0eSBDZW50ZXIgPHNwYW4gY2xhc3M9XCJyZXF1aXJlZFwiPio8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiIFthcHBUb29sdGlwXT1cIidSZXNwb25zaWJpbGl0eSBDZW50ZXJzIHJlcHJlc2VudCB0aGUgY29ycG9yYXRlIGFuZCBvcGVyYXRpb25hbCBpbmZyYXN0cnVjdHVyZSBvZiBhbiBvcmdhbml6YXRpb24uIE9uZSBvciBtb3JlIFJlc3BvbnNpYmlsaXR5IENlbnRlcnMgY2FuIGJlIGV4cG9zZWQgdG8gYSByaXNrIGFuZCBhY2NvcmRpbmdseSwgdGhlIHJpc2sgbXVzdCBiZSBhc3Nlc3NlZCBhZ2FpbnN0IGVhY2ggUmVzcG9uc2liaWxpdHkgQ2VudGVyLidcIlxyXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXHJcbiAgICAgICAgICAgICAgICAgICAgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZTkxZjs8L2k+XHJcbiAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdFwiICpuZ0lmPVwicmlza0Zvcm0/LnJlc3BvbnNpYmlsaXR5Q2VudGVyc0xpc3Q/Lmxlbmd0aD09MFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIChjbGljayk9XCJhY3RpdmF0ZVNlbGVjdG9yKCdyYycsdHJ1ZSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIlNlbGVjdCBSZXNwb25zaWJpbGl0eSBDZW50ZXIocylcIiByZWFkb25seT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkXCIgKm5nSWY9XCJyaXNrRm9ybT8ucmVzcG9uc2liaWxpdHlDZW50ZXJzTGlzdD8ubGVuZ3RoPjBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1jb250YWluZXJcIiBbY2xhc3MubW9yZS1vbmVdPVwicmlza0Zvcm0/LnJlc3BvbnNpYmlsaXR5Q2VudGVyc0xpc3Q/Lmxlbmd0aD4xXCIgW2NsYXNzLnBsdXNdPVwicmlza0Zvcm0/LnJlc3BvbnNpYmlsaXR5Q2VudGVyc0xpc3Q/Lmxlbmd0aD4yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hpcFwiICpuZ0Zvcj1cImxldCByY05hbWUgb2Ygcmlza0Zvcm0/LnJlc3BvbnNpYmlsaXR5Q2VudGVyc0xpc3Q/LnNsaWNlKDAsMilcIj48aVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaWNvbnNcIiAoY2xpY2spPVwicmVtb3ZlKCdyYycscmNOYW1lKVwiPiYjeGU5MGQ7PC9pPiB7e3JjTmFtZS5pdGVtX25hbWV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNvdW50XCIgKm5nSWY9XCJyaXNrRm9ybT8ucmVzcG9uc2liaWxpdHlDZW50ZXJzTGlzdD8ubGVuZ3RoID4gMlwiIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwUG9wb3ZlciAoY2xpY2spPVwicG9wb3ZlclJDLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+K1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3tyaXNrRm9ybT8ucmVzcG9uc2liaWxpdHlDZW50ZXJzTGlzdD8uc2xpY2UoMikubGVuZ3RofX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFjdGl2ZVNlbGVjdG9yICE9PSAncmMnXCIgY2xhc3M9XCJlZGl0XCIgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJhY3RpdmF0ZVNlbGVjdG9yKCdyYycsdHJ1ZSlcIj48aSBjbGFzcz1cImljb25zXCI+JiN4ZTliYTs8L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEVkaXQ8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPHAgKm5nSWY9XCJzdWJtaXR0ZWQgJiYgKHJpc2tGb3JtPy5yZXNwb25zaWJpbGl0eUNlbnRlcnNMaXN0Py5sZW5ndGg9PTApXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+QXNzaWduXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcyByaXNrIHRvIGEgUmVzcG9uc2liaWxpdHkgQ2VudGVyKHMpPC9wPlxyXG4gICAgICAgICAgICAgICAgPGFwcC1wb3BvdmVyICNwb3BvdmVyUkMgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tbGlzdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCByY05hbWUgb2Ygcmlza0Zvcm0/LnJlc3BvbnNpYmlsaXR5Q2VudGVyc0xpc3QgfCBzbGljZTogMjsgbGV0IGogPSBpbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb25zXCIgKGNsaWNrKT1cInJlbW92ZSgncmMnLHJjTmFtZSlcIj4mI3hlOTBkOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHJjTmFtZS5pdGVtX25hbWUgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8IS0tIFJJU0sgT1dORVIgLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cC1yb3dcIiBbY2xhc3MuYWN0aXZlXT1cImFjdGl2ZVNlbGVjdG9yID09PSAnb3duZXInXCJcclxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIGFjdGl2ZVNlbGVjdG9yICYmIGFjdGl2ZVNlbGVjdG9yICE9PSAnb3duZXInICYmIHNpZGVTZWxlY3RvckVsZW1lbnRzLmluY2x1ZGVzKGFjdGl2ZVNlbGVjdG9yKVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0XCIgW2NsYXNzLmNoZWNrZWRdPVwicmlza0Zvcm0/Lm93bmVyc0xpc3Q/Lmxlbmd0aD4wXCI+XHJcbiAgICAgICAgICAgIDxpbWcgKm5nSWY9XCJyaXNrRm9ybT8ub3duZXJzTGlzdD8ubGVuZ3RoID09MCB8fCBhY3RpdmVTZWxlY3RvciA9PT0gJ293bmVyJ1wiXHJcbiAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvaW0tY3JlYXRpbmcuc3ZnXCIgYWx0PVwiXCIgLz5cclxuXHJcbiAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJyaXNrRm9ybT8ub3duZXJzTGlzdD8ubGVuZ3RoPjAgJiYgYWN0aXZlU2VsZWN0b3IgIT09ICdvd25lcidcIiBjbGFzcz1cImNoZWNrSWNvblwiXHJcbiAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCA1MiA1MlwiPlxyXG4gICAgICAgICAgICAgICAgPGNpcmNsZSBjbGFzcz1cImNoZWNrSWNvbl9fY2lyY2xlXCIgY3g9XCIyNlwiIGN5PVwiMjZcIiByPVwiMjVcIiBmaWxsPVwibm9uZVwiIC8+XHJcbiAgICAgICAgICAgICAgICA8cGF0aCBjbGFzcz1cImNoZWNrSWNvbl9fY2hlY2tcIiBmaWxsPVwibm9uZVwiIGQ9XCJNMTQuMSAyNy4ybDcuMSA3LjIgMTYuNy0xNi44XCIgLz5cclxuICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJpZ2h0XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mb3JtLWdyb3VwXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+UklTSyBPV05FUiA8c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb25zXCIgW2FwcFRvb2x0aXBdPVwiJ1RoaXMgaXMgdGhlIHBlcnNvbiB0aGF0IGlzIHJlc3BvbnNpYmxlIGZvciBtYW5hZ2luZyB0aGUgcmlzay4nXCJcclxuICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJib3R0b21cIlxyXG4gICAgICAgICAgICAgICAgICAgIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiPiYjeGU5MWY7PC9pPlxyXG4gICAgICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3RcIiAqbmdJZj1cInJpc2tGb3JtPy5vd25lcnNMaXN0Py5sZW5ndGggPT0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgKGNsaWNrKT1cImFjdGl2YXRlU2VsZWN0b3IoJ293bmVyJyx0cnVlKVwiIHBsYWNlaG9sZGVyPVwiU2VsZWN0IFJpc2sgT3duZXIocylcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZWFkb25seT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0ZWRcIiAqbmdJZj1cInJpc2tGb3JtPy5vd25lcnNMaXN0Py5sZW5ndGg+MFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWNvbnRhaW5lclwiIFtjbGFzcy5tb3JlLW9uZV09XCJyaXNrRm9ybT8ub3duZXJzTGlzdD8ubGVuZ3RoPjFcIiBbY2xhc3MucGx1c109XCJyaXNrRm9ybT8ub3duZXJzTGlzdD8ubGVuZ3RoPjJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIocmlza0Zvcm0/Lm93bmVyc0xpc3R8c2hvcnRNZXJnZSA6IG5vblJlbW92YWJsZVVzZXJzTGlzdCkgYXMgb3duZXJMaXN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hpcFwiICpuZ0Zvcj1cImxldCBvd25lciBvZiBvd25lckxpc3Q/LnNsaWNlKDAsMilcIj48aSBjbGFzcz1cImljb25zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIW5vblJlbW92YWJsZVVzZXJzTGlzdC5pbmNsdWRlcyhvd25lcj8ubWVtYmVyX2lkKVwiIChjbGljayk9XCJyZW1vdmUoJ293bmVyJyxvd25lcilcIj4mI3hlOTBkOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7b3duZXI/Lm1lbWJlcl9uYW1lfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJjb3VudFwiICpuZ0lmPVwicmlza0Zvcm0/Lm93bmVyc0xpc3Q/Lmxlbmd0aCA+IDJcIiB0eXBlPVwiYnV0dG9uXCIgYXBwUG9wb3ZlclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInBvcG92ZXJPd25lci5wb3BvdmVyKClcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPitcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7cmlza0Zvcm0/Lm93bmVyc0xpc3Q/LnNsaWNlKDIpLmxlbmd0aH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiYWN0aXZlU2VsZWN0b3IgIT09ICdvd25lcidcIiBjbGFzcz1cImVkaXRcIiB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImFjdGl2YXRlU2VsZWN0b3IoJ293bmVyJyx0cnVlKVwiPjxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOWJhOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgRWRpdDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8cCAqbmdJZj1cInN1Ym1pdHRlZCAmJiAocmlza0Zvcm0/Lm93bmVyc0xpc3Q/Lmxlbmd0aD09PTApXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+U2VsZWN0IE93bmVyKHMpIGZvciB0aGlzIHJpc2suPC9wPlxyXG4gICAgICAgICAgICAgICAgPGFwcC1wb3BvdmVyICNwb3BvdmVyT3duZXIgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tbGlzdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihyaXNrRm9ybT8ub3duZXJzTGlzdHxzaG9ydE1lcmdlIDogbm9uUmVtb3ZhYmxlVXNlcnNMaXN0KSBhcyBvd25lclBvcFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBvd25lciBvZiBvd25lclBvcCB8IHNsaWNlOiAyOyBsZXQgaiA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF2YXRhci1jYXJkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpICpuZ0lmID0gXCIhbm9uUmVtb3ZhYmxlVXNlcnNMaXN0LmluY2x1ZGVzKG93bmVyPy5tZW1iZXJfaWQpXCIgY2xhc3M9XCJpY29uc1wiIChjbGljayk9XCJyZW1vdmUoJ293bmVyJyxvd25lcilcIj4mI3hlOTBkOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IG93bmVyLm1lbWJlcl9uYW1lIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8IS0tIFJpc2sgQ2F0ZWdvcnkgLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cC1yb3dcIiBbY2xhc3MuYWN0aXZlXT1cImFjdGl2ZVNlbGVjdG9yID09PSAnY2F0ZWdvcnknXCJcclxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIGFjdGl2ZVNlbGVjdG9yICYmIGFjdGl2ZVNlbGVjdG9yICE9PSAnY2F0ZWdvcnknICYmIHNpZGVTZWxlY3RvckVsZW1lbnRzLmluY2x1ZGVzKGFjdGl2ZVNlbGVjdG9yKVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0XCIgW2NsYXNzLmNoZWNrZWRdPVwicmlza0Zvcm0/LmNhdGVnb3J5Py5zZWxlY3RlZENhdGVnb3J5XCI+XHJcbiAgICAgICAgICAgIDxpbWcgKm5nSWY9XCIhcmlza0Zvcm0/LmNhdGVnb3J5Py5zZWxlY3RlZENhdGVnb3J5IHx8IGFjdGl2ZVNlbGVjdG9yID09PSAnY2F0ZWdvcnknXCJcclxuICAgICAgICAgICAgICAgIHNyYz1cImh0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvd29ya2Zsb3ctZW5naW5lL2Fzc2V0cy93b3JrZmxvdy9jYXRlZ29yeS5zdmdcIiBhbHQ9XCJcIiAvPlxyXG5cclxuICAgICAgICAgICAgPHN2ZyBjbGFzcz1cImNoZWNrSWNvblwiICpuZ0lmPVwicmlza0Zvcm0/LmNhdGVnb3J5Py5zZWxlY3RlZENhdGVnb3J5ICYmIGFjdGl2ZVNlbGVjdG9yICE9PSAnY2F0ZWdvcnknXCJcclxuICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDUyIDUyXCI+XHJcbiAgICAgICAgICAgICAgICA8Y2lyY2xlIGNsYXNzPVwiY2hlY2tJY29uX19jaXJjbGVcIiBjeD1cIjI2XCIgY3k9XCIyNlwiIHI9XCIyNVwiIGZpbGw9XCJub25lXCIgLz5cclxuICAgICAgICAgICAgICAgIDxwYXRoIGNsYXNzPVwiY2hlY2tJY29uX19jaGVja1wiIGZpbGw9XCJub25lXCIgZD1cIk0xNC4xIDI3LjJsNy4xIDcuMiAxNi43LTE2LjhcIiAvPlxyXG4gICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicmlnaHRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWZvcm0tZ3JvdXBcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5SaXNrIENhdGVnb3J5XHJcbiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiIFthcHBUb29sdGlwXT1cIidSaXNrIENhdGVnb3JpZXMgYXJlIHVzZWQgdG8gZ3JvdXAgc2ltaWxhciByaXNrcy4nXCJcclxuICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJib3R0b21cIlxyXG4gICAgICAgICAgICAgICAgICAgIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiPiYjeGU5MWY7PC9pPjwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0XCIgKm5nSWY9XCIhcmlza0Zvcm0/LmNhdGVnb3J5Py5zZWxlY3RlZENhdGVnb3J5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgKGNsaWNrKT1cImFjdGl2YXRlU2VsZWN0b3IoJ2NhdGVnb3J5Jyx0cnVlKVwiIHBsYWNlaG9sZGVyPVwiU2VsZWN0IFJpc2sgQ2F0ZWdvcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZWFkb25seT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkXCIgKm5nSWY9XCJyaXNrRm9ybT8uY2F0ZWdvcnk/LnNlbGVjdGVkQ2F0ZWdvcnlcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlwXCI+PGkgY2xhc3M9XCJpY29uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZSgnY2F0ZWdvcnknLHJpc2tGb3JtLmNhdGVnb3J5LnNlbGVjdGVkQ2F0ZWdvcnkpXCI+JiN4ZTkwZDs8L2k+e3tyaXNrRm9ybT8uY2F0ZWdvcnk/LnNlbGVjdGVkQ2F0ZWdvcnk/LmNhdGVnb3J5X25hbWV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFjdGl2ZVNlbGVjdG9yICE9PSAnY2F0ZWdvcnknXCIgY2xhc3M9XCJlZGl0XCIgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJhY3RpdmF0ZVNlbGVjdG9yKCdjYXRlZ29yeScsdHJ1ZSlcIj48aSBjbGFzcz1cImljb25zXCI+JiN4ZTliYTs8L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEVkaXQ8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInJpc2tGb3JtPy5jYXRlZ29yeUN1c3RvbVRhZ3M/Lmxlbmd0aD4wXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidngtZm9ybS1ncm91cFwiICpuZ0Zvcj1cImxldCB0YWcgb2Ygcmlza0Zvcm0uY2F0ZWdvcnlDdXN0b21UYWdzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiPnt7dGFnLmN1c3RvbV90YWdfbmFtZX19PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBbKG5nTW9kZWwpXT1cInRhZy5jdXN0b21fdGFnX3ZhbHVlXCIgW3BsYWNlaG9sZGVyXT1cInRhZy5jdXN0b21fdGFnX25hbWVcIj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDwhLS0gQXNzZXNzbWVudCBEZWFkbGluZSAtLT5cclxuICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwLXJvd1wiIFtjbGFzcy5hY3RpdmVdPVwiYWN0aXZlU2VsZWN0b3IgPT09ICdhc3Nlc3NtZW50J1wiIGlkPVwiZGVhZGxpbmVcIlxyXG4gICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCIgYWN0aXZlU2VsZWN0b3IgJiYgYWN0aXZlU2VsZWN0b3IgIT09ICdhc3Nlc3NtZW50JyAgJiYgc2lkZVNlbGVjdG9yRWxlbWVudHMuaW5jbHVkZXMoYWN0aXZlU2VsZWN0b3IpXCJcclxuICAgICAgICAqbmdJZj1cIiFzZXR0aW5nc0luZm8/LmFzc2Vzc21lbnRfZGVhZGxpbmVfZW5hYmxlICYmIHJpc2tGb3JtPy5yaXNrVHlwZSAhPT0gJ1JFUE9SVEVEJyAmJiAoKGN1cnJlbnRUaW1lU3RhbXAgPCBlZGl0RGV0YWlscz8uYXNzZXNzbWVudF9kYXRlX3RpbWVzdGFtcCkgfHwgIWVkaXREZXRhaWxzPy5JZkFzc2Vzc21lbnREb25lIClcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdFwiIFtjbGFzcy5jaGVja2VkXT1cInJpc2tGb3JtPy5hc3Nlc3NtZW50X2RlYWRsaW5lX2RheXM+PTFcIj5cclxuICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvd2hlbi5zdmdcIlxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJyaXNrRm9ybT8uYXNzZXNzbWVudF9kZWFkbGluZV9kYXlzPDEgfHwgYWN0aXZlU2VsZWN0b3IgPT09ICdhc3Nlc3NtZW50J1wiIGFsdD1cIlwiIC8+XHJcbiAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJjaGVja0ljb25cIiAqbmdJZj1cInJpc2tGb3JtPy5hc3Nlc3NtZW50X2RlYWRsaW5lX2RheXM+PTEgJiYgYWN0aXZlU2VsZWN0b3IgIT09ICdhc3Nlc3NtZW50J1wiXHJcbiAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCA1MiA1MlwiPlxyXG4gICAgICAgICAgICAgICAgPGNpcmNsZSBjbGFzcz1cImNoZWNrSWNvbl9fY2lyY2xlXCIgY3g9XCIyNlwiIGN5PVwiMjZcIiByPVwiMjVcIiBmaWxsPVwibm9uZVwiIC8+XHJcbiAgICAgICAgICAgICAgICA8cGF0aCBjbGFzcz1cImNoZWNrSWNvbl9fY2hlY2tcIiBmaWxsPVwibm9uZVwiIGQ9XCJNMTQuMSAyNy4ybDcuMSA3LjIgMTYuNy0xNi44XCIgLz5cclxuICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJpZ2h0XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mb3JtLWdyb3VwXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+QXNzZXNzbWVudCBEZWFkbGluZSA8c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb25zXCIgW2FwcFRvb2x0aXBdPVwiJ1RoaXMgaXMgdGhlIGRhdGUgdGhhdCB0aGUgaW5oZXJlbnQgcmlzayBhc3Nlc3NtZW50IG11c3QgYmUgY29tcGxldGVkIGJ5LidcIlxyXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXHJcbiAgICAgICAgICAgICAgICAgICAgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZTkxZjs8L2k+PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dFwiPlNldCBOdW1iZXIgb2YgZGF5czwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXAgY291bnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJjaGFuZ2VSaXNrQXNzZXNzbWVudCgnc3VidHJhY3QnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiPiYjeGVhNTM7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJudW1iZXJcIiBbKG5nTW9kZWwpXT1cInJpc2tGb3JtLmFzc2Vzc21lbnRfZGVhZGxpbmVfZGF5c1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZm9jdXNpbik9XCJhY3RpdmF0ZVNlbGVjdG9yKCdhc3Nlc3NtZW50Jyx0cnVlKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZm9jdXNvdXQpPVwiYWN0aXZhdGVTZWxlY3RvcignYXNzZXNzbWVudCcsZmFsc2UpXCIgbmFtZT1cInJpc2tBc3Nlc3NtZW50RGVhZGxpbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsaWRhdGVBc3Nlc3NtZW50ICNkZWFkbGluZT1cIm5nTW9kZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlUmlza0Fzc2Vzc21lbnREZWFkbGluZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbmtleWRvd249XCJyZXR1cm4gZXZlbnQua2V5Q29kZSAhPT0gMTkwXCIgbWluPVwiMFwiIG9uaW5wdXQ9XCJ0aGlzLnZhbHVlID0gTWF0aC5hYnModGhpcy52YWx1ZSlcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJjaGFuZ2VSaXNrQXNzZXNzbWVudCgnYWRkJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTE1OzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxwICpuZ0lmPVwic3VibWl0dGVkICYmIChyaXNrRm9ybT8uYXNzZXNzbWVudF9kZWFkbGluZV9kYXlzPDEpXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgRW50ZXIgYSB2YWx1ZSBncmVhdGVyIHRoYW4gMC5cclxuICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIiAqbmdJZj1cInJpc2tGb3JtPy5hc3Nlc3NtZW50X2RlYWRsaW5lX2RheXM+PTFcIj5cclxuICAgICAgICAgICAgICAgICAgICBUaGlzIHJpc2sgYXNzZXNzbWVudCBuZWVkcyB0byBiZSBjb21wbGV0ZWQgYnkge3sgZGF0ZSB8IGRhdGU6ICdkZCBNTU0geXl5eScgfX1cclxuICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8IS0tIFJpc2sgT3ZlcnNlZXIgLS0+XHJcbiAgICA8ZGl2IFthcHBTY3JvbGxJblZpZXddPVwic2Nyb2xsVG9Cb3R0b21cIiBjbGFzcz1cImZvcm0tZ3JvdXAtcm93XCIgW2NsYXNzLmFjdGl2ZV09XCJhY3RpdmVTZWxlY3RvciA9PT0gJ292ZXJzZWVyJ1wiXHJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIiBhY3RpdmVTZWxlY3RvciAmJiBhY3RpdmVTZWxlY3RvciAhPT0gJ292ZXJzZWVyJyAmJiBzaWRlU2VsZWN0b3JFbGVtZW50cy5pbmNsdWRlcyhhY3RpdmVTZWxlY3RvcilcIlxyXG4gICAgICAgICpuZ0lmPVwicmlza0Zvcm0uYWRkT3ZlcnNlZXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdFwiIFtjbGFzcy5jaGVja2VkXT1cInJpc2tGb3JtPy5vdmVyc2VlcnNMaXN0Py5sZW5ndGg+MFwiPlxyXG4gICAgICAgICAgICA8aW1nICpuZ0lmPVwicmlza0Zvcm0/Lm92ZXJzZWVyc0xpc3Q/Lmxlbmd0aD09MCB8fCBhY3RpdmVTZWxlY3RvciA9PT0gJ292ZXJzZWVyJ1wiXHJcbiAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvb3ZlcnNpZ2h0LnN2Z1wiIGFsdD1cIlwiIC8+XHJcbiAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJjaGVja0ljb25cIiAqbmdJZj1cInJpc2tGb3JtPy5vdmVyc2VlcnNMaXN0Py5sZW5ndGg+MCAmJiBhY3RpdmVTZWxlY3RvciAhPT0gJ292ZXJzZWVyJ1wiXHJcbiAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCA1MiA1MlwiPlxyXG4gICAgICAgICAgICAgICAgPGNpcmNsZSBjbGFzcz1cImNoZWNrSWNvbl9fY2lyY2xlXCIgY3g9XCIyNlwiIGN5PVwiMjZcIiByPVwiMjVcIiBmaWxsPVwibm9uZVwiIC8+XHJcbiAgICAgICAgICAgICAgICA8cGF0aCBjbGFzcz1cImNoZWNrSWNvbl9fY2hlY2tcIiBmaWxsPVwibm9uZVwiIGQ9XCJNMTQuMSAyNy4ybDcuMSA3LjIgMTYuNy0xNi44XCIgLz5cclxuICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJpZ2h0XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mb3JtLWdyb3VwXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+UmlzayBPdmVyc2VlcjxpIGNsYXNzPVwiaWNvbnNcIiBbYXBwVG9vbHRpcF09XCInVGhpcyBpcyB0aGUgcGVyc29uIHRoYXQgaXMgcmVzcG9uc2libGUgZm9yIG92ZXJzZWVpbmcgdGhlIHJpc2sgYnV0IHdobyBpcyBub3QgcmVzcG9uc2libGUgZm9yIG1hbmFnaW5nIHRoZSByaXNrLidcIlxyXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXHJcbiAgICAgICAgICAgICAgICAgICAgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZTkxZjs8L2k+PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3RcIiAqbmdJZj1cInJpc2tGb3JtPy5vdmVyc2VlcnNMaXN0Py5sZW5ndGg9PTBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiAoY2xpY2spPVwiYWN0aXZhdGVTZWxlY3Rvcignb3ZlcnNlZXInLHRydWUpXCIgcGxhY2Vob2xkZXI9XCJTZWxlY3QgUmlzayBPdmVyc2VlcihzKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRvbmx5PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0ZWRcIiAqbmdJZj1cInJpc2tGb3JtPy5vdmVyc2VlcnNMaXN0Py5sZW5ndGg+MFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWNvbnRhaW5lclwiIFtjbGFzcy5tb3JlLW9uZV09XCJyaXNrRm9ybT8ub3ZlcnNlZXJzTGlzdD8ubGVuZ3RoPjFcIiBbY2xhc3MucGx1c109XCJyaXNrRm9ybT8ub3ZlcnNlZXJzTGlzdD8ubGVuZ3RoPjJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlwXCIgKm5nRm9yPVwibGV0IG93bmVyIG9mIHJpc2tGb3JtPy5vdmVyc2VlcnNMaXN0Py5zbGljZSgwLDIpXCI+PGkgY2xhc3M9XCJpY29uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZSgnb3ZlcnNlZXInLG93bmVyKVwiPiYjeGU5MGQ7PC9pPiB7e293bmVyLm1lbWJlcl9uYW1lfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJjb3VudFwiICpuZ0lmPVwicmlza0Zvcm0/Lm92ZXJzZWVyc0xpc3Q/Lmxlbmd0aCA+IDJcIiB0eXBlPVwiYnV0dG9uXCIgYXBwUG9wb3ZlclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInBvcG92ZXJPdmVyc2Vlci5wb3BvdmVyKClcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPitcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7cmlza0Zvcm0/Lm92ZXJzZWVyc0xpc3Q/LnNsaWNlKDIpLmxlbmd0aH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJhY3RpdmVTZWxlY3RvciAhPT0gJ292ZXJzZWVyJ1wiIGNsYXNzPVwiZWRpdFwiIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiYWN0aXZhdGVTZWxlY3Rvcignb3ZlcnNlZXInLHRydWUpXCI+PGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5YmE7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBFZGl0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxhcHAtcG9wb3ZlciAjcG9wb3Zlck92ZXJzZWVyIFtkb250Q2xvc2VvbkNsaWNrXT1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWxpc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgb3duZXIgb2Ygcmlza0Zvcm0/Lm92ZXJzZWVyc0xpc3QgfCBzbGljZTogMjsgbGV0IGogPSBpbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb25zXCIgKGNsaWNrKT1cInJlbW92ZSgnb3ZlcnNlZXInLG93bmVyKVwiPiYjeGU5MGQ7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgb3duZXIubWVtYmVyX25hbWUgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8IS0tIFJpc2sgTWl0aWdhdGlvbiBQcmlvcml0eSAtLT5cclxuICAgIDxkaXYgW2FwcFNjcm9sbEluVmlld109XCJzY3JvbGxUb0JvdHRvbVwiIGNsYXNzPVwiZm9ybS1ncm91cC1yb3dcIiBbY2xhc3MuYWN0aXZlXT1cImZhbHNlXCJcclxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiYWN0aXZlU2VsZWN0b3IgJiYgc2lkZVNlbGVjdG9yRWxlbWVudHMuaW5jbHVkZXMoYWN0aXZlU2VsZWN0b3IpXCJcclxuICAgICAgICAqbmdJZj1cInJpc2tGb3JtLmFkZE1pdGlnYXRpb25cIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdFwiIFtjbGFzcy5jaGVja2VkXT1cInJpc2tGb3JtLm1pdGlnYXRpb25cIj5cclxuICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvcHJpb3JpdHkuc3ZnXCIgKm5nSWY9XCIhcmlza0Zvcm0ubWl0aWdhdGlvblwiIGFsdD1cIlwiIC8+XHJcbiAgICAgICAgICAgIDwhLS0gPHN2ZyB2aWV3Qm94PVwiMjUgMjUgNTAgNTBcIiBjbGFzcz1cImVkaXQtbG9hZGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8Y2lyY2xlIGN4PVwiNTBcIiBjeT1cIjUwXCIgcj1cIjIwXCIgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCIjMWU1ZGQzXCIgc3Ryb2tlLXdpZHRoPVwiM1wiIGNsYXNzPVwibG9hZGVyLXBhdGhcIj48L2NpcmNsZT5cclxuICAgICAgICAgICAgPC9zdmc+IC0tPlxyXG4gICAgICAgICAgICA8c3ZnIGNsYXNzPVwiY2hlY2tJY29uXCIgKm5nSWY9XCJyaXNrRm9ybS5taXRpZ2F0aW9uXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgNTIgNTJcIj5cclxuICAgICAgICAgICAgICAgIDxjaXJjbGUgY2xhc3M9XCJjaGVja0ljb25fX2NpcmNsZVwiIGN4PVwiMjZcIiBjeT1cIjI2XCIgcj1cIjI1XCIgZmlsbD1cIm5vbmVcIiAvPlxyXG4gICAgICAgICAgICAgICAgPHBhdGggY2xhc3M9XCJjaGVja0ljb25fX2NoZWNrXCIgZmlsbD1cIm5vbmVcIiBkPVwiTTE0LjEgMjcuMmw3LjEgNy4yIDE2LjctMTYuOFwiIC8+XHJcbiAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyaWdodFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidngtZm9ybS1ncm91cFwiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiPlJpc2sgTWl0aWdhdGlvbiBQcmlvcml0eVxyXG4gICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnNcIiBbYXBwVG9vbHRpcF09XCInVGhpcyBzZXRzIHRoZSBwcmlvcml0eSBsZXZlbCBmb3IgdGhlIG1pdGlnYXRpb24gb2YgZWFjaCByaXNrLidcIlxyXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXHJcbiAgICAgICAgICAgICAgICAgICAgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZTkxZjs8L2k+PC9sYWJlbD5cclxuXHJcbiAgICAgICAgICAgICAgICA8Y3Mtc2VsZWN0IFsobmdNb2RlbCldPVwicmlza0Zvcm0ubWl0aWdhdGlvblwiIFtwbGFjZWhvbGRlcl09XCInU2VsZWN0IGEgbWl0aWdhdGlvbiBwcmlvcml0eSdcIlxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9XCJyaXNrRm9ybS5taXRpZ2F0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGNzLW9wdGlvbiAqbmdGb3I9XCJsZXQgZGF0YSBvZiBtaXRpZ2F0aW9uRGV0YWlsc1wiIFt2YWx1ZV09XCJkYXRhPy5taXRpZ2F0aW9uX2lkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbG9yXT1cImRhdGE/Lm1pdGlnYXRpb25fY29sb3JcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAge3sgZGF0YS5taXRpZ2F0aW9uX25hbWUgfX1cclxuICAgICAgICAgICAgICAgICAgICA8L2NzLW9wdGlvbj5cclxuICAgICAgICAgICAgICAgIDwvY3Mtc2VsZWN0PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPCEtLSBSZWNvbW1lbmRlZCBNaXRpZ2F0aW9uIFBsYW4gLS0+XHJcbiAgICA8ZGl2IFthcHBTY3JvbGxJblZpZXddPVwic2Nyb2xsVG9Cb3R0b21cIiBjbGFzcz1cImZvcm0tZ3JvdXAtcm93XCIgKm5nSWY9XCJyaXNrRm9ybT8uYWRkTWl0aWdhdGlvblBsYW5cIj5cclxuICAgICAgICAgIDxkaXYgaWQ9XCJyaXNrU3BhY2VcIiBjbGFzcz1cImxlZnRcIiBbY2xhc3MuY2hlY2tlZF09XCIocmlza0Zvcm0ubWl0aWdhdGlvbkRlc2NyaXB0aW9uUGxhbiB8IHNwYWNlVHJpbSkgIT09ICcnXCI+XHJcbiAgICAgICAgICAgIDxpbWcgKm5nSWY9XCIocmlza0Zvcm0ubWl0aWdhdGlvbkRlc2NyaXB0aW9uUGxhbiB8IHNwYWNlVHJpbSkgPT09JydcIlxyXG4gICAgICAgICAgICAgIHNyYz1cImh0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvd29ya2Zsb3ctZW5naW5lL2Fzc2V0cy93b3JrZmxvdy9vYmplY3RpdmVzLnN2Z1wiIGFsdD1cIlwiIC8+XHJcbiAgICAgICAgICAgIDxzdmcgKm5nSWY9XCIocmlza0Zvcm0ubWl0aWdhdGlvbkRlc2NyaXB0aW9uUGxhbiB8IHNwYWNlVHJpbSkgIT09ICcnXCIgY2xhc3M9XCJjaGVja0ljb25cIiBcclxuICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCA1MiA1MlwiPlxyXG4gICAgICAgICAgICAgIDxjaXJjbGUgY2xhc3M9XCJjaGVja0ljb25fX2NpcmNsZVwiIGN4PVwiMjZcIiBjeT1cIjI2XCIgcj1cIjI1XCIgZmlsbD1cIm5vbmVcIiAvPlxyXG4gICAgICAgICAgICAgIDxwYXRoIGNsYXNzPVwiY2hlY2tJY29uX19jaGVja1wiIGZpbGw9XCJub25lXCIgZD1cIk0xNC4xIDI3LjJsNy4xIDcuMiAxNi43LTE2LjhcIiAvPlxyXG4gICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInJpZ2h0XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mb3JtLWdyb3VwXCI+XHJcbiAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cIlwiIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiPlJlY29tbWVuZGVkIE1pdGlnYXRpb24gUGxhbnM8bGluayByZWw9XCJtYW5pZmVzdFwiIGhyZWY9XCIuL21hbmlmZXN0Lmpzb25cIj5cclxuICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnNcIiBbYXBwVG9vbHRpcF09XCInU3BlY2lmeSB0aGUgbWl0aWdhdGlvbiBwbGFuIHRoYXQgY2FuIGJlIHVuZGVydGFrZW4gdG8gbWl0aWdhdGUgdGhlIHJpc2suJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwiYm90dG9tXCJcclxuICAgICAgICAgICAgICAgICAgICBkZWxheT1cIjBcIiB0eXBlPVwid2hpdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlOTFmOzwvaT5cclxuICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgICAgICAgIDxtYXJ4LWVkaXRvciBbKG5nTW9kZWwpXT1cInJpc2tGb3JtLm1pdGlnYXRpb25EZXNjcmlwdGlvblBsYW5cIlxyXG4gICAgICAgICAgICAgICAgW2VkaXRvckNvbmZpZ109XCJtaXRpZ2F0aW9uRGVzY3JpcHRpb25QbGFuXCIgKGNsaWNrT3V0c2lkZSk9XCJjaGVja01pdGlnYXRpb25QbGFuKClcIj5cclxuICAgICAgICAgICAgICA8L21hcngtZWRpdG9yPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG48L2Rpdj5cclxuPGFwcC1yZXNwb25zaWJpbGl0eS1jZW50ZXJzLWxpc3QgKm5nSWY9XCJhY3RpdmVTZWxlY3RvciA9PT0gJ3JjJ1wiIFtyZXNwb25zaWJpbGl0eUNlbnRlcnNMaXN0XT1cInJlc3BvbnNpYmlsaXR5Q2VudGVyc0xpc3RcIlxyXG4gICAgW3NlbGVjdGVkUmVzcG9uc2liaWxpdHlDZW50ZXJzXT1cInJpc2tGb3JtLnJlc3BvbnNpYmlsaXR5Q2VudGVyc0xpc3RcIiBbcmNJZEtleV09XCIncmNfaWQnXCJcclxuICAgIChzYXZlU2VsZWN0ZWRMaXN0KT1cInNhdmVTZWxlY3RlZFJDTGlzdCgkZXZlbnQpXCIgKGNsb3NlUmNMaXN0KT1cImFjdGl2YXRlU2VsZWN0b3IoJ3JjJyxmYWxzZSlcIlxyXG4gICAgW3Npbmd1bGFyVGV4dF09XCInUmVzcG9uc2liaWxpdHkgQ2VudGVyIHNlbGVjdGVkJ1wiIFtwbHVyYWxUZXh0XT1cIidSZXNwb25zaWJpbGl0eSBDZW50ZXJzIHNlbGVjdGVkJ1wiID5cclxuPC9hcHAtcmVzcG9uc2liaWxpdHktY2VudGVycy1saXN0PlxyXG5cclxuPGFwcC1vd25lci1saXN0ICpuZ0lmPVwiYWN0aXZlU2VsZWN0b3IgPT09ICdvd25lcidcIiBbdXNlcnNMaXN0XT1cIm93bmVyc0xpc3RcIiBbc2VsZWN0ZWRVc2Vyc109XCJyaXNrRm9ybS5vd25lcnNMaXN0XCJcclxuICAgIFt1c2VySWRLZXldPVwiJ21lbWJlcl9pZCdcIiBbaXRlbUVtYWlsS2V5XT1cIidtZW1iZXJfZW1haWwnXCIgW2l0ZW1OYW1lS2V5XT1cIidtZW1iZXJfbmFtZSdcIiAoc2F2ZVNlbGVjdGVkTGlzdCk9XCJzYXZlU2VsZWN0ZWRPd25lcnNMaXN0KCRldmVudClcIlxyXG4gICAgW25vblJlbW92YWJsZVVzZXJzTGlzdF09XCJub25SZW1vdmFibGVVc2Vyc0xpc3RcIiAoY2xvc2VVc2Vyc0xpc3QpPVwiYWN0aXZhdGVTZWxlY3Rvcignb3duZXInLGZhbHNlKVwiXHJcbiAgICBbc2luZ3VsYXJUZXh0XT1cIidVc2VyIHNlbGVjdGVkJ1wiIFtwbHVyYWxUZXh0XT1cIidVc2VycyBzZWxlY3RlZCdcIiA+PC9hcHAtb3duZXItbGlzdD5cclxuXHJcbjxhcHAtY2F0ZWdvcnktbGlzdCAqbmdJZj1cImFjdGl2ZVNlbGVjdG9yID09PSAnY2F0ZWdvcnknXCIgW2NhdGVnb3J5TGlzdF09XCJjYXRlZ29yeUxpc3RcIlxyXG4gICAgW3NlbGVjdGVkQ2F0ZWdvcnldPVwicmlza0Zvcm0uY2F0ZWdvcnlcIiAoc2F2ZVNlbGVjdGVkQ2F0ZWdvcnkpPVwic2F2ZVNlbGVjdGVkQ2F0ZWdvcnkoJGV2ZW50KVwiXHJcbiAgICAoY2xvc2VDYXRlZ29yaWVzTGlzdCk9XCJhY3RpdmF0ZVNlbGVjdG9yKCdjYXRlZ29yeScsZmFsc2UpXCI+PC9hcHAtY2F0ZWdvcnktbGlzdD5cclxuPGFwcC1vd25lci1saXN0ICpuZ0lmPVwiYWN0aXZlU2VsZWN0b3IgPT09ICdvdmVyc2VlcidcIiBbdXNlcnNMaXN0XT1cIm92ZXJzZWVyc0xpc3RcIlxyXG4gICAgW3NlbGVjdGVkVXNlcnNdPVwicmlza0Zvcm0ub3ZlcnNlZXJzTGlzdFwiIFt1c2VySWRLZXldPVwiJ21lbWJlcl9pZCdcIiBbaXRlbU5hbWVLZXldPVwiJ21lbWJlcl9uYW1lJ1wiIFtpdGVtRW1haWxLZXldPVwiJ21lbWJlcl9lbWFpbCdcIlxyXG4gICAgKHNhdmVTZWxlY3RlZExpc3QpPVwic2F2ZVNlbGVjdGVkT3ZlcnNlZXJzTGlzdCgkZXZlbnQpXCIgKGNsb3NlVXNlcnNMaXN0KT1cImFjdGl2YXRlU2VsZWN0b3IoJ292ZXJzZWVyJyxmYWxzZSlcIlxyXG4gICAgW3Npbmd1bGFyVGV4dF09XCInVXNlciBzZWxlY3RlZCdcIiBbcGx1cmFsVGV4dF09XCInVXNlcnMgc2VsZWN0ZWQnXCIgPlxyXG48L2FwcC1vd25lci1saXN0PlxyXG48YXBwLWxvYWRlci1pbmxpbmUgKm5nSWY9XCJsb2FkZXJcIj48L2FwcC1sb2FkZXItaW5saW5lPlxyXG48IS0tIDxhcHAtc21pbGV5LWRpYWxvZyAqbmdJZj1cInNob3dTbWlsZXlcIiBbbWVzc2FnZV09XCJzbWlsZXlNZXNzYWdlXCIgW2FjdGlvbkJ1dHRvbnNdPVwiYWN0aW9uQnV0dG9uc1wiXHJcbiAgICAoYWN0aW9uKT1cImFjdGlvbigkZXZlbnQpXCIgKGNsb3NlU21pbGV5KT1cImNsb3NlU21pbGV5KCRldmVudClcIj48L2FwcC1zbWlsZXktZGlhbG9nPiAtLT5cclxuXHJcbiAgICA8YXBwLXNtaWxleS1kaWFsb2ctaW5saW5lXHJcbiAgICAgICAgKm5nSWY9XCJzaG93U21pbGV5XCJcclxuICAgICAgICBbbWVzc2FnZV09XCJzbWlsZXlNZXNzYWdlXCJcclxuICAgICAgICBbYWN0aW9uQnV0dG9uc109XCJhY3Rpb25CdXR0b25zXCJcclxuICAgICAgICAoYWN0aW9uKT1cImFjdGlvbigkZXZlbnQpXCJcclxuICAgICAgICAoY2xvc2VTbWlsZXkpPVwiY2xvc2VTbWlsZXkoJGV2ZW50KVwiPlxyXG4gICAgPC9hcHAtc21pbGV5LWRpYWxvZy1pbmxpbmU+XHJcbiJdfQ==
|
|
@@ -82,12 +82,12 @@ export class AddRiskService {
|
|
|
82
82
|
});
|
|
83
83
|
return this.http.get(((_a = this.env) === null || _a === void 0 ? void 0 : _a.riskGet) + 'template/riskBulkUpload&catgeory_id=' + categoryId, { headers, observe: 'events', reportProgress: true });
|
|
84
84
|
}
|
|
85
|
-
downloadResponsibilityTemplate() {
|
|
85
|
+
downloadResponsibilityTemplate(version) {
|
|
86
86
|
console.log("env", this.env);
|
|
87
87
|
const headers = new HttpHeaders({
|
|
88
88
|
token: this.authService.getAuthorizationToken(),
|
|
89
89
|
});
|
|
90
|
-
return this.http.get(this.env.complianceGet + 'template/report', { headers, observe: 'events', reportProgress: true });
|
|
90
|
+
return this.http.get(this.env.complianceGet + 'template/report' + (version === 'v2' ? '/v2' : ''), { headers, observe: 'events', reportProgress: true });
|
|
91
91
|
}
|
|
92
92
|
addRisk(payload) {
|
|
93
93
|
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
@@ -123,4 +123,4 @@ AddRiskService.ctorParameters = () => [
|
|
|
123
123
|
{ type: AuthService },
|
|
124
124
|
{ type: Configurations, decorators: [{ type: Optional }] }
|
|
125
125
|
];
|
|
126
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXJpc2suc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL3dvcmtmbG93LXNlcnZpY2VzL2FkZC1yaXNrLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBZSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM1RSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7QUFJbkQsTUFBTSxPQUFPLGNBQWM7SUFFekIsWUFBb0IsSUFBZ0IsRUFBVSxXQUF3QixFQUFjLE1BQXVCO1FBQXZGLFNBQUksR0FBSixJQUFJLENBQVk7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUNwRSxJQUFJLE1BQU0sRUFBRTtZQUNWLElBQUksQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQztTQUU3QjtJQUNILENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO1FBQ3pGLE9BQU8sSUFBSSxDQUFDLElBQUk7YUFDYixHQUFHLENBQVEsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLEdBQUcsMkNBQTJDLEVBQUUsRUFBRSxPQUFPLEVBQUUsQ0FBQzthQUMvRixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVELGVBQWU7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QUFDLENBQUM7UUFDekYsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBTSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsR0FBRyw4QkFBOEIsR0FBRyxNQUFNLEdBQUcscUJBQXFCLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEosQ0FBQztJQUVELFVBQVUsQ0FBQyxNQUFjLEVBQUUsT0FBWTtRQUNyQyxNQUFNLE9BQU8sR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLENBQUM7UUFDekYsT0FBTyxJQUFJLENBQUMsSUFBSTthQUNiLElBQUksQ0FBTSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsR0FBRyx5QkFBeUIsR0FBRyxNQUFNLEVBQUUsT0FBTyxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUM7YUFDdkYsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BCLENBQUM7Ozs7WUFwSEYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUFQUSxVQUFVO1lBR1YsV0FBVztZQUNYLGNBQWMsdUJBTW9ELFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwQmFja2VuZCwgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IHJldHJ5IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4vYXV0aC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29uZmlndXJhdGlvbnMgfSBmcm9tICcuLi9jb25maWd1cmF0aW9ucyc7XHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZGRSaXNrU2VydmljZSB7XHJcbiAgZW52ICE6IGFueTtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLCBAT3B0aW9uYWwoKSBjb25maWc/OiBDb25maWd1cmF0aW9ucykge1xyXG4gICAgaWYgKGNvbmZpZykge1xyXG4gICAgICB0aGlzLmVudiA9IGNvbmZpZy5lbnZDb25maWc7XHJcblxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0QWRtaW5LZXlBZG1pbkxpc3QoKSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAuZ2V0PGFueVtdPih0aGlzLmVudi5vcmdhbml6YXRpb25HZXQgKyAnb3JnYW5pc2F0aW9uVXNlcnNMaXN0JnR5cGU9YWRtaW5fa2V5YWRtaW4nLCB7IGhlYWRlcnMgfSlcclxuICAgICAgLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2F0ZWdvcnlMaXN0KCkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgLmdldDxhbnlbXT4odGhpcy5lbnY/LnJpc2tHZXQgKyAnY2F0ZWdvcnkvbGlzdCcsIHsgaGVhZGVycyB9KVxyXG4gICAgICAucGlwZShyZXRyeSgyKSk7XHJcbiAgfVxyXG5cclxuICBnZXRPcmdhbml6YXRpb25Vc2VycygpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgIC5nZXQ8YW55W10+KHRoaXMuZW52Lm9yZ2FuaXphdGlvbkdldCArICdvcmdhbml6YXRpb25Vc2VycyZmcm9tPXJpc2snLCB7XHJcbiAgICAgICAgaGVhZGVycyxcclxuICAgICAgfSlcclxuICAgICAgLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuXHJcbiAgZ2V0UmVzcG9uc2liaWxpdHlDZW50ZXJMaXN0KHJjQXJyYXk6IGFueVtdKSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PGFueVtdPih0aGlzLmVudi5yaXNrUG9zdCArICdyaXNrL3Jlc3BvbnNpYmlsaXR5Q2VudGVyTGlzdCcsIHsgcmNfaWRfYXJyOiByY0FycmF5ID8/IFtdIH0sIHsgaGVhZGVycyB9KS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG4gIGdldFJpc2tTZXR0aW5nRGV0YWlscygpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgIC5nZXQ8YW55Pih0aGlzLmVudj8ucmlza0dldCArICdzZXR0aW5ncy9HZXRSaXNrU2V0dGluZ3NEZXRhaWxzJywge1xyXG4gICAgICAgIGhlYWRlcnMsXHJcbiAgICAgIH0pXHJcbiAgICAgIC5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG4gIGRvd25Mb2FkRmlsZShkYXRhOiBhbnksIHR5cGU6IHN0cmluZywgZmlsZW5hbWU6IHN0cmluZykge1xyXG4gICAgaWYgKHdpbmRvdy5uYXZpZ2F0b3IgJiYgd2luZG93Lm5hdmlnYXRvci5tc1NhdmVPck9wZW5CbG9iKSB7XHJcbiAgICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbdGhpcy5iYXNlNjRUb0FycmF5QnVmZmVyKGRhdGEpXSwgeyB0eXBlIH0pO1xyXG4gICAgICB3aW5kb3cubmF2aWdhdG9yLm1zU2F2ZU9yT3BlbkJsb2IoYmxvYiwgZmlsZW5hbWUpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgdXJsID0gJ2RhdGE6JyArIHR5cGUudG9TdHJpbmcoKSArICc7YmFzZTY0LCcgKyBkYXRhO1xyXG4gICAgICBjb25zdCBhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xyXG4gICAgICBhLnNldEF0dHJpYnV0ZSgnaHJlZicsIHVybCk7XHJcbiAgICAgIGEuc2V0QXR0cmlidXRlKCdkb3dubG9hZCcsIGZpbGVuYW1lKTtcclxuICAgICAgYS5zdHlsZS52aXNpYmlsaXR5ID0gJ2hpZGRlbic7XHJcbiAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSk7XHJcbiAgICAgIGEuY2xpY2soKTtcclxuICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChhKTtcclxuICAgIH1cclxuICAgIHJldHVybiAnRE9XTkxPQURFRCdcclxuICB9XHJcblxyXG4gIGJhc2U2NFRvQXJyYXlCdWZmZXIoYmFzZTY0OiBhbnkpIHtcclxuICAgIGNvbnN0IGJpbmFyeVN0cmluZyA9IHdpbmRvdy5hdG9iKGJhc2U2NCk7XHJcbiAgICBjb25zdCBsZW4gPSBiaW5hcnlTdHJpbmcubGVuZ3RoO1xyXG4gICAgY29uc3QgYnl0ZXMgPSBuZXcgVWludDhBcnJheShsZW4pO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW47IGkrKykge1xyXG4gICAgICBieXRlc1tpXSA9IGJpbmFyeVN0cmluZy5jaGFyQ29kZUF0KGkpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGJ5dGVzLmJ1ZmZlcjtcclxuICB9XHJcblxyXG4gIGRvd25sb2FkVGVtcGxhdGUoY2F0ZWdvcnlJZDogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKHtcclxuICAgICAgdG9rZW46IHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCksXHJcbiAgICB9KTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuZW52Py5yaXNrR2V0ICsgJ3RlbXBsYXRlL3Jpc2tCdWxrVXBsb2FkJmNhdGdlb3J5X2lkPScgKyBjYXRlZ29yeUlkLCB7IGhlYWRlcnMsIG9ic2VydmU6ICdldmVudHMnLCByZXBvcnRQcm9ncmVzczogdHJ1ZSB9KTtcclxuICB9XHJcblxyXG4gIGRvd25sb2FkUmVzcG9uc2liaWxpdHlUZW1wbGF0ZSgpIHtcclxuICAgIGNvbnNvbGUubG9nKFwiZW52XCIsIHRoaXMuZW52KTtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoe1xyXG4gICAgICB0b2tlbjogdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSxcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5lbnYuY29tcGxpYW5jZUdldCArICd0ZW1wbGF0ZS9yZXBvcnQnLCB7IGhlYWRlcnMsIG9ic2VydmU6ICdldmVudHMnLCByZXBvcnRQcm9ncmVzczogdHJ1ZSB9KTtcclxuICB9XHJcblxyXG4gXHJcbiAgYWRkUmlzayhwYXlsb2FkOiBhbnkpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgIC5wb3N0PGFueT4odGhpcy5lbnYucmlza1Bvc3QgKyAncmlzay9DcmVhdGVSaXNrJywgcGF5bG9hZCwgeyBoZWFkZXJzIH0pXHJcbiAgICAgIC5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG4gIGFkZEJ1bGtSaXNrKHBheWxvYWQ6IGFueVtdKSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAucG9zdDxhbnk+KHRoaXMuZW52LnJpc2tQb3N0ICsgJ3Jpc2svQnVsa1VwbG9hZCcsIHBheWxvYWQsIHsgaGVhZGVycyB9KVxyXG4gICAgICAucGlwZShyZXRyeSgyKSk7XHJcbiAgfVxyXG5cclxuICBnZXRSaXNrRGV0YWlsKHJpc2tJZDogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PGFueT4odGhpcy5lbnYucmlza1Bvc3QgKyAncmlzay9SaXNrRGV0YWlsc0J5SWQmUmlza0lkPScgKyByaXNrSWQgKyAnJmNhbGxGcm9tPVJJU0tfRURJVCcsIHt9LCB7IGhlYWRlcnMgfSkucGlwZShyZXRyeSgyKSk7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVSaXNrKHJpc2tJZDogc3RyaW5nLCBwYXlsb2FkOiBhbnkpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgIC5wb3N0PGFueT4odGhpcy5lbnYucmlza1Bvc3QgKyAncmlzay9DcmVhdGVSaXNrJlJpc2tJZD0nICsgcmlza0lkLCBwYXlsb2FkLCB7IGhlYWRlcnMgfSlcclxuICAgICAgLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXJpc2suc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL3dvcmtmbG93LXNlcnZpY2VzL2FkZC1yaXNrLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBZSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM1RSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7QUFJbkQsTUFBTSxPQUFPLGNBQWM7SUFFekIsWUFBb0IsSUFBZ0IsRUFBVSxXQUF3QixFQUFjLE1BQXVCO1FBQXZGLFNBQUksR0FBSixJQUFJLENBQVk7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUNwRSxJQUFJLE1BQU0sRUFBRTtZQUNWLElBQUksQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQztTQUU3QjtJQUNILENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO1FBQ3pGLE9BQU8sSUFBSSxDQUFDLElBQUk7YUFDYixHQUFHLENBQVEsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLEdBQUcsMkNBQTJDLEVBQUUsRUFBRSxPQUFPLEVBQUUsQ0FBQzthQUMvRixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVELGVBQWU7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TyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLHFCQUFxQixFQUFFLENBQUMsQ0FBQztRQUN6RixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxHQUFHLDhCQUE4QixHQUFHLE1BQU0sR0FBRyxxQkFBcUIsRUFBRSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNsSixDQUFDO0lBRUQsVUFBVSxDQUFDLE1BQWMsRUFBRSxPQUFZO1FBQ3JDLE1BQU0sT0FBTyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLHFCQUFxQixFQUFFLENBQUMsQ0FBQztRQUN6RixPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ2IsSUFBSSxDQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxHQUFHLHlCQUF5QixHQUFHLE1BQU0sRUFBRSxPQUFPLEVBQUUsRUFBRSxPQUFPLEVBQUUsQ0FBQzthQUN2RixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEIsQ0FBQzs7OztZQXBIRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7OztZQVBRLFVBQVU7WUFHVixXQUFXO1lBQ1gsY0FBYyx1QkFNb0QsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBCYWNrZW5kLCBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgcmV0cnkgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi9hdXRoLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb25maWd1cmF0aW9ucyB9IGZyb20gJy4uL2NvbmZpZ3VyYXRpb25zJztcclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkZFJpc2tTZXJ2aWNlIHtcclxuICBlbnYgITogYW55O1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsIEBPcHRpb25hbCgpIGNvbmZpZz86IENvbmZpZ3VyYXRpb25zKSB7XHJcbiAgICBpZiAoY29uZmlnKSB7XHJcbiAgICAgIHRoaXMuZW52ID0gY29uZmlnLmVudkNvbmZpZztcclxuXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRBZG1pbktleUFkbWluTGlzdCgpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgIC5nZXQ8YW55W10+KHRoaXMuZW52Lm9yZ2FuaXphdGlvbkdldCArICdvcmdhbmlzYXRpb25Vc2Vyc0xpc3QmdHlwZT1hZG1pbl9rZXlhZG1pbicsIHsgaGVhZGVycyB9KVxyXG4gICAgICAucGlwZShyZXRyeSgyKSk7XHJcbiAgfVxyXG5cclxuICBnZXRDYXRlZ29yeUxpc3QoKSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAuZ2V0PGFueVtdPih0aGlzLmVudj8ucmlza0dldCArICdjYXRlZ29yeS9saXN0JywgeyBoZWFkZXJzIH0pXHJcbiAgICAgIC5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG4gIGdldE9yZ2FuaXphdGlvblVzZXJzKCkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgLmdldDxhbnlbXT4odGhpcy5lbnYub3JnYW5pemF0aW9uR2V0ICsgJ29yZ2FuaXphdGlvblVzZXJzJmZyb209cmlzaycsIHtcclxuICAgICAgICBoZWFkZXJzLFxyXG4gICAgICB9KVxyXG4gICAgICAucGlwZShyZXRyeSgyKSk7XHJcbiAgfVxyXG5cclxuICBnZXRSZXNwb25zaWJpbGl0eUNlbnRlckxpc3QocmNBcnJheTogYW55W10pIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8YW55W10+KHRoaXMuZW52LnJpc2tQb3N0ICsgJ3Jpc2svcmVzcG9uc2liaWxpdHlDZW50ZXJMaXN0JywgeyByY19pZF9hcnI6IHJjQXJyYXkgPz8gW10gfSwgeyBoZWFkZXJzIH0pLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Umlza1NldHRpbmdEZXRhaWxzKCkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgLmdldDxhbnk+KHRoaXMuZW52Py5yaXNrR2V0ICsgJ3NldHRpbmdzL0dldFJpc2tTZXR0aW5nc0RldGFpbHMnLCB7XHJcbiAgICAgICAgaGVhZGVycyxcclxuICAgICAgfSlcclxuICAgICAgLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuXHJcbiAgZG93bkxvYWRGaWxlKGRhdGE6IGFueSwgdHlwZTogc3RyaW5nLCBmaWxlbmFtZTogc3RyaW5nKSB7XHJcbiAgICBpZiAod2luZG93Lm5hdmlnYXRvciAmJiB3aW5kb3cubmF2aWdhdG9yLm1zU2F2ZU9yT3BlbkJsb2IpIHtcclxuICAgICAgY29uc3QgYmxvYiA9IG5ldyBCbG9iKFt0aGlzLmJhc2U2NFRvQXJyYXlCdWZmZXIoZGF0YSldLCB7IHR5cGUgfSk7XHJcbiAgICAgIHdpbmRvdy5uYXZpZ2F0b3IubXNTYXZlT3JPcGVuQmxvYihibG9iLCBmaWxlbmFtZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCB1cmwgPSAnZGF0YTonICsgdHlwZS50b1N0cmluZygpICsgJztiYXNlNjQsJyArIGRhdGE7XHJcbiAgICAgIGNvbnN0IGEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XHJcbiAgICAgIGEuc2V0QXR0cmlidXRlKCdocmVmJywgdXJsKTtcclxuICAgICAgYS5zZXRBdHRyaWJ1dGUoJ2Rvd25sb2FkJywgZmlsZW5hbWUpO1xyXG4gICAgICBhLnN0eWxlLnZpc2liaWxpdHkgPSAnaGlkZGVuJztcclxuICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTtcclxuICAgICAgYS5jbGljaygpO1xyXG4gICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGEpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICdET1dOTE9BREVEJ1xyXG4gIH1cclxuXHJcbiAgYmFzZTY0VG9BcnJheUJ1ZmZlcihiYXNlNjQ6IGFueSkge1xyXG4gICAgY29uc3QgYmluYXJ5U3RyaW5nID0gd2luZG93LmF0b2IoYmFzZTY0KTtcclxuICAgIGNvbnN0IGxlbiA9IGJpbmFyeVN0cmluZy5sZW5ndGg7XHJcbiAgICBjb25zdCBieXRlcyA9IG5ldyBVaW50OEFycmF5KGxlbik7XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgICAgIGJ5dGVzW2ldID0gYmluYXJ5U3RyaW5nLmNoYXJDb2RlQXQoaSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gYnl0ZXMuYnVmZmVyO1xyXG4gIH1cclxuXHJcbiAgZG93bmxvYWRUZW1wbGF0ZShjYXRlZ29yeUlkOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoe1xyXG4gICAgICB0b2tlbjogdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSxcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5lbnY/LnJpc2tHZXQgKyAndGVtcGxhdGUvcmlza0J1bGtVcGxvYWQmY2F0Z2VvcnlfaWQ9JyArIGNhdGVnb3J5SWQsIHsgaGVhZGVycywgb2JzZXJ2ZTogJ2V2ZW50cycsIHJlcG9ydFByb2dyZXNzOiB0cnVlIH0pO1xyXG4gIH1cclxuXHJcbiAgZG93bmxvYWRSZXNwb25zaWJpbGl0eVRlbXBsYXRlKHZlcnNpb24/OiBhbnkpIHtcclxuICAgIGNvbnNvbGUubG9nKFwiZW52XCIsIHRoaXMuZW52KTtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoe1xyXG4gICAgICB0b2tlbjogdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSxcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5lbnYuY29tcGxpYW5jZUdldCArICd0ZW1wbGF0ZS9yZXBvcnQnICsgKHZlcnNpb24gPT09ICd2MicgPyAnL3YyJyA6JycpICwgeyBoZWFkZXJzLCBvYnNlcnZlOiAnZXZlbnRzJywgcmVwb3J0UHJvZ3Jlc3M6IHRydWUgfSk7XHJcbiAgfVxyXG5cclxuIFxyXG4gIGFkZFJpc2socGF5bG9hZDogYW55KSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAucG9zdDxhbnk+KHRoaXMuZW52LnJpc2tQb3N0ICsgJ3Jpc2svQ3JlYXRlUmlzaycsIHBheWxvYWQsIHsgaGVhZGVycyB9KVxyXG4gICAgICAucGlwZShyZXRyeSgyKSk7XHJcbiAgfVxyXG5cclxuICBhZGRCdWxrUmlzayhwYXlsb2FkOiBhbnlbXSkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgLnBvc3Q8YW55Pih0aGlzLmVudi5yaXNrUG9zdCArICdyaXNrL0J1bGtVcGxvYWQnLCBwYXlsb2FkLCB7IGhlYWRlcnMgfSlcclxuICAgICAgLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Umlza0RldGFpbChyaXNrSWQ6IHN0cmluZykge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxhbnk+KHRoaXMuZW52LnJpc2tQb3N0ICsgJ3Jpc2svUmlza0RldGFpbHNCeUlkJlJpc2tJZD0nICsgcmlza0lkICsgJyZjYWxsRnJvbT1SSVNLX0VESVQnLCB7fSwgeyBoZWFkZXJzIH0pLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlUmlzayhyaXNrSWQ6IHN0cmluZywgcGF5bG9hZDogYW55KSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAucG9zdDxhbnk+KHRoaXMuZW52LnJpc2tQb3N0ICsgJ3Jpc2svQ3JlYXRlUmlzayZSaXNrSWQ9JyArIHJpc2tJZCwgcGF5bG9hZCwgeyBoZWFkZXJzIH0pXHJcbiAgICAgIC5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcbn1cclxuIl19
|