vcomply-workflow-engine 2.6.49 → 2.6.51
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 +481 -268
- package/bundles/vcomply-workflow-engine.umd.js.map +1 -1
- package/esm2015/lib/log-an-issue/log-an-issue.component.ngfactory.js +6 -6
- 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/checkpoint/checkpoints-questions/checkpoints-questions.component.ngfactory.js +4 -4
- package/esm2015/lib/sharedComponents/frequency/frequency-annual/frequency-annual.component.js +3 -2
- package/esm2015/lib/sharedComponents/frequency/frequency-annual/frequency-annual.component.ngfactory.js +15 -14
- 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 +3 -2
- package/esm2015/lib/sharedComponents/frequency/frequency-biannual/frequency-biannual.component.ngfactory.js +15 -14
- 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 +10 -2
- 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 +3 -2
- package/esm2015/lib/sharedComponents/frequency/frequency-daily/frequency-daily.component.ngfactory.js +12 -11
- 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 +3 -2
- package/esm2015/lib/sharedComponents/frequency/frequency-monthly/frequency-monthly.component.ngfactory.js +15 -14
- 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 +3 -2
- package/esm2015/lib/sharedComponents/frequency/frequency-one-time/frequency-one-time.component.ngfactory.js +17 -16
- 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 +3 -2
- package/esm2015/lib/sharedComponents/frequency/frequency-quarterly/frequency-quarterly.component.ngfactory.js +15 -14
- 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 +3 -2
- package/esm2015/lib/sharedComponents/frequency/frequency-weekly/frequency-weekly.component.ngfactory.js +15 -14
- package/esm2015/lib/sharedComponents/frequency/frequency-weekly/frequency-weekly.component.ngsummary.json +1 -1
- package/esm2015/lib/sharedComponents/system-task-selector/system-task-selector.component.js +55 -0
- package/esm2015/lib/sharedComponents/system-task-selector/system-task-selector.component.ngfactory.js +75 -0
- package/esm2015/lib/sharedComponents/system-task-selector/system-task-selector.component.ngsummary.json +1 -0
- package/esm2015/lib/sharedComponents/tab-selector/tab-selector.component.js +41 -0
- package/esm2015/lib/sharedComponents/tab-selector/tab-selector.component.ngfactory.js +23 -0
- package/esm2015/lib/sharedComponents/tab-selector/tab-selector.component.ngsummary.json +1 -0
- package/esm2015/lib/workflow-assessment/workflow-assessment.component.ngfactory.js +4 -4
- package/esm2015/lib/workflow-compliance/workflow-compliance.component.js +116 -43
- package/esm2015/lib/workflow-compliance/workflow-compliance.component.ngfactory.js +365 -324
- package/esm2015/lib/workflow-compliance/workflow-compliance.component.ngsummary.json +1 -1
- package/esm2015/lib/workflow-engine.module.js +6 -2
- 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 +2 -7
- 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/workflow-program.component.ngfactory.js +5 -5
- package/esm2015/lib/workflow-risk/workflow-risk.component.ngfactory.js +5 -5
- package/esm2015/lib/workflow-services/responsibility.service.js +34 -14
- 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 +190 -188
- package/esm2015/vcomply-workflow-engine.ngsummary.json +1 -1
- package/fesm2015/vcomply-workflow-engine.js +276 -78
- package/fesm2015/vcomply-workflow-engine.js.map +1 -1
- package/lib/sharedComponents/frequency/frequency-annual/frequency-annual.component.d.ts +1 -0
- package/lib/sharedComponents/frequency/frequency-biannual/frequency-biannual.component.d.ts +1 -0
- package/lib/sharedComponents/frequency/frequency-container/frequency-container.component.d.ts +1 -0
- package/lib/sharedComponents/frequency/frequency-daily/frequency-daily.component.d.ts +1 -0
- package/lib/sharedComponents/frequency/frequency-monthly/frequency-monthly.component.d.ts +1 -0
- package/lib/sharedComponents/frequency/frequency-one-time/frequency-one-time.component.d.ts +1 -0
- package/lib/sharedComponents/frequency/frequency-quarterly/frequency-quarterly.component.d.ts +1 -0
- package/lib/sharedComponents/frequency/frequency-weekly/frequency-weekly.component.d.ts +1 -0
- package/lib/sharedComponents/system-task-selector/system-task-selector.component.d.ts +19 -0
- package/lib/sharedComponents/system-task-selector/system-task-selector.component.ngfactory.d.ts +1 -0
- package/lib/sharedComponents/tab-selector/tab-selector.component.d.ts +17 -0
- package/lib/sharedComponents/tab-selector/tab-selector.component.ngfactory.d.ts +1 -0
- package/lib/workflow-compliance/workflow-compliance.component.d.ts +8 -0
- package/lib/workflow-policy/workflow-policy.component.d.ts +0 -1
- package/lib/workflow-services/responsibility.service.d.ts +1 -0
- package/package.json +1 -1
- package/vcomply-workflow-engine.d.ts +189 -187
- package/vcomply-workflow-engine.metadata.json +1 -1
|
@@ -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==
|
|
@@ -26,21 +26,31 @@ export class ResponsibilityService {
|
|
|
26
26
|
params, headers
|
|
27
27
|
}).pipe(retry(2));
|
|
28
28
|
}
|
|
29
|
+
// This API used to get the defined system responsibilities.
|
|
30
|
+
getSystemResponsibilityList(params) {
|
|
31
|
+
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
32
|
+
return this.http.get(this.env.responsibilitiesGet + 'system_defined_responsibility/list', {
|
|
33
|
+
params, headers
|
|
34
|
+
}).pipe(retry(0));
|
|
35
|
+
}
|
|
29
36
|
getOrganizationGroups(params) {
|
|
37
|
+
var _a;
|
|
30
38
|
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
31
|
-
return this.http.get(this.env.organizationGet + 'groupsList&status=1&type=compliance', {
|
|
39
|
+
return this.http.get(((_a = this.env) === null || _a === void 0 ? void 0 : _a.organizationGet) + 'groupsList&status=1&type=compliance', {
|
|
32
40
|
params, headers,
|
|
33
41
|
}).pipe(retry(2));
|
|
34
42
|
}
|
|
35
43
|
getOrganizationUsers() {
|
|
44
|
+
var _a;
|
|
36
45
|
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
37
|
-
return this.http.get(this.env.organizationGet + 'organizationUsers', {
|
|
46
|
+
return this.http.get(((_a = this.env) === null || _a === void 0 ? void 0 : _a.organizationGet) + 'organizationUsers', {
|
|
38
47
|
headers,
|
|
39
48
|
}).pipe(retry(2));
|
|
40
49
|
}
|
|
41
50
|
getOrganizationPeople(params) {
|
|
51
|
+
var _a;
|
|
42
52
|
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
43
|
-
return this.http.get(this.env.organizationGet + 'people', {
|
|
53
|
+
return this.http.get(((_a = this.env) === null || _a === void 0 ? void 0 : _a.organizationGet) + 'people', {
|
|
44
54
|
params, headers
|
|
45
55
|
}).pipe(retry(2));
|
|
46
56
|
}
|
|
@@ -77,51 +87,61 @@ export class ResponsibilityService {
|
|
|
77
87
|
}).pipe(retry(2));
|
|
78
88
|
}
|
|
79
89
|
getCategoriesUnderProgram(params) {
|
|
90
|
+
var _a;
|
|
80
91
|
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
81
|
-
return this.http.get(this.env.complianceGet + 'complianceCategory/CategoryListTree', {
|
|
92
|
+
return this.http.get(((_a = this.env) === null || _a === void 0 ? void 0 : _a.complianceGet) + 'complianceCategory/CategoryListTree', {
|
|
82
93
|
params, headers
|
|
83
94
|
}).pipe(retry(2));
|
|
84
95
|
}
|
|
85
96
|
getAssurance() {
|
|
97
|
+
var _a;
|
|
86
98
|
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
87
|
-
return this.http.get(this.env.assuranceGet + 'category/list&id=1', {
|
|
99
|
+
return this.http.get(((_a = this.env) === null || _a === void 0 ? void 0 : _a.assuranceGet) + 'category/list&id=1', {
|
|
88
100
|
headers,
|
|
89
101
|
}).pipe(retry(2));
|
|
90
102
|
}
|
|
91
103
|
getAssuranceForRequiresAudit() {
|
|
104
|
+
var _a;
|
|
92
105
|
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
93
|
-
return this.http.get(this.env.assuranceApi + 'Audit/Category/List/?mode=entrust_module', {
|
|
106
|
+
return this.http.get(((_a = this.env) === null || _a === void 0 ? void 0 : _a.assuranceApi) + 'Audit/Category/List/?mode=entrust_module', {
|
|
94
107
|
headers,
|
|
95
108
|
}).pipe(retry(2));
|
|
96
109
|
}
|
|
97
110
|
getRCDetailsOfFramework(rc_id, category_id) {
|
|
111
|
+
var _a;
|
|
98
112
|
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
99
|
-
return this.http.get(this.env.complianceGet + 'complianceCategory/CategoryRCTreeById&id=' + category_id + '&rc_id=' + rc_id, { headers });
|
|
113
|
+
return this.http.get(((_a = this.env) === null || _a === void 0 ? void 0 : _a.complianceGet) + 'complianceCategory/CategoryRCTreeById&id=' + category_id + '&rc_id=' + rc_id, { headers });
|
|
100
114
|
}
|
|
101
115
|
submitEntrust(entrust_body) {
|
|
116
|
+
var _a;
|
|
102
117
|
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
103
|
-
return this.http.post(this.env.compliancePost + 'createReport', entrust_body, { headers });
|
|
118
|
+
return this.http.post(((_a = this.env) === null || _a === void 0 ? void 0 : _a.compliancePost) + 'createReport', entrust_body, { headers });
|
|
104
119
|
}
|
|
105
120
|
updateEntrust(entrust_body, object_id, isDelegate) {
|
|
121
|
+
var _a;
|
|
106
122
|
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
107
|
-
return this.http.post(this.env.compliancePost + 'createReport&reportId=' + object_id + '&isDelegate=0', entrust_body, { headers });
|
|
123
|
+
return this.http.post(((_a = this.env) === null || _a === void 0 ? void 0 : _a.compliancePost) + 'createReport&reportId=' + object_id + '&isDelegate=0', entrust_body, { headers });
|
|
108
124
|
}
|
|
109
125
|
editResponsibility(objectId) {
|
|
126
|
+
var _a;
|
|
110
127
|
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
111
|
-
return this.http.get(this.env.complianceGet + 'complianceReport/reportById&id=' + objectId, { headers }).pipe(retry(2));
|
|
128
|
+
return this.http.get(((_a = this.env) === null || _a === void 0 ? void 0 : _a.complianceGet) + 'complianceReport/reportById&id=' + objectId, { headers }).pipe(retry(2));
|
|
112
129
|
}
|
|
113
130
|
addBulkResponsibility(entrust_body) {
|
|
131
|
+
var _a;
|
|
114
132
|
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
115
|
-
return this.http.post(this.env.compliancePost + 'import/create', entrust_body, { headers }).pipe(retry(2));
|
|
133
|
+
return this.http.post(((_a = this.env) === null || _a === void 0 ? void 0 : _a.compliancePost) + 'import/create', entrust_body, { headers }).pipe(retry(2));
|
|
116
134
|
}
|
|
117
135
|
uploadToNode(payload, des) {
|
|
136
|
+
var _a;
|
|
118
137
|
// const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
119
138
|
// return this.http.post<any[]>(this.env.fileUploadEndPoint + 'risk/responsibilityCenterList', { rc_id_arr: rcArray ?? [] }, { headers }).pipe(retry(2));
|
|
120
|
-
return this.http.post(this.env.fileUploadEndPoint + des, payload);
|
|
139
|
+
return this.http.post(((_a = this.env) === null || _a === void 0 ? void 0 : _a.fileUploadEndPoint) + des, payload);
|
|
121
140
|
}
|
|
122
141
|
getCategoryDetailsById(id) {
|
|
142
|
+
var _a;
|
|
123
143
|
const headers = new HttpHeaders().set('token', this.authService.getAuthorizationToken());
|
|
124
|
-
return this.http.get(this.env.complianceGet + 'complianceCategory/CategoryTreeById&id=' + id, { headers, }).pipe(retry(2));
|
|
144
|
+
return this.http.get(((_a = this.env) === null || _a === void 0 ? void 0 : _a.complianceGet) + 'complianceCategory/CategoryTreeById&id=' + id, { headers, }).pipe(retry(2));
|
|
125
145
|
}
|
|
126
146
|
getFrameWorkCount(params) {
|
|
127
147
|
let httpOptions = {};
|
|
@@ -183,4 +203,4 @@ ResponsibilityService.ctorParameters = () => [
|
|
|
183
203
|
{ type: AuthService },
|
|
184
204
|
{ type: Configurations, decorators: [{ type: Optional }] }
|
|
185
205
|
];
|
|
186
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzcG9uc2liaWxpdHkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL3dvcmtmbG93LXNlcnZpY2VzL3Jlc3BvbnNpYmlsaXR5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQWMsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFNN0MsTUFBTSxPQUFPLHFCQUFxQjtJQUloQyxZQUFvQixJQUFnQixFQUFVLFdBQXdCLEVBQWMsTUFBdUI7UUFBdkYsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUFVLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBRnRFLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBK0hqQixtQkFBYyxHQUFVLEVBQUUsQ0FBQztRQUMzQixrQkFBYSxHQUFVLEVBQUUsQ0FBQztRQUMxQiw4QkFBeUIsR0FBVSxFQUFFLENBQUM7UUE5SHBDLElBQUksTUFBTSxFQUFFO1lBQ1YsSUFBSSxDQUFDLEdBQUcsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDO1NBRTdCO0lBQ0gsQ0FBQztJQUVELDJCQUEyQixDQUFDLE1BQW1COztRQUM3QyxNQUFNLE9BQU8sR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLENBQUM7UUFDekYsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdB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LEdBQUcsa0NBQWtDLEdBQUcsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JKLENBQUM7Ozs7WUExTUYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUFUUSxVQUFVO1lBSVYsV0FBVztZQURYLGNBQWMsdUJBV29ELFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycywgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgcmV0cnkgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25zIH0gZnJvbSAnLi4vY29uZmlndXJhdGlvbnMnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4vYXV0aC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXNzZXNzbWVudExpc3QgfSBmcm9tICcuLi9zaGFyZWRDb21wb25lbnRzL2Fzc2Vzc21lbnQtbGlzdC9zZXJ2aWNlL2Fzc2Vzc21lbnQuaW50ZXJmYWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZXNwb25zaWJpbGl0eVNlcnZpY2Uge1xyXG4gIGVudiAhOiBhbnk7XHJcbiAgZGF0YVBlclBhZ2UgPSAzMDtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LCBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSwgQE9wdGlvbmFsKCkgY29uZmlnPzogQ29uZmlndXJhdGlvbnMpIHtcclxuICAgIGlmIChjb25maWcpIHtcclxuICAgICAgdGhpcy5lbnYgPSBjb25maWcuZW52Q29uZmlnO1xyXG5cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldFJlc3BvbnNpYmlsaXR5Q2VudGVyTGlzdChwYXJhbXM/OiBIdHRwUGFyYW1zKSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55W10+KHRoaXMuZW52Py5jb21wbGlhbmNlR2V0ICsgJ3Jlc3BvbnNpYmlsaXR5Q2VudGVyVHJlZScsIHtcclxuICAgICAgcGFyYW1zLCBoZWFkZXJzXHJcbiAgICB9KS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG5cclxuICBnZXRPcmdhbml6YXRpb25Hcm91cHMocGFyYW1zPzogSHR0cFBhcmFtcykge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueVtdPih0aGlzLmVudi5vcmdhbml6YXRpb25HZXQgKyAnZ3JvdXBzTGlzdCZzdGF0dXM9MSZ0eXBlPWNvbXBsaWFuY2UnLCB7XHJcbiAgICAgIHBhcmFtcywgaGVhZGVycyxcclxuICAgIH0pLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuXHJcbiAgZ2V0T3JnYW5pemF0aW9uVXNlcnMoKSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55W10+KHRoaXMuZW52Lm9yZ2FuaXphdGlvbkdldCArICdvcmdhbml6YXRpb25Vc2VycycsIHtcclxuICAgICAgaGVhZGVycyxcclxuICAgIH0pLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuXHJcbiAgZ2V0T3JnYW5pemF0aW9uUGVvcGxlKHBhcmFtcz86IEh0dHBQYXJhbXMpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnlbXT4odGhpcy5lbnYub3JnYW5pemF0aW9uR2V0ICsgJ3Blb3BsZScsIHtcclxuICAgICAgcGFyYW1zLCBoZWFkZXJzXHJcbiAgICB9KS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG4gIGdldEFzc2lnbm9yc0xpc3QocGFyYW1zPzogSHR0cFBhcmFtcykge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueVtdPih0aGlzLmVudj8ub3JnYW5pemF0aW9uR2V0ICsgJ29yZ2FuaXphdGlvblVzZXJzJmlzT25CZWhhbGY9MScsIHtcclxuICAgICAgcGFyYW1zLCBoZWFkZXJzXHJcbiAgICB9KS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG4gIGdldENhdGVnb3JpZXNMaXN0KCkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueVtdPih0aGlzLmVudj8uY29tcGxpYW5jZUdldCArICdjb21wbGlhbmNlQ2F0ZWdvcnkvQ2F0ZWdvcnlMaXN0VHJlZScsIHtcclxuICAgICAgaGVhZGVycyxcclxuICAgIH0pLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuICBnZXRQcm9ncmFtc0xpc3QocGFyYW1zOiBIdHRwUGFyYW1zLCBpZHM/OiBhbnkpIHtcclxuICAgIGxldCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgY29uc3QgcHJvZ3JhbUlkID0ge3Byb2dyYW1JZDogaWRzfTtcclxuICAgIGlmKGlkcz8ubGVuZ3RoKSB7XHJcbiAgICAgIGhlYWRlcnMgPSBoZWFkZXJzLmFwcGVuZCgncGF5bG9hZC1vYmplY3QnLEpTT04uc3RyaW5naWZ5KHByb2dyYW1JZCkpO1xyXG5cclxuICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PGFueVtdPih0aGlzLmVudj8uY29tcGxpYW5jZVBvc3QgKyAnY29tcGxpYW5jZUNhdGVnb3J5L3Byb2dyYW1MaXN0Jyxwcm9ncmFtSWQsIHtwYXJhbXMsIGhlYWRlcnN9KS5waXBlKHJldHJ5KDIpKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnlbXT4odGhpcy5lbnYuY29tcGxpYW5jZUdldCArICdjb21wbGlhbmNlQ2F0ZWdvcnkvcHJvZ3JhbUxpc3QnLCB7XHJcbiAgICAgIHBhcmFtcywgaGVhZGVyc1xyXG4gICAgfSkucGlwZShyZXRyeSgyKSk7XHJcbiAgfVxyXG5cclxuICBnZXRQcm9ncmFtc0xpc3RDb3VudChwYXJhbXM6IEh0dHBQYXJhbXMsIGlkcz86IGFueSkge1xyXG4gICAgbGV0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnlbXT4odGhpcy5lbnYuY29tcGxpYW5jZUdldCArICdjb21wbGlhbmNlQ2F0ZWdvcnkvcHJvZ3JhbUxpc3RDb3VudCcsIHtcclxuICAgICAgcGFyYW1zLCBoZWFkZXJzXHJcbiAgICB9KS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcbiAgZ2V0Q2F0ZWdvcmllc1VuZGVyUHJvZ3JhbShwYXJhbXM6IEh0dHBQYXJhbXMpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnlbXT4odGhpcy5lbnYuY29tcGxpYW5jZUdldCArICdjb21wbGlhbmNlQ2F0ZWdvcnkvQ2F0ZWdvcnlMaXN0VHJlZScsIHtcclxuICAgICAgcGFyYW1zLCBoZWFkZXJzXHJcbiAgICB9KS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcbiAgZ2V0QXNzdXJhbmNlKCkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueVtdPih0aGlzLmVudi5hc3N1cmFuY2VHZXQgKyAnY2F0ZWdvcnkvbGlzdCZpZD0xJywge1xyXG4gICAgICBoZWFkZXJzLFxyXG4gICAgfSkucGlwZShyZXRyeSgyKSk7XHJcbiAgfVxyXG5cclxuICBnZXRBc3N1cmFuY2VGb3JSZXF1aXJlc0F1ZGl0KCkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueVtdPih0aGlzLmVudi5hc3N1cmFuY2VBcGkgKyAnQXVkaXQvQ2F0ZWdvcnkvTGlzdC8/bW9kZT1lbnRydXN0X21vZHVsZScsIHtcclxuICAgICAgaGVhZGVycyxcclxuICAgIH0pLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuXHJcbiAgZ2V0UkNEZXRhaWxzT2ZGcmFtZXdvcmsocmNfaWQ6IGFueSwgY2F0ZWdvcnlfaWQ6IGFueSkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuZW52LmNvbXBsaWFuY2VHZXQgKyAnY29tcGxpYW5jZUNhdGVnb3J5L0NhdGVnb3J5UkNUcmVlQnlJZCZpZD0nICsgY2F0ZWdvcnlfaWQgKyAnJnJjX2lkPScgKyByY19pZCwgeyBoZWFkZXJzIH0pO1xyXG4gIH1cclxuXHJcbiAgc3VibWl0RW50cnVzdChlbnRydXN0X2JvZHk6IGFueSkge1xyXG5cclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QodGhpcy5lbnYuY29tcGxpYW5jZVBvc3QgKyAnY3JlYXRlUmVwb3J0JywgZW50cnVzdF9ib2R5LCB7IGhlYWRlcnMgfSk7XHJcbiAgfVxyXG4gIHVwZGF0ZUVudHJ1c3QoZW50cnVzdF9ib2R5OiBhbnksIG9iamVjdF9pZDogYW55LCBpc0RlbGVnYXRlOiBhbnkpIHtcclxuXHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHRoaXMuZW52LmNvbXBsaWFuY2VQb3N0ICsgJ2NyZWF0ZVJlcG9ydCZyZXBvcnRJZD0nICsgb2JqZWN0X2lkICsgJyZpc0RlbGVnYXRlPTAnLCBlbnRydXN0X2JvZHksIHsgaGVhZGVycyB9KTtcclxuICB9XHJcblxyXG4gIGVkaXRSZXNwb25zaWJpbGl0eShvYmplY3RJZDogYW55KSB7XHJcblxyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuZW52LmNvbXBsaWFuY2VHZXQgKyAnY29tcGxpYW5jZVJlcG9ydC9yZXBvcnRCeUlkJmlkPScgKyBvYmplY3RJZCwgeyBoZWFkZXJzIH0pLnBpcGUocmV0cnkoMikpO1xyXG5cclxuICB9XHJcblxyXG4gIGFkZEJ1bGtSZXNwb25zaWJpbGl0eShlbnRydXN0X2JvZHk6IGFueSkge1xyXG5cclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QodGhpcy5lbnYuY29tcGxpYW5jZVBvc3QgKyAnaW1wb3J0L2NyZWF0ZScsIGVudHJ1c3RfYm9keSwgeyBoZWFkZXJzIH0pLnBpcGUocmV0cnkoMikpO1xyXG5cclxuICB9XHJcblxyXG4gIHVwbG9hZFRvTm9kZShwYXlsb2FkOiBhbnksIGRlczogYW55KSB7XHJcbiAgICAvLyBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgLy8gcmV0dXJuIHRoaXMuaHR0cC5wb3N0PGFueVtdPih0aGlzLmVudi5maWxlVXBsb2FkRW5kUG9pbnQgKyAncmlzay9yZXNwb25zaWJpbGl0eUNlbnRlckxpc3QnLCB7IHJjX2lkX2FycjogcmNBcnJheSA/PyBbXSB9LCB7IGhlYWRlcnMgfSkucGlwZShyZXRyeSgyKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8YW55Pih0aGlzLmVudi5maWxlVXBsb2FkRW5kUG9pbnQgKyBkZXMsIHBheWxvYWQpO1xyXG4gIH1cclxuXHJcbiAgZmlsZXNVcGxvYWRpbmc6IGFueVtdID0gW107XHJcbiAgZmlsZXNVcGxvYWRlZDogYW55W10gPSBbXTtcclxuICBmaWxlc1VwbG9hZGVkQW5kVXBsb2FkaW5nOiBhbnlbXSA9IFtdO1xyXG5cclxuXHJcbiAgZ2V0Q2F0ZWdvcnlEZXRhaWxzQnlJZChpZDogYW55KSB7XHJcblxyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueVtdPih0aGlzLmVudi5jb21wbGlhbmNlR2V0ICsgJ2NvbXBsaWFuY2VDYXRlZ29yeS9DYXRlZ29yeVRyZWVCeUlkJmlkPScgKyBpZCxcclxuICAgICAgeyBoZWFkZXJzLCB9KS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG4gIGdldEZyYW1lV29ya0NvdW50KHBhcmFtcz86IEh0dHBQYXJhbXMpIHtcclxuICAgIGxldCBodHRwT3B0aW9uczogYW55ID0ge307XHJcbiAgICBodHRwT3B0aW9ucy5oZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgaWYgKHBhcmFtcykge1xyXG4gICAgICBodHRwT3B0aW9ucy5wYXJhbXMgPSBwYXJhbXM7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnlbXT4odGhpcy5lbnYucHJvZ3JhbUVuZHBvaW50ICsgJy9mcmFtZXdvcmtjb3VudCcsIGh0dHBPcHRpb25zKS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG4gIGdldEZyYW1lV29ya0xpc3QocGFyYW1zOiBIdHRwUGFyYW1zKSB7XHJcbiAgICBsZXQgaHR0cE9wdGlvbnM6IGFueSA9IHt9O1xyXG4gICAgaHR0cE9wdGlvbnMuaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIGlmIChwYXJhbXMpIHtcclxuICAgICAgaHR0cE9wdGlvbnMucGFyYW1zID0gcGFyYW1zO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55W10+KHRoaXMuZW52LnByb2dyYW1FbmRwb2ludCArICcvZnJhbWV3b3JrJywgaHR0cE9wdGlvbnMpLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuICBnZXRGcmFtZXdvcmtTdWJDYXRlZ29yaWVzKGlkOiBhbnksIHBhcmFtczogSHR0cFBhcmFtcykge1xyXG4gICAgbGV0IGh0dHBPcHRpb25zOiBhbnkgPSB7fTtcclxuICAgIGh0dHBPcHRpb25zLmhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICBpZiAocGFyYW1zKSB7XHJcbiAgICAgIGh0dHBPcHRpb25zLnBhcmFtcyA9IHBhcmFtcztcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueVtdPih0aGlzLmVudi5wcm9ncmFtRW5kcG9pbnQgKyAnL2ZyYW1ld29yay8nICsgaWQsXHJcbiAgICAgIGh0dHBPcHRpb25zKS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG4gIGdldEZyYW1ld29ya0NvbnRyb2xzKGlkOiBhbnksIHBhcmFtczogSHR0cFBhcmFtcykge1xyXG4gICAgbGV0IGh0dHBPcHRpb25zOiBhbnkgPSB7fTtcclxuICAgIGh0dHBPcHRpb25zLmhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICBpZiAocGFyYW1zKSB7XHJcbiAgICAgIGh0dHBPcHRpb25zLnBhcmFtcyA9IHBhcmFtcztcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueVtdPih0aGlzLmVudi5wcm9ncmFtRW5kcG9pbnQgKyAnL2NvbnRyb2xzLycgKyBpZCxcclxuICAgICAgaHR0cE9wdGlvbnMpLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuXHJcblxyXG5cclxuICBmaWxlVXBsb2FkKGZpbGU6IGFueSkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh0aGlzLmVudi5jb21wbGlhbmNlUG9zdCArICdmaWxlL3VwbG9hZCcsIGZpbGUsIHsgaGVhZGVycyB9KS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG5cclxuICBnZXRBc3Nlc3NtZW50Q2F0ZWdvcnkocGF5bG9hZDogYW55LCBwcm9ncmFtX2lkcz86IHN0cmluZykge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh0aGlzLmVudi5hc3Nlc3NtZW50RW5wb2ludCArICdjYXRlZ29yeS9saXN0JmlzQ3JlYXRlUmVzcG9uc2liaWxpdHk9dHJ1ZScgKyAocHJvZ3JhbV9pZHMgPyAnJnByb2dyYW1faWRzPScgKyBwcm9ncmFtX2lkcyA6ICcnKSwgcGF5bG9hZCwgeyBoZWFkZXJzIH0pLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuXHJcbiAgZ2V0QXNzZXNzbWVudExpc3QocGF5bG9hZDogYW55LCBpZDogc3RyaW5nLCBwcm9ncmFtX2lkcz86IHN0cmluZykge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxBcnJheTxBc3Nlc3NtZW50TGlzdD4+KHRoaXMuZW52LmFzc2Vzc21lbnRFbnBvaW50ICsgJ2Fzc2Vzc21lbnQvc2VsZWN0QXNzZXNzbWVudCZpc0NyZWF0ZVJlc3BvbnNpYmlsaXR5PXRydWUmY2F0aWQ9JyArIGlkICsgKHByb2dyYW1faWRzID8gJyZwcm9ncmFtX2lkcz0nICsgcHJvZ3JhbV9pZHMgOiAnJyksIHBheWxvYWQsIHsgaGVhZGVycyB9KS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG4gIGdldEFzc2Vzc21lbnREZXRhaWxzQnlJRChpZDogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEFycmF5PEFzc2Vzc21lbnRMaXN0Pj4odGhpcy5lbnYuYXNzZXNzbWVudEVucG9pbnQgKyAnYXNzZXNzbWVudC9nZXRBc3Nlc3NtZW50QnlJZCZpZD0nICsgaWQsIHt9LCB7IGhlYWRlcnMgfSkucGlwZShyZXRyeSgyKSk7XHJcbiAgfVxyXG5cclxuXHJcbn1cclxuIl19
|
|
206
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzcG9uc2liaWxpdHkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL3dvcmtmbG93LXNlcnZpY2VzL3Jlc3BvbnNpYmlsaXR5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQWMsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFNN0MsTUFBTSxPQUFPLHFCQUFxQjtJQUloQyxZQUFvQixJQUFnQixFQUFVLFdBQXdCLEVBQWMsTUFBdUI7UUFBdkYsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUFVLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBRnRFLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBd0lqQixtQkFBYyxHQUFVLEVBQUUsQ0FBQztRQUMzQixrQkFBYSxHQUFVLEVBQUUsQ0FBQztRQUMxQiw4QkFBeUIsR0FBVSxFQUFFLENBQUM7UUF2SXBDLElBQUksTUFBTSxFQUFFO1lBQ1YsSUFBSSxDQUFDLEdBQUcsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDO1NBRTdCO0lBQ0gsQ0FBQztJQUVELDJCQUEyQixDQUFDLE1BQW1COztRQUM3QyxNQUFNLE9BQU8sR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLENBQUM7UUFDekYsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdB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LHFCQUFxQixFQUFFLENBQUMsQ0FBQztRQUN6RixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUF3QixJQUFJLENBQUMsR0FBRyxDQUFDLGlCQUFpQixHQUFHLGdFQUFnRSxHQUFHLEVBQUUsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsZUFBZSxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDN08sQ0FBQztJQUVELHdCQUF3QixDQUFDLEVBQVU7UUFDakMsTUFBTSxPQUFPLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO1FBQ3pGLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQXdCLElBQUksQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEdBQUcsa0NBQWtDLEdBQUcsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JKLENBQUM7Ozs7WUFuTkYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUFUUSxVQUFVO1lBSVYsV0FBVztZQURYLGNBQWMsdUJBV29ELFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycywgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgcmV0cnkgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25zIH0gZnJvbSAnLi4vY29uZmlndXJhdGlvbnMnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4vYXV0aC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXNzZXNzbWVudExpc3QgfSBmcm9tICcuLi9zaGFyZWRDb21wb25lbnRzL2Fzc2Vzc21lbnQtbGlzdC9zZXJ2aWNlL2Fzc2Vzc21lbnQuaW50ZXJmYWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZXNwb25zaWJpbGl0eVNlcnZpY2Uge1xyXG4gIGVudiAhOiBhbnk7XHJcbiAgZGF0YVBlclBhZ2UgPSAzMDtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LCBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSwgQE9wdGlvbmFsKCkgY29uZmlnPzogQ29uZmlndXJhdGlvbnMpIHtcclxuICAgIGlmIChjb25maWcpIHtcclxuICAgICAgdGhpcy5lbnYgPSBjb25maWcuZW52Q29uZmlnO1xyXG5cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldFJlc3BvbnNpYmlsaXR5Q2VudGVyTGlzdChwYXJhbXM/OiBIdHRwUGFyYW1zKSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55W10+KHRoaXMuZW52Py5jb21wbGlhbmNlR2V0ICsgJ3Jlc3BvbnNpYmlsaXR5Q2VudGVyVHJlZScsIHtcclxuICAgICAgcGFyYW1zLCBoZWFkZXJzXHJcbiAgICB9KS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcbiBcclxuICAvLyBUaGlzIEFQSSB1c2VkIHRvIGdldCB0aGUgZGVmaW5lZCBzeXN0ZW0gcmVzcG9uc2liaWxpdGllcy5cclxuICBnZXRTeXN0ZW1SZXNwb25zaWJpbGl0eUxpc3QocGFyYW1zPzogSHR0cFBhcmFtcykge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueVtdPih0aGlzLmVudi5yZXNwb25zaWJpbGl0aWVzR2V0ICsgJ3N5c3RlbV9kZWZpbmVkX3Jlc3BvbnNpYmlsaXR5L2xpc3QnLCB7XHJcbiAgICAgIHBhcmFtcywgaGVhZGVyc1xyXG4gICAgfSkucGlwZShyZXRyeSgwKSk7XHJcbiAgfVxyXG5cclxuXHJcbiAgZ2V0T3JnYW5pemF0aW9uR3JvdXBzKHBhcmFtcz86IEh0dHBQYXJhbXMpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnlbXT4odGhpcy5lbnY/Lm9yZ2FuaXphdGlvbkdldCArICdncm91cHNMaXN0JnN0YXR1cz0xJnR5cGU9Y29tcGxpYW5jZScsIHtcclxuICAgICAgcGFyYW1zLCBoZWFkZXJzLFxyXG4gICAgfSkucGlwZShyZXRyeSgyKSk7XHJcbiAgfVxyXG5cclxuICBnZXRPcmdhbml6YXRpb25Vc2VycygpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnlbXT4odGhpcy5lbnY/Lm9yZ2FuaXphdGlvbkdldCArICdvcmdhbml6YXRpb25Vc2VycycsIHtcclxuICAgICAgaGVhZGVycyxcclxuICAgIH0pLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuXHJcbiAgZ2V0T3JnYW5pemF0aW9uUGVvcGxlKHBhcmFtcz86IEh0dHBQYXJhbXMpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnlbXT4odGhpcy5lbnY/Lm9yZ2FuaXphdGlvbkdldCArICdwZW9wbGUnLCB7XHJcbiAgICAgIHBhcmFtcywgaGVhZGVyc1xyXG4gICAgfSkucGlwZShyZXRyeSgyKSk7XHJcbiAgfVxyXG5cclxuICBnZXRBc3NpZ25vcnNMaXN0KHBhcmFtcz86IEh0dHBQYXJhbXMpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnlbXT4odGhpcy5lbnY/Lm9yZ2FuaXphdGlvbkdldCArICdvcmdhbml6YXRpb25Vc2VycyZpc09uQmVoYWxmPTEnLCB7XHJcbiAgICAgIHBhcmFtcywgaGVhZGVyc1xyXG4gICAgfSkucGlwZShyZXRyeSgyKSk7XHJcbiAgfVxyXG5cclxuICBnZXRDYXRlZ29yaWVzTGlzdCgpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnlbXT4odGhpcy5lbnY/LmNvbXBsaWFuY2VHZXQgKyAnY29tcGxpYW5jZUNhdGVnb3J5L0NhdGVnb3J5TGlzdFRyZWUnLCB7XHJcbiAgICAgIGhlYWRlcnMsXHJcbiAgICB9KS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcbiAgZ2V0UHJvZ3JhbXNMaXN0KHBhcmFtczogSHR0cFBhcmFtcywgaWRzPzogYW55KSB7XHJcbiAgICBsZXQgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIGNvbnN0IHByb2dyYW1JZCA9IHtwcm9ncmFtSWQ6IGlkc307XHJcbiAgICBpZihpZHM/Lmxlbmd0aCkge1xyXG4gICAgICBoZWFkZXJzID0gaGVhZGVycy5hcHBlbmQoJ3BheWxvYWQtb2JqZWN0JyxKU09OLnN0cmluZ2lmeShwcm9ncmFtSWQpKTtcclxuXHJcbiAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxhbnlbXT4odGhpcy5lbnY/LmNvbXBsaWFuY2VQb3N0ICsgJ2NvbXBsaWFuY2VDYXRlZ29yeS9wcm9ncmFtTGlzdCcscHJvZ3JhbUlkLCB7cGFyYW1zLCBoZWFkZXJzfSkucGlwZShyZXRyeSgyKSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55W10+KHRoaXMuZW52LmNvbXBsaWFuY2VHZXQgKyAnY29tcGxpYW5jZUNhdGVnb3J5L3Byb2dyYW1MaXN0Jywge1xyXG4gICAgICBwYXJhbXMsIGhlYWRlcnNcclxuICAgIH0pLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuXHJcblxyXG4gIGdldFByb2dyYW1zTGlzdENvdW50KHBhcmFtczogSHR0cFBhcmFtcywgaWRzPzogYW55KSB7XHJcbiAgICBsZXQgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueVtdPih0aGlzLmVudi5jb21wbGlhbmNlR2V0ICsgJ2NvbXBsaWFuY2VDYXRlZ29yeS9wcm9ncmFtTGlzdENvdW50Jywge1xyXG4gICAgICBwYXJhbXMsIGhlYWRlcnNcclxuICAgIH0pLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuICBnZXRDYXRlZ29yaWVzVW5kZXJQcm9ncmFtKHBhcmFtczogSHR0cFBhcmFtcykge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueVtdPih0aGlzLmVudj8uY29tcGxpYW5jZUdldCArICdjb21wbGlhbmNlQ2F0ZWdvcnkvQ2F0ZWdvcnlMaXN0VHJlZScsIHtcclxuICAgICAgcGFyYW1zLCBoZWFkZXJzXHJcbiAgICB9KS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcbiAgZ2V0QXNzdXJhbmNlKCkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueVtdPih0aGlzLmVudj8uYXNzdXJhbmNlR2V0ICsgJ2NhdGVnb3J5L2xpc3QmaWQ9MScsIHtcclxuICAgICAgaGVhZGVycyxcclxuICAgIH0pLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuXHJcbiAgZ2V0QXNzdXJhbmNlRm9yUmVxdWlyZXNBdWRpdCgpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnlbXT4odGhpcy5lbnY/LmFzc3VyYW5jZUFwaSArICdBdWRpdC9DYXRlZ29yeS9MaXN0Lz9tb2RlPWVudHJ1c3RfbW9kdWxlJywge1xyXG4gICAgICBoZWFkZXJzLFxyXG4gICAgfSkucGlwZShyZXRyeSgyKSk7XHJcbiAgfVxyXG5cclxuICBnZXRSQ0RldGFpbHNPZkZyYW1ld29yayhyY19pZDogYW55LCBjYXRlZ29yeV9pZDogYW55KSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5lbnY/LmNvbXBsaWFuY2VHZXQgKyAnY29tcGxpYW5jZUNhdGVnb3J5L0NhdGVnb3J5UkNUcmVlQnlJZCZpZD0nICsgY2F0ZWdvcnlfaWQgKyAnJnJjX2lkPScgKyByY19pZCwgeyBoZWFkZXJzIH0pO1xyXG4gIH1cclxuXHJcbiAgc3VibWl0RW50cnVzdChlbnRydXN0X2JvZHk6IGFueSkge1xyXG5cclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QodGhpcy5lbnY/LmNvbXBsaWFuY2VQb3N0ICsgJ2NyZWF0ZVJlcG9ydCcsIGVudHJ1c3RfYm9keSwgeyBoZWFkZXJzIH0pO1xyXG4gIH1cclxuICB1cGRhdGVFbnRydXN0KGVudHJ1c3RfYm9keTogYW55LCBvYmplY3RfaWQ6IGFueSwgaXNEZWxlZ2F0ZTogYW55KSB7XHJcblxyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh0aGlzLmVudj8uY29tcGxpYW5jZVBvc3QgKyAnY3JlYXRlUmVwb3J0JnJlcG9ydElkPScgKyBvYmplY3RfaWQgKyAnJmlzRGVsZWdhdGU9MCcsIGVudHJ1c3RfYm9keSwgeyBoZWFkZXJzIH0pO1xyXG4gIH1cclxuXHJcbiAgZWRpdFJlc3BvbnNpYmlsaXR5KG9iamVjdElkOiBhbnkpIHtcclxuXHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5lbnY/LmNvbXBsaWFuY2VHZXQgKyAnY29tcGxpYW5jZVJlcG9ydC9yZXBvcnRCeUlkJmlkPScgKyBvYmplY3RJZCwgeyBoZWFkZXJzIH0pLnBpcGUocmV0cnkoMikpO1xyXG5cclxuICB9XHJcblxyXG4gIGFkZEJ1bGtSZXNwb25zaWJpbGl0eShlbnRydXN0X2JvZHk6IGFueSkge1xyXG5cclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QodGhpcy5lbnY/LmNvbXBsaWFuY2VQb3N0ICsgJ2ltcG9ydC9jcmVhdGUnLCBlbnRydXN0X2JvZHksIHsgaGVhZGVycyB9KS5waXBlKHJldHJ5KDIpKTtcclxuXHJcbiAgfVxyXG5cclxuICB1cGxvYWRUb05vZGUocGF5bG9hZDogYW55LCBkZXM6IGFueSkge1xyXG4gICAgLy8gY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIC8vIHJldHVybiB0aGlzLmh0dHAucG9zdDxhbnlbXT4odGhpcy5lbnYuZmlsZVVwbG9hZEVuZFBvaW50ICsgJ3Jpc2svcmVzcG9uc2liaWxpdHlDZW50ZXJMaXN0JywgeyByY19pZF9hcnI6IHJjQXJyYXkgPz8gW10gfSwgeyBoZWFkZXJzIH0pLnBpcGUocmV0cnkoMikpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PGFueT4odGhpcy5lbnY/LmZpbGVVcGxvYWRFbmRQb2ludCArIGRlcywgcGF5bG9hZCk7XHJcbiAgfVxyXG5cclxuICBmaWxlc1VwbG9hZGluZzogYW55W10gPSBbXTtcclxuICBmaWxlc1VwbG9hZGVkOiBhbnlbXSA9IFtdO1xyXG4gIGZpbGVzVXBsb2FkZWRBbmRVcGxvYWRpbmc6IGFueVtdID0gW107XHJcblxyXG5cclxuICBnZXRDYXRlZ29yeURldGFpbHNCeUlkKGlkOiBhbnkpIHtcclxuXHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55W10+KHRoaXMuZW52Py5jb21wbGlhbmNlR2V0ICsgJ2NvbXBsaWFuY2VDYXRlZ29yeS9DYXRlZ29yeVRyZWVCeUlkJmlkPScgKyBpZCxcclxuICAgICAgeyBoZWFkZXJzLCB9KS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG4gIGdldEZyYW1lV29ya0NvdW50KHBhcmFtcz86IEh0dHBQYXJhbXMpIHtcclxuICAgIGxldCBodHRwT3B0aW9uczogYW55ID0ge307XHJcbiAgICBodHRwT3B0aW9ucy5oZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgaWYgKHBhcmFtcykge1xyXG4gICAgICBodHRwT3B0aW9ucy5wYXJhbXMgPSBwYXJhbXM7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnlbXT4odGhpcy5lbnYucHJvZ3JhbUVuZHBvaW50ICsgJy9mcmFtZXdvcmtjb3VudCcsIGh0dHBPcHRpb25zKS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG4gIGdldEZyYW1lV29ya0xpc3QocGFyYW1zOiBIdHRwUGFyYW1zKSB7XHJcbiAgICBsZXQgaHR0cE9wdGlvbnM6IGFueSA9IHt9O1xyXG4gICAgaHR0cE9wdGlvbnMuaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIGlmIChwYXJhbXMpIHtcclxuICAgICAgaHR0cE9wdGlvbnMucGFyYW1zID0gcGFyYW1zO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55W10+KHRoaXMuZW52LnByb2dyYW1FbmRwb2ludCArICcvZnJhbWV3b3JrJywgaHR0cE9wdGlvbnMpLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuICBnZXRGcmFtZXdvcmtTdWJDYXRlZ29yaWVzKGlkOiBhbnksIHBhcmFtczogSHR0cFBhcmFtcykge1xyXG4gICAgbGV0IGh0dHBPcHRpb25zOiBhbnkgPSB7fTtcclxuICAgIGh0dHBPcHRpb25zLmhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICBpZiAocGFyYW1zKSB7XHJcbiAgICAgIGh0dHBPcHRpb25zLnBhcmFtcyA9IHBhcmFtcztcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueVtdPih0aGlzLmVudi5wcm9ncmFtRW5kcG9pbnQgKyAnL2ZyYW1ld29yay8nICsgaWQsXHJcbiAgICAgIGh0dHBPcHRpb25zKS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG4gIGdldEZyYW1ld29ya0NvbnRyb2xzKGlkOiBhbnksIHBhcmFtczogSHR0cFBhcmFtcykge1xyXG4gICAgbGV0IGh0dHBPcHRpb25zOiBhbnkgPSB7fTtcclxuICAgIGh0dHBPcHRpb25zLmhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ3Rva2VuJywgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKSk7XHJcbiAgICBpZiAocGFyYW1zKSB7XHJcbiAgICAgIGh0dHBPcHRpb25zLnBhcmFtcyA9IHBhcmFtcztcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueVtdPih0aGlzLmVudi5wcm9ncmFtRW5kcG9pbnQgKyAnL2NvbnRyb2xzLycgKyBpZCxcclxuICAgICAgaHR0cE9wdGlvbnMpLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuXHJcblxyXG5cclxuICBmaWxlVXBsb2FkKGZpbGU6IGFueSkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh0aGlzLmVudi5jb21wbGlhbmNlUG9zdCArICdmaWxlL3VwbG9hZCcsIGZpbGUsIHsgaGVhZGVycyB9KS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG5cclxuICBnZXRBc3Nlc3NtZW50Q2F0ZWdvcnkocGF5bG9hZDogYW55LCBwcm9ncmFtX2lkcz86IHN0cmluZykge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh0aGlzLmVudi5hc3Nlc3NtZW50RW5wb2ludCArICdjYXRlZ29yeS9saXN0JmlzQ3JlYXRlUmVzcG9uc2liaWxpdHk9dHJ1ZScgKyAocHJvZ3JhbV9pZHMgPyAnJnByb2dyYW1faWRzPScgKyBwcm9ncmFtX2lkcyA6ICcnKSwgcGF5bG9hZCwgeyBoZWFkZXJzIH0pLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuXHJcbiAgZ2V0QXNzZXNzbWVudExpc3QocGF5bG9hZDogYW55LCBpZDogc3RyaW5nLCBwcm9ncmFtX2lkcz86IHN0cmluZykge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgndG9rZW4nLCB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxBcnJheTxBc3Nlc3NtZW50TGlzdD4+KHRoaXMuZW52LmFzc2Vzc21lbnRFbnBvaW50ICsgJ2Fzc2Vzc21lbnQvc2VsZWN0QXNzZXNzbWVudCZpc0NyZWF0ZVJlc3BvbnNpYmlsaXR5PXRydWUmY2F0aWQ9JyArIGlkICsgKHByb2dyYW1faWRzID8gJyZwcm9ncmFtX2lkcz0nICsgcHJvZ3JhbV9pZHMgOiAnJyksIHBheWxvYWQsIHsgaGVhZGVycyB9KS5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG4gIGdldEFzc2Vzc21lbnREZXRhaWxzQnlJRChpZDogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCd0b2tlbicsIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKCkpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEFycmF5PEFzc2Vzc21lbnRMaXN0Pj4odGhpcy5lbnYuYXNzZXNzbWVudEVucG9pbnQgKyAnYXNzZXNzbWVudC9nZXRBc3Nlc3NtZW50QnlJZCZpZD0nICsgaWQsIHt9LCB7IGhlYWRlcnMgfSkucGlwZShyZXRyeSgyKSk7XHJcbiAgfVxyXG5cclxuXHJcbn1cclxuIl19
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"moduleName":null,"summaries":[{"symbol":{"__symbol":0,"members":[]},"metadata":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbol":1,"members":[]}}]],"parameters":[{"__symbol":2,"members":[]},{"__symbol":3,"members":[]},{"__symbol":4,"members":[]}]}],"getResponsibilityCenterList":[{"__symbolic":"method"}],"getOrganizationGroups":[{"__symbolic":"method"}],"getOrganizationUsers":[{"__symbolic":"method"}],"getOrganizationPeople":[{"__symbolic":"method"}],"getAssignorsList":[{"__symbolic":"method"}],"getCategoriesList":[{"__symbolic":"method"}],"getProgramsList":[{"__symbolic":"method"}],"getProgramsListCount":[{"__symbolic":"method"}],"getCategoriesUnderProgram":[{"__symbolic":"method"}],"getAssurance":[{"__symbolic":"method"}],"getAssuranceForRequiresAudit":[{"__symbolic":"method"}],"getRCDetailsOfFramework":[{"__symbolic":"method"}],"submitEntrust":[{"__symbolic":"method"}],"updateEntrust":[{"__symbolic":"method"}],"editResponsibility":[{"__symbolic":"method"}],"addBulkResponsibility":[{"__symbolic":"method"}],"uploadToNode":[{"__symbolic":"method"}],"getCategoryDetailsById":[{"__symbolic":"method"}],"getFrameWorkCount":[{"__symbolic":"method"}],"getFrameWorkList":[{"__symbolic":"method"}],"getFrameworkSubCategories":[{"__symbolic":"method"}],"getFrameworkControls":[{"__symbolic":"method"}],"fileUpload":[{"__symbolic":"method"}],"getAssessmentCategory":[{"__symbolic":"method"}],"getAssessmentList":[{"__symbolic":"method"}],"getAssessmentDetailsByID":[{"__symbolic":"method"}]}},"type":{"summaryKind":3,"type":{"reference":{"__symbol":0,"members":[]},"diDeps":[{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":2,"members":[]}}}},{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":3,"members":[]}}}},{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":true,"token":{"identifier":{"reference":{"__symbol":4,"members":[]}}}}],"lifecycleHooks":[]}}}],"symbols":[{"__symbol":0,"name":"ResponsibilityService","filePath":"./responsibility.service"},{"__symbol":1,"name":"Optional","filePath":"@angular/core"},{"__symbol":2,"name":"HttpClient","filePath":"@angular/common/http/http"},{"__symbol":3,"name":"AuthService","filePath":"./auth.service"},{"__symbol":4,"name":"Configurations","filePath":"../configurations"}]}
|
|
1
|
+
{"moduleName":null,"summaries":[{"symbol":{"__symbol":0,"members":[]},"metadata":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbol":1,"members":[]}}]],"parameters":[{"__symbol":2,"members":[]},{"__symbol":3,"members":[]},{"__symbol":4,"members":[]}]}],"getResponsibilityCenterList":[{"__symbolic":"method"}],"getSystemResponsibilityList":[{"__symbolic":"method"}],"getOrganizationGroups":[{"__symbolic":"method"}],"getOrganizationUsers":[{"__symbolic":"method"}],"getOrganizationPeople":[{"__symbolic":"method"}],"getAssignorsList":[{"__symbolic":"method"}],"getCategoriesList":[{"__symbolic":"method"}],"getProgramsList":[{"__symbolic":"method"}],"getProgramsListCount":[{"__symbolic":"method"}],"getCategoriesUnderProgram":[{"__symbolic":"method"}],"getAssurance":[{"__symbolic":"method"}],"getAssuranceForRequiresAudit":[{"__symbolic":"method"}],"getRCDetailsOfFramework":[{"__symbolic":"method"}],"submitEntrust":[{"__symbolic":"method"}],"updateEntrust":[{"__symbolic":"method"}],"editResponsibility":[{"__symbolic":"method"}],"addBulkResponsibility":[{"__symbolic":"method"}],"uploadToNode":[{"__symbolic":"method"}],"getCategoryDetailsById":[{"__symbolic":"method"}],"getFrameWorkCount":[{"__symbolic":"method"}],"getFrameWorkList":[{"__symbolic":"method"}],"getFrameworkSubCategories":[{"__symbolic":"method"}],"getFrameworkControls":[{"__symbolic":"method"}],"fileUpload":[{"__symbolic":"method"}],"getAssessmentCategory":[{"__symbolic":"method"}],"getAssessmentList":[{"__symbolic":"method"}],"getAssessmentDetailsByID":[{"__symbolic":"method"}]}},"type":{"summaryKind":3,"type":{"reference":{"__symbol":0,"members":[]},"diDeps":[{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":2,"members":[]}}}},{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":3,"members":[]}}}},{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":true,"token":{"identifier":{"reference":{"__symbol":4,"members":[]}}}}],"lifecycleHooks":[]}}}],"symbols":[{"__symbol":0,"name":"ResponsibilityService","filePath":"./responsibility.service"},{"__symbol":1,"name":"Optional","filePath":"@angular/core"},{"__symbol":2,"name":"HttpClient","filePath":"@angular/common/http/http"},{"__symbol":3,"name":"AuthService","filePath":"./auth.service"},{"__symbol":4,"name":"Configurations","filePath":"../configurations"}]}
|