vcomply-workflow-engine 2.4.49 → 2.4.52

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.
Files changed (34) hide show
  1. package/bundles/vcomply-workflow-engine.umd.js +235 -85
  2. package/bundles/vcomply-workflow-engine.umd.js.map +1 -1
  3. package/esm2015/lib/interceptor/business-cycle.interceptor.js +15 -0
  4. package/esm2015/lib/interceptor/business-cycle.interceptor.ngsummary.json +1 -0
  5. package/esm2015/lib/sharedComponents/assessment-editor/components/add-page-details/add-page-details.component.js +6 -1
  6. package/esm2015/lib/sharedComponents/assessment-editor/services/validator.service.js +10 -7
  7. package/esm2015/lib/sharedComponents/program-listing/program-listing.component.js +4 -4
  8. package/esm2015/lib/sharedComponents/responsibility-centers-list/responsibility-centers-list.component.js +2 -2
  9. package/esm2015/lib/sharedComponents/responsibility-centers-list/responsibility-centers-list.component.ngfactory.js +2 -2
  10. package/esm2015/lib/workflow-compliance/workflow-compliance.component.js +159 -47
  11. package/esm2015/lib/workflow-compliance/workflow-compliance.component.ngfactory.js +1 -1
  12. package/esm2015/lib/workflow-compliance/workflow-compliance.component.ngsummary.json +1 -1
  13. package/esm2015/lib/workflow-engine-container/workflow-engine-container.component.js +9 -3
  14. package/esm2015/lib/workflow-engine-container/workflow-engine-container.component.ngfactory.js +3 -3
  15. package/esm2015/lib/workflow-engine.module.js +6 -2
  16. package/esm2015/lib/workflow-engine.module.ngfactory.js +34 -33
  17. package/esm2015/lib/workflow-engine.module.ngsummary.json +1 -1
  18. package/esm2015/lib/workflow-program/create-program-ui/user-group-list/user-group-list.component.js +2 -2
  19. package/esm2015/lib/workflow-program/create-program-ui/user-group-list/user-group-list.component.ngfactory.js +2 -2
  20. package/esm2015/lib/workflow-program/workflow-program.component.js +2 -2
  21. package/esm2015/lib/workflow-program/workflow-program.component.ngfactory.js +2 -2
  22. package/esm2015/lib/workflow-services/responsibility.service.js +3 -3
  23. package/esm2015/vcomply-workflow-engine.js +2 -1
  24. package/esm2015/vcomply-workflow-engine.ngsummary.json +1 -1
  25. package/fesm2015/vcomply-workflow-engine.js +206 -64
  26. package/fesm2015/vcomply-workflow-engine.js.map +1 -1
  27. package/lib/interceptor/business-cycle.interceptor.d.ts +5 -0
  28. package/lib/sharedComponents/assessment-editor/components/add-page-details/add-page-details.component.d.ts +1 -0
  29. package/lib/workflow-compliance/workflow-compliance.component.d.ts +4 -1
  30. package/lib/workflow-engine-container/workflow-engine-container.component.d.ts +1 -0
  31. package/lib/workflow-services/responsibility.service.d.ts +1 -1
  32. package/package.json +1 -1
  33. package/vcomply-workflow-engine.d.ts +1 -0
  34. package/vcomply-workflow-engine.metadata.json +1 -1
@@ -1076,8 +1076,8 @@ export function View_WorkflowProgramComponent_0(_l) { return i2.ɵvid(0, [i2.ɵp
1076
1076
  } if (("click" === en)) {
1077
1077
  var pd_4 = (i2.ɵnov(_v, 270).onClick() !== false);
1078
1078
  ad = (pd_4 && ad);
1079
- } return ad; }, null, null)), i2.ɵdid(270, 81920, null, 0, i11.ToolTipDirective, [i2.ElementRef, i2.Renderer2], { tooltipTitle: [0, "tooltipTitle"], placement: [1, "placement"], type: [2, "type"], tooltipMandatory: [3, "tooltipMandatory"] }, null), (_l()(), i2.ɵted(-1, null, ["\uE91F"])), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_45)), i2.ɵdid(273, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_62)), i2.ɵdid(275, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_84)), i2.ɵdid(277, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_90)), i2.ɵdid(279, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_91)), i2.ɵdid(281, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_92)), i2.ɵdid(283, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_93)), i2.ɵdid(285, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_94)), i2.ɵdid(287, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_95)), i2.ɵdid(289, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_96)), i2.ɵdid(291, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_97)), i2.ɵdid(293, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_98)), i2.ɵdid(295, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_99)), i2.ɵdid(297, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_100)), i2.ɵdid(299, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_101)), i2.ɵdid(301, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_102)), i2.ɵdid(303, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_103)), i2.ɵdid(305, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_104)), i2.ɵdid(307, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_105)), i2.ɵdid(309, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_106)), i2.ɵdid(311, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null)], function (_ck, _v) { var _co = _v.component; var currVal_7 = _co.programForm; _ck(_v, 8, 0, currVal_7); var currVal_8 = false; var currVal_9 = _co.sideElements.includes(_co.activeList); var currVal_10 = (((_co.controls == null) ? null : ((_co.controls.program_type == null) ? null : _co.controls.program_type.value)) > (-1)); var currVal_11 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/issue-type.svg"; _ck(_v, 12, 0, currVal_8, currVal_9, currVal_10, currVal_11); var currVal_19 = ((_co.constants == null) ? null : _co.constants.categoryType); _ck(_v, 18, 0, currVal_19); var currVal_20 = "program_type"; _ck(_v, 20, 0, currVal_20); var currVal_21 = false; var currVal_22 = _co.sideElements.includes(_co.activeList); var tmp_23_0; var currVal_23 = ((_co.controls == null) ? null : ((_co.controls.program_name == null) ? null : ((_co.controls.program_name.value == null) ? null : (((tmp_23_0 = _co.controls.program_name.value.trim()) == null) ? null : tmp_23_0.length)))); var currVal_24 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/what.svg"; _ck(_v, 24, 0, currVal_21, currVal_22, currVal_23, currVal_24); var currVal_32 = "program_name"; _ck(_v, 32, 0, currVal_32); var currVal_33 = (((_co.controls == null) ? null : ((_co.controls.program_name == null) ? null : _co.controls.program_name.errors)) && ((_co.controls == null) ? null : ((_co.controls.program_name == null) ? null : _co.controls.program_name.touched))); _ck(_v, 37, 0, currVal_33); var currVal_34 = _co.isNameExists; _ck(_v, 39, 0, currVal_34); var currVal_35 = i2.ɵunv(_v, 42, 0, i2.ɵnov(_v, 43).transform(((_co.controls == null) ? null : ((_co.controls.description_attachment == null) ? null : _co.controls.description_attachment.value)), 0, 2)); _ck(_v, 42, 0, currVal_35); var currVal_36 = (((_co.controls == null) ? null : ((_co.controls.description_attachment == null) ? null : ((_co.controls.description_attachment.value == null) ? null : _co.controls.description_attachment.value.length))) > 2); _ck(_v, 45, 0, currVal_36); var currVal_37 = true; _ck(_v, 47, 0, currVal_37); var currVal_38 = i2.ɵunv(_v, 51, 0, i2.ɵnov(_v, 52).transform(((_co.controls == null) ? null : ((_co.controls.description_attachment == null) ? null : _co.controls.description_attachment.value)), 2)); _ck(_v, 51, 0, currVal_38); var currVal_46 = ((_co.constants == null) ? null : _co.constants.description); _ck(_v, 54, 0, currVal_46); var currVal_47 = _co.editorData.programDescription; var currVal_48 = _ck(_v, 57, 0, true); _ck(_v, 56, 0, currVal_47, currVal_48); var currVal_49 = (_co.activeList === "OBJECTIVE"); var currVal_50 = (_co.sideElements.includes(_co.activeList) && (_co.activeList !== "OBJECTIVE")); var tmp_51_0; var currVal_51 = ((_co.controls == null) ? null : ((_co.controls.program_objective == null) ? null : ((_co.controls.program_objective.value == null) ? null : (((tmp_51_0 = _co.controls.program_objective.value.trim()) == null) ? null : tmp_51_0.length)))); var currVal_52 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/objectives.svg"; _ck(_v, 61, 0, currVal_49, currVal_50, currVal_51, currVal_52); var currVal_60 = ((_co.constants == null) ? null : _co.constants.objective); _ck(_v, 65, 0, currVal_60); var currVal_61 = _co.editorData.programObjective; var currVal_62 = _ck(_v, 68, 0, true); _ck(_v, 67, 0, currVal_61, currVal_62); var currVal_63 = (_co.activeList === "ROLE"); var currVal_64 = (_co.sideElements.includes(_co.activeList) && (_co.activeList !== "ROLE")); var currVal_65 = ((_co.controls == null) ? null : ((_co.controls.program_roles == null) ? null : ((_co.controls.program_roles.value == null) ? null : _co.controls.program_roles.value.length))); var currVal_66 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/roles.svg"; _ck(_v, 72, 0, currVal_63, currVal_64, currVal_65, currVal_66); var currVal_67 = "Role(s) let you specify the users that can be selected as Program owners and approvers."; var currVal_68 = "bottom"; var currVal_69 = "white"; var currVal_70 = true; _ck(_v, 78, 0, currVal_67, currVal_68, currVal_69, currVal_70); var currVal_71 = "Which user roles have access to this program?"; _ck(_v, 81, 0, currVal_71); var currVal_72 = ((_co.controls == null) ? null : ((_co.controls.program_roles == null) ? null : ((_co.controls.program_roles.value == null) ? null : _co.controls.program_roles.value.length))); _ck(_v, 83, 0, currVal_72); var currVal_73 = false; _ck(_v, 85, 0, currVal_73); var currVal_74 = true; _ck(_v, 87, 0, currVal_74); var currVal_75 = i2.ɵunv(_v, 91, 0, i2.ɵnov(_v, 92).transform(((_co.controls == null) ? null : ((_co.controls.program_roles == null) ? null : _co.controls.program_roles.value)), 1)); _ck(_v, 91, 0, currVal_75); var currVal_76 = (_co.activeList === "OWNER"); var currVal_77 = (_co.sideElements.includes(_co.activeList) && (_co.activeList !== "OWNER")); var currVal_78 = ((((_co.controls == null) ? null : ((_co.controls.program_owners.value == null) ? null : _co.controls.program_owners.value.length)) > 0) || (((_co.controls == null) ? null : ((_co.controls.program_owners_group.value == null) ? null : _co.controls.program_owners_group.value.length)) > 0)); var currVal_79 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/owner.svg"; _ck(_v, 94, 0, currVal_76, currVal_77, currVal_78, currVal_79); var currVal_80 = "An owner is a user responsible for managing a Program. By default, the Key Admin and all users designated as Admins are selected as Program owners. Only users selected as owners can edit and make changes to the program and its associated responsibilities."; var currVal_81 = "bottom"; var currVal_82 = "white"; var currVal_83 = true; _ck(_v, 100, 0, currVal_80, currVal_81, currVal_82, currVal_83); var currVal_84 = "Who is responsible for managing this program?"; _ck(_v, 103, 0, currVal_84); var currVal_85 = ((_co.controls == null) ? null : _co.controls.program_owners.value[0]); _ck(_v, 105, 0, currVal_85); var currVal_86 = false; _ck(_v, 107, 0, currVal_86); var currVal_94 = "all_user_in_role"; _ck(_v, 114, 0, currVal_94); var currVal_95 = true; _ck(_v, 118, 0, currVal_95); var currVal_96 = ((_co.controls == null) ? null : ((_co.controls.program_owners == null) ? null : _co.controls.program_owners.value)); _ck(_v, 122, 0, currVal_96); var currVal_97 = true; _ck(_v, 124, 0, currVal_97); var currVal_98 = ((_co.controls == null) ? null : ((_co.controls.program_owners_group == null) ? null : _co.controls.program_owners_group.value)); _ck(_v, 128, 0, currVal_98); var currVal_99 = (_co.activeList === "APPROVER"); var currVal_100 = (_co.sideElements.includes(_co.activeList) && (_co.activeList !== "APPROVER")); var currVal_101 = ((_co.controls == null) ? null : ((_co.controls.program_approver == null) ? null : ((_co.controls.program_approver.value == null) ? null : _co.controls.program_approver.value.length))); var currVal_102 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/approval.svg"; _ck(_v, 130, 0, currVal_99, currVal_100, currVal_101, currVal_102); var currVal_103 = "An approver is a user who is responsible for approving a Program. If an approver is selected, the Program can be started only after approval."; var currVal_104 = "bottom"; var currVal_105 = "white"; var currVal_106 = true; _ck(_v, 134, 0, currVal_103, currVal_104, currVal_105, currVal_106); var currVal_107 = "Who is responsible for approving this program?"; _ck(_v, 137, 0, currVal_107); var currVal_108 = ((_co.controls == null) ? null : ((_co.controls.program_approver == null) ? null : _co.controls.program_approver.value[0])); _ck(_v, 139, 0, currVal_108); var currVal_109 = (_co.activeList === "PERFORMANCE"); var currVal_110 = (_co.sideElements.includes(_co.activeList) && (_co.activeList !== "PERFORMANCE")); var currVal_111 = ((_co.controls == null) ? null : ((_co.controls.performance_calculation == null) ? null : _co.controls.performance_calculation.value)); var currVal_112 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/performance-calc.svg"; _ck(_v, 141, 0, currVal_109, currVal_110, currVal_111, currVal_112); var currVal_120 = ((_co.constants == null) ? null : _co.constants.performanceCalculation); _ck(_v, 145, 0, currVal_120); var currVal_121 = "performance_calculation"; _ck(_v, 147, 0, currVal_121); var currVal_122 = "The scope lets you define the frequency of the Program and set up default assignees, overseers, reviewers, assessments, and Responsibility Centers for the responsibilities associated with this Program."; var currVal_123 = "bottom"; var currVal_124 = "white"; var currVal_125 = true; _ck(_v, 153, 0, currVal_122, currVal_123, currVal_124, currVal_125); var currVal_126 = (_co.activeList === "FREQUENCY"); var currVal_127 = (_co.sideElements.includes(_co.activeList) && (_co.activeList !== "FREQUENCY")); var currVal_128 = _ck(_v, 157, 0, true, false).includes(((_co.controls == null) ? null : ((_co.controls.recurring_frequency == null) ? null : _co.controls.recurring_frequency.value))); var currVal_129 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/recurring.svg"; _ck(_v, 156, 0, currVal_126, currVal_127, currVal_128, currVal_129); var currVal_130 = "The Program Frequency lets you specify if a Program is recurring. If a Program is not recurring, then the Program will complete its lifecycle on the last day of your organization\u2019s business cycle. Additionally, all responsibilities associated with the Program will also complete their lifecycle on the same day."; var currVal_131 = "bottom"; var currVal_132 = "white"; var currVal_133 = true; _ck(_v, 161, 0, currVal_130, currVal_131, currVal_132, currVal_133); var currVal_134 = "recurring_frequency"; var currVal_135 = ((_co.controls == null) ? null : ((_co.controls.recurring_frequency == null) ? null : _co.controls.recurring_frequency.value)); _ck(_v, 169, 0, currVal_134, currVal_135); var currVal_136 = "recurring_frequency"; var currVal_137 = !((_co.controls == null) ? null : ((_co.controls.recurring_frequency == null) ? null : _co.controls.recurring_frequency.value)); _ck(_v, 172, 0, currVal_136, currVal_137); var currVal_138 = (_co.activeList === "SCOPE"); var currVal_139 = (_co.sideElements.includes(_co.activeList) && (_co.activeList !== "SCOPE")); var currVal_140 = _ck(_v, 176, 0, true, false).includes(((_co.controls == null) ? null : ((_co.controls.lock_scope_change == null) ? null : _co.controls.lock_scope_change.value))); var currVal_141 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/lock-scope.svg"; _ck(_v, 175, 0, currVal_138, currVal_139, currVal_140, currVal_141); var currVal_142 = "If scope changes are locked, the owners cannot add or remove any new responsibilities and program categories once a Program has started."; var currVal_143 = "bottom"; var currVal_144 = "white"; var currVal_145 = true; _ck(_v, 180, 0, currVal_142, currVal_143, currVal_144, currVal_145); var currVal_146 = "lock_scope_change"; var currVal_147 = ((_co.controls == null) ? null : ((_co.controls.lock_scope_change == null) ? null : _co.controls.lock_scope_change.value)); _ck(_v, 190, 0, currVal_146, currVal_147); var currVal_148 = "lock_scope_change"; var currVal_149 = !((_co.controls == null) ? null : ((_co.controls.lock_scope_change == null) ? null : _co.controls.lock_scope_change.value)); _ck(_v, 193, 0, currVal_148, currVal_149); var currVal_150 = (_co.activeList === "RC"); var currVal_151 = (_co.sideElements.includes(_co.activeList) && (_co.activeList !== "RC")); var currVal_152 = ((_co.controls == null) ? null : ((_co.controls.rc == null) ? null : ((_co.controls.rc.value == null) ? null : _co.controls.rc.value.length))); var currVal_153 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/responsibility-center.svg"; _ck(_v, 196, 0, currVal_150, currVal_151, currVal_152, currVal_153); var currVal_154 = "Responsibility Centers represent your organizational and operational infrastructure. You can associate one or more Responsibility Centers with a Program. Thereafter, all the responsibilities within this Program can only be linked with the associated Responsibility Centers."; var currVal_155 = "bottom"; var currVal_156 = "white"; var currVal_157 = true; _ck(_v, 200, 0, currVal_154, currVal_155, currVal_156, currVal_157); var currVal_158 = "Which Responsibility Center(s) can be linked to the responsibilities associated with this Program Category."; _ck(_v, 203, 0, currVal_158); var currVal_159 = (((_co.controls == null) ? null : ((_co.controls.rc == null) ? null : _co.controls.rc.value)) && ((_co.controls == null) ? null : ((_co.controls.rc == null) ? null : ((_co.controls.rc.value == null) ? null : _co.controls.rc.value.length)))); _ck(_v, 205, 0, currVal_159); var currVal_160 = true; _ck(_v, 207, 0, currVal_160); var currVal_161 = i2.ɵunv(_v, 211, 0, i2.ɵnov(_v, 212).transform(((_co.controls == null) ? null : ((_co.controls.rc == null) ? null : _co.controls.rc.value)), 1)); _ck(_v, 211, 0, currVal_161); var tmp_162_0; var currVal_162 = (((tmp_162_0 = _ck(_v, 215, 0, "ASSIGNEE", "DEFAULT_ASSIGNEE")) == null) ? null : tmp_162_0.includes(_co.activeList)); var currVal_163 = (((_co.sideElements == null) ? null : _co.sideElements.includes(_co.activeList)) && !_ck(_v, 216, 0, "ASSIGNEE", "DEFAULT_ASSIGNEE").includes(_co.activeList)); var currVal_164 = (((((_co.controls == null) ? null : ((_co.controls.program_assignee == null) ? null : ((_co.controls.program_assignee.value == null) ? null : _co.controls.program_assignee.value.length))) || ((_co.controls == null) ? null : ((_co.controls.program_default_assignee == null) ? null : ((_co.controls.program_default_assignee.value == null) ? null : _co.controls.program_default_assignee.value.length)))) || ((_co.controls == null) ? null : ((_co.controls.program_default_assignee == null) ? null : ((_co.controls.program_default_assignee.value == null) ? null : _co.controls.program_default_assignee.value.length)))) || ((_co.controls == null) ? null : ((_co.controls.program_default_assignee_group == null) ? null : ((_co.controls.program_default_assignee_group.value == null) ? null : _co.controls.program_default_assignee_group.value.length)))); var currVal_165 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/who.svg"; _ck(_v, 214, 0, currVal_162, currVal_163, currVal_164, currVal_165); var currVal_167 = "Assignees are users to whom you can assign a responsibility. While creating a Program, you can select the set of assignees responsible for completing responsibilities within this Program."; var currVal_168 = "bottom"; var currVal_169 = "white"; var currVal_170 = true; _ck(_v, 220, 0, currVal_167, currVal_168, currVal_169, currVal_170); var currVal_171 = "Select persons responsible for executing controls within this program"; var currVal_172 = (_co.activeList === "DEFAULT_ASSIGNEE"); _ck(_v, 223, 0, currVal_171, currVal_172); var currVal_173 = (((_co.controls == null) ? null : ((_co.controls.program_assignee == null) ? null : ((_co.controls.program_assignee.value == null) ? null : _co.controls.program_assignee.value.length))) || ((_co.controls == null) ? null : ((_co.controls.program_assignee_group == null) ? null : ((_co.controls.program_assignee_group.value == null) ? null : _co.controls.program_assignee_group.value.length)))); _ck(_v, 225, 0, currVal_173); var currVal_174 = true; _ck(_v, 227, 0, currVal_174); var currVal_175 = ((_co.controls == null) ? null : ((_co.controls.program_assignee == null) ? null : _co.controls.program_assignee.value)); _ck(_v, 231, 0, currVal_175); var currVal_176 = true; _ck(_v, 233, 0, currVal_176); var currVal_177 = ((_co.controls == null) ? null : ((_co.controls.program_assignee_group == null) ? null : _co.controls.program_assignee_group.value)); _ck(_v, 237, 0, currVal_177); var currVal_179 = "This option lets you specify the default assignees for all new responsibilities associated with a Program. If a default assignee is selected, the user will automatically be selected as an assignee within the 'Create a Responsibility' form. However, the assignor can make changes, if required."; var currVal_180 = "bottom"; var currVal_181 = "white"; var currVal_182 = true; _ck(_v, 241, 0, currVal_179, currVal_180, currVal_181, currVal_182); var currVal_183 = "Select persons responsible for executing controls within this program"; var currVal_184 = (_co.activeList === "ASSIGNEE"); _ck(_v, 244, 0, currVal_183, currVal_184); var currVal_185 = (((_co.controls == null) ? null : ((_co.controls.program_default_assignee == null) ? null : ((_co.controls.program_default_assignee.value == null) ? null : _co.controls.program_default_assignee.value.length))) || ((_co.controls == null) ? null : ((_co.controls.program_default_assignee_group == null) ? null : ((_co.controls.program_default_assignee_group.value == null) ? null : _co.controls.program_default_assignee_group.value.length)))); _ck(_v, 246, 0, currVal_185); var currVal_186 = true; _ck(_v, 248, 0, currVal_186); var currVal_187 = ((_co.controls == null) ? null : ((_co.controls.program_default_assignee == null) ? null : _co.controls.program_default_assignee.value)); _ck(_v, 252, 0, currVal_187); var currVal_188 = true; _ck(_v, 254, 0, currVal_188); var currVal_189 = ((_co.controls == null) ? null : ((_co.controls.program_default_assignee_group == null) ? null : _co.controls.program_default_assignee_group.value)); _ck(_v, 258, 0, currVal_189); var currVal_191 = "assignee"; var currVal_192 = (((_co.controls == null) ? null : ((_co.controls.assignee_completion_criteria == null) ? null : _co.controls.assignee_completion_criteria.value)) === "ALL"); _ck(_v, 261, 0, currVal_191, currVal_192); var currVal_193 = "If selected, separate responsibilities will be created for each person."; var currVal_194 = "bottom-right"; var currVal_195 = "white"; var currVal_196 = true; _ck(_v, 264, 0, currVal_193, currVal_194, currVal_195, currVal_196); var currVal_197 = "assignee"; var currVal_198 = (((_co.controls == null) ? null : ((_co.controls.assignee_completion_criteria == null) ? null : _co.controls.assignee_completion_criteria.value)) === "ANYONE"); _ck(_v, 267, 0, currVal_197, currVal_198); var currVal_199 = "If selected, only one responsibility will be created."; var currVal_200 = "bottom-right"; var currVal_201 = "white"; var currVal_202 = true; _ck(_v, 270, 0, currVal_199, currVal_200, currVal_201, currVal_202); var currVal_203 = ((_co.additionalOption == null) ? null : _co.additionalOption.REVIEWER); _ck(_v, 273, 0, currVal_203); var currVal_204 = ((_co.additionalOption == null) ? null : _co.additionalOption.OVERSEER); _ck(_v, 275, 0, currVal_204); var currVal_205 = ((_co.additionalOption == null) ? null : _co.additionalOption.ASSESSMENT); _ck(_v, 277, 0, currVal_205); var currVal_206 = ((_co.additionalOption == null) ? null : _co.additionalOption.FORMATE_EVIDENCE); _ck(_v, 279, 0, currVal_206); var currVal_207 = ((_co.additionalOption == null) ? null : _co.additionalOption.CUSTOM_FIELDS); _ck(_v, 281, 0, currVal_207); var currVal_208 = (_co.activeList === "ROLE"); _ck(_v, 283, 0, currVal_208); var currVal_209 = (_co.activeList === "FRAMEWORK"); _ck(_v, 285, 0, currVal_209); var currVal_210 = (_co.activeList === "RC"); _ck(_v, 287, 0, currVal_210); var currVal_211 = (_co.activeList === "OWNER"); _ck(_v, 289, 0, currVal_211); var currVal_212 = (_co.activeList === "APPROVER"); _ck(_v, 291, 0, currVal_212); var currVal_213 = (_co.activeList === "ASSIGNEE"); _ck(_v, 293, 0, currVal_213); var currVal_214 = (_co.activeList === "DEFAULT_ASSIGNEE"); _ck(_v, 295, 0, currVal_214); var currVal_215 = (_co.activeList === "REVIEWER"); _ck(_v, 297, 0, currVal_215); var currVal_216 = (_co.activeList === "DEFAULT_REVIEWER"); _ck(_v, 299, 0, currVal_216); var currVal_217 = (_co.activeList === "OVERSEER"); _ck(_v, 301, 0, currVal_217); var currVal_218 = (_co.activeList === "DEFAULT_OVERSEER"); _ck(_v, 303, 0, currVal_218); var currVal_219 = (_co.activeList === "DEFAULT_FAILED_OVERSEER"); _ck(_v, 305, 0, currVal_219); var currVal_220 = (_co.activeList === "ASSESSMENT"); _ck(_v, 307, 0, currVal_220); var currVal_221 = _co.loader; _ck(_v, 309, 0, currVal_221); var currVal_222 = _co.showSmiley; _ck(_v, 311, 0, currVal_222); }, function (_ck, _v) { var _co = _v.component; var currVal_0 = i2.ɵnov(_v, 10).is("untouched"); var currVal_1 = i2.ɵnov(_v, 10).is("touched"); var currVal_2 = i2.ɵnov(_v, 10).is("pristine"); var currVal_3 = i2.ɵnov(_v, 10).is("dirty"); var currVal_4 = i2.ɵnov(_v, 10).is("valid"); var currVal_5 = i2.ɵnov(_v, 10).is("invalid"); var currVal_6 = i2.ɵnov(_v, 10).is("pending"); _ck(_v, 6, 0, currVal_0, currVal_1, currVal_2, currVal_3, currVal_4, currVal_5, currVal_6); var currVal_12 = i2.ɵnov(_v, 22).is("untouched"); var currVal_13 = i2.ɵnov(_v, 22).is("touched"); var currVal_14 = i2.ɵnov(_v, 22).is("pristine"); var currVal_15 = i2.ɵnov(_v, 22).is("dirty"); var currVal_16 = i2.ɵnov(_v, 22).is("valid"); var currVal_17 = i2.ɵnov(_v, 22).is("invalid"); var currVal_18 = i2.ɵnov(_v, 22).is("pending"); _ck(_v, 17, 0, currVal_12, currVal_13, currVal_14, currVal_15, currVal_16, currVal_17, currVal_18); var currVal_25 = i2.ɵnov(_v, 34).is("untouched"); var currVal_26 = i2.ɵnov(_v, 34).is("touched"); var currVal_27 = i2.ɵnov(_v, 34).is("pristine"); var currVal_28 = i2.ɵnov(_v, 34).is("dirty"); var currVal_29 = i2.ɵnov(_v, 34).is("valid"); var currVal_30 = i2.ɵnov(_v, 34).is("invalid"); var currVal_31 = i2.ɵnov(_v, 34).is("pending"); _ck(_v, 29, 0, currVal_25, currVal_26, currVal_27, currVal_28, currVal_29, currVal_30, currVal_31); var currVal_39 = i2.ɵnov(_v, 59).is("untouched"); var currVal_40 = i2.ɵnov(_v, 59).is("touched"); var currVal_41 = i2.ɵnov(_v, 59).is("pristine"); var currVal_42 = i2.ɵnov(_v, 59).is("dirty"); var currVal_43 = i2.ɵnov(_v, 59).is("valid"); var currVal_44 = i2.ɵnov(_v, 59).is("invalid"); var currVal_45 = i2.ɵnov(_v, 59).is("pending"); _ck(_v, 53, 0, currVal_39, currVal_40, currVal_41, currVal_42, currVal_43, currVal_44, currVal_45); var currVal_53 = i2.ɵnov(_v, 70).is("untouched"); var currVal_54 = i2.ɵnov(_v, 70).is("touched"); var currVal_55 = i2.ɵnov(_v, 70).is("pristine"); var currVal_56 = i2.ɵnov(_v, 70).is("dirty"); var currVal_57 = i2.ɵnov(_v, 70).is("valid"); var currVal_58 = i2.ɵnov(_v, 70).is("invalid"); var currVal_59 = i2.ɵnov(_v, 70).is("pending"); _ck(_v, 64, 0, currVal_53, currVal_54, currVal_55, currVal_56, currVal_57, currVal_58, currVal_59); var currVal_87 = i2.ɵnov(_v, 116).is("untouched"); var currVal_88 = i2.ɵnov(_v, 116).is("touched"); var currVal_89 = i2.ɵnov(_v, 116).is("pristine"); var currVal_90 = i2.ɵnov(_v, 116).is("dirty"); var currVal_91 = i2.ɵnov(_v, 116).is("valid"); var currVal_92 = i2.ɵnov(_v, 116).is("invalid"); var currVal_93 = i2.ɵnov(_v, 116).is("pending"); _ck(_v, 111, 0, currVal_87, currVal_88, currVal_89, currVal_90, currVal_91, currVal_92, currVal_93); var currVal_113 = i2.ɵnov(_v, 149).is("untouched"); var currVal_114 = i2.ɵnov(_v, 149).is("touched"); var currVal_115 = i2.ɵnov(_v, 149).is("pristine"); var currVal_116 = i2.ɵnov(_v, 149).is("dirty"); var currVal_117 = i2.ɵnov(_v, 149).is("valid"); var currVal_118 = i2.ɵnov(_v, 149).is("invalid"); var currVal_119 = i2.ɵnov(_v, 149).is("pending"); _ck(_v, 144, 0, currVal_113, currVal_114, currVal_115, currVal_116, currVal_117, currVal_118, currVal_119); var currVal_166 = (_co.activeList === "DEFAULT_ASSIGNEE"); _ck(_v, 217, 0, currVal_166); var currVal_178 = (_co.activeList === "ASSIGNEE"); _ck(_v, 238, 0, currVal_178); var currVal_190 = (_co.activeList === "ASSIGNEE"); _ck(_v, 259, 0, currVal_190); }); }
1079
+ } return ad; }, null, null)), i2.ɵdid(270, 81920, null, 0, i11.ToolTipDirective, [i2.ElementRef, i2.Renderer2], { tooltipTitle: [0, "tooltipTitle"], placement: [1, "placement"], type: [2, "type"], tooltipMandatory: [3, "tooltipMandatory"] }, null), (_l()(), i2.ɵted(-1, null, ["\uE91F"])), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_45)), i2.ɵdid(273, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_62)), i2.ɵdid(275, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_84)), i2.ɵdid(277, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_90)), i2.ɵdid(279, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_91)), i2.ɵdid(281, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_92)), i2.ɵdid(283, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_93)), i2.ɵdid(285, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_94)), i2.ɵdid(287, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_95)), i2.ɵdid(289, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_96)), i2.ɵdid(291, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_97)), i2.ɵdid(293, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_98)), i2.ɵdid(295, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_99)), i2.ɵdid(297, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_100)), i2.ɵdid(299, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_101)), i2.ɵdid(301, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_102)), i2.ɵdid(303, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_103)), i2.ɵdid(305, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_104)), i2.ɵdid(307, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_105)), i2.ɵdid(309, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null), (_l()(), i2.ɵand(16777216, null, null, 1, null, View_WorkflowProgramComponent_106)), i2.ɵdid(311, 16384, null, 0, i7.NgIf, [i2.ViewContainerRef, i2.TemplateRef], { ngIf: [0, "ngIf"] }, null)], function (_ck, _v) { var _co = _v.component; var currVal_7 = _co.programForm; _ck(_v, 8, 0, currVal_7); var currVal_8 = false; var currVal_9 = _co.sideElements.includes(_co.activeList); var currVal_10 = (((_co.controls == null) ? null : ((_co.controls.program_type == null) ? null : _co.controls.program_type.value)) > (-1)); var currVal_11 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/issue-type.svg"; _ck(_v, 12, 0, currVal_8, currVal_9, currVal_10, currVal_11); var currVal_19 = ((_co.constants == null) ? null : _co.constants.categoryType); _ck(_v, 18, 0, currVal_19); var currVal_20 = "program_type"; _ck(_v, 20, 0, currVal_20); var currVal_21 = false; var currVal_22 = _co.sideElements.includes(_co.activeList); var tmp_23_0; var currVal_23 = ((_co.controls == null) ? null : ((_co.controls.program_name == null) ? null : ((_co.controls.program_name.value == null) ? null : (((tmp_23_0 = _co.controls.program_name.value.trim()) == null) ? null : tmp_23_0.length)))); var currVal_24 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/what.svg"; _ck(_v, 24, 0, currVal_21, currVal_22, currVal_23, currVal_24); var currVal_32 = "program_name"; _ck(_v, 32, 0, currVal_32); var currVal_33 = (((_co.controls == null) ? null : ((_co.controls.program_name == null) ? null : _co.controls.program_name.errors)) && ((_co.controls == null) ? null : ((_co.controls.program_name == null) ? null : _co.controls.program_name.touched))); _ck(_v, 37, 0, currVal_33); var currVal_34 = _co.isNameExists; _ck(_v, 39, 0, currVal_34); var currVal_35 = i2.ɵunv(_v, 42, 0, i2.ɵnov(_v, 43).transform(((_co.controls == null) ? null : ((_co.controls.description_attachment == null) ? null : _co.controls.description_attachment.value)), 0, 2)); _ck(_v, 42, 0, currVal_35); var currVal_36 = (((_co.controls == null) ? null : ((_co.controls.description_attachment == null) ? null : ((_co.controls.description_attachment.value == null) ? null : _co.controls.description_attachment.value.length))) > 2); _ck(_v, 45, 0, currVal_36); var currVal_37 = true; _ck(_v, 47, 0, currVal_37); var currVal_38 = i2.ɵunv(_v, 51, 0, i2.ɵnov(_v, 52).transform(((_co.controls == null) ? null : ((_co.controls.description_attachment == null) ? null : _co.controls.description_attachment.value)), 2)); _ck(_v, 51, 0, currVal_38); var currVal_46 = ((_co.constants == null) ? null : _co.constants.description); _ck(_v, 54, 0, currVal_46); var currVal_47 = _co.editorData.programDescription; var currVal_48 = _ck(_v, 57, 0, true); _ck(_v, 56, 0, currVal_47, currVal_48); var currVal_49 = (_co.activeList === "OBJECTIVE"); var currVal_50 = (_co.sideElements.includes(_co.activeList) && (_co.activeList !== "OBJECTIVE")); var tmp_51_0; var currVal_51 = ((_co.controls == null) ? null : ((_co.controls.program_objective == null) ? null : ((_co.controls.program_objective.value == null) ? null : (((tmp_51_0 = _co.controls.program_objective.value.trim()) == null) ? null : tmp_51_0.length)))); var currVal_52 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/objectives.svg"; _ck(_v, 61, 0, currVal_49, currVal_50, currVal_51, currVal_52); var currVal_60 = ((_co.constants == null) ? null : _co.constants.objective); _ck(_v, 65, 0, currVal_60); var currVal_61 = _co.editorData.programObjective; var currVal_62 = _ck(_v, 68, 0, true); _ck(_v, 67, 0, currVal_61, currVal_62); var currVal_63 = (_co.activeList === "ROLE"); var currVal_64 = (_co.sideElements.includes(_co.activeList) && (_co.activeList !== "ROLE")); var currVal_65 = ((_co.controls == null) ? null : ((_co.controls.program_roles == null) ? null : ((_co.controls.program_roles.value == null) ? null : _co.controls.program_roles.value.length))); var currVal_66 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/roles.svg"; _ck(_v, 72, 0, currVal_63, currVal_64, currVal_65, currVal_66); var currVal_67 = "Role(s) let you specify the users that can be selected as Program owners and approvers."; var currVal_68 = "bottom"; var currVal_69 = "white"; var currVal_70 = true; _ck(_v, 78, 0, currVal_67, currVal_68, currVal_69, currVal_70); var currVal_71 = "Which user roles have access to this program?"; _ck(_v, 81, 0, currVal_71); var currVal_72 = ((_co.controls == null) ? null : ((_co.controls.program_roles == null) ? null : ((_co.controls.program_roles.value == null) ? null : _co.controls.program_roles.value.length))); _ck(_v, 83, 0, currVal_72); var currVal_73 = false; _ck(_v, 85, 0, currVal_73); var currVal_74 = true; _ck(_v, 87, 0, currVal_74); var currVal_75 = i2.ɵunv(_v, 91, 0, i2.ɵnov(_v, 92).transform(((_co.controls == null) ? null : ((_co.controls.program_roles == null) ? null : _co.controls.program_roles.value)), 1)); _ck(_v, 91, 0, currVal_75); var currVal_76 = (_co.activeList === "OWNER"); var currVal_77 = (_co.sideElements.includes(_co.activeList) && (_co.activeList !== "OWNER")); var currVal_78 = ((((_co.controls == null) ? null : ((_co.controls.program_owners.value == null) ? null : _co.controls.program_owners.value.length)) > 0) || (((_co.controls == null) ? null : ((_co.controls.program_owners_group.value == null) ? null : _co.controls.program_owners_group.value.length)) > 0)); var currVal_79 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/owner.svg"; _ck(_v, 94, 0, currVal_76, currVal_77, currVal_78, currVal_79); var currVal_80 = "An owner is a user responsible for managing a Program. By default, the Key Admin and all users designated as Admins are selected as Program owners. Only users selected as owners can edit and make changes to the program and its associated responsibilities."; var currVal_81 = "bottom"; var currVal_82 = "white"; var currVal_83 = true; _ck(_v, 100, 0, currVal_80, currVal_81, currVal_82, currVal_83); var currVal_84 = "Who is responsible for managing this program?"; _ck(_v, 103, 0, currVal_84); var currVal_85 = ((_co.controls == null) ? null : _co.controls.program_owners.value[0]); _ck(_v, 105, 0, currVal_85); var currVal_86 = false; _ck(_v, 107, 0, currVal_86); var currVal_94 = "all_user_in_role"; _ck(_v, 114, 0, currVal_94); var currVal_95 = true; _ck(_v, 118, 0, currVal_95); var currVal_96 = ((_co.controls == null) ? null : ((_co.controls.program_owners == null) ? null : _co.controls.program_owners.value)); _ck(_v, 122, 0, currVal_96); var currVal_97 = true; _ck(_v, 124, 0, currVal_97); var currVal_98 = ((_co.controls == null) ? null : ((_co.controls.program_owners_group == null) ? null : _co.controls.program_owners_group.value)); _ck(_v, 128, 0, currVal_98); var currVal_99 = (_co.activeList === "APPROVER"); var currVal_100 = (_co.sideElements.includes(_co.activeList) && (_co.activeList !== "APPROVER")); var currVal_101 = ((_co.controls == null) ? null : ((_co.controls.program_approver == null) ? null : ((_co.controls.program_approver.value == null) ? null : _co.controls.program_approver.value.length))); var currVal_102 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/approval.svg"; _ck(_v, 130, 0, currVal_99, currVal_100, currVal_101, currVal_102); var currVal_103 = "An approver is a user who is responsible for approving a Program. If an approver is selected, the Program can be started only after approval."; var currVal_104 = "bottom"; var currVal_105 = "white"; var currVal_106 = true; _ck(_v, 134, 0, currVal_103, currVal_104, currVal_105, currVal_106); var currVal_107 = "Who is responsible for approving this program?"; _ck(_v, 137, 0, currVal_107); var currVal_108 = ((_co.controls == null) ? null : ((_co.controls.program_approver == null) ? null : _co.controls.program_approver.value[0])); _ck(_v, 139, 0, currVal_108); var currVal_109 = (_co.activeList === "PERFORMANCE"); var currVal_110 = (_co.sideElements.includes(_co.activeList) && (_co.activeList !== "PERFORMANCE")); var currVal_111 = ((_co.controls == null) ? null : ((_co.controls.performance_calculation == null) ? null : _co.controls.performance_calculation.value)); var currVal_112 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/performance-calc.svg"; _ck(_v, 141, 0, currVal_109, currVal_110, currVal_111, currVal_112); var currVal_120 = ((_co.constants == null) ? null : _co.constants.performanceCalculation); _ck(_v, 145, 0, currVal_120); var currVal_121 = "performance_calculation"; _ck(_v, 147, 0, currVal_121); var currVal_122 = "The scope lets you define the frequency of the Program and set up default assignees, overseers, reviewers, assessments, and Responsibility Centers for the responsibilities associated with this Program."; var currVal_123 = "bottom"; var currVal_124 = "white"; var currVal_125 = true; _ck(_v, 153, 0, currVal_122, currVal_123, currVal_124, currVal_125); var currVal_126 = (_co.activeList === "FREQUENCY"); var currVal_127 = (_co.sideElements.includes(_co.activeList) && (_co.activeList !== "FREQUENCY")); var currVal_128 = _ck(_v, 157, 0, true, false).includes(((_co.controls == null) ? null : ((_co.controls.recurring_frequency == null) ? null : _co.controls.recurring_frequency.value))); var currVal_129 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/recurring.svg"; _ck(_v, 156, 0, currVal_126, currVal_127, currVal_128, currVal_129); var currVal_130 = "The Program Frequency lets you specify if a Program is recurring. If a Program is not recurring, then the Program will complete its lifecycle on the last day of your organization\u2019s business cycle. Additionally, all responsibilities associated with the Program will also complete their lifecycle on the same day."; var currVal_131 = "bottom"; var currVal_132 = "white"; var currVal_133 = true; _ck(_v, 161, 0, currVal_130, currVal_131, currVal_132, currVal_133); var currVal_134 = "recurring_frequency"; var currVal_135 = ((_co.controls == null) ? null : ((_co.controls.recurring_frequency == null) ? null : _co.controls.recurring_frequency.value)); _ck(_v, 169, 0, currVal_134, currVal_135); var currVal_136 = "recurring_frequency"; var currVal_137 = !((_co.controls == null) ? null : ((_co.controls.recurring_frequency == null) ? null : _co.controls.recurring_frequency.value)); _ck(_v, 172, 0, currVal_136, currVal_137); var currVal_138 = (_co.activeList === "SCOPE"); var currVal_139 = (_co.sideElements.includes(_co.activeList) && (_co.activeList !== "SCOPE")); var currVal_140 = _ck(_v, 176, 0, true, false).includes(((_co.controls == null) ? null : ((_co.controls.lock_scope_change == null) ? null : _co.controls.lock_scope_change.value))); var currVal_141 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/lock-scope.svg"; _ck(_v, 175, 0, currVal_138, currVal_139, currVal_140, currVal_141); var currVal_142 = "If scope changes are locked, the owners cannot add or remove any new responsibilities and program categories once a Program has started."; var currVal_143 = "bottom"; var currVal_144 = "white"; var currVal_145 = true; _ck(_v, 180, 0, currVal_142, currVal_143, currVal_144, currVal_145); var currVal_146 = "lock_scope_change"; var currVal_147 = ((_co.controls == null) ? null : ((_co.controls.lock_scope_change == null) ? null : _co.controls.lock_scope_change.value)); _ck(_v, 190, 0, currVal_146, currVal_147); var currVal_148 = "lock_scope_change"; var currVal_149 = !((_co.controls == null) ? null : ((_co.controls.lock_scope_change == null) ? null : _co.controls.lock_scope_change.value)); _ck(_v, 193, 0, currVal_148, currVal_149); var currVal_150 = (_co.activeList === "RC"); var currVal_151 = (_co.sideElements.includes(_co.activeList) && (_co.activeList !== "RC")); var currVal_152 = ((_co.controls == null) ? null : ((_co.controls.rc == null) ? null : ((_co.controls.rc.value == null) ? null : _co.controls.rc.value.length))); var currVal_153 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/responsibility-center.svg"; _ck(_v, 196, 0, currVal_150, currVal_151, currVal_152, currVal_153); var currVal_154 = "Responsibility Centers represent your organizational and operational infrastructure. You can associate one or more Responsibility Centers with a Program. Thereafter, all the responsibilities within this Program can only be linked with the associated Responsibility Centers."; var currVal_155 = "bottom"; var currVal_156 = "white"; var currVal_157 = true; _ck(_v, 200, 0, currVal_154, currVal_155, currVal_156, currVal_157); var currVal_158 = "Which Responsibility Center(s) can be linked to the responsibilities associated with this Program?"; _ck(_v, 203, 0, currVal_158); var currVal_159 = (((_co.controls == null) ? null : ((_co.controls.rc == null) ? null : _co.controls.rc.value)) && ((_co.controls == null) ? null : ((_co.controls.rc == null) ? null : ((_co.controls.rc.value == null) ? null : _co.controls.rc.value.length)))); _ck(_v, 205, 0, currVal_159); var currVal_160 = true; _ck(_v, 207, 0, currVal_160); var currVal_161 = i2.ɵunv(_v, 211, 0, i2.ɵnov(_v, 212).transform(((_co.controls == null) ? null : ((_co.controls.rc == null) ? null : _co.controls.rc.value)), 1)); _ck(_v, 211, 0, currVal_161); var tmp_162_0; var currVal_162 = (((tmp_162_0 = _ck(_v, 215, 0, "ASSIGNEE", "DEFAULT_ASSIGNEE")) == null) ? null : tmp_162_0.includes(_co.activeList)); var currVal_163 = (((_co.sideElements == null) ? null : _co.sideElements.includes(_co.activeList)) && !_ck(_v, 216, 0, "ASSIGNEE", "DEFAULT_ASSIGNEE").includes(_co.activeList)); var currVal_164 = (((((_co.controls == null) ? null : ((_co.controls.program_assignee == null) ? null : ((_co.controls.program_assignee.value == null) ? null : _co.controls.program_assignee.value.length))) || ((_co.controls == null) ? null : ((_co.controls.program_default_assignee == null) ? null : ((_co.controls.program_default_assignee.value == null) ? null : _co.controls.program_default_assignee.value.length)))) || ((_co.controls == null) ? null : ((_co.controls.program_default_assignee == null) ? null : ((_co.controls.program_default_assignee.value == null) ? null : _co.controls.program_default_assignee.value.length)))) || ((_co.controls == null) ? null : ((_co.controls.program_default_assignee_group == null) ? null : ((_co.controls.program_default_assignee_group.value == null) ? null : _co.controls.program_default_assignee_group.value.length)))); var currVal_165 = "https://cdn.v-comply.com/libraries/workflow-engine/assets/workflow/who.svg"; _ck(_v, 214, 0, currVal_162, currVal_163, currVal_164, currVal_165); var currVal_167 = "Assignees are users to whom you can assign a responsibility. While creating a Program, you can select the set of assignees responsible for completing responsibilities within this Program."; var currVal_168 = "bottom"; var currVal_169 = "white"; var currVal_170 = true; _ck(_v, 220, 0, currVal_167, currVal_168, currVal_169, currVal_170); var currVal_171 = "Who is responsible for executing/completing the responsibilities within this Program? "; var currVal_172 = (_co.activeList === "DEFAULT_ASSIGNEE"); _ck(_v, 223, 0, currVal_171, currVal_172); var currVal_173 = (((_co.controls == null) ? null : ((_co.controls.program_assignee == null) ? null : ((_co.controls.program_assignee.value == null) ? null : _co.controls.program_assignee.value.length))) || ((_co.controls == null) ? null : ((_co.controls.program_assignee_group == null) ? null : ((_co.controls.program_assignee_group.value == null) ? null : _co.controls.program_assignee_group.value.length)))); _ck(_v, 225, 0, currVal_173); var currVal_174 = true; _ck(_v, 227, 0, currVal_174); var currVal_175 = ((_co.controls == null) ? null : ((_co.controls.program_assignee == null) ? null : _co.controls.program_assignee.value)); _ck(_v, 231, 0, currVal_175); var currVal_176 = true; _ck(_v, 233, 0, currVal_176); var currVal_177 = ((_co.controls == null) ? null : ((_co.controls.program_assignee_group == null) ? null : _co.controls.program_assignee_group.value)); _ck(_v, 237, 0, currVal_177); var currVal_179 = "This option lets you specify the default assignees for all new responsibilities associated with a Program. If a default assignee is selected, the user will automatically be selected as an assignee within the 'Create a Responsibility' form. However, the assignor can make changes, if required."; var currVal_180 = "bottom"; var currVal_181 = "white"; var currVal_182 = true; _ck(_v, 241, 0, currVal_179, currVal_180, currVal_181, currVal_182); var currVal_183 = "Which persons will be selected as the default assignees for the responsibilities within this Program?"; var currVal_184 = (_co.activeList === "ASSIGNEE"); _ck(_v, 244, 0, currVal_183, currVal_184); var currVal_185 = (((_co.controls == null) ? null : ((_co.controls.program_default_assignee == null) ? null : ((_co.controls.program_default_assignee.value == null) ? null : _co.controls.program_default_assignee.value.length))) || ((_co.controls == null) ? null : ((_co.controls.program_default_assignee_group == null) ? null : ((_co.controls.program_default_assignee_group.value == null) ? null : _co.controls.program_default_assignee_group.value.length)))); _ck(_v, 246, 0, currVal_185); var currVal_186 = true; _ck(_v, 248, 0, currVal_186); var currVal_187 = ((_co.controls == null) ? null : ((_co.controls.program_default_assignee == null) ? null : _co.controls.program_default_assignee.value)); _ck(_v, 252, 0, currVal_187); var currVal_188 = true; _ck(_v, 254, 0, currVal_188); var currVal_189 = ((_co.controls == null) ? null : ((_co.controls.program_default_assignee_group == null) ? null : _co.controls.program_default_assignee_group.value)); _ck(_v, 258, 0, currVal_189); var currVal_191 = "assignee"; var currVal_192 = (((_co.controls == null) ? null : ((_co.controls.assignee_completion_criteria == null) ? null : _co.controls.assignee_completion_criteria.value)) === "ALL"); _ck(_v, 261, 0, currVal_191, currVal_192); var currVal_193 = "If selected, separate responsibilities will be created for each person."; var currVal_194 = "bottom-right"; var currVal_195 = "white"; var currVal_196 = true; _ck(_v, 264, 0, currVal_193, currVal_194, currVal_195, currVal_196); var currVal_197 = "assignee"; var currVal_198 = (((_co.controls == null) ? null : ((_co.controls.assignee_completion_criteria == null) ? null : _co.controls.assignee_completion_criteria.value)) === "ANYONE"); _ck(_v, 267, 0, currVal_197, currVal_198); var currVal_199 = "If selected, only one responsibility will be created."; var currVal_200 = "bottom-right"; var currVal_201 = "white"; var currVal_202 = true; _ck(_v, 270, 0, currVal_199, currVal_200, currVal_201, currVal_202); var currVal_203 = ((_co.additionalOption == null) ? null : _co.additionalOption.REVIEWER); _ck(_v, 273, 0, currVal_203); var currVal_204 = ((_co.additionalOption == null) ? null : _co.additionalOption.OVERSEER); _ck(_v, 275, 0, currVal_204); var currVal_205 = ((_co.additionalOption == null) ? null : _co.additionalOption.ASSESSMENT); _ck(_v, 277, 0, currVal_205); var currVal_206 = ((_co.additionalOption == null) ? null : _co.additionalOption.FORMATE_EVIDENCE); _ck(_v, 279, 0, currVal_206); var currVal_207 = ((_co.additionalOption == null) ? null : _co.additionalOption.CUSTOM_FIELDS); _ck(_v, 281, 0, currVal_207); var currVal_208 = (_co.activeList === "ROLE"); _ck(_v, 283, 0, currVal_208); var currVal_209 = (_co.activeList === "FRAMEWORK"); _ck(_v, 285, 0, currVal_209); var currVal_210 = (_co.activeList === "RC"); _ck(_v, 287, 0, currVal_210); var currVal_211 = (_co.activeList === "OWNER"); _ck(_v, 289, 0, currVal_211); var currVal_212 = (_co.activeList === "APPROVER"); _ck(_v, 291, 0, currVal_212); var currVal_213 = (_co.activeList === "ASSIGNEE"); _ck(_v, 293, 0, currVal_213); var currVal_214 = (_co.activeList === "DEFAULT_ASSIGNEE"); _ck(_v, 295, 0, currVal_214); var currVal_215 = (_co.activeList === "REVIEWER"); _ck(_v, 297, 0, currVal_215); var currVal_216 = (_co.activeList === "DEFAULT_REVIEWER"); _ck(_v, 299, 0, currVal_216); var currVal_217 = (_co.activeList === "OVERSEER"); _ck(_v, 301, 0, currVal_217); var currVal_218 = (_co.activeList === "DEFAULT_OVERSEER"); _ck(_v, 303, 0, currVal_218); var currVal_219 = (_co.activeList === "DEFAULT_FAILED_OVERSEER"); _ck(_v, 305, 0, currVal_219); var currVal_220 = (_co.activeList === "ASSESSMENT"); _ck(_v, 307, 0, currVal_220); var currVal_221 = _co.loader; _ck(_v, 309, 0, currVal_221); var currVal_222 = _co.showSmiley; _ck(_v, 311, 0, currVal_222); }, function (_ck, _v) { var _co = _v.component; var currVal_0 = i2.ɵnov(_v, 10).is("untouched"); var currVal_1 = i2.ɵnov(_v, 10).is("touched"); var currVal_2 = i2.ɵnov(_v, 10).is("pristine"); var currVal_3 = i2.ɵnov(_v, 10).is("dirty"); var currVal_4 = i2.ɵnov(_v, 10).is("valid"); var currVal_5 = i2.ɵnov(_v, 10).is("invalid"); var currVal_6 = i2.ɵnov(_v, 10).is("pending"); _ck(_v, 6, 0, currVal_0, currVal_1, currVal_2, currVal_3, currVal_4, currVal_5, currVal_6); var currVal_12 = i2.ɵnov(_v, 22).is("untouched"); var currVal_13 = i2.ɵnov(_v, 22).is("touched"); var currVal_14 = i2.ɵnov(_v, 22).is("pristine"); var currVal_15 = i2.ɵnov(_v, 22).is("dirty"); var currVal_16 = i2.ɵnov(_v, 22).is("valid"); var currVal_17 = i2.ɵnov(_v, 22).is("invalid"); var currVal_18 = i2.ɵnov(_v, 22).is("pending"); _ck(_v, 17, 0, currVal_12, currVal_13, currVal_14, currVal_15, currVal_16, currVal_17, currVal_18); var currVal_25 = i2.ɵnov(_v, 34).is("untouched"); var currVal_26 = i2.ɵnov(_v, 34).is("touched"); var currVal_27 = i2.ɵnov(_v, 34).is("pristine"); var currVal_28 = i2.ɵnov(_v, 34).is("dirty"); var currVal_29 = i2.ɵnov(_v, 34).is("valid"); var currVal_30 = i2.ɵnov(_v, 34).is("invalid"); var currVal_31 = i2.ɵnov(_v, 34).is("pending"); _ck(_v, 29, 0, currVal_25, currVal_26, currVal_27, currVal_28, currVal_29, currVal_30, currVal_31); var currVal_39 = i2.ɵnov(_v, 59).is("untouched"); var currVal_40 = i2.ɵnov(_v, 59).is("touched"); var currVal_41 = i2.ɵnov(_v, 59).is("pristine"); var currVal_42 = i2.ɵnov(_v, 59).is("dirty"); var currVal_43 = i2.ɵnov(_v, 59).is("valid"); var currVal_44 = i2.ɵnov(_v, 59).is("invalid"); var currVal_45 = i2.ɵnov(_v, 59).is("pending"); _ck(_v, 53, 0, currVal_39, currVal_40, currVal_41, currVal_42, currVal_43, currVal_44, currVal_45); var currVal_53 = i2.ɵnov(_v, 70).is("untouched"); var currVal_54 = i2.ɵnov(_v, 70).is("touched"); var currVal_55 = i2.ɵnov(_v, 70).is("pristine"); var currVal_56 = i2.ɵnov(_v, 70).is("dirty"); var currVal_57 = i2.ɵnov(_v, 70).is("valid"); var currVal_58 = i2.ɵnov(_v, 70).is("invalid"); var currVal_59 = i2.ɵnov(_v, 70).is("pending"); _ck(_v, 64, 0, currVal_53, currVal_54, currVal_55, currVal_56, currVal_57, currVal_58, currVal_59); var currVal_87 = i2.ɵnov(_v, 116).is("untouched"); var currVal_88 = i2.ɵnov(_v, 116).is("touched"); var currVal_89 = i2.ɵnov(_v, 116).is("pristine"); var currVal_90 = i2.ɵnov(_v, 116).is("dirty"); var currVal_91 = i2.ɵnov(_v, 116).is("valid"); var currVal_92 = i2.ɵnov(_v, 116).is("invalid"); var currVal_93 = i2.ɵnov(_v, 116).is("pending"); _ck(_v, 111, 0, currVal_87, currVal_88, currVal_89, currVal_90, currVal_91, currVal_92, currVal_93); var currVal_113 = i2.ɵnov(_v, 149).is("untouched"); var currVal_114 = i2.ɵnov(_v, 149).is("touched"); var currVal_115 = i2.ɵnov(_v, 149).is("pristine"); var currVal_116 = i2.ɵnov(_v, 149).is("dirty"); var currVal_117 = i2.ɵnov(_v, 149).is("valid"); var currVal_118 = i2.ɵnov(_v, 149).is("invalid"); var currVal_119 = i2.ɵnov(_v, 149).is("pending"); _ck(_v, 144, 0, currVal_113, currVal_114, currVal_115, currVal_116, currVal_117, currVal_118, currVal_119); var currVal_166 = (_co.activeList === "DEFAULT_ASSIGNEE"); _ck(_v, 217, 0, currVal_166); var currVal_178 = (_co.activeList === "ASSIGNEE"); _ck(_v, 238, 0, currVal_178); var currVal_190 = (_co.activeList === "ASSIGNEE"); _ck(_v, 259, 0, currVal_190); }); }
1080
1080
  export function View_WorkflowProgramComponent_Host_0(_l) { return i2.ɵvid(0, [(_l()(), i2.ɵeld(0, 0, null, null, 1, "app-workflow-program", [], null, null, null, View_WorkflowProgramComponent_0, RenderType_WorkflowProgramComponent)), i2.ɵdid(1, 114688, null, 0, i48.WorkflowProgramComponent, [i20.FormBuilder, i49.ProgramsService, i35.AuthService, i50.UiKitService], null, null)], function (_ck, _v) { _ck(_v, 1, 0); }, null); }
1081
1081
  var WorkflowProgramComponentNgFactory = i2.ɵccf("app-workflow-program", i48.WorkflowProgramComponent, View_WorkflowProgramComponent_Host_0, { mode: "mode", programId: "programId", programType: "programType" }, { pickerChanged: "pickerChanged", populateOption: "populateOption", closeWorkflow: "closeWorkflow", showConfirmationAlert: "showConfirmationAlert", disconnectRefresh: "disconnectRefresh", refreshForm: "refreshForm", hideElementsFromMoreOptions: "hideElementsFromMoreOptions", onRemovingRole: "onRemovingRole" }, []);
1082
1082
  export { WorkflowProgramComponentNgFactory as WorkflowProgramComponentNgFactory };
1083
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctcHJvZ3JhbS5jb21wb25lbnQubmdmYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvd29ya2Zsb3ctcHJvZ3JhbS93b3JrZmxvdy1wcm9ncmFtLmNvbXBvbmVudC5uZ2ZhY3RvcnkudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi93b3JrZmxvdy1wcm9ncmFtL3dvcmtmbG93LXByb2dyYW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O21FQ2lCWSxvR0FDOEIsS0FEcUUsMkRBQ3pFO21FQUN0QixvR0FBOEUsS0FBaEMseURBQTRCO21FQUUxRSx1SUFHWSxZQUQyQjs7d0JBQXFEO01BRjVGLHFPQUdZLDJCQUY2QywyREFBNkIsOEJBQWxGLGtKQUFvRCxXQUNwRCwyREFBa0MsK0JBRnRDLFlBR1ksRUFGNkMsU0FBNkIsRUFBbEYsU0FBb0QsRUFDcEQsU0FBa0M7bUVBRXRDOzs7Ozs7Ozt3QkFBb047TUFBbEg7O3dCQUE4QjtNQUFoSSxxSkFBb04sSUFBakUsaUNBQXdELDJCQUExRSx1QkFBaUIsRUFBbEosWUFBb04sRUFBbkYsU0FBaUIsbURBQUMseVBBQXdEO21FQUkvTCw4RkFHSyxLQUZELHVJQUNxRyxZQUFsRTs7d0JBQXFEO01BRHhGLHFPQUNxRywyQkFEcEMsMkRBQTZCLDhCQUFsRixrSkFBb0QsV0FDaEUsMkRBQWtDLCtCQURsQyxZQUNxRyxFQURwQyxTQUE2QixFQUFsRixTQUFvRCxFQUNoRSxTQUFrQzttRUFtQ25CLGdKQUVlLFlBRDFCOzt3QkFBMEQ7TUFEL0Msd0JBRWUsS0FBWixtQ0FBUTttRUFDOUI7Ozs7Ozs7O3dCQUU0RDtNQUR4RDs7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WixFQUF4WCxXQUFvRCxHQThDcEQsZ0RBQTRDLEdBQTVFLGNBQWtnQixFQUFsZSxXQUE0QyxHQTZDMUMsZ0RBQTRDLEdBQTlFLGNBV00sRUFYNEIsV0FBNEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpMCBmcm9tICdAYW5ndWxhci9jb3JlJztcbmkwLkNvbXBvbmVudEZhY3Rvcnk7XG4iLCI8ZGl2IGNsYXNzPVwid29ya2Zsb3ctcHJvZ3JhbVwiICNmb3JtPlxyXG4gICAgPGZvcm0gbm92YWxpZGF0ZSBbZm9ybUdyb3VwXT1cInByb2dyYW1Gb3JtXCI+XHJcbiAgICAgICAgPCEtLSBQcm9ncmFtIENhdGVnb3J5IFR5cGUgLS0+XHJcbiAgICAgICAgPGZvcm0tZmllbGQgW2NoZWNrZWRdPVwiY29udHJvbHM/LnByb2dyYW1fdHlwZT8udmFsdWUgPiAtMVwiIFthY3RpdmVdPVwiZmFsc2VcIiBbZGlzYWJsZWRdPVwic2lkZUVsZW1lbnRzLmluY2x1ZGVzKGFjdGl2ZUxpc3QpXCJcclxuICAgICAgICAgICAgW2ltZ109XCInaHR0cHM6Ly9jZG4udi1jb21wbHkuY29tL2xpYnJhcmllcy93b3JrZmxvdy1lbmdpbmUvYXNzZXRzL3dvcmtmbG93L2lzc3VlLXR5cGUuc3ZnJ1wiPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+UFJPR1JBTSBUWVBFIDxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIj4qPC9zcGFuPjwvbGFiZWw+XHJcbiAgICAgICAgICAgIDx0YWItc2VsZWN0b3IgZm9ybUNvbnRyb2xOYW1lPVwicHJvZ3JhbV90eXBlXCIgW2Rpc3BsYXlBcnJheV09XCJjb25zdGFudHM/LmNhdGVnb3J5VHlwZVwiPjwvdGFiLXNlbGVjdG9yPlxyXG4gICAgICAgICAgICA8IS0tIDxwICpuZ0lmPVwicHJvZ3JhbV9uYW1lPy5pbnZhbGlkXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+QWRkIGEgcHJvZ3JhbSB0eXBlPC9wPiAtLT5cclxuICAgICAgICA8L2Zvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgIDwhLS0gUHJvZ3JhbSBDYXRlZ29yeSBOYW1lIC0tPlxyXG4gICAgICAgIDxmb3JtLWZpZWxkIFtjaGVja2VkXT1cImNvbnRyb2xzPy5wcm9ncmFtX25hbWU/LnZhbHVlPy50cmltKCk/Lmxlbmd0aFwiIFthY3RpdmVdPVwiZmFsc2VcIiBbZGlzYWJsZWRdPVwic2lkZUVsZW1lbnRzLmluY2x1ZGVzKGFjdGl2ZUxpc3QpXCJcclxuICAgICAgICAgICAgW2ltZ109XCInaHR0cHM6Ly9jZG4udi1jb21wbHkuY29tL2xpYnJhcmllcy93b3JrZmxvdy1lbmdpbmUvYXNzZXRzL3dvcmtmbG93L3doYXQuc3ZnJ1wiPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+UFJPR1JBTSBOQU1FIDxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIj4qPC9zcGFuPjwvbGFiZWw+XHJcbiAgICAgICAgICAgIDxpbnB1dCBJbnB1dFRyaW0gZm9ybUNvbnRyb2xOYW1lPVwicHJvZ3JhbV9uYW1lXCIgdHlwZT1cInRleHRcIlxyXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJXaGF0IGlzIHRoZSBQcm9ncmFtIG5hbWU/XCI+XHJcblxyXG4gICAgICAgICAgICA8cCAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX25hbWU/LmVycm9ycyAmJiBjb250cm9scz8ucHJvZ3JhbV9uYW1lPy50b3VjaGVkXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+RW50ZXIgYVxyXG4gICAgICAgICAgICAgICAgbmFtZSBmb3IgdGhpcyBQcm9ncmFtLjwvcD5cclxuICAgICAgICAgICAgICAgIDxwICpuZ0lmPVwiaXNOYW1lRXhpc3RzXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+UHJvZ3JhbSBuYW1lIGFscmVhZHkgZXhpc3RzLjwvcD5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVwbG9hZC1maWxlcyB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWZsZXgtd3JhcCB2eC1tdC0xXCI+XHJcbiAgICAgICAgICAgICAgICA8ZmlsZS1waWxsICpuZ0Zvcj1cImxldCBhdHRhY2htZW50IG9mIGNvbnRyb2xzPy5kZXNjcmlwdGlvbl9hdHRhY2htZW50Py52YWx1ZSB8c2xpY2U6MDoyXCJcclxuICAgICAgICAgICAgICAgICAgICBbZXh0ZW5zaW9uXT1cImF0dGFjaG1lbnQ/Lm9yZ19maWxlPy5zcGxpdCgnLicpLnBvcCgpXCIgW25hbWVdPVwiYXR0YWNobWVudD8ub3JnX2ZpbGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJhdHRhY2htZW50Py51cGxvYWRpbmdcIiAoZGVsZXRlKT1cImRlbGV0ZUF0dGFjaG1lbnQoJ0RFU0NSSVBUSU9OJyxhdHRhY2htZW50KVwiPlxyXG4gICAgICAgICAgICAgICAgPC9maWxlLXBpbGw+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiY29udHJvbHM/LmRlc2NyaXB0aW9uX2F0dGFjaG1lbnQ/LnZhbHVlPy5sZW5ndGggPiAyXCIgY2xhc3M9XCJmaWxlLWNvdW50XCIgYXBwUG9wb3ZlciAoY2xpY2spPVwidXBsb2FkRmlsZS5wb3BvdmVyKClcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPit7e2NvbnRyb2xzPy5kZXNjcmlwdGlvbl9hdHRhY2htZW50Py52YWx1ZT8ubGVuZ3RoIC0gMn19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8YXBwLXBvcG92ZXIgI3VwbG9hZEZpbGUgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tbGlzdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwidngtcC0yXCIgKm5nRm9yPVwibGV0IGF0dGFjaG1lbnQgb2YgY29udHJvbHM/LmRlc2NyaXB0aW9uX2F0dGFjaG1lbnQ/LnZhbHVlfHNsaWNlOjJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlsZS1waWxsICBbZXh0ZW5zaW9uXT1cImF0dGFjaG1lbnQ/Lm9yZ19maWxlPy5zcGxpdCgnLicpLnBvcCgpXCIgW25hbWVdPVwiYXR0YWNobWVudD8ub3JnX2ZpbGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJhdHRhY2htZW50Py51cGxvYWRpbmdcIiAoZGVsZXRlKT1cImRlbGV0ZUF0dGFjaG1lbnQoJ0RFU0NSSVBUSU9OJyxhdHRhY2htZW50KVwiPjwvZmlsZS1waWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8bWFyeC1lZGl0b3IgWyhuZ01vZGVsKV09XCJlZGl0b3JEYXRhLnByb2dyYW1EZXNjcmlwdGlvblwiIFtuZ01vZGVsT3B0aW9uc109XCJ7c3RhbmRhbG9uZTogdHJ1ZX1cIlxyXG4gICAgICAgICAgICAgICAgKHNlbmRTYXZlZEZpbGVzKT1cInNlbGVjdEZpbGUoJ0RFU0NSSVBUSU9OJywkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInNldEZvcm1GaWVsZCgncHJvZ3JhbV9kZXNjcmlwdGlvbicsJGV2ZW50KVwiIFtlZGl0b3JDb25maWddPVwiY29uc3RhbnRzPy5kZXNjcmlwdGlvblwiPlxyXG4gICAgICAgICAgICA8L21hcngtZWRpdG9yPlxyXG5cclxuICAgICAgICA8L2Zvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgIDwhLS0gT2JqZWN0aXZlIC0tPlxyXG4gICAgICAgIDxmb3JtLWZpZWxkIFtjaGVja2VkXT1cImNvbnRyb2xzPy5wcm9ncmFtX29iamVjdGl2ZT8udmFsdWU/LnRyaW0oKT8ubGVuZ3RoXCIgW2FjdGl2ZV09XCJhY3RpdmVMaXN0ID09PSAnT0JKRUNUSVZFJ1wiIFtkaXNhYmxlZF09XCJzaWRlRWxlbWVudHMuaW5jbHVkZXMoYWN0aXZlTGlzdCkgJiYgYWN0aXZlTGlzdCAhPT0gJ09CSkVDVElWRSdcIlxyXG4gICAgICAgICAgICBbaW1nXT1cIidodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvb2JqZWN0aXZlcy5zdmcnXCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5PQkpFQ1RJVkVcclxuICAgICAgICAgICAgICA8IS0tIDxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIj4qPC9zcGFuPiAtLT5cclxuICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgICAgPG1hcngtZWRpdG9yIFsobmdNb2RlbCldPVwiZWRpdG9yRGF0YS5wcm9ncmFtT2JqZWN0aXZlXCIgW25nTW9kZWxPcHRpb25zXT1cIntzdGFuZGFsb25lOiB0cnVlfVwiXHJcbiAgICAgICAgICAgIChzZW5kU2F2ZWRGaWxlcyk9XCJzZWxlY3RGaWxlKCdPQkpFQ1RJVkUnLCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwic2V0Rm9ybUZpZWxkKCdwcm9ncmFtX29iamVjdGl2ZScsJGV2ZW50LCB0cnVlKVwiIFtlZGl0b3JDb25maWddPVwiY29uc3RhbnRzPy5vYmplY3RpdmVcIj5cclxuICAgICAgICAgICAgPC9tYXJ4LWVkaXRvcj5cclxuICAgICAgICAgICAgPCEtLSA8cCAqbmdJZj1cIiFpc09iamVjdGl2ZVZhbGlkXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+U3BlY2lmeSB0aGUgb2JqZWN0aXZlIGZvciB0aGlzIFByb2dyYW0uPC9wPiAtLT5cclxuICAgICAgICA8L2Zvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgIDwhLS0gUm9sZXMgLS0+XHJcbiAgICAgICAgPGZvcm0tZmllbGQgW2NoZWNrZWRdPVwiY29udHJvbHM/LnByb2dyYW1fcm9sZXM/LnZhbHVlPy5sZW5ndGggXCIgW2FjdGl2ZV09XCJhY3RpdmVMaXN0ID09PSAnUk9MRSdcIiBbZGlzYWJsZWRdPVwic2lkZUVsZW1lbnRzLmluY2x1ZGVzKGFjdGl2ZUxpc3QpICYmIGFjdGl2ZUxpc3QgIT09ICdST0xFJ1wiXHJcbiAgICAgICAgICAgIFtpbWddPVwiJ2h0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvd29ya2Zsb3ctZW5naW5lL2Fzc2V0cy93b3JrZmxvdy9yb2xlcy5zdmcnXCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5ST0xFKFMpIDxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIj4qPC9zcGFuPjxpIGNsYXNzPVwiaWNvbnNcIiBbYXBwVG9vbHRpcF09XCInUm9sZShzKSBsZXQgeW91IHNwZWNpZnkgdGhlIHVzZXJzIHRoYXQgY2FuIGJlIHNlbGVjdGVkIGFzIFByb2dyYW0gb3duZXJzIGFuZCBhcHByb3ZlcnMuJ1wiIHBsYWNlbWVudD1cImJvdHRvbVwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlYjE2OzwvaT48L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXQtd2l0aC1waWxsIFtwbGFjZWhvbGRlcl09XCInV2hpY2ggdXNlciByb2xlcyBoYXZlIGFjY2VzcyB0byB0aGlzIHByb2dyYW0/J1wiXHJcbiAgICAgICAgICAgICAgICAoc2VsZWN0KT1cImFjdGl2YXRlTGlzdCgnUk9MRScpXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0ZWRcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX3JvbGVzPy52YWx1ZT8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWlubmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoaXBcIj48aSAqbmdJZj1cIiFsaXN0cy5TWVNURU1fUk9MRV9JRFMuaW5jbHVkZXMoY29udHJvbHM/LnByb2dyYW1fcm9sZXM/LnZhbHVlWzBdPy5faWQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZShjb250cm9scz8ucHJvZ3JhbV9yb2xlcz8udmFsdWVbMF0sJ1JPTEUnKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTBkOzwvaT57e2NvbnRyb2xzPy5wcm9ncmFtX3JvbGVzPy52YWx1ZVswXT8ucm9sZU5hbWV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9yb2xlcz8udmFsdWU/Lmxlbmd0aCA+IDFcIiBjbGFzcz1cImNvdW50XCIgYXBwUG9wb3ZlclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJyb2xlLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgK3t7Y29udHJvbHM/LnByb2dyYW1fcm9sZXM/LnZhbHVlPy5sZW5ndGggLSAxfX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFjdGl2ZUxpc3QhPT0nUk9MRSdcIiBjbGFzcz1cImVkaXRcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImFjdGl2YXRlTGlzdCgnUk9MRScpXCI+PGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5YmE7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBFZGl0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9pbnB1dC13aXRoLXBpbGw+XHJcbiAgICAgICAgICAgIDxwICpuZ0lmPVwiZmFsc2VcIiBjbGFzcz1cImVycm9yLW1lc3NhZ2VcIj5BZGQgYSByb2xlKHMpPC9wPlxyXG4gICAgICAgICAgICA8YXBwLXBvcG92ZXIgI3JvbGUgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1saXN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBkYXRhIG9mIGNvbnRyb2xzPy5wcm9ncmFtX3JvbGVzPy52YWx1ZSB8IHNsaWNlOjFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgKm5nSWY9XCIhbGlzdHMuU1lTVEVNX1JPTEVfSURTLmluY2x1ZGVzKGRhdGE/Ll9pZClcIiBjbGFzcz1cImljb25zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJyZW1vdmVSb2xlKGRhdGEsJ1JPTEUnKVwiPiYjeGU5MGQ7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2RhdGE/LnJvbGVOYW1lfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgPC9mb3JtLWZpZWxkPlxyXG5cclxuICAgICAgICA8IS0tIE93bmVycyAtLT5cclxuICAgICAgICA8Zm9ybS1maWVsZCBbY2hlY2tlZF09XCJjb250cm9scz8ucHJvZ3JhbV9vd25lcnMudmFsdWU/Lmxlbmd0aCA+IDAgfHwgY29udHJvbHM/LnByb2dyYW1fb3duZXJzX2dyb3VwLnZhbHVlPy5sZW5ndGggPiAwXCIgW2FjdGl2ZV09XCJhY3RpdmVMaXN0ID09PSAnT1dORVInXCIgW2Rpc2FibGVkXT1cInNpZGVFbGVtZW50cy5pbmNsdWRlcyhhY3RpdmVMaXN0KSAmJiBhY3RpdmVMaXN0ICE9PSAnT1dORVInXCJcclxuICAgICAgICAgICAgW2ltZ109XCInaHR0cHM6Ly9jZG4udi1jb21wbHkuY29tL2xpYnJhcmllcy93b3JrZmxvdy1lbmdpbmUvYXNzZXRzL3dvcmtmbG93L293bmVyLnN2ZydcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiPk9XTkVSKFMpIDxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIj4qPC9zcGFuPjxpIGNsYXNzPVwiaWNvbnNcIiBbYXBwVG9vbHRpcF09XCInQW4gb3duZXIgaXMgYSB1c2VyIHJlc3BvbnNpYmxlIGZvciBtYW5hZ2luZyBhIFByb2dyYW0uIEJ5IGRlZmF1bHQsIHRoZSBLZXkgQWRtaW4gYW5kIGFsbCB1c2VycyBkZXNpZ25hdGVkIGFzIEFkbWlucyBhcmUgc2VsZWN0ZWQgYXMgUHJvZ3JhbSBvd25lcnMuIE9ubHkgdXNlcnMgc2VsZWN0ZWQgYXMgb3duZXJzIGNhbiBlZGl0IGFuZCBtYWtlIGNoYW5nZXMgdG8gdGhlIHByb2dyYW0gYW5kIGl0cyBhc3NvY2lhdGVkIHJlc3BvbnNpYmlsaXRpZXMuJ1wiIHBsYWNlbWVudD1cImJvdHRvbVwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlYjE2OzwvaT48L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXQtd2l0aC1waWxsIFtwbGFjZWhvbGRlcl09XCInV2hvIGlzIHJlc3BvbnNpYmxlIGZvciBtYW5hZ2luZyB0aGlzIHByb2dyYW0/J1wiXHJcbiAgICAgICAgICAgICAgICAoc2VsZWN0KT1cImFjdGl2YXRlTGlzdCgnT1dORVInKVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9vd25lcnMudmFsdWVbMF1cIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtaW5uZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hpcFwiPjxzcGFuIGNsYXNzPVwidngtZnMtMTEgdngtcGFyYWdyYXBoLXR4dCB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlXCI+VVNFUihTKTwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiY291bnQgdXNlclwiIGFwcFBvcG92ZXIgKGNsaWNrKT1cIm93bmVyLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+e3tjb250cm9scz8ucHJvZ3JhbV9vd25lcnM/LnZhbHVlPy5sZW5ndGh9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2eC1mcy0xMiB2eC1wYXJhZ3JhcGgtdHh0IHZ4LW1sLTIgdngtbXItMlwiICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fb3duZXJzX2dyb3VwPy52YWx1ZT8ubGVuZ3RoICYmIGNvbnRyb2xzPy5wcm9ncmFtX293bmVycz8udmFsdWU/Lmxlbmd0aFwiPiY8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWlubmVyXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9vd25lcnNfZ3JvdXA/LnZhbHVlPy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hpcFwiPjxzcGFuIGNsYXNzPVwidngtZnMtMTEgdngtcGFyYWdyYXBoLXR4dCB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlXCI+R1JPVVAoUyk8L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX293bmVyc19ncm91cD8udmFsdWU/Lmxlbmd0aFwiIGNsYXNzPVwiY291bnRcIiBhcHBQb3BvdmVyIChjbGljayk9XCJncm91cC5wb3BvdmVyKClcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPnt7Y29udHJvbHM/LnByb2dyYW1fb3duZXJzX2dyb3VwPy52YWx1ZT8ubGVuZ3RoIH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJhY3RpdmVMaXN0IT09J09XTkVSJ1wiIFtjbGFzcy5kaXNhYmxlZF09XCJjb250cm9scz8uYWxsX3VzZXJfaW5fcm9sZT8udmFsdWVcIiAoY2xpY2spPVwiYWN0aXZhdGVMaXN0KCdPV05FUicpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJlZGl0XCIgdHlwZT1cImJ1dHRvblwiPjxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOWJhOzwvaT5FZGl0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9pbnB1dC13aXRoLXBpbGw+XHJcbiAgICAgICAgICAgIDxwICpuZ0lmPVwiZmFsc2VcIiBjbGFzcz1cImVycm9yLW1lc3NhZ2VcIj5BZGQgYSBvd25lcihzKTwvcD5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1lbmQgdngtbXQtMlwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWZzLTExIHZ4LWZ3LTUwMCB2eC1wYXJhZ3JhcGgtdHh0IHZ4LXR0LXVwcGVyY2FzZSB2eC1tci0yXCI+QUxMIFVTRVJTIEFTU09DSUFURUQgV0lUSCBUSEVcclxuICAgICAgICAgICAgICAgICAgICBTRUxFQ1RFRCBST0xFUzwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPHN3aXRjaCBmb3JtQ29udHJvbE5hbWU9XCJhbGxfdXNlcl9pbl9yb2xlXCIgKGNoYW5nZSk9XCJzZWxlY3RBbGxSb2xlT3duZXIoJGV2ZW50KVwiPjwvc3dpdGNoPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGFwcC1wb3BvdmVyICNvd25lciBbZG9udENsb3Nlb25DbGlja109XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWxpc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IG93bmVyIG9mIGNvbnRyb2xzPy5wcm9ncmFtX293bmVycz8udmFsdWUgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyLWNhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpICpuZ0lmPVwiIVsnQURNSU4nLCdLRVlfQURNSU4nLCdMT0dHRURfSU4nXS5pbmNsdWRlcyhvd25lcj8udXNlcl9yb2xlKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImljb25zXCIgKGNsaWNrKT1cInJlbW92ZShvd25lciwnT1dORVInKVwiPiYjeGU5MGQ7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e293bmVyPy5tZW1iZXJfbmFtZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2FwcC1wb3BvdmVyPlxyXG4gICAgICAgICAgICA8YXBwLXBvcG92ZXIgI2dyb3VwIFtkb250Q2xvc2VvbkNsaWNrXT1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tbGlzdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cImFjdGlvbi1pdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgb3duZXIgb2YgY29udHJvbHM/LnByb2dyYW1fb3duZXJzX2dyb3VwPy52YWx1ZSAgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyLWNhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpICpuZ0lmPVwiIVsnQURNSU4nLCdLRVlfQURNSU4nLCdMT0dHRURfSU4nXS5pbmNsdWRlcyhvd25lcj8udXNlcl9yb2xlKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImljb25zXCIgKGNsaWNrKT1cInJlbW92ZShvd25lciwnT1dORVJfR1JPVVAnKVwiPiYjeGU5MGQ7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e293bmVyPy5tZW1iZXJfbmFtZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2FwcC1wb3BvdmVyPlxyXG4gICAgICAgIDwvZm9ybS1maWVsZD5cclxuXHJcbiAgICAgICAgPCEtLSBBcHByb3ZlcnMgLS0+XHJcbiAgICAgICAgPGZvcm0tZmllbGQgW2NoZWNrZWRdPVwiY29udHJvbHM/LnByb2dyYW1fYXBwcm92ZXI/LnZhbHVlPy5sZW5ndGhcIiBbYWN0aXZlXT1cImFjdGl2ZUxpc3QgPT09ICdBUFBST1ZFUidcIiBbZGlzYWJsZWRdPVwic2lkZUVsZW1lbnRzLmluY2x1ZGVzKGFjdGl2ZUxpc3QpICYmIGFjdGl2ZUxpc3QgIT09ICdBUFBST1ZFUidcIlxyXG4gICAgICAgICAgICBbaW1nXT1cIidodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvYXBwcm92YWwuc3ZnJ1wiPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+QVBQUk9WRVIoUykgPGkgY2xhc3M9XCJpY29uc1wiIFthcHBUb29sdGlwXT1cIidBbiBhcHByb3ZlciBpcyBhIHVzZXIgd2hvIGlzIHJlc3BvbnNpYmxlIGZvciBhcHByb3ZpbmcgYSBQcm9ncmFtLiBJZiBhbiBhcHByb3ZlciBpcyBzZWxlY3RlZCwgdGhlIFByb2dyYW0gY2FuIGJlIHN0YXJ0ZWQgb25seSBhZnRlciBhcHByb3ZhbC4nXCIgcGxhY2VtZW50PVwiYm90dG9tXCIgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCIgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiPiYjeGViMTY7PC9pPjwvbGFiZWw+XHJcbiAgICAgICAgICAgIDxpbnB1dC13aXRoLXBpbGwgW3BsYWNlaG9sZGVyXT1cIidXaG8gaXMgcmVzcG9uc2libGUgZm9yIGFwcHJvdmluZyB0aGlzIHByb2dyYW0/J1wiXHJcbiAgICAgICAgICAgICAgICAoc2VsZWN0KT1cImFjdGl2YXRlTGlzdCgnQVBQUk9WRVInKVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9hcHByb3Zlcj8udmFsdWVbMF1cIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtaW5uZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIChjbGljayk9XCJyZW1vdmUoY29udHJvbHM/LnByb2dyYW1fYXBwcm92ZXI/LnZhbHVlWzBdLCdBUFBST1ZFUicpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaWNvbnMgdngtZnMtOSB2eC1tci0xIGNyb3NzXCI+JiN4ZTkwZDs8L2k+e3tjb250cm9scz8ucHJvZ3JhbV9hcHByb3Zlcj8udmFsdWVbMF0/Lm1lbWJlcl9uYW1lfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFjdGl2ZUxpc3QhPT0nQVBQUk9WRVInXCIoY2xpY2spPVwiYWN0aXZhdGVMaXN0KCdBUFBST1ZFUicpXCIgY2xhc3M9XCJlZGl0XCIgdHlwZT1cImJ1dHRvblwiPjxpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImljb25zXCI+JiN4ZTliYTs8L2k+RWRpdDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvaW5wdXQtd2l0aC1waWxsPlxyXG4gICAgICAgIDwvZm9ybS1maWVsZD5cclxuXHJcbiAgICAgICAgPCEtLSBQZXJmb3JtYW5jZSBDYWxjdWxhdGVkIC0tPlxyXG4gICAgICAgIDxmb3JtLWZpZWxkIFtjaGVja2VkXT1cImNvbnRyb2xzPy5wZXJmb3JtYW5jZV9jYWxjdWxhdGlvbj8udmFsdWVcIiBbYWN0aXZlXT1cImFjdGl2ZUxpc3QgPT09ICdQRVJGT1JNQU5DRSdcIiBbZGlzYWJsZWRdPVwic2lkZUVsZW1lbnRzLmluY2x1ZGVzKGFjdGl2ZUxpc3QpICYmIGFjdGl2ZUxpc3QgIT09ICdQRVJGT1JNQU5DRSdcIlxyXG4gICAgICAgICAgICBbaW1nXT1cIidodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvcGVyZm9ybWFuY2UtY2FsYy5zdmcnXCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5IT1cgU0hPVUxEIFRIRSBQRVJGT1JNQU5DRSBPRiBUSElTIENBVEVHT1JZIEJFIENBTENVTEFURUQ/PC9sYWJlbD5cclxuICAgICAgICAgICAgPHRhYi1zZWxlY3RvciBmb3JtQ29udHJvbE5hbWU9XCJwZXJmb3JtYW5jZV9jYWxjdWxhdGlvblwiIFtkaXNwbGF5QXJyYXldPVwiY29uc3RhbnRzPy5wZXJmb3JtYW5jZUNhbGN1bGF0aW9uXCI+XHJcbiAgICAgICAgICAgIDwvdGFiLXNlbGVjdG9yPlxyXG4gICAgICAgIDwvZm9ybS1maWVsZD5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2NvcGUtbGFiZWwgdngtZnMtMTAgdngtdHh0LXdoaXRlIHZ4LXR0LXVwcGVyY2FzZSB2eC1wbC0xIHZ4LXByLTEgdngtbWItNSB2eC1saC00IHZ4LWQtaW5saW5lLWJsb2NrXCI+UFJPR1JBTSBTQ09QRTwvZGl2PiA8aSBjbGFzcz1cImljb25zIGluZm8taWNvbiB2eC1mcy0xMiB2eC10eHQtYmx1ZSB2eC1tbC0xXCIgW2FwcFRvb2x0aXBdPVwiJ1RoZSBzY29wZSBsZXRzIHlvdSBkZWZpbmUgdGhlIGZyZXF1ZW5jeSBvZiB0aGUgUHJvZ3JhbSBhbmQgc2V0IHVwIGRlZmF1bHQgYXNzaWduZWVzLCBvdmVyc2VlcnMsIHJldmlld2VycywgYXNzZXNzbWVudHMsIGFuZCBSZXNwb25zaWJpbGl0eSBDZW50ZXJzIGZvciB0aGUgcmVzcG9uc2liaWxpdGllcyBhc3NvY2lhdGVkIHdpdGggdGhpcyBQcm9ncmFtLidcIiBwbGFjZW1lbnQ9XCJib3R0b21cIiBkZWxheT1cIjBcIiB0eXBlPVwid2hpdGVcIiBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZTkxZjs8L2k+XHJcblxyXG4gICAgICAgIDwhLS0gUHJvZ3JhbSBGcmVxdWVuY3kgLS0+XHJcbiAgICAgICAgPGZvcm0tZmllbGQgW2NoZWNrZWRdPVwiW3RydWUsZmFsc2VdLmluY2x1ZGVzKGNvbnRyb2xzPy5yZWN1cnJpbmdfZnJlcXVlbmN5Py52YWx1ZSlcIiBbYWN0aXZlXT1cImFjdGl2ZUxpc3QgPT09ICdGUkVRVUVOQ1knXCIgW2Rpc2FibGVkXT1cInNpZGVFbGVtZW50cy5pbmNsdWRlcyhhY3RpdmVMaXN0KSAmJiBhY3RpdmVMaXN0ICE9PSAnRlJFUVVFTkNZJ1wiXHJcbiAgICAgICAgICAgIFtpbWddPVwiJ2h0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvd29ya2Zsb3ctZW5naW5lL2Fzc2V0cy93b3JrZmxvdy9yZWN1cnJpbmcuc3ZnJ1wiPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+UFJPR1JBTSBGUkVRVUVOQ1kgPGkgY2xhc3M9XCJpY29uc1wiIFthcHBUb29sdGlwXT1cIidUaGUgUHJvZ3JhbSBGcmVxdWVuY3kgbGV0cyB5b3Ugc3BlY2lmeSBpZiBhIFByb2dyYW0gaXMgcmVjdXJyaW5nLiBJZiBhIFByb2dyYW0gaXMgbm90IHJlY3VycmluZywgdGhlbiB0aGUgUHJvZ3JhbSB3aWxsIGNvbXBsZXRlIGl0cyBsaWZlY3ljbGUgb24gdGhlIGxhc3QgZGF5IG9mIHlvdXIgb3JnYW5pemF0aW9u4oCZcyBidXNpbmVzcyBjeWNsZS4gQWRkaXRpb25hbGx5LCBhbGwgcmVzcG9uc2liaWxpdGllcyBhc3NvY2lhdGVkIHdpdGggdGhlIFByb2dyYW0gd2lsbCBhbHNvIGNvbXBsZXRlIHRoZWlyIGxpZmVjeWNsZSBvbiB0aGUgc2FtZSBkYXkuJ1wiIHBsYWNlbWVudD1cImJvdHRvbVwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlYjE2OzwvaT48L2xhYmVsPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLWZvcm1hdFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1iZXR3ZWVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0IHZ4LW1iLTBcIj5JcyB0aGlzIHByb2dyYW0gcmVjdXJyaW5nPzwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicmFkaW8tZ3JvdXAgcHJvZ3JhbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YXBwLWNzLXJhZGlvIFtuYW1lXT1cIidyZWN1cnJpbmdfZnJlcXVlbmN5J1wiIFtjaGVja2VkXT1cImNvbnRyb2xzPy5yZWN1cnJpbmdfZnJlcXVlbmN5Py52YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hlY2tlZEV2ZW50KT1cInNldEZvcm1GaWVsZCgncmVjdXJyaW5nX2ZyZXF1ZW5jeScsdHJ1ZSlcIj5ZRVM8L2FwcC1jcy1yYWRpbz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGFwcC1jcy1yYWRpbyBbbmFtZV09XCIncmVjdXJyaW5nX2ZyZXF1ZW5jeSdcIiBbY2hlY2tlZF09XCIhY29udHJvbHM/LnJlY3VycmluZ19mcmVxdWVuY3k/LnZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGVja2VkRXZlbnQpPVwic2V0Rm9ybUZpZWxkKCdyZWN1cnJpbmdfZnJlcXVlbmN5JyxmYWxzZSlcIj5OTzwvYXBwLWNzLXJhZGlvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZm9ybS1maWVsZD5cclxuXHJcbiAgICAgICAgPCEtLSBTY29wZSBDaGFuZ2VzIC0tPlxyXG4gICAgICAgIDxmb3JtLWZpZWxkIFtjaGVja2VkXT1cIlt0cnVlLGZhbHNlXS5pbmNsdWRlcyhjb250cm9scz8ubG9ja19zY29wZV9jaGFuZ2U/LnZhbHVlKVwiIFthY3RpdmVdPVwiYWN0aXZlTGlzdCA9PT0gJ1NDT1BFJ1wiIFtkaXNhYmxlZF09XCJzaWRlRWxlbWVudHMuaW5jbHVkZXMoYWN0aXZlTGlzdCkgJiYgYWN0aXZlTGlzdCAhPT0gJ1NDT1BFJ1wiXHJcbiAgICAgICAgICAgIFtpbWddPVwiJ2h0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvd29ya2Zsb3ctZW5naW5lL2Fzc2V0cy93b3JrZmxvdy9sb2NrLXNjb3BlLnN2ZydcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiPlNDT1BFIENIQU5HRVMgPGkgY2xhc3M9XCJpY29uc1wiIFthcHBUb29sdGlwXT1cIidJZiBzY29wZSBjaGFuZ2VzIGFyZSBsb2NrZWQsIHRoZSBvd25lcnMgY2Fubm90IGFkZCBvciByZW1vdmUgYW55IG5ldyByZXNwb25zaWJpbGl0aWVzIGFuZCBwcm9ncmFtIGNhdGVnb3JpZXMgb25jZSBhIFByb2dyYW0gaGFzIHN0YXJ0ZWQuJ1wiIHBsYWNlbWVudD1cImJvdHRvbVwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlYjE2OzwvaT48L2xhYmVsPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLWZvcm1hdFwiPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0XCI+V291bGQgeW91IGxpa2UgdG8gPHNwYW4gY2xhc3M9XCJ2eC1sYWJlbC10eHQgdngtZnctNTAwXCI+bG9jayBjaGFuZ2VzPC9zcGFuPiB0byB0aGUgcHJvZ3JhbVxyXG4gICAgICAgICAgICAgICAgICAgIHNjb3BlPzwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyYWRpby1ncm91cCBwcm9ncmFtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGFwcC1jcy1yYWRpbyBbbmFtZV09XCInbG9ja19zY29wZV9jaGFuZ2UnXCIgW2NoZWNrZWRdPVwiY29udHJvbHM/LmxvY2tfc2NvcGVfY2hhbmdlPy52YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjaGVja2VkRXZlbnQpPVwic2V0Rm9ybUZpZWxkKCdsb2NrX3Njb3BlX2NoYW5nZScsdHJ1ZSlcIj5ZRVM8L2FwcC1jcy1yYWRpbz5cclxuICAgICAgICAgICAgICAgICAgICA8YXBwLWNzLXJhZGlvIFtuYW1lXT1cIidsb2NrX3Njb3BlX2NoYW5nZSdcIiBbY2hlY2tlZF09XCIhY29udHJvbHM/LmxvY2tfc2NvcGVfY2hhbmdlPy52YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjaGVja2VkRXZlbnQpPVwic2V0Rm9ybUZpZWxkKCdsb2NrX3Njb3BlX2NoYW5nZScsZmFsc2UpXCI+Tk88L2FwcC1jcy1yYWRpbz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Zvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgIDwhLS0gRnJhbWV3b3JrIC0tPlxyXG4gICAgICAgIDwhLS0gPGZvcm0tZmllbGQgW2NoZWNrZWRdPVwiZmFsc2VcIiBbYWN0aXZlXT1cImFjdGl2ZUxpc3QgPT09ICdGUkFNRVdPUksnXCIgW2Rpc2FibGVkXT1cInNpZGVFbGVtZW50cy5pbmNsdWRlcyhhY3RpdmVMaXN0KSAmJiBhY3RpdmVMaXN0ICE9PSAnRlJBTUVXT1JLJ1wiXHJcbiAgICAgICAgICAgIFtpbWddPVwiJ2h0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvd29ya2Zsb3ctZW5naW5lL2Fzc2V0cy93b3JrZmxvdy9jYXRlZ29yeS5zdmcnXCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5GUkFNRVdPUks8L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXQtd2l0aC1waWxsIFtwbGFjZWhvbGRlcl09XCInU2VsZWN0IGEgZnJhbWV3b3JrIHRoYXQgdGhpcyBQcm9ncmFtIHJlbGF0ZXMgdG8nXCIgKHNlbGVjdCk9XCJhY3RpdmF0ZUxpc3QoJ0ZSQU1FV09SSycpXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0ZWRcIiAqbmdJZj1cImNvbnRyb2xzPy5mcmFtZXdvcms/LnZhbHVlPy5mcmFtZXdvcmtfbmFtZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1pbm5lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlwXCI+PGkgKGNsaWNrKT1cInJlbW92ZShjb250cm9scz8uZnJhbWV3b3JrLnZhbHVlLCdGUkFNRVdPUksnKVwiIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTBkOzwvaT57e2NvbnRyb2xzPy5mcmFtZXdvcms/LnZhbHVlPy5mcmFtZXdvcmtfbmFtZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNvdW50XCIgYXBwUG9wb3ZlciAoY2xpY2spPVwiZnJhbWV3b3JrLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+KzU8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFjdGl2ZUxpc3QhPT0nRlJBTUVXT1JLJ1wiIChjbGljayk9XCJhY3RpdmF0ZUxpc3QoJ0ZSQU1FV09SSycpXCIgY2xhc3M9XCJlZGl0XCIgdHlwZT1cImJ1dHRvblwiPjxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOWJhOzwvaT4gRWRpdDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvaW5wdXQtd2l0aC1waWxsPlxyXG4gICAgICAgICAgICA8YXBwLXBvcG92ZXIgI2ZyYW1ld29yayBbZG9udENsb3Nlb25DbGlja109XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWxpc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGRhdGEgb2YgWzEsIDEsIDEsIDEsIDEsIDEsIDFdXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyLWNhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTBkOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWFuYWdlIGZyYW1ld29yayBuYW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2FwcC1wb3BvdmVyPlxyXG4gICAgICAgIDwvZm9ybS1maWVsZD4gLS0+XHJcblxyXG4gICAgICAgIDwhLS0gUmVzcG9uc2liaWxpdHkgQ2VudGVyIC0tPlxyXG4gICAgICAgIDxmb3JtLWZpZWxkIFtjaGVja2VkXT1cImNvbnRyb2xzPy5yYz8udmFsdWU/Lmxlbmd0aFwiIFthY3RpdmVdPVwiYWN0aXZlTGlzdCA9PT0gJ1JDJ1wiIFtkaXNhYmxlZF09XCJzaWRlRWxlbWVudHMuaW5jbHVkZXMoYWN0aXZlTGlzdCkgJiYgYWN0aXZlTGlzdCAhPT0gJ1JDJ1wiXHJcbiAgICAgICAgICAgIFtpbWddPVwiJ2h0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvd29ya2Zsb3ctZW5naW5lL2Fzc2V0cy93b3JrZmxvdy9yZXNwb25zaWJpbGl0eS1jZW50ZXIuc3ZnJ1wiPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+UkVTUE9OU0lCSUxJVFkgQ0VOVEVSIDxpIGNsYXNzPVwiaWNvbnNcIiBbYXBwVG9vbHRpcF09XCInUmVzcG9uc2liaWxpdHkgQ2VudGVycyByZXByZXNlbnQgeW91ciBvcmdhbml6YXRpb25hbCBhbmQgb3BlcmF0aW9uYWwgaW5mcmFzdHJ1Y3R1cmUuIFlvdSBjYW4gYXNzb2NpYXRlIG9uZSBvciBtb3JlIFJlc3BvbnNpYmlsaXR5IENlbnRlcnMgd2l0aCBhIFByb2dyYW0uIFRoZXJlYWZ0ZXIsIGFsbCB0aGUgcmVzcG9uc2liaWxpdGllcyB3aXRoaW4gdGhpcyBQcm9ncmFtIGNhbiBvbmx5IGJlIGxpbmtlZCB3aXRoIHRoZSBhc3NvY2lhdGVkIFJlc3BvbnNpYmlsaXR5IENlbnRlcnMuJ1wiIHBsYWNlbWVudD1cImJvdHRvbVwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlYjE2OzwvaT48L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXQtd2l0aC1waWxsIChzZWxlY3QpPVwiYWN0aXZhdGVMaXN0KCdSQycpXCJcclxuICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInV2hpY2ggUmVzcG9uc2liaWxpdHkgQ2VudGVyKHMpIGNhbiBiZSBsaW5rZWQgdG8gdGhlIHJlc3BvbnNpYmlsaXRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoaXMgUHJvZ3JhbSBDYXRlZ29yeS4nXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0ZWRcIiAqbmdJZj1cImNvbnRyb2xzPy5yYz8udmFsdWUgJiYgY29udHJvbHM/LnJjPy52YWx1ZT8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWlubmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoaXBcIj48aSBjbGFzcz1cImljb25zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZShjb250cm9scz8ucmM/LnZhbHVlWzBdLCdSQycpXCI+JiN4ZTkwZDs8L2k+e3tjb250cm9scz8ucmM/LnZhbHVlWzBdPy5pdGVtX25hbWV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJjb250cm9scz8ucmM/LnZhbHVlPy5sZW5ndGggID4gMVwiIGNsYXNzPVwiY291bnRcIiBhcHBQb3BvdmVyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInJjLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+K3t7Y29udHJvbHM/LnJjPy52YWx1ZT8ubGVuZ3RoIC0xIH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJhY3RpdmVMaXN0IT09J1JDJ1wiIGNsYXNzPVwiZWRpdFwiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwiYWN0aXZhdGVMaXN0KCdSQycpXCI+PGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5YmE7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBFZGl0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9pbnB1dC13aXRoLXBpbGw+XHJcbiAgICAgICAgICAgIDxhcHAtcG9wb3ZlciAjcmMgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1saXN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCByYyAgb2YgY29udHJvbHM/LnJjPy52YWx1ZSAgfHNsaWNlOjFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiIChjbGljayk9XCJyZW1vdmUocmMsJ1JDJylcIj4mI3hlOTBkOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tyYz8uaXRlbV9uYW1lfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgPC9mb3JtLWZpZWxkPlxyXG5cclxuICAgICAgICA8IS0tIEFzc2lnbmVlIC0tPlxyXG4gICAgICAgIDxmb3JtLWZpZWxkIFtjaGVja2VkXT1cImNvbnRyb2xzPy5wcm9ncmFtX2Fzc2lnbmVlPy52YWx1ZT8ubGVuZ3RoICB8fCAgY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9hc3NpZ25lZT8udmFsdWU/Lmxlbmd0aCB8fGNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfYXNzaWduZWU/LnZhbHVlPy5sZW5ndGggIHx8ICBjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2Fzc2lnbmVlX2dyb3VwPy52YWx1ZT8ubGVuZ3RoXCJcclxuICAgICAgICBbYWN0aXZlXT1cIlsnQVNTSUdORUUnLCdERUZBVUxUX0FTU0lHTkVFJ10/LmluY2x1ZGVzKGFjdGl2ZUxpc3QpXCIgW2Rpc2FibGVkXT1cInNpZGVFbGVtZW50cz8uaW5jbHVkZXMoYWN0aXZlTGlzdCkgJiYgIVsnQVNTSUdORUUnLCdERUZBVUxUX0FTU0lHTkVFJ10uaW5jbHVkZXMoYWN0aXZlTGlzdClcIlxyXG4gICAgICAgICAgICBbaW1nXT1cIidodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvd2hvLnN2ZydcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiIFtjbGFzcy5kaXNhYmxlZF09XCJhY3RpdmVMaXN0ID09PSAnREVGQVVMVF9BU1NJR05FRSdcIj5BU1NJR05FRShTKSA8aSBjbGFzcz1cImljb25zXCIgW2FwcFRvb2x0aXBdPVwiJ0Fzc2lnbmVlcyBhcmUgdXNlcnMgdG8gd2hvbSB5b3UgY2FuIGFzc2lnbiBhIHJlc3BvbnNpYmlsaXR5LiBXaGlsZSBjcmVhdGluZyBhIFByb2dyYW0sIHlvdSBjYW4gc2VsZWN0IHRoZSBzZXQgb2YgYXNzaWduZWVzIHJlc3BvbnNpYmxlIGZvciBjb21wbGV0aW5nIHJlc3BvbnNpYmlsaXRpZXMgd2l0aGluIHRoaXMgUHJvZ3JhbS4nXCIgcGxhY2VtZW50PVwiYm90dG9tXCIgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCIgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiPiYjeGViMTY7PC9pPiA8L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXQtd2l0aC1waWxsIFtkaXNhYmxlZF09XCJhY3RpdmVMaXN0ID09PSAnREVGQVVMVF9BU1NJR05FRSdcIiBbcGxhY2Vob2xkZXJdPVwiJ1NlbGVjdCBwZXJzb25zIHJlc3BvbnNpYmxlIGZvciBleGVjdXRpbmcgY29udHJvbHMgd2l0aGluIHRoaXMgcHJvZ3JhbSdcIlxyXG4gICAgICAgICAgICAgICAgKHNlbGVjdCk9XCJhY3RpdmF0ZUxpc3QoJ0FTU0lHTkVFJylcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3RlZFwiICAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2Fzc2lnbmVlPy52YWx1ZT8ubGVuZ3RoIHx8IGNvbnRyb2xzPy5wcm9ncmFtX2Fzc2lnbmVlX2dyb3VwPy52YWx1ZT8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWlubmVyXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9hc3NpZ25lZT8udmFsdWU/Lmxlbmd0aFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlwXCI+PHNwYW4gY2xhc3M9XCJ2eC1mcy0xMSB2eC1wYXJhZ3JhcGgtdHh0IHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2VcIj5VU0VSKFMpPC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJjb3VudCB1c2VyXCIgYXBwUG9wb3ZlciAoY2xpY2spPVwiYXNzaWduZWUucG9wb3ZlcigpXCIgcGxhY2VtZW50PVwicmlnaHRcIj57e2NvbnRyb2xzPy5wcm9ncmFtX2Fzc2lnbmVlPy52YWx1ZT8ubGVuZ3RofX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidngtZnMtMTIgdngtcGFyYWdyYXBoLXR4dCB2eC1tbC0yIHZ4LW1yLTJcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2Fzc2lnbmVlX2dyb3VwPy52YWx1ZT8ubGVuZ3RoICYmIGNvbnRyb2xzPy5wcm9ncmFtX2Fzc2lnbmVlPy52YWx1ZT8ubGVuZ3RoXCI+Jjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtaW5uZXJcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2Fzc2lnbmVlX2dyb3VwPy52YWx1ZT8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoaXBcIj48c3BhbiBjbGFzcz1cInZ4LWZzLTExIHZ4LXBhcmFncmFwaC10eHQgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZVwiPkdST1VQKFMpPC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9hc3NpZ25lZV9ncm91cD8udmFsdWU/Lmxlbmd0aFwiIGNsYXNzPVwiY291bnRcIiBhcHBQb3BvdmVyIChjbGljayk9XCJhc3NpZ25lZV9ncm91cC5wb3BvdmVyKClcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPnt7Y29udHJvbHM/LnByb2dyYW1fYXNzaWduZWVfZ3JvdXA/LnZhbHVlPy5sZW5ndGggfX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFjdGl2ZUxpc3QhPT0nQVNTSUdORUUnXCIgY2xhc3M9XCJlZGl0XCIgdHlwZT1cImJ1dHRvblwiICAoY2xpY2spPVwiYWN0aXZhdGVMaXN0KCdBU1NJR05FRScpXCI+PGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5YmE7PC9pPiBFZGl0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9pbnB1dC13aXRoLXBpbGw+XHJcbiAgICAgICAgICAgIDxhcHAtcG9wb3ZlciAjYXNzaWduZWUgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1saXN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBhc3NpZ25lZSBvZiBjb250cm9scz8ucHJvZ3JhbV9hc3NpZ25lZT8udmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgKGNsaWNrKT1cInJlbW92ZShhc3NpZ25lZSwnQVNTSUdORUUnKVwiIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTBkOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2Fzc2lnbmVlPy5tZW1iZXJfbmFtZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2FwcC1wb3BvdmVyPlxyXG4gICAgICAgICAgICA8YXBwLXBvcG92ZXIgI2Fzc2lnbmVlX2dyb3VwIFtkb250Q2xvc2VvbkNsaWNrXT1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tbGlzdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cImFjdGlvbi1pdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgZ3JvdXAgb2YgY29udHJvbHM/LnByb2dyYW1fYXNzaWduZWVfZ3JvdXA/LnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyLWNhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpICAoY2xpY2spPVwicmVtb3ZlKGdyb3VwLCdBU1NJR05FRV9HUk9VUCcpXCIgIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTBkOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dyb3VwPy5ncm91cF9uYW1lfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIiBbY2xhc3MuZGlzYWJsZWRdPVwiYWN0aXZlTGlzdCA9PT0gJ0FTU0lHTkVFJ1wiPkRFRkFVTFQgQVNTSUdORUUoUykgPGkgY2xhc3M9XCJpY29uc1wiIFthcHBUb29sdGlwXT1cIidUaGlzIG9wdGlvbiBsZXRzIHlvdSBzcGVjaWZ5IHRoZSBkZWZhdWx0IGFzc2lnbmVlcyBmb3IgYWxsIG5ldyByZXNwb25zaWJpbGl0aWVzIGFzc29jaWF0ZWQgd2l0aCBhIFByb2dyYW0uIElmIGEgZGVmYXVsdCBhc3NpZ25lZSBpcyBzZWxlY3RlZCwgdGhlIHVzZXIgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIHNlbGVjdGVkIGFzIGFuIGFzc2lnbmVlIHdpdGhpbiB0aGUgXFwnQ3JlYXRlIGEgUmVzcG9uc2liaWxpdHlcXCcgZm9ybS4gSG93ZXZlciwgdGhlIGFzc2lnbm9yIGNhbiBtYWtlIGNoYW5nZXMsIGlmIHJlcXVpcmVkLidcIiBwbGFjZW1lbnQ9XCJib3R0b21cIiBkZWxheT1cIjBcIiB0eXBlPVwid2hpdGVcIiBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZWIxNjs8L2k+PC9sYWJlbD5cclxuICAgICAgICAgICAgPGlucHV0LXdpdGgtcGlsbCBbZGlzYWJsZWRdPVwiYWN0aXZlTGlzdCA9PT0gJ0FTU0lHTkVFJ1wiIFtwbGFjZWhvbGRlcl09XCInU2VsZWN0IHBlcnNvbnMgcmVzcG9uc2libGUgZm9yIGV4ZWN1dGluZyBjb250cm9scyB3aXRoaW4gdGhpcyBwcm9ncmFtJ1wiIChzZWxlY3QpPVwiYWN0aXZhdGVMaXN0KCdERUZBVUxUX0FTU0lHTkVFJylcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3RlZFwiICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9hc3NpZ25lZT8udmFsdWU/Lmxlbmd0aCB8fCBjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2Fzc2lnbmVlX2dyb3VwPy52YWx1ZT8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWlubmVyXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2Fzc2lnbmVlPy52YWx1ZT8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoaXBcIj48c3BhbiBjbGFzcz1cInZ4LWZzLTExIHZ4LXBhcmFncmFwaC10eHQgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZVwiPlVTRVIoUyk8L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNvdW50IHVzZXJcIiBhcHBQb3BvdmVyIChjbGljayk9XCJkZWZhdWx0QXNzaWduZWUucG9wb3ZlcigpXCIgcGxhY2VtZW50PVwicmlnaHRcIj57e2NvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfYXNzaWduZWU/LnZhbHVlPy5sZW5ndGh9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2eC1mcy0xMiB2eC1wYXJhZ3JhcGgtdHh0IHZ4LW1sLTIgdngtbXItMlwiICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9hc3NpZ25lZV9ncm91cD8udmFsdWU/Lmxlbmd0aCAmJiBjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2Fzc2lnbmVlPy52YWx1ZT8ubGVuZ3RoXCI+Jjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtaW5uZXJcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfYXNzaWduZWVfZ3JvdXA/LnZhbHVlPy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hpcFwiPjxzcGFuIGNsYXNzPVwidngtZnMtMTEgdngtcGFyYWdyYXBoLXR4dCB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlXCI+R1JPVVAoUyk8L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfYXNzaWduZWVfZ3JvdXA/LnZhbHVlPy5sZW5ndGhcIiBjbGFzcz1cImNvdW50XCIgYXBwUG9wb3ZlciAoY2xpY2spPVwiZGVmYXVsdEFzc2lnbmVlR3JvdXAucG9wb3ZlcigpXCIgcGxhY2VtZW50PVwicmlnaHRcIj57e2NvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfYXNzaWduZWVfZ3JvdXA/LnZhbHVlPy5sZW5ndGggfX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFjdGl2ZUxpc3QhPT0nREVGQVVMVF9BU1NJR05FRSdcIiAoY2xpY2spPVwiYWN0aXZhdGVMaXN0KCdERUZBVUxUX0FTU0lHTkVFJylcIiBjbGFzcz1cImVkaXRcIiB0eXBlPVwiYnV0dG9uXCI+PGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5YmE7PC9pPiBFZGl0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9pbnB1dC13aXRoLXBpbGw+XHJcbiAgICAgICAgICAgIDxhcHAtcG9wb3ZlciAjZGVmYXVsdEFzc2lnbmVlIFtkb250Q2xvc2VvbkNsaWNrXT1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tbGlzdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cImFjdGlvbi1pdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgYXNzaWduZWUgb2YgY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9hc3NpZ25lZT8udmFsdWUgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyLWNhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpICAoY2xpY2spPVwicmVtb3ZlKGFzc2lnbmVlLCdERUZBVUxUX0FTU0lHTkVFJylcIiBjbGFzcz1cImljb25zXCI+JiN4ZTkwZDs8L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3thc3NpZ25lZT8ubWVtYmVyX25hbWV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9hcHAtcG9wb3Zlcj5cclxuICAgICAgICAgICAgPGFwcC1wb3BvdmVyICNkZWZhdWx0QXNzaWduZWVHcm91cCBbZG9udENsb3Nlb25DbGlja109XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWxpc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGdyb3VwIG9mIGNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfYXNzaWduZWVfZ3JvdXA/LnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyLWNhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIChjbGljayk9XCJyZW1vdmUoYXNzaWduZWUsJ0RFRkFVTFRfQVNTSUdORUVfR1JPVVAnKVwiIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTBkOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tncm91cD8uZ3JvdXBfbmFtZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2FwcC1wb3BvdmVyPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicmFkaW8tZ3JvdXAtc2VsZWN0b3JcIiBbY2xhc3MuZGlzYWJsZWRdPVwiYWN0aXZlTGlzdCA9PT0gJ0FTU0lHTkVFJ1wiPlxyXG4gICAgICAgICAgICAgICAgPGFwcC1jcy1yYWRpbyBbbmFtZV09XCInYXNzaWduZWUnXCIgW2NoZWNrZWRdPVwiY29udHJvbHM/LmFzc2lnbmVlX2NvbXBsZXRpb25fY3JpdGVyaWE/LnZhbHVlID09PSAnQUxMJ1wiIChjaGVja2VkRXZlbnQpPVwic2V0Rm9ybUZpZWxkKCdhc3NpZ25lZV9jb21wbGV0aW9uX2NyaXRlcmlhJywgJ0FMTCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgQUxMIFNFTEVDVEVEIFBFUlNPTlMgTkVFRCBUTyBDT01QTEVURSBUSElTIDxpIGNsYXNzPVwiaWNvbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXBwVG9vbHRpcF09XCInSWYgc2VsZWN0ZWQsIHNlcGFyYXRlIHJlc3BvbnNpYmlsaXRpZXMgd2lsbCBiZSBjcmVhdGVkIGZvciBlYWNoIHBlcnNvbi4nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwiYm90dG9tLXJpZ2h0XCIgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCIgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiID4mI3hlOTFmOzwvaT5cclxuICAgICAgICAgICAgICAgIDwvYXBwLWNzLXJhZGlvPlxyXG4gICAgICAgICAgICAgICAgPGFwcC1jcy1yYWRpbyBbbmFtZV09XCInYXNzaWduZWUnXCIgW2NoZWNrZWRdPVwiY29udHJvbHM/LmFzc2lnbmVlX2NvbXBsZXRpb25fY3JpdGVyaWE/LnZhbHVlID09PSAnQU5ZT05FJ1wiIChjaGVja2VkRXZlbnQpPVwic2V0Rm9ybUZpZWxkKCdhc3NpZ25lZV9jb21wbGV0aW9uX2NyaXRlcmlhJywgJ0FOWU9ORScpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgQU5ZIFNFTEVDVEVEIFBFUlNPTiBDQU4gQ09NUExFVEUgVEhJUyA8aSBjbGFzcz1cImljb25zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2FwcFRvb2x0aXBdPVwiJ0lmIHNlbGVjdGVkLCBvbmx5IG9uZSByZXNwb25zaWJpbGl0eSB3aWxsIGJlIGNyZWF0ZWQuJ1wiIHBsYWNlbWVudD1cImJvdHRvbS1yaWdodFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlOTFmOzwvaT5cclxuICAgICAgICAgICAgICAgIDwvYXBwLWNzLXJhZGlvPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Zvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgIDwhLS0gUmV2aWV3ZXIgLS0+XHJcbiAgICAgICAgPGZvcm0tZmllbGQgW2FwcFNjcm9sbEluVmlld109XCJzY3JvbGxUb0JvdHRvbVwiICpuZ0lmPVwiYWRkaXRpb25hbE9wdGlvbj8uUkVWSUVXRVJcIlxyXG4gICAgICAgIFtjaGVja2VkXT1cImNvbnRyb2xzPy5wcm9ncmFtX3Jldmlld2VyPy52YWx1ZT8ubGVuZ3RoICB8fCAgY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9yZXZpZXdlcj8udmFsdWU/Lmxlbmd0aCB8fGNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfcmV2aWV3ZXI/LnZhbHVlPy5sZW5ndGggIHx8ICBjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X3Jldmlld2VyX2dyb3VwPy52YWx1ZT8ubGVuZ3RoXCJcclxuICAgICAgICBbYWN0aXZlXT1cIlsnUkVWSUVXRVInLCdERUZBVUxUX1JFVklFV0VSJ10/LmluY2x1ZGVzKGFjdGl2ZUxpc3QpXCIgW2Rpc2FibGVkXT1cInNpZGVFbGVtZW50cz8uaW5jbHVkZXMoYWN0aXZlTGlzdCkgJiYgIVsnUkVWSUVXRVInLCdERUZBVUxUX1JFVklFV0VSJ10uaW5jbHVkZXMoYWN0aXZlTGlzdClcIlxyXG4gICAgICAgICAgICBbaW1nXT1cIidodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvcmV2aWV3ZXIuc3ZnJ1wiPlxyXG4gICAgICAgICAgICA8bGFiZWwgW2NsYXNzLmRpc2FibGVkXT1cImFjdGl2ZUxpc3QgPT09ICdERUZBVUxUX1JFVklFV0VSJ1wiIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiPlJldmlld2VyKHMpIDxpIGNsYXNzPVwiaWNvbnNcIiBbYXBwVG9vbHRpcF09XCInUmV2aWV3ZXJzIGFyZSB1c2VycyB3aG8gY2FuIHJldmlldyBhIHJlc3BvbnNpYmlsaXR5IGFmdGVyIGl0IGhhcyBiZWVuIGNvbXBsZXRlZC4gV2hpbGUgY3JlYXRpbmcgYSBQcm9ncmFtLCB5b3UgY2FuIHNlbGVjdCB0aGUgc2V0IG9mIHJldmlld2VycyByZXNwb25zaWJsZSBmb3IgcmV2aWV3aW5nIHJlc3BvbnNpYmlsaXRpZXMgd2l0aGluIHRoaXMgUHJvZ3JhbS4nXCIgcGxhY2VtZW50PVwiYm90dG9tXCIgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCIgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiPiYjeGViMTY7PC9pPjwvbGFiZWw+XHJcbiAgICAgICAgICAgIDxpbnB1dC13aXRoLXBpbGwgW2Rpc2FibGVkXT1cImFjdGl2ZUxpc3QgPT09ICdERUZBVUxUX1JFVklFV0VSJ1wiIFtwbGFjZWhvbGRlcl09XCInU2VsZWN0IHBlcnNvbnMgcmVzcG9uc2libGUgZm9yIGV4ZWN1dGluZyBjb250cm9scyB3aXRoaW4gdGhpcyBwcm9ncmFtJ1wiIChzZWxlY3QpPVwiYWN0aXZhdGVMaXN0KCdSRVZJRVdFUicpXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0ZWRcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX3Jldmlld2VyPy52YWx1ZT8ubGVuZ3RoIHx8IGNvbnRyb2xzPy5wcm9ncmFtX3Jldmlld2VyX2dyb3VwPy52YWx1ZT8ubGVuZ3RoXCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1pbm5lclwiICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fcmV2aWV3ZXI/LnZhbHVlPy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hpcFwiPjxzcGFuIGNsYXNzPVwidngtZnMtMTEgdngtcGFyYWdyYXBoLXR4dCB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlXCI+VVNFUihTKTwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiY291bnQgdXNlclwiIGFwcFBvcG92ZXIgKGNsaWNrKT1cInJldmlld2VyLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+e3tjb250cm9scz8ucHJvZ3JhbV9yZXZpZXdlcj8udmFsdWU/Lmxlbmd0aH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZ4LWZzLTEyIHZ4LXBhcmFncmFwaC10eHQgdngtbWwtMiB2eC1tci0yXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9yZXZpZXdlcl9ncm91cD8udmFsdWU/Lmxlbmd0aCAmJiBjb250cm9scz8ucHJvZ3JhbV9yZXZpZXdlcj8udmFsdWU/Lmxlbmd0aFwiPiY8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWlubmVyXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9yZXZpZXdlcl9ncm91cD8udmFsdWU/Lmxlbmd0aFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlwXCI+PHNwYW4gY2xhc3M9XCJ2eC1mcy0xMSB2eC1wYXJhZ3JhcGgtdHh0IHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2VcIj5HUk9VUChTKTwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fcmV2aWV3ZXJfZ3JvdXA/LnZhbHVlPy5sZW5ndGhcIiBjbGFzcz1cImNvdW50XCIgYXBwUG9wb3ZlciAoY2xpY2spPVwicmV2aWV3ZXJHcm91cC5wb3BvdmVyKClcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPnt7Y29udHJvbHM/LnByb2dyYW1fcmV2aWV3ZXJfZ3JvdXA/LnZhbHVlPy5sZW5ndGggfX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFjdGl2ZUxpc3QhPT0nUkVWSUVXRVInXCIgKGNsaWNrKT1cImFjdGl2YXRlTGlzdCgnUkVWSUVXRVInKVwiIGNsYXNzPVwiZWRpdFwiIHR5cGU9XCJidXR0b25cIj48aSBjbGFzcz1cImljb25zXCI+JiN4ZTliYTs8L2k+IEVkaXQ8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2lucHV0LXdpdGgtcGlsbD5cclxuICAgICAgICAgICAgPGFwcC1wb3BvdmVyICNyZXZpZXdlciBbZG9udENsb3Nlb25DbGlja109XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWxpc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IHJldmlld2VyIG9mIGNvbnRyb2xzPy5wcm9ncmFtX3Jldmlld2VyPy52YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF2YXRhci1jYXJkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSAoY2xpY2spPVwicmVtb3ZlKHJldmlld2VyLCdSRVZJRVdFUicpXCIgY2xhc3M9XCJpY29uc1wiPiYjeGU5MGQ7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3Jldmlld2VyPy5tZW1iZXJfbmFtZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2FwcC1wb3BvdmVyPlxyXG4gICAgICAgICAgICA8YXBwLXBvcG92ZXIgI3Jldmlld2VyR3JvdXAgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1saXN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBncm91cCBvZiBjb250cm9scz8ucHJvZ3JhbV9yZXZpZXdlcl9ncm91cD8udmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgKGNsaWNrKT1cInJlbW92ZShncm91cCwnUkVWSUVXRVJfR1JPVVAnKVwiIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTBkOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tncm91cD8uZ3JvdXBfbmFtZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2FwcC1wb3BvdmVyPlxyXG4gICAgICAgICAgICA8bGFiZWwgW2NsYXNzLmRpc2FibGVkXT1cImFjdGl2ZUxpc3QgPT09ICdSRVZJRVdFUidcIiBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5ERUZBVUxUIFJldmlld2VyKFMpIDxpIGNsYXNzPVwiaWNvbnNcIiBbYXBwVG9vbHRpcF09XCInVGhpcyBvcHRpb24gbGV0cyB5b3Ugc3BlY2lmeSB0aGUgZGVmYXVsdCByZXZpZXdlcnMgZm9yIGFsbCBuZXcgcmVzcG9uc2liaWxpdGllcyBhc3NvY2lhdGVkIHdpdGggYSBQcm9ncmFtLiBJZiBhIGRlZmF1bHQgcmV2aWV3ZXIgaXMgc2VsZWN0ZWQsIHRoZSB1c2VyIHdpbGwgYXV0b21hdGljYWxseSBiZSBzZWxlY3RlZCBhcyBhIHJldmlld2VyIHdpdGhpbiB0aGUgXFwnQ3JlYXRlIGEgUmVzcG9uc2liaWxpdHlcXCcgZm9ybS4gSG93ZXZlciwgdGhlIGFzc2lnbm9yIGNhbiBtYWtlIGNoYW5nZXMgdG8gdGhpcyBzZXR0aW5nLCBpZiByZXF1aXJlZC4nXCIgcGxhY2VtZW50PVwiYm90dG9tXCIgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCIgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiPiYjeGViMTY7PC9pPjwvbGFiZWw+XHJcbiAgICAgICAgICAgIDxpbnB1dC13aXRoLXBpbGwgW2Rpc2FibGVkXT1cImFjdGl2ZUxpc3QgPT09ICdSRVZJRVdFUidcIiBbcGxhY2Vob2xkZXJdPVwiJ1NlbGVjdCBwZXJzb25zIHJlc3BvbnNpYmxlIGZvciBleGVjdXRpbmcgY29udHJvbHMgd2l0aGluIHRoaXMgcHJvZ3JhbSdcIiAoc2VsZWN0KT1cImFjdGl2YXRlTGlzdCgnREVGQVVMVF9SRVZJRVdFUicpXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0ZWRcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfcmV2aWV3ZXI/LnZhbHVlPy5sZW5ndGggfHwgY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9yZXZpZXdlcl9ncm91cD8udmFsdWU/Lmxlbmd0aFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1pbm5lclwiICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9yZXZpZXdlcj8udmFsdWU/Lmxlbmd0aFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlwXCI+PHNwYW4gY2xhc3M9XCJ2eC1mcy0xMSB2eC1wYXJhZ3JhcGgtdHh0IHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2VcIj5VU0VSKFMpPC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJjb3VudCB1c2VyXCIgYXBwUG9wb3ZlciAoY2xpY2spPVwiZGVmYXVsdFJldmlld2VyLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+e3tjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X3Jldmlld2VyPy52YWx1ZT8ubGVuZ3RofX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidngtZnMtMTIgdngtcGFyYWdyYXBoLXR4dCB2eC1tbC0yIHZ4LW1yLTJcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfcmV2aWV3ZXJfZ3JvdXA/LnZhbHVlPy5sZW5ndGggJiYgY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9yZXZpZXdlcj8udmFsdWU/Lmxlbmd0aFwiPiY8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWlubmVyXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X3Jldmlld2VyX2dyb3VwPy52YWx1ZT8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoaXBcIj48c3BhbiBjbGFzcz1cInZ4LWZzLTExIHZ4LXBhcmFncmFwaC10eHQgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZVwiPkdST1VQKFMpPC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X3Jldmlld2VyX2dyb3VwPy52YWx1ZT8ubGVuZ3RoXCIgY2xhc3M9XCJjb3VudFwiIGFwcFBvcG92ZXIgKGNsaWNrKT1cImFzc2lnbmVlX2dyb3VwLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+e3tjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X3Jldmlld2VyX2dyb3VwPy52YWx1ZT8ubGVuZ3RoIH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJhY3RpdmVMaXN0IT09J0RFRkFVTFRfUkVWSUVXRVInXCIgKGNsaWNrKT1cImFjdGl2YXRlTGlzdCgnREVGQVVMVF9SRVZJRVdFUicpXCIgY2xhc3M9XCJlZGl0XCIgdHlwZT1cImJ1dHRvblwiPjxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOWJhOzwvaT4gRWRpdDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvaW5wdXQtd2l0aC1waWxsPlxyXG4gICAgICAgICAgICA8YXBwLXBvcG92ZXIgI2RlZmF1bHRSZXZpZXdlciBbZG9udENsb3Nlb25DbGlja109XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWxpc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IHJldmlld2VyIG9mIGNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfcmV2aWV3ZXI/LnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyLWNhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIChjbGljayk9XCJyZW1vdmUocmV2aWV3ZXIsJ0RFRkFVTFRfUkVWSUVXRVInKVwiIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTBkOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3Jldmlld2VyPy5tZW1iZXJfbmFtZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2FwcC1wb3BvdmVyPlxyXG4gICAgICAgICAgICA8YXBwLXBvcG92ZXIgI2RlZmF1bHRSZXZpZXdlckdyb3VwIFtkb250Q2xvc2VvbkNsaWNrXT1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tbGlzdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cImFjdGlvbi1pdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgZ3JvdXAgb2YgY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9yZXZpZXdlcl9ncm91cD8udmFsdWUgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyLWNhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpICAoY2xpY2spPVwicmVtb3ZlKGdyb3VwLCdERUZBVUxUX1JFVklFV0VSX0dST1VQJylcIiBjbGFzcz1cImljb25zXCI+JiN4ZTkwZDs8L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tncm91cD8uZ3JvdXBfbmFtZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2FwcC1wb3BvdmVyPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicmFkaW8tZ3JvdXAtc2VsZWN0b3JcIiBbY2xhc3MuZGlzYWJsZWRdPVwiYWN0aXZlTGlzdCA9PT0gJ1JFVklFV0VSJ1wiPlxyXG4gICAgICAgICAgICAgICAgPGFwcC1jcy1yYWRpbyBbbmFtZV09XCIncmV2aWV3ZXInXCIgW2NoZWNrZWRdPVwiY29udHJvbHM/LnJldmlld2VyX2NvbXBsZXRpb25fY3JpdGVyaWE/LnZhbHVlID09ICdTRVFVRU5USUFMJ1wiIChjaGVja2VkRXZlbnQpPVwic2V0Rm9ybUZpZWxkKCdyZXZpZXdlcl9jb21wbGV0aW9uX2NyaXRlcmlhJywgJ1NFUVVFTlRJQUwnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIFNFUVVFTlRJQUwgPGkgY2xhc3M9XCJpY29uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthcHBUb29sdGlwXT1cIidUaGUgcmVzcG9uc2liaWxpdHkgd2lsbCBiZSBzZW50IGZvciByZXZpZXcgb25lIGF0IGEgdGltZSBpbiB0aGUgc2VxdWVuY2UgZGVmaW5lZCBieSB5b3UuJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbS1yaWdodFwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlOTFmOzwvaT5cclxuICAgICAgICAgICAgICAgIDwvYXBwLWNzLXJhZGlvPlxyXG4gICAgICAgICAgICAgICAgPGFwcC1jcy1yYWRpbyBbbmFtZV09XCIncmV2aWV3ZXInXCIgW2NoZWNrZWRdPVwiY29udHJvbHM/LnJldmlld2VyX2NvbXBsZXRpb25fY3JpdGVyaWE/LnZhbHVlID09ICdBTllPTkUnXCIgKGNoZWNrZWRFdmVudCk9XCJzZXRGb3JtRmllbGQoJ3Jldmlld2VyX2NvbXBsZXRpb25fY3JpdGVyaWEnLCAnQU5ZT05FJylcIj5cclxuICAgICAgICAgICAgICAgICAgICBBTlkgUkVWSUVXRVIgQ0FOIE1BUksgVEhJUyBBUyBSRVZJRVdFRCA8aSBjbGFzcz1cImljb25zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2FwcFRvb2x0aXBdPVwiJ1RoZSByZXNwb25zaWJpbGl0eSB3aWxsIGJlIHNlbnQgZm9yIHJldmlldyB0byBhbGwgcmV2aWV3ZXJzIGF0IHRoZSBzYW1lIHRpbWUuIElmIGFueW9uZSBvZiB0aGUgcmV2aWV3ZXIgcmV2aWV3cyB0aGUgcmVzcG9uc2liaWxpdHksIGl0IHdpbGwgYmUgY29uc2lkZXJlZCBhcyByZXZpZXdlZC4nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwiYm90dG9tLXJpZ2h0XCIgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCIgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiPiYjeGU5MWY7PC9pPlxyXG4gICAgICAgICAgICAgICAgPC9hcHAtY3MtcmFkaW8+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZm9ybS1maWVsZD5cclxuXHJcbiAgICAgICAgPCEtLSBPdmVyc2VlciAtLT5cclxuICAgICAgICA8Zm9ybS1maWVsZCBbYXBwU2Nyb2xsSW5WaWV3XT1cInNjcm9sbFRvQm90dG9tXCIgKm5nSWY9XCJhZGRpdGlvbmFsT3B0aW9uPy5PVkVSU0VFUlwiXHJcbiAgICAgICAgW2NoZWNrZWRdPVwiY29udHJvbHM/LnByb2dyYW1fb3ZlcnNlZXI/LnZhbHVlPy5sZW5ndGggIHx8ICBjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X292ZXJzZWVyPy52YWx1ZT8ubGVuZ3RoIHx8Y29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9vdmVyc2Vlcj8udmFsdWU/Lmxlbmd0aCAgfHwgIGNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfb3ZlcnNlZXJfZ3JvdXA/LnZhbHVlPy5sZW5ndGhcIlxyXG4gICAgICAgIFthY3RpdmVdPVwiYWN0aXZlTGlzdCA9PT0gJ09WRVJTRUVSJ1wiICBbZGlzYWJsZWRdPVwic2lkZUVsZW1lbnRzPy5pbmNsdWRlcyhhY3RpdmVMaXN0KSAmJiAhWydPVkVSU0VFUicsJ0RFRkFVTFRfT1ZFUlNFRVInLCdERUZBVUxUX0ZBSUxFRF9PVkVSU0VFUiddLmluY2x1ZGVzKGFjdGl2ZUxpc3QpXCJcclxuICAgICAgICAgICAgW2ltZ109XCInaHR0cHM6Ly9jZG4udi1jb21wbHkuY29tL2xpYnJhcmllcy93b3JrZmxvdy1lbmdpbmUvYXNzZXRzL3dvcmtmbG93L292ZXJzaWdodC5zdmcnXCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIiBbY2xhc3MuZGlzYWJsZWRdPVwiWydERUZBVUxUX09WRVJTRUVSJywnREVGQVVMVF9GQUlMRURfT1ZFUlNFRVInXS5pbmNsdWRlcyhhY3RpdmVMaXN0KVwiPk92ZXJzZWVyIDxpIGNsYXNzPVwiaWNvbnNcIiBbYXBwVG9vbHRpcF09XCInT3ZlcnNlZXJzIHJlZmVyIHRvIHRoZSB1c2VycyB3aG8gY2FuIG92ZXJzZWUgYSByZXNwb25zaWJpbGl0eSBhbmQgcmVjZWl2ZSBlbWFpbCB1cGRhdGVzIHdoZW4gYSByZXNwb25zaWJpbGl0eSBpcyBjb21wbGV0ZWQgb3Igbm90IGNvbXBsZXRlZC4gV2hpbGUgY3JlYXRpbmcgYSBQcm9ncmFtLCB0aGlzIG9wdGlvbnMgbGV0cyB5b3UgcmVzdHJpY3QgdGhlIHVzZXJzIHdobyBjYW4gb3ZlcnNlZSB0aGUgcmVzcG9uc2liaWxpdGllcyBhc3NvY2lhdGVkIHdpdGggdGhlIFByb2dyYW0uJ1wiIHBsYWNlbWVudD1cImJvdHRvbVwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlYjE2OzwvaT48L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXQtd2l0aC1waWxsIFtkaXNhYmxlZF09XCJbJ0RFRkFVTFRfT1ZFUlNFRVInLCdERUZBVUxUX0ZBSUxFRF9PVkVSU0VFUiddLmluY2x1ZGVzKGFjdGl2ZUxpc3QpXCIgW3BsYWNlaG9sZGVyXT1cIidXaG8gc2hvdWxkIGhhdmUgb3ZlcnNpZ2h0IG9mIHRoZSByZXNwb25zaWJpbGl0eT8nXCIgKHNlbGVjdCk9XCJhY3RpdmF0ZUxpc3QoJ09WRVJTRUVSJylcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3RlZFwiICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fb3ZlcnNlZXI/LnZhbHVlPy5sZW5ndGggfHwgY29udHJvbHM/LnByb2dyYW1fb3ZlcnNlZXJfZ3JvdXA/LnZhbHVlPy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtaW5uZXJcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX292ZXJzZWVyPy52YWx1ZT8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoaXBcIj48c3BhbiBjbGFzcz1cInZ4LWZzLTExIHZ4LXBhcmFncmFwaC10eHQgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZVwiPlVTRVIoUyk8L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNvdW50IHVzZXJcIiBhcHBQb3BvdmVyIChjbGljayk9XCJvdmVyc2VlcnMucG9wb3ZlcigpXCIgcGxhY2VtZW50PVwicmlnaHRcIj57e2NvbnRyb2xzPy5wcm9ncmFtX292ZXJzZWVyPy52YWx1ZT8ubGVuZ3RofX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9vdmVyc2Vlcl9ncm91cD8udmFsdWU/Lmxlbmd0aCAmJiBjb250cm9scz8ucHJvZ3JhbV9vdmVyc2Vlcj8udmFsdWU/Lmxlbmd0aCBcIiBjbGFzcz1cInZ4LWZzLTEyIHZ4LXBhcmFncmFwaC10eHQgdngtbWwtMiB2eC1tci0yXCI+Jjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWlubmVyXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9vdmVyc2Vlcl9ncm91cD8udmFsdWU/Lmxlbmd0aCBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoaXBcIj48c3BhbiBjbGFzcz1cInZ4LWZzLTExIHZ4LXBhcmFncmFwaC10eHQgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZVwiPkdST1VQKFMpPC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiY291bnRcIiBhcHBQb3BvdmVyIChjbGljayk9XCJvdmVyc2Vlckdyb3VwLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+e3tjb250cm9scz8ucHJvZ3JhbV9vdmVyc2Vlcl9ncm91cD8udmFsdWU/Lmxlbmd0aH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFjdGl2ZUxpc3QhPT0nT1ZFUlNFRVInXCIgKGNsaWNrKT1cImFjdGl2YXRlTGlzdCgnT1ZFUlNFRVInKVwiIGNsYXNzPVwiZWRpdFwiIHR5cGU9XCJidXR0b25cIj48aSBjbGFzcz1cImljb25zXCI+JiN4ZTliYTs8L2k+IEVkaXQ8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2lucHV0LXdpdGgtcGlsbD5cclxuICAgICAgICAgICAgPGFwcC1wb3BvdmVyICNvdmVyc2VlcnMgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1saXN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBvdmVyc2VlciBvZiBjb250cm9scz8ucHJvZ3JhbV9vdmVyc2Vlcj8udmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiICAoY2xpY2spPVwicmVtb3ZlKG92ZXJzZWVyLCdPVkVSU0VFUicpXCI+JiN4ZTkwZDs8L2k+IHt7b3ZlcnNlZXI/Lm1lbWJlcl9uYW1lfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgICAgIDxhcHAtcG9wb3ZlciAjb3ZlcnNlZXJHcm91cCBbZG9udENsb3Nlb25DbGlja109XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWxpc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGdyb3VwIG9mIGNvbnRyb2xzPy5wcm9ncmFtX292ZXJzZWVyX2dyb3VwPy52YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF2YXRhci1jYXJkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSAoY2xpY2spPVwicmVtb3ZlKGdyb3VwLCdPVkVSU0VFUl9HUk9VUCcpXCIgY2xhc3M9XCJpY29uc1wiPiYjeGU5MGQ7PC9pPiB7e2dyb3VwPy5ncm91cF9uYW1lfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgW2NsYXNzLmRpc2FibGVkXT1cImFjdGl2ZUxpc3QgPT09ICdPVkVSU0VFUidcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiICBbY2xhc3MuZGlzYWJsZWRdPVwiWydPVkVSU0VFUiddLmluY2x1ZGVzKGFjdGl2ZUxpc3QpXCI+REVGQVVMVCBPdmVyc2VlciA8aSBjbGFzcz1cImljb25zXCIgW2FwcFRvb2x0aXBdPVwiJ1RoaXMgb3B0aW9uIGxldHMgeW91IHNwZWNpZnkgdGhlIGRlZmF1bHQgb3ZlcnNlZXJzIGZvciBhbGwgbmV3IHJlc3BvbnNpYmlsaXRpZXMgYXNzb2NpYXRlZCB3aXRoIGEgUHJvZ3JhbS4gSWYgYSBkZWZhdWx0IG92ZXJzZWVyIGlzIHNlbGVjdGVkLCB0aGUgdXNlciB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgc2VsZWN0ZWQgYXMgYW4gb3ZlcnNlZXIgd2l0aGluIHRoZSBcXCdDcmVhdGUgYSBSZXNwb25zaWJpbGl0eVxcJyBmb3JtLiBIb3dldmVyLCB0aGUgYXNzaWdub3IgY2FuIG1ha2UgY2hhbmdlcyB0byB0aGlzIHNldHRpbmcsIGlmIHJlcXVpcmVkLidcIiBwbGFjZW1lbnQ9XCJib3R0b21cIiBkZWxheT1cIjBcIiB0eXBlPVwid2hpdGVcIiBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZWIxNjs8L2k+PC9sYWJlbD5cclxuICAgICAgICAgICAgPGlucHV0LXdpdGgtcGlsbCAgW2Rpc2FibGVkXT1cIlsnT1ZFUlNFRVInLCdERUZBVUxUX0ZBSUxFRF9PVkVSU0VFUiddLmluY2x1ZGVzKGFjdGl2ZUxpc3QpXCIgW3BsYWNlaG9sZGVyXT1cIidXaG8gc2hvdWxkIGhhdmUgb3ZlcnNpZ2h0IG9mIHRoZSByZXNwb25zaWJpbGl0eT8nXCIgKHNlbGVjdCk9XCJhY3RpdmF0ZUxpc3QoJ0RFRkFVTFRfT1ZFUlNFRVInKVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0ZWRcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfb3ZlcnNlZXI/LnZhbHVlPy5sZW5ndGggfHwgY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9vdmVyc2Vlcl9ncm91cD8udmFsdWU/Lmxlbmd0aFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtaW5uZXJcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfb3ZlcnNlZXI/LnZhbHVlPy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlwXCI+PHNwYW4gY2xhc3M9XCJ2eC1mcy0xMSB2eC1wYXJhZ3JhcGgtdHh0IHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2VcIj5VU0VSKFMpPC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNvdW50IHVzZXJcIiBhcHBQb3BvdmVyIChjbGljayk9XCJvdmVyc2VlcnNEZWZhdWx0LnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+e3tjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X292ZXJzZWVyPy52YWx1ZT8ubGVuZ3RofX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9vdmVyc2Vlcl9ncm91cD8udmFsdWU/Lmxlbmd0aCAmJiBjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X292ZXJzZWVyPy52YWx1ZT8ubGVuZ3RoXCIgY2xhc3M9XCJ2eC1mcy0xMiB2eC1wYXJhZ3JhcGgtdHh0IHZ4LW1sLTIgdngtbXItMlwiPiY8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWlubmVyXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X292ZXJzZWVyX2dyb3VwPy52YWx1ZT8ubGVuZ3RoIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlwXCI+PHNwYW4gY2xhc3M9XCJ2eC1mcy0xMSB2eC1wYXJhZ3JhcGgtdHh0IHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2VcIj5HUk9VUChTKTwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiY291bnRcIiBhcHBQb3BvdmVyIChjbGljayk9XCJvdmVyc2VlckRlZmF1bHRHcm91cC5wb3BvdmVyKClcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPnt7Y29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9vdmVyc2Vlcl9ncm91cD8udmFsdWU/Lmxlbmd0aH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiYWN0aXZlTGlzdCE9PSdERUZBVUxUX09WRVJTRUVSJ1wiIChjbGljayk9XCJhY3RpdmF0ZUxpc3QoJ0RFRkFVTFRfT1ZFUlNFRVInKVwiIGNsYXNzPVwiZWRpdFwiIHR5cGU9XCJidXR0b25cIj48aSBjbGFzcz1cImljb25zXCI+JiN4ZTliYTs8L2k+IEVkaXQ8L2J1dHRvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9pbnB1dC13aXRoLXBpbGw+XHJcbiAgICAgICAgPGFwcC1wb3BvdmVyICNvdmVyc2VlcnNEZWZhdWx0IFtkb250Q2xvc2VvbkNsaWNrXT1cInRydWVcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1saXN0XCI+XHJcbiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgb3ZlcnNlZXIgb2YgY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9vdmVyc2Vlcj8udmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF2YXRhci1jYXJkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiICAoY2xpY2spPVwicmVtb3ZlKG92ZXJzZWVyLCdERUZBVUxUX09WRVJTRUVSJylcIj4mI3hlOTBkOzwvaT4ge3tvdmVyc2Vlcj8ubWVtYmVyX25hbWV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9hcHAtcG9wb3Zlcj5cclxuICAgICAgICA8YXBwLXBvcG92ZXIgI292ZXJzZWVyRGVmYXVsdEdyb3VwIFtkb250Q2xvc2VvbkNsaWNrXT1cInRydWVcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1saXN0XCI+XHJcbiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgZ3JvdXAgb2YgY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9vdmVyc2Vlcl9ncm91cD8udmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF2YXRhci1jYXJkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgKGNsaWNrKT1cInJlbW92ZShncm91cCwnREVGQVVMVF9PVkVSU0VFUl9HUk9VUCcpXCIgY2xhc3M9XCJpY29uc1wiPiYjeGU5MGQ7PC9pPiB7e2dyb3VwPy5ncm91cF9uYW1lfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiID4gPC9sYWJlbD5cclxuICAgICAgICA8aW5wdXQtd2l0aC1waWxsIGNsYXNzPVwidngtbXQtMlwiIFtkaXNhYmxlZF09XCJbJ09WRVJTRUVSJywnREVGQVVMVF9PVkVSU0VFUiddLmluY2x1ZGVzKGFjdGl2ZUxpc3QpXCIgW3BsYWNlaG9sZGVyXT1cIidXaG8gc2hvdWxkIGJlIG5vdGlmaWVkIGlmIHRoZSByZXNwb25zaWJpbGl0eSBpcyBub3QgY29tcGxldGVkPydcIiAoc2VsZWN0KT1cImFjdGl2YXRlTGlzdCgnREVGQVVMVF9GQUlMRURfT1ZFUlNFRVInKVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3RlZFwiICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9mYWlsZWRfb3ZlcnNlZXI/LnZhbHVlPy5sZW5ndGggfHwgY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9mYWlsZWRfb3ZlcnNlZXJfZ3JvdXA/LnZhbHVlPy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1pbm5lclwiICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9mYWlsZWRfb3ZlcnNlZXI/LnZhbHVlPy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoaXBcIj48c3BhbiBjbGFzcz1cInZ4LWZzLTExIHZ4LXBhcmFncmFwaC10eHQgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZVwiPlVTRVIoUyk8L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJjb3VudCB1c2VyXCIgYXBwUG9wb3ZlciAoY2xpY2spPVwib3ZlcnNlZXJzRGVmYXVsdEZhaWwucG9wb3ZlcigpXCIgcGxhY2VtZW50PVwicmlnaHRcIj57e2NvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfZmFpbGVkX292ZXJzZWVyPy52YWx1ZT8ubGVuZ3RofX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfZmFpbGVkX292ZXJzZWVyX2dyb3VwPy52YWx1ZT8ubGVuZ3RoICYmIGNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfZmFpbGVkX292ZXJzZWVyPy52YWx1ZT8ubGVuZ3RoXCIgY2xhc3M9XCJ2eC1mcy0xMiB2eC1wYXJhZ3JhcGgtdHh0IHZ4LW1sLTIgdngtbXItMlwiPiY8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtaW5uZXJcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfZmFpbGVkX292ZXJzZWVyX2dyb3VwPy52YWx1ZT8ubGVuZ3RoIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoaXBcIj48c3BhbiBjbGFzcz1cInZ4LWZzLTExIHZ4LXBhcmFncmFwaC10eHQgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZVwiPkdST1VQKFMpPC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNvdW50XCIgYXBwUG9wb3ZlciAoY2xpY2spPVwib3ZlcnNlZXJEZWZhdWx0RmFpbEdyb3VwLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+e3tjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2ZhaWxlZF9vdmVyc2Vlcl9ncm91cD8udmFsdWU/Lmxlbmd0aH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiYWN0aXZlTGlzdCE9PSdERUZBVUxUX0ZBSUxFRF9PVkVSU0VFUidcIiAoY2xpY2spPVwiYWN0aXZhdGVMaXN0KCdERUZBVUxUX0ZBSUxFRF9PVkVSU0VFUicpXCIgY2xhc3M9XCJlZGl0XCIgdHlwZT1cImJ1dHRvblwiPjxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOWJhOzwvaT4gRWRpdDwvYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9pbnB1dC13aXRoLXBpbGw+XHJcbiAgICA8YXBwLXBvcG92ZXIgI292ZXJzZWVyc0RlZmF1bHRGYWlsIFtkb250Q2xvc2VvbkNsaWNrXT1cInRydWVcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWxpc3RcIj5cclxuICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgb3ZlcnNlZXIgb2YgY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9mYWlsZWRfb3ZlcnNlZXI/LnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF2YXRhci1jYXJkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnNcIiAgKGNsaWNrKT1cInJlbW92ZShvdmVyc2VlciwnREVGQVVMVF9GQUlMRURfT1ZFUlNFRVInKVwiPiYjeGU5MGQ7PC9pPiB7e292ZXJzZWVyPy5tZW1iZXJfbmFtZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2FwcC1wb3BvdmVyPlxyXG4gICAgPGFwcC1wb3BvdmVyICNvdmVyc2VlckRlZmF1bHRGYWlsR3JvdXAgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tbGlzdFwiPlxyXG4gICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBncm91cCBvZiBjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2ZhaWxlZF9vdmVyc2Vlcl9ncm91cD8udmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyLWNhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgKGNsaWNrKT1cInJlbW92ZShncm91cCwnREVGQVVMVF9GQUlMRURfT1ZFUlNFRVJfR1JPVVAnKVwiIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTBkOzwvaT4ge3tncm91cD8uZ3JvdXBfbmFtZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2FwcC1wb3BvdmVyPlxyXG48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Zvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgIDwhLS0gQXNzZXNzbWVudCAtLT5cclxuICAgICAgICA8Zm9ybS1maWVsZCBbYXBwU2Nyb2xsSW5WaWV3XT1cInNjcm9sbFRvQm90dG9tXCIgKm5nSWY9XCJhZGRpdGlvbmFsT3B0aW9uPy5BU1NFU1NNRU5UXCJcclxuICAgICAgICBbY2hlY2tlZF09XCJjb250cm9scz8ucHJvZ3JhbV9hc3Nlc3NtZW50cz8udmFsdWU/Lmxlbmd0aFwiXHJcbiAgICAgICAgW2FjdGl2ZV09XCJhY3RpdmVMaXN0ID09PSAnQVNTRVNTTUVOVCdcIiBbZGlzYWJsZWRdPVwic2lkZUVsZW1lbnRzLmluY2x1ZGVzKGFjdGl2ZUxpc3QpICYmIGFjdGl2ZUxpc3QgIT09ICdBU1NFU1NNRU5UJ1wiXHJcbiAgICAgICAgICAgIFtpbWddPVwiJ2h0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvd29ya2Zsb3ctZW5naW5lL2Fzc2V0cy93b3JrZmxvdy9hc3Nlc3NtZW50cy5zdmcnXCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5BU1NFU1NNRU5UUyA8aSBjbGFzcz1cImljb25zXCIgW2FwcFRvb2x0aXBdPVwiJ0Fzc2Vzc21lbnRzIGFsbG93cyB5b3UgdG8gYXNzb2NpYXRlIG91dGNvbWUgYmFzZWQgcXVlc3Rpb25uYWlyZXMgb3Igc2VsZi1hc3Nlc3NtZW50IHF1ZXN0aW9ubmFpcmVzIHdpdGggYSByZXNwb25zaWJpbGl0eS4gVGhpcyBvcHRpb24gbGV0cyB5b3Ugc3BlY2lmeSB3aGljaCBhc3Nlc3NtZW50cyBjYW4gYmUgbGlua2VkIHdpdGggcmVzcG9uc2liaWxpdGllcyB3aXRoaW4gYSBQcm9ncmFtLidcIiBwbGFjZW1lbnQ9XCJib3R0b21cIiBkZWxheT1cIjBcIiB0eXBlPVwid2hpdGVcIiBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZWIxNjs8L2k+PC9sYWJlbD5cclxuICAgICAgICAgICAgPGlucHV0LXdpdGgtcGlsbCAgW3BsYWNlaG9sZGVyXT1cIidTZWxlY3QgYXNzZXNzbWVudCBmb3IgdGhpcyByZXNwb25zaWJpbGl0eSdcIiAoc2VsZWN0KT1cImFjdGl2YXRlTGlzdCgnQVNTRVNTTUVOVCcpXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0ZWRcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2Fzc2Vzc21lbnRzPy52YWx1ZT8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIoY29udHJvbHM/LnByb2dyYW1fYXNzZXNzbWVudHM/LnZhbHVlIHwgYXNzZXNzbWVudFJlc29sdmVyKSBhcyBhc3Nlc3NtZW50c1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1pbm5lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlwXCI+PGkgY2xhc3M9XCJpY29uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJyZW1vdmUoYXNzZXNzbWVudHNbMF0sJ0FTU0VTU01FTlQnKVwiPiYjeGU5MGQ7PC9pPnt7YXNzZXNzbWVudHNbMF0/LmFzc2Vzc21lbnRfbmFtZX19IDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJhc3Nlc3NtZW50cz8ubGVuZ3RoID4gMVwiIGNsYXNzPVwiY291bnRcIiBhcHBQb3BvdmVyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInByb2dyYW1fYXNzZXNzbWVudHMucG9wb3ZlcigpXCIgcGxhY2VtZW50PVwicmlnaHRcIj4re3thc3Nlc3NtZW50cz8ubGVuZ3RoIC0xIH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJhY3RpdmVMaXN0IT09J0FTU0VTU01FTlQnXCIgY2xhc3M9XCJlZGl0XCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJhY3RpdmF0ZUxpc3QoJ0FTU0VTU01FTlQnKVwiPjxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOWJhOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgRWRpdDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvaW5wdXQtd2l0aC1waWxsPlxyXG4gICAgICAgICAgICA8YXBwLXBvcG92ZXIgI3Byb2dyYW1fYXNzZXNzbWVudHMgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciA+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWxpc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBhc3Nlc3NtZW50IG9mIChjb250cm9scz8ucHJvZ3JhbV9hc3Nlc3NtZW50cz8udmFsdWUgfCBhc3Nlc3NtZW50UmVzb2x2ZXIpIHwgc2xpY2U6MVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF2YXRhci1jYXJkXCIgKGNsaWNrKT1cInJlbW92ZShhc3Nlc3NtZW50LCdBU1NFU1NNRU5UJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpICAgIGNsYXNzPVwiaWNvbnNcIiA+JiN4ZTkwZDs8L2k+IHt7YXNzZXNzbWVudD8uYXNzZXNzbWVudF9uYW1lfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPC9hcHAtcG9wb3Zlcj5cclxuICAgICAgICA8L2Zvcm0tZmllbGQ+XHJcblxyXG5cclxuICAgICAgICA8IS0tIEZvcm1hdCAmIEV2aWRlbmNlIC0tPlxyXG4gICAgICAgIDxmb3JtLWZpZWxkIFthcHBTY3JvbGxJblZpZXddPVwic2Nyb2xsVG9Cb3R0b21cIiAqbmdJZj1cImFkZGl0aW9uYWxPcHRpb24/LkZPUk1BVEVfRVZJREVOQ0VcIiBbY2hlY2tlZF09XCJbdHJ1ZSxmYWxzZV0uaW5jbHVkZXMoY29udHJvbHM/LmV2aWRlbmNlX3JlcXVpcmVkPy52YWx1ZSlcIlxyXG4gICAgICAgICAgICBbYWN0aXZlXT1cImZhbHNlXCIgW2Rpc2FibGVkXT1cInNpZGVFbGVtZW50cy5pbmNsdWRlcyhhY3RpdmVMaXN0KVwiXHJcbiAgICAgICAgICAgIFtpbWddPVwiJ2h0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvd29ya2Zsb3ctZW5naW5lL2Fzc2V0cy93b3JrZmxvdy9mb3JtYXQtZXZpZGVuY2Uuc3ZnJ1wiPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+RXZpZGVuY2UgPGkgY2xhc3M9XCJpY29uc1wiIFthcHBUb29sdGlwXT1cIidUaGlzIG9wdGlvbiBsZXRzIHlvdSBzcGVjaWZ5IGlmIHRoZSBldmlkZW5jZSBvZiBjb21wbGV0aW9uIG9mIGEgcmVzcG9uc2liaWxpdHkgd2l0aGluIGEgUHJvZ3JhbSBuZWVkcyB0byBiZSB1cGxvYWRlZC4gSWYg4oCYWWVz4oCZIGlzIHNlbGVjdGVkLCB0aGUgYXNzaWduZWVzIGZvciBhbGwgcmVzcG9uc2liaWxpdGllcyBhc3NvY2lhdGVkIHdpdGggdGhlIFByb2dyYW0gd2lsbCBiZSByZXF1aXJlZCB0byB1cGxvYWQgZXZpZGVuY2Ugd2hpbGUgY29tcGxldGluZyB0aGUgcmVzcG9uc2liaWxpdHkuIEhvd2V2ZXIsIHRoZSBhc3NpZ25vciBjYW4gbWFrZSBjaGFuZ2VzIHRvIHRoaXMgc2V0dGluZyBpZiByZXF1aXJlZC4nXCIgcGxhY2VtZW50PVwiYm90dG9tXCIgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCIgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiPiYjeGViMTY7PC9pPjwvbGFiZWw+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1cGxvYWQtZm9ybWF0XCI+XHJcblxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0XCI+RG8gYWxsIHJlc3BvbnNpYmlsaXRpZXMgd2l0aGluIHRoaXMgcHJvZ3JhbSByZXF1aXJlIGV2aWRlbmNlPzwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyYWRpby1ncm91cCBwcm9ncmFtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGFwcC1jcy1yYWRpbyBbbmFtZV09XCInZXZpZGVuY2VfcmVxdWlyZWQnXCIgW2NoZWNrZWRdPVwiY29udHJvbHM/LmV2aWRlbmNlX3JlcXVpcmVkPy52YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjaGVja2VkRXZlbnQpPVwic2V0Rm9ybUZpZWxkKCdldmlkZW5jZV9yZXF1aXJlZCcsdHJ1ZSlcIj5ZRVM8L2FwcC1jcy1yYWRpbz5cclxuICAgICAgICAgICAgICAgICAgICA8YXBwLWNzLXJhZGlvIFtuYW1lXT1cIidldmlkZW5jZV9yZXF1aXJlZCdcIiBbY2hlY2tlZF09XCIhY29udHJvbHM/LmV2aWRlbmNlX3JlcXVpcmVkPy52YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjaGVja2VkRXZlbnQpPVwic2V0Rm9ybUZpZWxkKCdldmlkZW5jZV9yZXF1aXJlZCcsZmFsc2UpXCI+Tk88L2FwcC1jcy1yYWRpbz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1lbmQgdngtbXQtMlwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWZzLTExIHZ4LWZ3LTUwMCB2eC1wYXJhZ3JhcGgtdHh0IHZ4LXR0LXVwcGVyY2FzZSB2eC1tci0yXCI+QWxsb3cgYW55IGZpbGUgdG8gYmUgbWFya2VkIGFzXHJcbiAgICAgICAgICAgICAgICAgICAga2V5XHJcbiAgICAgICAgICAgICAgICAgICAgZXZpZGVuY2U8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxzd2l0Y2ggZm9ybUNvbnRyb2xOYW1lPVwiYWxsb3dfYW55X2ZpbGVfa2V5X2V2aWRlbmNlXCJcclxuICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cInNldEZvcm1GaWVsZCgnYWxsb3dfYW55X2ZpbGVfa2V5X2V2aWRlbmNlJywkZXZlbnQ/LnRhcmdldD8uY2hlY2tlZClcIj48L3N3aXRjaD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9mb3JtLWZpZWxkPlxyXG5cclxuXHJcbiAgICAgICAgPCEtLSBDdXN0b20gRmllbGQgLS0+XHJcbiAgICAgICAgPGZvcm0tZmllbGQgW2FwcFNjcm9sbEluVmlld109XCJzY3JvbGxUb0JvdHRvbVwiICpuZ0lmPVwiYWRkaXRpb25hbE9wdGlvbj8uQ1VTVE9NX0ZJRUxEU1wiIFtjaGVja2VkXT1cImNvbnRyb2xzPy5jdXN0b21fZmllbGRzPy52YWx1ZT8ubGVuZ3RoXCJcclxuICAgICAgICAgICAgW2FjdGl2ZV09XCJmYWxzZVwiIFtkaXNhYmxlZF09XCJzaWRlRWxlbWVudHMuaW5jbHVkZXMoYWN0aXZlTGlzdClcIlxyXG4gICAgICAgICAgICBbaW1nXT1cIidodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvY3VzdG9tLWZpZWxkcy5zdmcnXCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5DVVNUT00gRklFTERTIDxpIGNsYXNzPVwiaWNvbnNcIiBbYXBwVG9vbHRpcF09XCInQ3VzdG9tIGZpZWxkcyBlbmFibGUgeW91IHRvIGFkZCBhZGRpdGlvbmFsIG1ldGEgZGF0YSB0byBhIHJlc3BvbnNpYmlsaXR5LidcIiBwbGFjZW1lbnQ9XCJib3R0b21cIiBkZWxheT1cIjBcIiB0eXBlPVwid2hpdGVcIiBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZWIxNjs8L2k+PC9sYWJlbD5cclxuICAgICAgICAgICAgPGN1c3RvbS1maWVsZCBmb3JtQ29udHJvbE5hbWU9XCJjdXN0b21fZmllbGRzXCI+PC9jdXN0b20tZmllbGQ+XHJcbiAgICAgICAgPC9mb3JtLWZpZWxkPlxyXG4gICAgPC9mb3JtPlxyXG48L2Rpdj5cclxuXHJcblxyXG48IS0tIGxpc3Qgb2Ygcm9sZXMgLS0+XHJcbjxyb2xlLWxpc3QgKm5nSWY9XCJhY3RpdmVMaXN0ID09PSAnUk9MRSdcIiBbc2VsZWN0ZWRdPVwiY29udHJvbHM/LnByb2dyYW1fcm9sZXM/LnZhbHVlIHwgcmVmRGlzY29ubmVjdFwiIFtsb2FkaW5nXT1cImxpc3RMb2FkaW5nU3RhdGUuUk9MRVNcIlxyXG4gICAgW2xpc3RdPVwibGlzdHM/LlJPTEVTPy5kYXRhID8/IFtdXCIgKHNhdmUpPVwibGlzdEFjdGlvbigkZXZlbnQsJ1JPTEUnKVwiIChjYW5jZWwpPVwiZmllbGREZXNlbGVjdG9yKCdST0xFJylcIj48L3JvbGUtbGlzdD5cclxuXHJcbjwhLS0gbGlzdCBvZiBmcmFtZXdvcmtzIC0tPlxyXG48YXBwLWRlZmluZS1mcmFtZXdvcmstbGlzdGluZyAqbmdJZj1cImFjdGl2ZUxpc3QgPT09ICdGUkFNRVdPUksnXCIgKGNhbmNlbCk9XCJmaWVsZERlc2VsZWN0b3IoJ0ZSQU1FV09SSycpXCIgKG5leHQpPVwibGlzdEFjdGlvbigkZXZlbnQsJ0ZSQU1FV09SSycpXCIgW21vZGVdPVwibW9kZVwiIFtzZWxlY3RlZEZyYW1ld29ya109XCJjb250cm9scz8uZnJhbWV3b3JrPy52YWx1ZVwiPjwvYXBwLWRlZmluZS1mcmFtZXdvcmstbGlzdGluZz5cclxuPCEtLSBsaXN0IG9mIHJlc3BvbnNpYmlsaXR5IGNlbnRlciAtLT5cclxuPGFwcC1yZXNwb25zaWJpbGl0eS1jZW50ZXJzLWxpc3QgKm5nSWY9XCJhY3RpdmVMaXN0ID09PSAnUkMnXCIgW3Jlc3BvbnNpYmlsaXR5Q2VudGVyc0xpc3RdPVwibGlzdHM/LlJDID8/IFtdXCJcclxuICAgIFtyYWRpb1NlbGVjdGlvbl09XCJmYWxzZVwiIFtyY0lkS2V5XT1cIidyY19pZCdcIiAoY2xvc2VSY0xpc3QpPVwiZmllbGREZXNlbGVjdG9yKCdSQycpXCJcclxuICAgIChzYXZlU2VsZWN0ZWRMaXN0KT1cImxpc3RBY3Rpb24oJGV2ZW50LCdSQycpXCIgW3NlbGVjdGVkUmVzcG9uc2liaWxpdHlDZW50ZXJzXT1cImNvbnRyb2xzPy5yYz8udmFsdWUgfCByZWZEaXNjb25uZWN0XCI+XHJcbjwvYXBwLXJlc3BvbnNpYmlsaXR5LWNlbnRlcnMtbGlzdD5cclxuPCEtLSByZW5kZXIgdXNlcmxpc3Qgd2l0aCBncm91cCAtLT5cclxuXHJcbjx1c2VyLWdyb3VwLWxpc3QgKm5nSWY9XCJhY3RpdmVMaXN0ID09PSAnT1dORVInXCIgW2dyb3VwRW5hYmxlZF09XCJ0cnVlXCIgW3NpbmdsZVNlbGVjdF09XCJmYWxzZVwiIFtsb2FkaW5nXT1cImxpc3RMb2FkaW5nU3RhdGUuVVNFUlNcIlxyXG4gICAgW25vblJlbW92YWJsZVVzZXJJZHNdPVwibGlzdHMuTk9OX1JFTU9WQUJMRV9PV05FUlMgIHwgbGlzdFRvSWQgOiAnbWVtYmVyX2lkJ1wiIFt1c2VybGlzdF09XCJsaXN0cz8uT1dORVJTPy5kYXRhID8/IFtdXCJcclxuICAgIFtzZWxlY3RlZFVzZXJzXT1cImNvbnRyb2xzPy5wcm9ncmFtX293bmVycz8udmFsdWUgfCByZWZEaXNjb25uZWN0XCJcclxuICAgIChmZXRjaFVzZXJEYXRhKT1cImZldGNoVXNlcnNBc3NvY2lhdGVkV2l0aFJvbGVzKGZhbHNlLCRldmVudClcIiBbdXNlckxpc3RJbmZvXT1cImxpc3RzPy5PV05FUlNcIlxyXG4gICAgW2dyb3VwTGlzdEluZm9dPVwibGlzdHM/Lk9XTkVSU19HUk9VUFNcIiBbZ3JvdXBMaXN0XT1cImxpc3RzPy5PV05FUlNfR1JPVVBTPy5kYXRhID8/IFtdXCJcclxuICAgIFtzZWxlY3RlZEdyb3Vwc109XCJjb250cm9scz8ucHJvZ3JhbV9vd25lcnNfZ3JvdXA/LnZhbHVlIHwgcmVmRGlzY29ubmVjdFwiIChzYXZlKT1cImxpc3RBY3Rpb24oJGV2ZW50LCdPV05FUicpXCJcclxuICAgIChjYW5jZWwpPVwiZmllbGREZXNlbGVjdG9yKCdPV05FUicpXCIgW3BhbmVsVGl0bGVdPVwicGFuZWxUaXRsZU93bmVyXCI+PC91c2VyLWdyb3VwLWxpc3Q+XHJcbjx1c2VyLWdyb3VwLWxpc3QgKm5nSWY9XCJhY3RpdmVMaXN0ID09PSAnQVBQUk9WRVInXCIgW2dyb3VwRW5hYmxlZF09XCJmYWxzZVwiIFtzaW5nbGVTZWxlY3RdPVwidHJ1ZVwiXHJcbiAgICBbdXNlcmxpc3RdPVwibGlzdHM/LkFQUFJPVkVSUz8uZGF0YSA/PyBbXVwiIFtzZWxlY3RlZFVzZXJzXT1cImNvbnRyb2xzPy5wcm9ncmFtX2FwcHJvdmVyPy52YWx1ZSB8IHJlZkRpc2Nvbm5lY3RcIlxyXG4gICAgW3VzZXJMaXN0SW5mb109XCJsaXN0cz8uQVBQUk9WRVJTXCIgKHNhdmUpPVwibGlzdEFjdGlvbigkZXZlbnQsJ0FQUFJPVkVSJylcIiAoY2FuY2VsKT1cImZpZWxkRGVzZWxlY3RvcignQVBQUk9WRVInKVwiIFtwYW5lbFRpdGxlXT1cInBhbmVsVGl0bGVBcHByb3ZlclwiPlxyXG48L3VzZXItZ3JvdXAtbGlzdD5cclxuPHVzZXItZ3JvdXAtbGlzdCAqbmdJZj1cImFjdGl2ZUxpc3QgPT09ICdBU1NJR05FRSdcIiBbZ3JvdXBFbmFibGVkXT1cInRydWVcIiBbc2luZ2xlU2VsZWN0XT1cImZhbHNlXCJcclxuICAgIFt1c2VybGlzdF09XCJsaXN0cz8uQVNTSUdORUVTID8/IFtdXCIgW3NlbGVjdGVkVXNlcnNdPVwiY29udHJvbHM/LnByb2dyYW1fYXNzaWduZWU/LnZhbHVlIHwgcmVmRGlzY29ubmVjdFwiICBbZ3JvdXBMaXN0XT1cImxpc3RzPy5BU1NJR05FRVNfR1JPVVAgPz8gW11cIlxyXG4gICAgW3NlbGVjdGVkR3JvdXBzXT1cImNvbnRyb2xzPy5wcm9ncmFtX2Fzc2lnbmVlX2dyb3VwPy52YWx1ZSB8IHJlZkRpc2Nvbm5lY3RcIlxyXG4gICAgW3VzZXJMaXN0SW5mb109XCJsaXN0cz8uQVNTSUdORUVTXCIgKHNhdmUpPVwibGlzdEFjdGlvbigkZXZlbnQsJ0FTU0lHTkVFJylcIiAoY2FuY2VsKT1cImZpZWxkRGVzZWxlY3RvcignQVNTSUdORUUnKVwiIFtwYW5lbFRpdGxlXT1cInBhbmVsVGl0bGVBc3NpZ25lZVwiPlxyXG48L3VzZXItZ3JvdXAtbGlzdD5cclxuPHVzZXItZ3JvdXAtbGlzdCAqbmdJZj1cImFjdGl2ZUxpc3QgPT09ICdERUZBVUxUX0FTU0lHTkVFJ1wiIFtncm91cEVuYWJsZWRdPVwidHJ1ZVwiIFtzaW5nbGVTZWxlY3RdPVwiZmFsc2VcIlxyXG4gICAgW3VzZXJsaXN0XT1cImxpc3RzPy5ERUZBVUxUX0FTU0lHTkVFUyA/PyBbXVwiIFtzZWxlY3RlZFVzZXJzXT1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfYXNzaWduZWU/LnZhbHVlIHwgcmVmRGlzY29ubmVjdFwiICBbZ3JvdXBMaXN0XT1cImxpc3RzPy5ERUZBVUxUX0FTU0lHTkVFU19HUk9VUCA/PyBbXVwiXHJcbiAgICBbc2VsZWN0ZWRHcm91cHNdPVwiY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9hc3NpZ25lZV9ncm91cD8udmFsdWUgfCByZWZEaXNjb25uZWN0XCJcclxuICAgIFt1c2VyTGlzdEluZm9dPVwibGlzdHM/LkRFRkFVTFRfQVNTSUdORUVcIiAoc2F2ZSk9XCJsaXN0QWN0aW9uKCRldmVudCwnREVGQVVMVF9BU1NJR05FRScpXCIgKGNhbmNlbCk9XCJmaWVsZERlc2VsZWN0b3IoJ0RFRkFVTFRfQVNTSUdORUUnKVwiPlxyXG48L3VzZXItZ3JvdXAtbGlzdD5cclxuXHJcbjx1c2VyLWdyb3VwLWxpc3QgKm5nSWY9XCJhY3RpdmVMaXN0ID09PSAnUkVWSUVXRVInXCIgW2dyb3VwRW5hYmxlZF09XCJmYWxzZVwiIFtzaW5nbGVTZWxlY3RdPVwiZmFsc2VcIlxyXG4gICAgW3VzZXJsaXN0XT1cImxpc3RzPy5SRVZJRVdFUlMgPz8gW11cIiBbc2VsZWN0ZWRVc2Vyc109XCJjb250cm9scz8ucHJvZ3JhbV9yZXZpZXdlcj8udmFsdWUgfCByZWZEaXNjb25uZWN0XCIgIFtncm91cExpc3RdPVwibGlzdHM/LlJFVklFV0VSU19HUk9VUCA/PyBbXVwiXHJcbiAgICBbc2VsZWN0ZWRHcm91cHNdPVwiY29udHJvbHM/LnByb2dyYW1fcmV2aWV3ZXJfZ3JvdXA/LnZhbHVlIHwgcmVmRGlzY29ubmVjdFwiXHJcbiAgICBbdXNlckxpc3RJbmZvXT1cImxpc3RzPy5SRVZJRVdFUlNcIiAoc2F2ZSk9XCJsaXN0QWN0aW9uKCRldmVudCwnUkVWSUVXRVInKVwiIChjYW5jZWwpPVwiZmllbGREZXNlbGVjdG9yKCdSRVZJRVdFUicpXCIgW3BhbmVsVGl0bGVdPVwicGFuZWxUaXRsZVJldmlld2VyXCI+XHJcbjwvdXNlci1ncm91cC1saXN0PlxyXG48dXNlci1ncm91cC1saXN0ICpuZ0lmPVwiYWN0aXZlTGlzdCA9PT0gJ0RFRkFVTFRfUkVWSUVXRVInXCIgW2dyb3VwRW5hYmxlZF09XCJmYWxzZVwiIFtzaW5nbGVTZWxlY3RdPVwiZmFsc2VcIlxyXG4gICAgW3VzZXJsaXN0XT1cImxpc3RzPy5ERUZBVUxUX1JFVklFV0VSUyA/PyBbXVwiIFtzZWxlY3RlZFVzZXJzXT1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfcmV2aWV3ZXI/LnZhbHVlIHwgcmVmRGlzY29ubmVjdFwiICBbZ3JvdXBMaXN0XT1cImxpc3RzPy5ERUZBVUxUX1JFVklFV0VSU19HUk9VUCA/PyBbXVwiXHJcbiAgICBbc2VsZWN0ZWRHcm91cHNdPVwiY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9yZXZpZXdlcl9ncm91cD8udmFsdWUgfCByZWZEaXNjb25uZWN0XCJcclxuICAgIFt1c2VyTGlzdEluZm9dPVwibGlzdHM/LkRFRkFVTFRfUkVWSUVXRVJTXCIgKHNhdmUpPVwibGlzdEFjdGlvbigkZXZlbnQsJ0RFRkFVTFRfUkVWSUVXRVInKVwiIChjYW5jZWwpPVwiZmllbGREZXNlbGVjdG9yKCdERUZBVUxUX1JFVklFV0VSJylcIiBbcGFuZWxUaXRsZV09XCJwYW5lbFRpdGxlRGVmYXVsdFJldmlld2VyXCI+XHJcbjwvdXNlci1ncm91cC1saXN0PlxyXG48dXNlci1ncm91cC1saXN0ICpuZ0lmPVwiYWN0aXZlTGlzdCA9PT0gJ09WRVJTRUVSJ1wiIFtncm91cEVuYWJsZWRdPVwiZmFsc2VcIiBbc2luZ2xlU2VsZWN0XT1cImZhbHNlXCJcclxuICAgIFt1c2VybGlzdF09XCJsaXN0cz8uT1ZFUlNFRVJTID8/IFtdXCIgW3NlbGVjdGVkVXNlcnNdPVwiY29udHJvbHM/LnByb2dyYW1fb3ZlcnNlZXI/LnZhbHVlIHwgcmVmRGlzY29ubmVjdFwiICBbZ3JvdXBMaXN0XT1cImxpc3RzPy5PVkVSU0VFUlNfR1JPVVAgPz8gW11cIlxyXG4gICAgW3NlbGVjdGVkR3JvdXBzXT1cImNvbnRyb2xzPy5wcm9ncmFtX292ZXJzZWVyX2dyb3VwPy52YWx1ZSB8IHJlZkRpc2Nvbm5lY3RcIlxyXG4gICAgW3VzZXJMaXN0SW5mb109XCJsaXN0cz8uT1ZFUlNFRVNcIiAoc2F2ZSk9XCJsaXN0QWN0aW9uKCRldmVudCwnT1ZFUlNFRVInKVwiIChjYW5jZWwpPVwiZmllbGREZXNlbGVjdG9yKCdPVkVSU0VFUicpXCI+XHJcbjwvdXNlci1ncm91cC1saXN0PlxyXG48dXNlci1ncm91cC1saXN0ICpuZ0lmPVwiYWN0aXZlTGlzdCA9PT0gJ0RFRkFVTFRfT1ZFUlNFRVInXCIgW2dyb3VwRW5hYmxlZF09XCJmYWxzZVwiIFtzaW5nbGVTZWxlY3RdPVwiZmFsc2VcIlxyXG4gICAgW3VzZXJsaXN0XT1cImxpc3RzPy5ERUZBVUxUX09WRVJTRUVSUyA/PyBbXVwiIFtzZWxlY3RlZFVzZXJzXT1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfb3ZlcnNlZXI/LnZhbHVlIHwgcmVmRGlzY29ubmVjdFwiICBbZ3JvdXBMaXN0XT1cImxpc3RzPy5ERUZBVUxUX09WRVJTRUVSU19HUk9VUCA/PyBbXVwiXHJcbiAgICBbc2VsZWN0ZWRHcm91cHNdPVwiY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9vdmVyc2Vlcl9ncm91cD8udmFsdWUgfCByZWZEaXNjb25uZWN0XCJcclxuICAgIFt1c2VyTGlzdEluZm9dPVwibGlzdHM/LkRFRkFVTFRfT1ZFUlNFRVJTXCIgKHNhdmUpPVwibGlzdEFjdGlvbigkZXZlbnQsJ0RFRkFVTFRfT1ZFUlNFRVInKVwiIChjYW5jZWwpPVwiZmllbGREZXNlbGVjdG9yKCdERUZBVUxUX09WRVJTRUVSJylcIj5cclxuPC91c2VyLWdyb3VwLWxpc3Q+XHJcbjx1c2VyLWdyb3VwLWxpc3QgKm5nSWY9XCJhY3RpdmVMaXN0ID09PSAnREVGQVVMVF9GQUlMRURfT1ZFUlNFRVInXCIgW2dyb3VwRW5hYmxlZF09XCJmYWxzZVwiIFtzaW5nbGVTZWxlY3RdPVwiZmFsc2VcIlxyXG4gICAgW3VzZXJsaXN0XT1cImxpc3RzPy5ERUZBVUxUX09WRVJTRUVSUyA/PyBbXVwiIFtzZWxlY3RlZFVzZXJzXT1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfZmFpbGVkX292ZXJzZWVyPy52YWx1ZSB8IHJlZkRpc2Nvbm5lY3RcIiAgW2dyb3VwTGlzdF09XCJsaXN0cz8uREVGQVVMVF9PVkVSU0VFUlNfR1JPVVAgPz8gW11cIlxyXG4gICAgW3NlbGVjdGVkR3JvdXBzXT1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfZmFpbGVkX292ZXJzZWVyX2dyb3VwPy52YWx1ZSB8IHJlZkRpc2Nvbm5lY3RcIlxyXG4gICAgW3VzZXJMaXN0SW5mb109XCJsaXN0cz8uREVGQVVMVF9PVkVSU0VFUlNcIiAoc2F2ZSk9XCJsaXN0QWN0aW9uKCRldmVudCwnREVGQVVMVF9GQUlMRURfT1ZFUlNFRVInKVwiIChjYW5jZWwpPVwiZmllbGREZXNlbGVjdG9yKCdERUZBVUxUX0ZBSUxFRF9PVkVSU0VFUicpXCI+XHJcbjwvdXNlci1ncm91cC1saXN0PlxyXG48YXNzZXNzbWVudC1waWNrZXIgKm5nSWY9XCJhY3RpdmVMaXN0ID09PSAnQVNTRVNTTUVOVCdcIiBbc2VsZWN0ZWRBc3Nlc3NtZW50XT1cImNvbnRyb2xzPy5wcm9ncmFtX2Fzc2Vzc21lbnRzPy52YWx1ZVwiIChjYW5jZWxBc3Nlc3NtZW50KT1cImZpZWxkRGVzZWxlY3RvcignQVNTRVNTTUVOVCcpXCIgKG9uQXNzZXNzbWVudFNlbGVjdCk9XCJsaXN0QWN0aW9uKCRldmVudCwnQVNTRVNTTUVOVCcpXCI+PC9hc3Nlc3NtZW50LXBpY2tlcj5cclxuPGFwcC1sb2FkZXItaW5saW5lICpuZ0lmPVwibG9hZGVyXCI+PC9hcHAtbG9hZGVyLWlubGluZT5cclxuICAgIDxhcHAtc21pbGV5LWRpYWxvZy1pbmxpbmVcclxuICAgICAgICAqbmdJZj1cInNob3dTbWlsZXlcIlxyXG4gICAgICAgIFttZXNzYWdlXT1cInNtaWxleU1lc3NhZ2VcIlxyXG4gICAgICAgIFthY3Rpb25CdXR0b25zXT1cImFjdGlvbkJ1dHRvbnNcIlxyXG4gICAgICAgIChhY3Rpb24pPVwiYWN0aW9uKCRldmVudClcIlxyXG4gICAgICAgIChjbG9zZVNtaWxleSk9XCJjbG9zZVNtaWxleSgkZXZlbnQpXCI+XHJcbiAgICA8L2FwcC1zbWlsZXktZGlhbG9nLWlubGluZT5cclxuIl19
1083
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctcHJvZ3JhbS5jb21wb25lbnQubmdmYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvd29ya2Zsb3ctcHJvZ3JhbS93b3JrZmxvdy1wcm9ncmFtLmNvbXBvbmVudC5uZ2ZhY3RvcnkudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi93b3JrZmxvdy1wcm9ncmFtL3dvcmtmbG93LXByb2dyYW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O21FQ2lCWSxvR0FDOEIsS0FEcUUsMkRBQ3pFO21FQUN0QixvR0FBOEUsS0FBaEMseURBQTRCO21FQUUxRSx1SUFHWSxZQUQyQjs7d0JBQXFEO01BRjVGLHFPQUdZLDJCQUY2QywyREFBNkIsOEJBQWxGLGtKQUFvRCxXQUNwRCwyREFBa0MsK0JBRnRDLFlBR1ksRUFGNkMsU0FBNkIsRUFBbEYsU0FBb0QsRUFDcEQsU0FBa0M7bUVBRXRDOzs7Ozs7Ozt3QkFBb047TUFBbEg7O3dCQUE4QjtNQUFoSSxxSkFBb04sSUFBakUsaUNBQXdELDJCQUExRSx1QkFBaUIsRUFBbEosWUFBb04sRUFBbkYsU0FBaUIsbURBQUMseVBBQXdEO21FQUkvTCw4RkFHSyxLQUZELHVJQUNxRyxZQUFsRTs7d0JBQXFEO01BRHhGLHFPQUNxRywyQkFEcEMsMkRBQTZCLDhCQUFsRixrSkFBb0QsV0FDaEUsMkRBQWtDLCtCQURsQyxZQUNxRyxFQURwQyxTQUE2QixFQUFsRixTQUFvRCxFQUNoRSxTQUFrQzttRUFtQ25CLGdKQUVlLFlBRDFCOzt3QkFBMEQ7TUFEL0Msd0JBRWUsS0FBWixtQ0FBUTttRUFDOUI7Ozs7Ozs7O3dCQUU0RDtNQUR4RDs7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WixFQUF4WCxXQUFvRCxHQThDcEQsZ0RBQTRDLEdBQTVFLGNBQWtnQixFQUFsZSxXQUE0QyxHQTZDMUMsZ0RBQTRDLEdBQTlFLGNBV00sRUFYNEIsV0FBNEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpMCBmcm9tICdAYW5ndWxhci9jb3JlJztcbmkwLkNvbXBvbmVudEZhY3Rvcnk7XG4iLCI8ZGl2IGNsYXNzPVwid29ya2Zsb3ctcHJvZ3JhbVwiICNmb3JtPlxyXG4gICAgPGZvcm0gbm92YWxpZGF0ZSBbZm9ybUdyb3VwXT1cInByb2dyYW1Gb3JtXCI+XHJcbiAgICAgICAgPCEtLSBQcm9ncmFtIENhdGVnb3J5IFR5cGUgLS0+XHJcbiAgICAgICAgPGZvcm0tZmllbGQgW2NoZWNrZWRdPVwiY29udHJvbHM/LnByb2dyYW1fdHlwZT8udmFsdWUgPiAtMVwiIFthY3RpdmVdPVwiZmFsc2VcIiBbZGlzYWJsZWRdPVwic2lkZUVsZW1lbnRzLmluY2x1ZGVzKGFjdGl2ZUxpc3QpXCJcclxuICAgICAgICAgICAgW2ltZ109XCInaHR0cHM6Ly9jZG4udi1jb21wbHkuY29tL2xpYnJhcmllcy93b3JrZmxvdy1lbmdpbmUvYXNzZXRzL3dvcmtmbG93L2lzc3VlLXR5cGUuc3ZnJ1wiPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+UFJPR1JBTSBUWVBFIDxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIj4qPC9zcGFuPjwvbGFiZWw+XHJcbiAgICAgICAgICAgIDx0YWItc2VsZWN0b3IgZm9ybUNvbnRyb2xOYW1lPVwicHJvZ3JhbV90eXBlXCIgW2Rpc3BsYXlBcnJheV09XCJjb25zdGFudHM/LmNhdGVnb3J5VHlwZVwiPjwvdGFiLXNlbGVjdG9yPlxyXG4gICAgICAgICAgICA8IS0tIDxwICpuZ0lmPVwicHJvZ3JhbV9uYW1lPy5pbnZhbGlkXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+QWRkIGEgcHJvZ3JhbSB0eXBlPC9wPiAtLT5cclxuICAgICAgICA8L2Zvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgIDwhLS0gUHJvZ3JhbSBDYXRlZ29yeSBOYW1lIC0tPlxyXG4gICAgICAgIDxmb3JtLWZpZWxkIFtjaGVja2VkXT1cImNvbnRyb2xzPy5wcm9ncmFtX25hbWU/LnZhbHVlPy50cmltKCk/Lmxlbmd0aFwiIFthY3RpdmVdPVwiZmFsc2VcIiBbZGlzYWJsZWRdPVwic2lkZUVsZW1lbnRzLmluY2x1ZGVzKGFjdGl2ZUxpc3QpXCJcclxuICAgICAgICAgICAgW2ltZ109XCInaHR0cHM6Ly9jZG4udi1jb21wbHkuY29tL2xpYnJhcmllcy93b3JrZmxvdy1lbmdpbmUvYXNzZXRzL3dvcmtmbG93L3doYXQuc3ZnJ1wiPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+UFJPR1JBTSBOQU1FIDxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIj4qPC9zcGFuPjwvbGFiZWw+XHJcbiAgICAgICAgICAgIDxpbnB1dCBJbnB1dFRyaW0gZm9ybUNvbnRyb2xOYW1lPVwicHJvZ3JhbV9uYW1lXCIgdHlwZT1cInRleHRcIlxyXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJXaGF0IGlzIHRoZSBQcm9ncmFtIG5hbWU/XCI+XHJcblxyXG4gICAgICAgICAgICA8cCAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX25hbWU/LmVycm9ycyAmJiBjb250cm9scz8ucHJvZ3JhbV9uYW1lPy50b3VjaGVkXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+RW50ZXIgYVxyXG4gICAgICAgICAgICAgICAgbmFtZSBmb3IgdGhpcyBQcm9ncmFtLjwvcD5cclxuICAgICAgICAgICAgICAgIDxwICpuZ0lmPVwiaXNOYW1lRXhpc3RzXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+UHJvZ3JhbSBuYW1lIGFscmVhZHkgZXhpc3RzLjwvcD5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVwbG9hZC1maWxlcyB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWZsZXgtd3JhcCB2eC1tdC0xXCI+XHJcbiAgICAgICAgICAgICAgICA8ZmlsZS1waWxsICpuZ0Zvcj1cImxldCBhdHRhY2htZW50IG9mIGNvbnRyb2xzPy5kZXNjcmlwdGlvbl9hdHRhY2htZW50Py52YWx1ZSB8c2xpY2U6MDoyXCJcclxuICAgICAgICAgICAgICAgICAgICBbZXh0ZW5zaW9uXT1cImF0dGFjaG1lbnQ/Lm9yZ19maWxlPy5zcGxpdCgnLicpLnBvcCgpXCIgW25hbWVdPVwiYXR0YWNobWVudD8ub3JnX2ZpbGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJhdHRhY2htZW50Py51cGxvYWRpbmdcIiAoZGVsZXRlKT1cImRlbGV0ZUF0dGFjaG1lbnQoJ0RFU0NSSVBUSU9OJyxhdHRhY2htZW50KVwiPlxyXG4gICAgICAgICAgICAgICAgPC9maWxlLXBpbGw+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiY29udHJvbHM/LmRlc2NyaXB0aW9uX2F0dGFjaG1lbnQ/LnZhbHVlPy5sZW5ndGggPiAyXCIgY2xhc3M9XCJmaWxlLWNvdW50XCIgYXBwUG9wb3ZlciAoY2xpY2spPVwidXBsb2FkRmlsZS5wb3BvdmVyKClcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPit7e2NvbnRyb2xzPy5kZXNjcmlwdGlvbl9hdHRhY2htZW50Py52YWx1ZT8ubGVuZ3RoIC0gMn19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8YXBwLXBvcG92ZXIgI3VwbG9hZEZpbGUgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tbGlzdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwidngtcC0yXCIgKm5nRm9yPVwibGV0IGF0dGFjaG1lbnQgb2YgY29udHJvbHM/LmRlc2NyaXB0aW9uX2F0dGFjaG1lbnQ/LnZhbHVlfHNsaWNlOjJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlsZS1waWxsICBbZXh0ZW5zaW9uXT1cImF0dGFjaG1lbnQ/Lm9yZ19maWxlPy5zcGxpdCgnLicpLnBvcCgpXCIgW25hbWVdPVwiYXR0YWNobWVudD8ub3JnX2ZpbGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJhdHRhY2htZW50Py51cGxvYWRpbmdcIiAoZGVsZXRlKT1cImRlbGV0ZUF0dGFjaG1lbnQoJ0RFU0NSSVBUSU9OJyxhdHRhY2htZW50KVwiPjwvZmlsZS1waWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8bWFyeC1lZGl0b3IgWyhuZ01vZGVsKV09XCJlZGl0b3JEYXRhLnByb2dyYW1EZXNjcmlwdGlvblwiIFtuZ01vZGVsT3B0aW9uc109XCJ7c3RhbmRhbG9uZTogdHJ1ZX1cIlxyXG4gICAgICAgICAgICAgICAgKHNlbmRTYXZlZEZpbGVzKT1cInNlbGVjdEZpbGUoJ0RFU0NSSVBUSU9OJywkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInNldEZvcm1GaWVsZCgncHJvZ3JhbV9kZXNjcmlwdGlvbicsJGV2ZW50KVwiIFtlZGl0b3JDb25maWddPVwiY29uc3RhbnRzPy5kZXNjcmlwdGlvblwiPlxyXG4gICAgICAgICAgICA8L21hcngtZWRpdG9yPlxyXG5cclxuICAgICAgICA8L2Zvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgIDwhLS0gT2JqZWN0aXZlIC0tPlxyXG4gICAgICAgIDxmb3JtLWZpZWxkIFtjaGVja2VkXT1cImNvbnRyb2xzPy5wcm9ncmFtX29iamVjdGl2ZT8udmFsdWU/LnRyaW0oKT8ubGVuZ3RoXCIgW2FjdGl2ZV09XCJhY3RpdmVMaXN0ID09PSAnT0JKRUNUSVZFJ1wiIFtkaXNhYmxlZF09XCJzaWRlRWxlbWVudHMuaW5jbHVkZXMoYWN0aXZlTGlzdCkgJiYgYWN0aXZlTGlzdCAhPT0gJ09CSkVDVElWRSdcIlxyXG4gICAgICAgICAgICBbaW1nXT1cIidodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvb2JqZWN0aXZlcy5zdmcnXCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5PQkpFQ1RJVkVcclxuICAgICAgICAgICAgICA8IS0tIDxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIj4qPC9zcGFuPiAtLT5cclxuICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgICAgPG1hcngtZWRpdG9yIFsobmdNb2RlbCldPVwiZWRpdG9yRGF0YS5wcm9ncmFtT2JqZWN0aXZlXCIgW25nTW9kZWxPcHRpb25zXT1cIntzdGFuZGFsb25lOiB0cnVlfVwiXHJcbiAgICAgICAgICAgIChzZW5kU2F2ZWRGaWxlcyk9XCJzZWxlY3RGaWxlKCdPQkpFQ1RJVkUnLCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwic2V0Rm9ybUZpZWxkKCdwcm9ncmFtX29iamVjdGl2ZScsJGV2ZW50LCB0cnVlKVwiIFtlZGl0b3JDb25maWddPVwiY29uc3RhbnRzPy5vYmplY3RpdmVcIj5cclxuICAgICAgICAgICAgPC9tYXJ4LWVkaXRvcj5cclxuICAgICAgICAgICAgPCEtLSA8cCAqbmdJZj1cIiFpc09iamVjdGl2ZVZhbGlkXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+U3BlY2lmeSB0aGUgb2JqZWN0aXZlIGZvciB0aGlzIFByb2dyYW0uPC9wPiAtLT5cclxuICAgICAgICA8L2Zvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgIDwhLS0gUm9sZXMgLS0+XHJcbiAgICAgICAgPGZvcm0tZmllbGQgW2NoZWNrZWRdPVwiY29udHJvbHM/LnByb2dyYW1fcm9sZXM/LnZhbHVlPy5sZW5ndGggXCIgW2FjdGl2ZV09XCJhY3RpdmVMaXN0ID09PSAnUk9MRSdcIiBbZGlzYWJsZWRdPVwic2lkZUVsZW1lbnRzLmluY2x1ZGVzKGFjdGl2ZUxpc3QpICYmIGFjdGl2ZUxpc3QgIT09ICdST0xFJ1wiXHJcbiAgICAgICAgICAgIFtpbWddPVwiJ2h0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvd29ya2Zsb3ctZW5naW5lL2Fzc2V0cy93b3JrZmxvdy9yb2xlcy5zdmcnXCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5ST0xFKFMpIDxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIj4qPC9zcGFuPjxpIGNsYXNzPVwiaWNvbnNcIiBbYXBwVG9vbHRpcF09XCInUm9sZShzKSBsZXQgeW91IHNwZWNpZnkgdGhlIHVzZXJzIHRoYXQgY2FuIGJlIHNlbGVjdGVkIGFzIFByb2dyYW0gb3duZXJzIGFuZCBhcHByb3ZlcnMuJ1wiIHBsYWNlbWVudD1cImJvdHRvbVwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlYjE2OzwvaT48L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXQtd2l0aC1waWxsIFtwbGFjZWhvbGRlcl09XCInV2hpY2ggdXNlciByb2xlcyBoYXZlIGFjY2VzcyB0byB0aGlzIHByb2dyYW0/J1wiXHJcbiAgICAgICAgICAgICAgICAoc2VsZWN0KT1cImFjdGl2YXRlTGlzdCgnUk9MRScpXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0ZWRcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX3JvbGVzPy52YWx1ZT8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWlubmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoaXBcIj48aSAqbmdJZj1cIiFsaXN0cy5TWVNURU1fUk9MRV9JRFMuaW5jbHVkZXMoY29udHJvbHM/LnByb2dyYW1fcm9sZXM/LnZhbHVlWzBdPy5faWQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZShjb250cm9scz8ucHJvZ3JhbV9yb2xlcz8udmFsdWVbMF0sJ1JPTEUnKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTBkOzwvaT57e2NvbnRyb2xzPy5wcm9ncmFtX3JvbGVzPy52YWx1ZVswXT8ucm9sZU5hbWV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9yb2xlcz8udmFsdWU/Lmxlbmd0aCA+IDFcIiBjbGFzcz1cImNvdW50XCIgYXBwUG9wb3ZlclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJyb2xlLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgK3t7Y29udHJvbHM/LnByb2dyYW1fcm9sZXM/LnZhbHVlPy5sZW5ndGggLSAxfX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFjdGl2ZUxpc3QhPT0nUk9MRSdcIiBjbGFzcz1cImVkaXRcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImFjdGl2YXRlTGlzdCgnUk9MRScpXCI+PGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5YmE7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBFZGl0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9pbnB1dC13aXRoLXBpbGw+XHJcbiAgICAgICAgICAgIDxwICpuZ0lmPVwiZmFsc2VcIiBjbGFzcz1cImVycm9yLW1lc3NhZ2VcIj5BZGQgYSByb2xlKHMpPC9wPlxyXG4gICAgICAgICAgICA8YXBwLXBvcG92ZXIgI3JvbGUgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1saXN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBkYXRhIG9mIGNvbnRyb2xzPy5wcm9ncmFtX3JvbGVzPy52YWx1ZSB8IHNsaWNlOjFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgKm5nSWY9XCIhbGlzdHMuU1lTVEVNX1JPTEVfSURTLmluY2x1ZGVzKGRhdGE/Ll9pZClcIiBjbGFzcz1cImljb25zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJyZW1vdmVSb2xlKGRhdGEsJ1JPTEUnKVwiPiYjeGU5MGQ7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2RhdGE/LnJvbGVOYW1lfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgPC9mb3JtLWZpZWxkPlxyXG5cclxuICAgICAgICA8IS0tIE93bmVycyAtLT5cclxuICAgICAgICA8Zm9ybS1maWVsZCBbY2hlY2tlZF09XCJjb250cm9scz8ucHJvZ3JhbV9vd25lcnMudmFsdWU/Lmxlbmd0aCA+IDAgfHwgY29udHJvbHM/LnByb2dyYW1fb3duZXJzX2dyb3VwLnZhbHVlPy5sZW5ndGggPiAwXCIgW2FjdGl2ZV09XCJhY3RpdmVMaXN0ID09PSAnT1dORVInXCIgW2Rpc2FibGVkXT1cInNpZGVFbGVtZW50cy5pbmNsdWRlcyhhY3RpdmVMaXN0KSAmJiBhY3RpdmVMaXN0ICE9PSAnT1dORVInXCJcclxuICAgICAgICAgICAgW2ltZ109XCInaHR0cHM6Ly9jZG4udi1jb21wbHkuY29tL2xpYnJhcmllcy93b3JrZmxvdy1lbmdpbmUvYXNzZXRzL3dvcmtmbG93L293bmVyLnN2ZydcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiPk9XTkVSKFMpIDxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIj4qPC9zcGFuPjxpIGNsYXNzPVwiaWNvbnNcIiBbYXBwVG9vbHRpcF09XCInQW4gb3duZXIgaXMgYSB1c2VyIHJlc3BvbnNpYmxlIGZvciBtYW5hZ2luZyBhIFByb2dyYW0uIEJ5IGRlZmF1bHQsIHRoZSBLZXkgQWRtaW4gYW5kIGFsbCB1c2VycyBkZXNpZ25hdGVkIGFzIEFkbWlucyBhcmUgc2VsZWN0ZWQgYXMgUHJvZ3JhbSBvd25lcnMuIE9ubHkgdXNlcnMgc2VsZWN0ZWQgYXMgb3duZXJzIGNhbiBlZGl0IGFuZCBtYWtlIGNoYW5nZXMgdG8gdGhlIHByb2dyYW0gYW5kIGl0cyBhc3NvY2lhdGVkIHJlc3BvbnNpYmlsaXRpZXMuJ1wiIHBsYWNlbWVudD1cImJvdHRvbVwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlYjE2OzwvaT48L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXQtd2l0aC1waWxsIFtwbGFjZWhvbGRlcl09XCInV2hvIGlzIHJlc3BvbnNpYmxlIGZvciBtYW5hZ2luZyB0aGlzIHByb2dyYW0/J1wiXHJcbiAgICAgICAgICAgICAgICAoc2VsZWN0KT1cImFjdGl2YXRlTGlzdCgnT1dORVInKVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9vd25lcnMudmFsdWVbMF1cIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtaW5uZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hpcFwiPjxzcGFuIGNsYXNzPVwidngtZnMtMTEgdngtcGFyYWdyYXBoLXR4dCB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlXCI+VVNFUihTKTwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiY291bnQgdXNlclwiIGFwcFBvcG92ZXIgKGNsaWNrKT1cIm93bmVyLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+e3tjb250cm9scz8ucHJvZ3JhbV9vd25lcnM/LnZhbHVlPy5sZW5ndGh9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2eC1mcy0xMiB2eC1wYXJhZ3JhcGgtdHh0IHZ4LW1sLTIgdngtbXItMlwiICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fb3duZXJzX2dyb3VwPy52YWx1ZT8ubGVuZ3RoICYmIGNvbnRyb2xzPy5wcm9ncmFtX293bmVycz8udmFsdWU/Lmxlbmd0aFwiPiY8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWlubmVyXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9vd25lcnNfZ3JvdXA/LnZhbHVlPy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hpcFwiPjxzcGFuIGNsYXNzPVwidngtZnMtMTEgdngtcGFyYWdyYXBoLXR4dCB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlXCI+R1JPVVAoUyk8L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX293bmVyc19ncm91cD8udmFsdWU/Lmxlbmd0aFwiIGNsYXNzPVwiY291bnRcIiBhcHBQb3BvdmVyIChjbGljayk9XCJncm91cC5wb3BvdmVyKClcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPnt7Y29udHJvbHM/LnByb2dyYW1fb3duZXJzX2dyb3VwPy52YWx1ZT8ubGVuZ3RoIH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJhY3RpdmVMaXN0IT09J09XTkVSJ1wiIFtjbGFzcy5kaXNhYmxlZF09XCJjb250cm9scz8uYWxsX3VzZXJfaW5fcm9sZT8udmFsdWVcIiAoY2xpY2spPVwiYWN0aXZhdGVMaXN0KCdPV05FUicpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJlZGl0XCIgdHlwZT1cImJ1dHRvblwiPjxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOWJhOzwvaT5FZGl0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9pbnB1dC13aXRoLXBpbGw+XHJcbiAgICAgICAgICAgIDxwICpuZ0lmPVwiZmFsc2VcIiBjbGFzcz1cImVycm9yLW1lc3NhZ2VcIj5BZGQgYSBvd25lcihzKTwvcD5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1lbmQgdngtbXQtMlwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWZzLTExIHZ4LWZ3LTUwMCB2eC1wYXJhZ3JhcGgtdHh0IHZ4LXR0LXVwcGVyY2FzZSB2eC1tci0yXCI+QUxMIFVTRVJTIEFTU09DSUFURUQgV0lUSCBUSEVcclxuICAgICAgICAgICAgICAgICAgICBTRUxFQ1RFRCBST0xFUzwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPHN3aXRjaCBmb3JtQ29udHJvbE5hbWU9XCJhbGxfdXNlcl9pbl9yb2xlXCIgKGNoYW5nZSk9XCJzZWxlY3RBbGxSb2xlT3duZXIoJGV2ZW50KVwiPjwvc3dpdGNoPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGFwcC1wb3BvdmVyICNvd25lciBbZG9udENsb3Nlb25DbGlja109XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWxpc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IG93bmVyIG9mIGNvbnRyb2xzPy5wcm9ncmFtX293bmVycz8udmFsdWUgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyLWNhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpICpuZ0lmPVwiIVsnQURNSU4nLCdLRVlfQURNSU4nLCdMT0dHRURfSU4nXS5pbmNsdWRlcyhvd25lcj8udXNlcl9yb2xlKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImljb25zXCIgKGNsaWNrKT1cInJlbW92ZShvd25lciwnT1dORVInKVwiPiYjeGU5MGQ7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e293bmVyPy5tZW1iZXJfbmFtZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2FwcC1wb3BvdmVyPlxyXG4gICAgICAgICAgICA8YXBwLXBvcG92ZXIgI2dyb3VwIFtkb250Q2xvc2VvbkNsaWNrXT1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tbGlzdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cImFjdGlvbi1pdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgb3duZXIgb2YgY29udHJvbHM/LnByb2dyYW1fb3duZXJzX2dyb3VwPy52YWx1ZSAgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyLWNhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpICpuZ0lmPVwiIVsnQURNSU4nLCdLRVlfQURNSU4nLCdMT0dHRURfSU4nXS5pbmNsdWRlcyhvd25lcj8udXNlcl9yb2xlKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImljb25zXCIgKGNsaWNrKT1cInJlbW92ZShvd25lciwnT1dORVJfR1JPVVAnKVwiPiYjeGU5MGQ7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e293bmVyPy5tZW1iZXJfbmFtZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2FwcC1wb3BvdmVyPlxyXG4gICAgICAgIDwvZm9ybS1maWVsZD5cclxuXHJcbiAgICAgICAgPCEtLSBBcHByb3ZlcnMgLS0+XHJcbiAgICAgICAgPGZvcm0tZmllbGQgW2NoZWNrZWRdPVwiY29udHJvbHM/LnByb2dyYW1fYXBwcm92ZXI/LnZhbHVlPy5sZW5ndGhcIiBbYWN0aXZlXT1cImFjdGl2ZUxpc3QgPT09ICdBUFBST1ZFUidcIiBbZGlzYWJsZWRdPVwic2lkZUVsZW1lbnRzLmluY2x1ZGVzKGFjdGl2ZUxpc3QpICYmIGFjdGl2ZUxpc3QgIT09ICdBUFBST1ZFUidcIlxyXG4gICAgICAgICAgICBbaW1nXT1cIidodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvYXBwcm92YWwuc3ZnJ1wiPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+QVBQUk9WRVIoUykgPGkgY2xhc3M9XCJpY29uc1wiIFthcHBUb29sdGlwXT1cIidBbiBhcHByb3ZlciBpcyBhIHVzZXIgd2hvIGlzIHJlc3BvbnNpYmxlIGZvciBhcHByb3ZpbmcgYSBQcm9ncmFtLiBJZiBhbiBhcHByb3ZlciBpcyBzZWxlY3RlZCwgdGhlIFByb2dyYW0gY2FuIGJlIHN0YXJ0ZWQgb25seSBhZnRlciBhcHByb3ZhbC4nXCIgcGxhY2VtZW50PVwiYm90dG9tXCIgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCIgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiPiYjeGViMTY7PC9pPjwvbGFiZWw+XHJcbiAgICAgICAgICAgIDxpbnB1dC13aXRoLXBpbGwgW3BsYWNlaG9sZGVyXT1cIidXaG8gaXMgcmVzcG9uc2libGUgZm9yIGFwcHJvdmluZyB0aGlzIHByb2dyYW0/J1wiXHJcbiAgICAgICAgICAgICAgICAoc2VsZWN0KT1cImFjdGl2YXRlTGlzdCgnQVBQUk9WRVInKVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9hcHByb3Zlcj8udmFsdWVbMF1cIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtaW5uZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIChjbGljayk9XCJyZW1vdmUoY29udHJvbHM/LnByb2dyYW1fYXBwcm92ZXI/LnZhbHVlWzBdLCdBUFBST1ZFUicpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaWNvbnMgdngtZnMtOSB2eC1tci0xIGNyb3NzXCI+JiN4ZTkwZDs8L2k+e3tjb250cm9scz8ucHJvZ3JhbV9hcHByb3Zlcj8udmFsdWVbMF0/Lm1lbWJlcl9uYW1lfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFjdGl2ZUxpc3QhPT0nQVBQUk9WRVInXCIoY2xpY2spPVwiYWN0aXZhdGVMaXN0KCdBUFBST1ZFUicpXCIgY2xhc3M9XCJlZGl0XCIgdHlwZT1cImJ1dHRvblwiPjxpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImljb25zXCI+JiN4ZTliYTs8L2k+RWRpdDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvaW5wdXQtd2l0aC1waWxsPlxyXG4gICAgICAgIDwvZm9ybS1maWVsZD5cclxuXHJcbiAgICAgICAgPCEtLSBQZXJmb3JtYW5jZSBDYWxjdWxhdGVkIC0tPlxyXG4gICAgICAgIDxmb3JtLWZpZWxkIFtjaGVja2VkXT1cImNvbnRyb2xzPy5wZXJmb3JtYW5jZV9jYWxjdWxhdGlvbj8udmFsdWVcIiBbYWN0aXZlXT1cImFjdGl2ZUxpc3QgPT09ICdQRVJGT1JNQU5DRSdcIiBbZGlzYWJsZWRdPVwic2lkZUVsZW1lbnRzLmluY2x1ZGVzKGFjdGl2ZUxpc3QpICYmIGFjdGl2ZUxpc3QgIT09ICdQRVJGT1JNQU5DRSdcIlxyXG4gICAgICAgICAgICBbaW1nXT1cIidodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvcGVyZm9ybWFuY2UtY2FsYy5zdmcnXCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5IT1cgU0hPVUxEIFRIRSBQRVJGT1JNQU5DRSBPRiBUSElTIENBVEVHT1JZIEJFIENBTENVTEFURUQ/PC9sYWJlbD5cclxuICAgICAgICAgICAgPHRhYi1zZWxlY3RvciBmb3JtQ29udHJvbE5hbWU9XCJwZXJmb3JtYW5jZV9jYWxjdWxhdGlvblwiIFtkaXNwbGF5QXJyYXldPVwiY29uc3RhbnRzPy5wZXJmb3JtYW5jZUNhbGN1bGF0aW9uXCI+XHJcbiAgICAgICAgICAgIDwvdGFiLXNlbGVjdG9yPlxyXG4gICAgICAgIDwvZm9ybS1maWVsZD5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2NvcGUtbGFiZWwgdngtZnMtMTAgdngtdHh0LXdoaXRlIHZ4LXR0LXVwcGVyY2FzZSB2eC1wbC0xIHZ4LXByLTEgdngtbWItNSB2eC1saC00IHZ4LWQtaW5saW5lLWJsb2NrXCI+UFJPR1JBTSBTQ09QRTwvZGl2PiA8aSBjbGFzcz1cImljb25zIGluZm8taWNvbiB2eC1mcy0xMiB2eC10eHQtYmx1ZSB2eC1tbC0xXCIgW2FwcFRvb2x0aXBdPVwiJ1RoZSBzY29wZSBsZXRzIHlvdSBkZWZpbmUgdGhlIGZyZXF1ZW5jeSBvZiB0aGUgUHJvZ3JhbSBhbmQgc2V0IHVwIGRlZmF1bHQgYXNzaWduZWVzLCBvdmVyc2VlcnMsIHJldmlld2VycywgYXNzZXNzbWVudHMsIGFuZCBSZXNwb25zaWJpbGl0eSBDZW50ZXJzIGZvciB0aGUgcmVzcG9uc2liaWxpdGllcyBhc3NvY2lhdGVkIHdpdGggdGhpcyBQcm9ncmFtLidcIiBwbGFjZW1lbnQ9XCJib3R0b21cIiBkZWxheT1cIjBcIiB0eXBlPVwid2hpdGVcIiBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZTkxZjs8L2k+XHJcblxyXG4gICAgICAgIDwhLS0gUHJvZ3JhbSBGcmVxdWVuY3kgLS0+XHJcbiAgICAgICAgPGZvcm0tZmllbGQgW2NoZWNrZWRdPVwiW3RydWUsZmFsc2VdLmluY2x1ZGVzKGNvbnRyb2xzPy5yZWN1cnJpbmdfZnJlcXVlbmN5Py52YWx1ZSlcIiBbYWN0aXZlXT1cImFjdGl2ZUxpc3QgPT09ICdGUkVRVUVOQ1knXCIgW2Rpc2FibGVkXT1cInNpZGVFbGVtZW50cy5pbmNsdWRlcyhhY3RpdmVMaXN0KSAmJiBhY3RpdmVMaXN0ICE9PSAnRlJFUVVFTkNZJ1wiXHJcbiAgICAgICAgICAgIFtpbWddPVwiJ2h0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvd29ya2Zsb3ctZW5naW5lL2Fzc2V0cy93b3JrZmxvdy9yZWN1cnJpbmcuc3ZnJ1wiPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+UFJPR1JBTSBGUkVRVUVOQ1kgPGkgY2xhc3M9XCJpY29uc1wiIFthcHBUb29sdGlwXT1cIidUaGUgUHJvZ3JhbSBGcmVxdWVuY3kgbGV0cyB5b3Ugc3BlY2lmeSBpZiBhIFByb2dyYW0gaXMgcmVjdXJyaW5nLiBJZiBhIFByb2dyYW0gaXMgbm90IHJlY3VycmluZywgdGhlbiB0aGUgUHJvZ3JhbSB3aWxsIGNvbXBsZXRlIGl0cyBsaWZlY3ljbGUgb24gdGhlIGxhc3QgZGF5IG9mIHlvdXIgb3JnYW5pemF0aW9u4oCZcyBidXNpbmVzcyBjeWNsZS4gQWRkaXRpb25hbGx5LCBhbGwgcmVzcG9uc2liaWxpdGllcyBhc3NvY2lhdGVkIHdpdGggdGhlIFByb2dyYW0gd2lsbCBhbHNvIGNvbXBsZXRlIHRoZWlyIGxpZmVjeWNsZSBvbiB0aGUgc2FtZSBkYXkuJ1wiIHBsYWNlbWVudD1cImJvdHRvbVwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlYjE2OzwvaT48L2xhYmVsPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLWZvcm1hdFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1iZXR3ZWVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0IHZ4LW1iLTBcIj5JcyB0aGlzIHByb2dyYW0gcmVjdXJyaW5nPzwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicmFkaW8tZ3JvdXAgcHJvZ3JhbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YXBwLWNzLXJhZGlvIFtuYW1lXT1cIidyZWN1cnJpbmdfZnJlcXVlbmN5J1wiIFtjaGVja2VkXT1cImNvbnRyb2xzPy5yZWN1cnJpbmdfZnJlcXVlbmN5Py52YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hlY2tlZEV2ZW50KT1cInNldEZvcm1GaWVsZCgncmVjdXJyaW5nX2ZyZXF1ZW5jeScsdHJ1ZSlcIj5ZRVM8L2FwcC1jcy1yYWRpbz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGFwcC1jcy1yYWRpbyBbbmFtZV09XCIncmVjdXJyaW5nX2ZyZXF1ZW5jeSdcIiBbY2hlY2tlZF09XCIhY29udHJvbHM/LnJlY3VycmluZ19mcmVxdWVuY3k/LnZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGVja2VkRXZlbnQpPVwic2V0Rm9ybUZpZWxkKCdyZWN1cnJpbmdfZnJlcXVlbmN5JyxmYWxzZSlcIj5OTzwvYXBwLWNzLXJhZGlvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZm9ybS1maWVsZD5cclxuXHJcbiAgICAgICAgPCEtLSBTY29wZSBDaGFuZ2VzIC0tPlxyXG4gICAgICAgIDxmb3JtLWZpZWxkIFtjaGVja2VkXT1cIlt0cnVlLGZhbHNlXS5pbmNsdWRlcyhjb250cm9scz8ubG9ja19zY29wZV9jaGFuZ2U/LnZhbHVlKVwiIFthY3RpdmVdPVwiYWN0aXZlTGlzdCA9PT0gJ1NDT1BFJ1wiIFtkaXNhYmxlZF09XCJzaWRlRWxlbWVudHMuaW5jbHVkZXMoYWN0aXZlTGlzdCkgJiYgYWN0aXZlTGlzdCAhPT0gJ1NDT1BFJ1wiXHJcbiAgICAgICAgICAgIFtpbWddPVwiJ2h0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvd29ya2Zsb3ctZW5naW5lL2Fzc2V0cy93b3JrZmxvdy9sb2NrLXNjb3BlLnN2ZydcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiPlNDT1BFIENIQU5HRVMgPGkgY2xhc3M9XCJpY29uc1wiIFthcHBUb29sdGlwXT1cIidJZiBzY29wZSBjaGFuZ2VzIGFyZSBsb2NrZWQsIHRoZSBvd25lcnMgY2Fubm90IGFkZCBvciByZW1vdmUgYW55IG5ldyByZXNwb25zaWJpbGl0aWVzIGFuZCBwcm9ncmFtIGNhdGVnb3JpZXMgb25jZSBhIFByb2dyYW0gaGFzIHN0YXJ0ZWQuJ1wiIHBsYWNlbWVudD1cImJvdHRvbVwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlYjE2OzwvaT48L2xhYmVsPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLWZvcm1hdFwiPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0XCI+V291bGQgeW91IGxpa2UgdG8gPHNwYW4gY2xhc3M9XCJ2eC1sYWJlbC10eHQgdngtZnctNTAwXCI+bG9jayBjaGFuZ2VzPC9zcGFuPiB0byB0aGUgcHJvZ3JhbVxyXG4gICAgICAgICAgICAgICAgICAgIHNjb3BlPzwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyYWRpby1ncm91cCBwcm9ncmFtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGFwcC1jcy1yYWRpbyBbbmFtZV09XCInbG9ja19zY29wZV9jaGFuZ2UnXCIgW2NoZWNrZWRdPVwiY29udHJvbHM/LmxvY2tfc2NvcGVfY2hhbmdlPy52YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjaGVja2VkRXZlbnQpPVwic2V0Rm9ybUZpZWxkKCdsb2NrX3Njb3BlX2NoYW5nZScsdHJ1ZSlcIj5ZRVM8L2FwcC1jcy1yYWRpbz5cclxuICAgICAgICAgICAgICAgICAgICA8YXBwLWNzLXJhZGlvIFtuYW1lXT1cIidsb2NrX3Njb3BlX2NoYW5nZSdcIiBbY2hlY2tlZF09XCIhY29udHJvbHM/LmxvY2tfc2NvcGVfY2hhbmdlPy52YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjaGVja2VkRXZlbnQpPVwic2V0Rm9ybUZpZWxkKCdsb2NrX3Njb3BlX2NoYW5nZScsZmFsc2UpXCI+Tk88L2FwcC1jcy1yYWRpbz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Zvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgIDwhLS0gRnJhbWV3b3JrIC0tPlxyXG4gICAgICAgIDwhLS0gPGZvcm0tZmllbGQgW2NoZWNrZWRdPVwiZmFsc2VcIiBbYWN0aXZlXT1cImFjdGl2ZUxpc3QgPT09ICdGUkFNRVdPUksnXCIgW2Rpc2FibGVkXT1cInNpZGVFbGVtZW50cy5pbmNsdWRlcyhhY3RpdmVMaXN0KSAmJiBhY3RpdmVMaXN0ICE9PSAnRlJBTUVXT1JLJ1wiXHJcbiAgICAgICAgICAgIFtpbWddPVwiJ2h0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvd29ya2Zsb3ctZW5naW5lL2Fzc2V0cy93b3JrZmxvdy9jYXRlZ29yeS5zdmcnXCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5GUkFNRVdPUks8L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXQtd2l0aC1waWxsIFtwbGFjZWhvbGRlcl09XCInU2VsZWN0IGEgZnJhbWV3b3JrIHRoYXQgdGhpcyBQcm9ncmFtIHJlbGF0ZXMgdG8nXCIgKHNlbGVjdCk9XCJhY3RpdmF0ZUxpc3QoJ0ZSQU1FV09SSycpXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0ZWRcIiAqbmdJZj1cImNvbnRyb2xzPy5mcmFtZXdvcms/LnZhbHVlPy5mcmFtZXdvcmtfbmFtZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1pbm5lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlwXCI+PGkgKGNsaWNrKT1cInJlbW92ZShjb250cm9scz8uZnJhbWV3b3JrLnZhbHVlLCdGUkFNRVdPUksnKVwiIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTBkOzwvaT57e2NvbnRyb2xzPy5mcmFtZXdvcms/LnZhbHVlPy5mcmFtZXdvcmtfbmFtZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNvdW50XCIgYXBwUG9wb3ZlciAoY2xpY2spPVwiZnJhbWV3b3JrLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+KzU8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFjdGl2ZUxpc3QhPT0nRlJBTUVXT1JLJ1wiIChjbGljayk9XCJhY3RpdmF0ZUxpc3QoJ0ZSQU1FV09SSycpXCIgY2xhc3M9XCJlZGl0XCIgdHlwZT1cImJ1dHRvblwiPjxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOWJhOzwvaT4gRWRpdDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvaW5wdXQtd2l0aC1waWxsPlxyXG4gICAgICAgICAgICA8YXBwLXBvcG92ZXIgI2ZyYW1ld29yayBbZG9udENsb3Nlb25DbGlja109XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWxpc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGRhdGEgb2YgWzEsIDEsIDEsIDEsIDEsIDEsIDFdXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyLWNhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTBkOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWFuYWdlIGZyYW1ld29yayBuYW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2FwcC1wb3BvdmVyPlxyXG4gICAgICAgIDwvZm9ybS1maWVsZD4gLS0+XHJcblxyXG4gICAgICAgIDwhLS0gUmVzcG9uc2liaWxpdHkgQ2VudGVyIC0tPlxyXG4gICAgICAgIDxmb3JtLWZpZWxkIFtjaGVja2VkXT1cImNvbnRyb2xzPy5yYz8udmFsdWU/Lmxlbmd0aFwiIFthY3RpdmVdPVwiYWN0aXZlTGlzdCA9PT0gJ1JDJ1wiIFtkaXNhYmxlZF09XCJzaWRlRWxlbWVudHMuaW5jbHVkZXMoYWN0aXZlTGlzdCkgJiYgYWN0aXZlTGlzdCAhPT0gJ1JDJ1wiXHJcbiAgICAgICAgICAgIFtpbWddPVwiJ2h0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvd29ya2Zsb3ctZW5naW5lL2Fzc2V0cy93b3JrZmxvdy9yZXNwb25zaWJpbGl0eS1jZW50ZXIuc3ZnJ1wiPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+UkVTUE9OU0lCSUxJVFkgQ0VOVEVSIDxpIGNsYXNzPVwiaWNvbnNcIiBbYXBwVG9vbHRpcF09XCInUmVzcG9uc2liaWxpdHkgQ2VudGVycyByZXByZXNlbnQgeW91ciBvcmdhbml6YXRpb25hbCBhbmQgb3BlcmF0aW9uYWwgaW5mcmFzdHJ1Y3R1cmUuIFlvdSBjYW4gYXNzb2NpYXRlIG9uZSBvciBtb3JlIFJlc3BvbnNpYmlsaXR5IENlbnRlcnMgd2l0aCBhIFByb2dyYW0uIFRoZXJlYWZ0ZXIsIGFsbCB0aGUgcmVzcG9uc2liaWxpdGllcyB3aXRoaW4gdGhpcyBQcm9ncmFtIGNhbiBvbmx5IGJlIGxpbmtlZCB3aXRoIHRoZSBhc3NvY2lhdGVkIFJlc3BvbnNpYmlsaXR5IENlbnRlcnMuJ1wiIHBsYWNlbWVudD1cImJvdHRvbVwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlYjE2OzwvaT48L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXQtd2l0aC1waWxsIChzZWxlY3QpPVwiYWN0aXZhdGVMaXN0KCdSQycpXCJcclxuICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInV2hpY2ggUmVzcG9uc2liaWxpdHkgQ2VudGVyKHMpIGNhbiBiZSBsaW5rZWQgdG8gdGhlIHJlc3BvbnNpYmlsaXRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoaXMgUHJvZ3JhbT8nXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0ZWRcIiAqbmdJZj1cImNvbnRyb2xzPy5yYz8udmFsdWUgJiYgY29udHJvbHM/LnJjPy52YWx1ZT8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWlubmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoaXBcIj48aSBjbGFzcz1cImljb25zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZShjb250cm9scz8ucmM/LnZhbHVlWzBdLCdSQycpXCI+JiN4ZTkwZDs8L2k+e3tjb250cm9scz8ucmM/LnZhbHVlWzBdPy5pdGVtX25hbWV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJjb250cm9scz8ucmM/LnZhbHVlPy5sZW5ndGggID4gMVwiIGNsYXNzPVwiY291bnRcIiBhcHBQb3BvdmVyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInJjLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+K3t7Y29udHJvbHM/LnJjPy52YWx1ZT8ubGVuZ3RoIC0xIH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJhY3RpdmVMaXN0IT09J1JDJ1wiIGNsYXNzPVwiZWRpdFwiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwiYWN0aXZhdGVMaXN0KCdSQycpXCI+PGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5YmE7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBFZGl0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9pbnB1dC13aXRoLXBpbGw+XHJcbiAgICAgICAgICAgIDxhcHAtcG9wb3ZlciAjcmMgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1saXN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCByYyAgb2YgY29udHJvbHM/LnJjPy52YWx1ZSAgfHNsaWNlOjFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiIChjbGljayk9XCJyZW1vdmUocmMsJ1JDJylcIj4mI3hlOTBkOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tyYz8uaXRlbV9uYW1lfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgPC9mb3JtLWZpZWxkPlxyXG5cclxuICAgICAgICA8IS0tIEFzc2lnbmVlIC0tPlxyXG4gICAgICAgIDxmb3JtLWZpZWxkIFtjaGVja2VkXT1cImNvbnRyb2xzPy5wcm9ncmFtX2Fzc2lnbmVlPy52YWx1ZT8ubGVuZ3RoICB8fCAgY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9hc3NpZ25lZT8udmFsdWU/Lmxlbmd0aCB8fGNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfYXNzaWduZWU/LnZhbHVlPy5sZW5ndGggIHx8ICBjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2Fzc2lnbmVlX2dyb3VwPy52YWx1ZT8ubGVuZ3RoXCJcclxuICAgICAgICBbYWN0aXZlXT1cIlsnQVNTSUdORUUnLCdERUZBVUxUX0FTU0lHTkVFJ10/LmluY2x1ZGVzKGFjdGl2ZUxpc3QpXCIgW2Rpc2FibGVkXT1cInNpZGVFbGVtZW50cz8uaW5jbHVkZXMoYWN0aXZlTGlzdCkgJiYgIVsnQVNTSUdORUUnLCdERUZBVUxUX0FTU0lHTkVFJ10uaW5jbHVkZXMoYWN0aXZlTGlzdClcIlxyXG4gICAgICAgICAgICBbaW1nXT1cIidodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvd2hvLnN2ZydcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiIFtjbGFzcy5kaXNhYmxlZF09XCJhY3RpdmVMaXN0ID09PSAnREVGQVVMVF9BU1NJR05FRSdcIj5BU1NJR05FRShTKSA8aSBjbGFzcz1cImljb25zXCIgW2FwcFRvb2x0aXBdPVwiJ0Fzc2lnbmVlcyBhcmUgdXNlcnMgdG8gd2hvbSB5b3UgY2FuIGFzc2lnbiBhIHJlc3BvbnNpYmlsaXR5LiBXaGlsZSBjcmVhdGluZyBhIFByb2dyYW0sIHlvdSBjYW4gc2VsZWN0IHRoZSBzZXQgb2YgYXNzaWduZWVzIHJlc3BvbnNpYmxlIGZvciBjb21wbGV0aW5nIHJlc3BvbnNpYmlsaXRpZXMgd2l0aGluIHRoaXMgUHJvZ3JhbS4nXCIgcGxhY2VtZW50PVwiYm90dG9tXCIgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCIgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiPiYjeGViMTY7PC9pPiA8L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXQtd2l0aC1waWxsIFtkaXNhYmxlZF09XCJhY3RpdmVMaXN0ID09PSAnREVGQVVMVF9BU1NJR05FRSdcIiBbcGxhY2Vob2xkZXJdPVwiJ1dobyBpcyByZXNwb25zaWJsZSBmb3IgZXhlY3V0aW5nL2NvbXBsZXRpbmcgdGhlIHJlc3BvbnNpYmlsaXRpZXMgd2l0aGluIHRoaXMgUHJvZ3JhbT8gJ1wiXHJcbiAgICAgICAgICAgICAgICAoc2VsZWN0KT1cImFjdGl2YXRlTGlzdCgnQVNTSUdORUUnKVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkXCIgICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fYXNzaWduZWU/LnZhbHVlPy5sZW5ndGggfHwgY29udHJvbHM/LnByb2dyYW1fYXNzaWduZWVfZ3JvdXA/LnZhbHVlPy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtaW5uZXJcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2Fzc2lnbmVlPy52YWx1ZT8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoaXBcIj48c3BhbiBjbGFzcz1cInZ4LWZzLTExIHZ4LXBhcmFncmFwaC10eHQgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZVwiPlVTRVIoUyk8L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNvdW50IHVzZXJcIiBhcHBQb3BvdmVyIChjbGljayk9XCJhc3NpZ25lZS5wb3BvdmVyKClcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPnt7Y29udHJvbHM/LnByb2dyYW1fYXNzaWduZWU/LnZhbHVlPy5sZW5ndGh9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2eC1mcy0xMiB2eC1wYXJhZ3JhcGgtdHh0IHZ4LW1sLTIgdngtbXItMlwiICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fYXNzaWduZWVfZ3JvdXA/LnZhbHVlPy5sZW5ndGggJiYgY29udHJvbHM/LnByb2dyYW1fYXNzaWduZWU/LnZhbHVlPy5sZW5ndGhcIj4mPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1pbm5lclwiICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fYXNzaWduZWVfZ3JvdXA/LnZhbHVlPy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hpcFwiPjxzcGFuIGNsYXNzPVwidngtZnMtMTEgdngtcGFyYWdyYXBoLXR4dCB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlXCI+R1JPVVAoUyk8L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2Fzc2lnbmVlX2dyb3VwPy52YWx1ZT8ubGVuZ3RoXCIgY2xhc3M9XCJjb3VudFwiIGFwcFBvcG92ZXIgKGNsaWNrKT1cImFzc2lnbmVlX2dyb3VwLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+e3tjb250cm9scz8ucHJvZ3JhbV9hc3NpZ25lZV9ncm91cD8udmFsdWU/Lmxlbmd0aCB9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiYWN0aXZlTGlzdCE9PSdBU1NJR05FRSdcIiBjbGFzcz1cImVkaXRcIiB0eXBlPVwiYnV0dG9uXCIgIChjbGljayk9XCJhY3RpdmF0ZUxpc3QoJ0FTU0lHTkVFJylcIj48aSBjbGFzcz1cImljb25zXCI+JiN4ZTliYTs8L2k+IEVkaXQ8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2lucHV0LXdpdGgtcGlsbD5cclxuICAgICAgICAgICAgPGFwcC1wb3BvdmVyICNhc3NpZ25lZSBbZG9udENsb3Nlb25DbGlja109XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWxpc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGFzc2lnbmVlIG9mIGNvbnRyb2xzPy5wcm9ncmFtX2Fzc2lnbmVlPy52YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF2YXRhci1jYXJkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSAoY2xpY2spPVwicmVtb3ZlKGFzc2lnbmVlLCdBU1NJR05FRScpXCIgY2xhc3M9XCJpY29uc1wiPiYjeGU5MGQ7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7YXNzaWduZWU/Lm1lbWJlcl9uYW1lfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgICAgIDxhcHAtcG9wb3ZlciAjYXNzaWduZWVfZ3JvdXAgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1saXN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBncm91cCBvZiBjb250cm9scz8ucHJvZ3JhbV9hc3NpZ25lZV9ncm91cD8udmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgIChjbGljayk9XCJyZW1vdmUoZ3JvdXAsJ0FTU0lHTkVFX0dST1VQJylcIiAgY2xhc3M9XCJpY29uc1wiPiYjeGU5MGQ7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z3JvdXA/Lmdyb3VwX25hbWV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9hcHAtcG9wb3Zlcj5cclxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiIFtjbGFzcy5kaXNhYmxlZF09XCJhY3RpdmVMaXN0ID09PSAnQVNTSUdORUUnXCI+REVGQVVMVCBBU1NJR05FRShTKSA8aSBjbGFzcz1cImljb25zXCIgW2FwcFRvb2x0aXBdPVwiJ1RoaXMgb3B0aW9uIGxldHMgeW91IHNwZWNpZnkgdGhlIGRlZmF1bHQgYXNzaWduZWVzIGZvciBhbGwgbmV3IHJlc3BvbnNpYmlsaXRpZXMgYXNzb2NpYXRlZCB3aXRoIGEgUHJvZ3JhbS4gSWYgYSBkZWZhdWx0IGFzc2lnbmVlIGlzIHNlbGVjdGVkLCB0aGUgdXNlciB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgc2VsZWN0ZWQgYXMgYW4gYXNzaWduZWUgd2l0aGluIHRoZSBcXCdDcmVhdGUgYSBSZXNwb25zaWJpbGl0eVxcJyBmb3JtLiBIb3dldmVyLCB0aGUgYXNzaWdub3IgY2FuIG1ha2UgY2hhbmdlcywgaWYgcmVxdWlyZWQuJ1wiIHBsYWNlbWVudD1cImJvdHRvbVwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlYjE2OzwvaT48L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXQtd2l0aC1waWxsIFtkaXNhYmxlZF09XCJhY3RpdmVMaXN0ID09PSAnQVNTSUdORUUnXCIgW3BsYWNlaG9sZGVyXT1cIidXaGljaCBwZXJzb25zIHdpbGwgYmUgc2VsZWN0ZWQgYXMgdGhlIGRlZmF1bHQgYXNzaWduZWVzIGZvciB0aGUgcmVzcG9uc2liaWxpdGllcyB3aXRoaW4gdGhpcyBQcm9ncmFtPydcIiAoc2VsZWN0KT1cImFjdGl2YXRlTGlzdCgnREVGQVVMVF9BU1NJR05FRScpXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0ZWRcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfYXNzaWduZWU/LnZhbHVlPy5sZW5ndGggfHwgY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9hc3NpZ25lZV9ncm91cD8udmFsdWU/Lmxlbmd0aFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1pbm5lclwiICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9hc3NpZ25lZT8udmFsdWU/Lmxlbmd0aFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlwXCI+PHNwYW4gY2xhc3M9XCJ2eC1mcy0xMSB2eC1wYXJhZ3JhcGgtdHh0IHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2VcIj5VU0VSKFMpPC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJjb3VudCB1c2VyXCIgYXBwUG9wb3ZlciAoY2xpY2spPVwiZGVmYXVsdEFzc2lnbmVlLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+e3tjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2Fzc2lnbmVlPy52YWx1ZT8ubGVuZ3RofX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidngtZnMtMTIgdngtcGFyYWdyYXBoLXR4dCB2eC1tbC0yIHZ4LW1yLTJcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfYXNzaWduZWVfZ3JvdXA/LnZhbHVlPy5sZW5ndGggJiYgY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9hc3NpZ25lZT8udmFsdWU/Lmxlbmd0aFwiPiY8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWlubmVyXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2Fzc2lnbmVlX2dyb3VwPy52YWx1ZT8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoaXBcIj48c3BhbiBjbGFzcz1cInZ4LWZzLTExIHZ4LXBhcmFncmFwaC10eHQgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZVwiPkdST1VQKFMpPC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2Fzc2lnbmVlX2dyb3VwPy52YWx1ZT8ubGVuZ3RoXCIgY2xhc3M9XCJjb3VudFwiIGFwcFBvcG92ZXIgKGNsaWNrKT1cImRlZmF1bHRBc3NpZ25lZUdyb3VwLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+e3tjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2Fzc2lnbmVlX2dyb3VwPy52YWx1ZT8ubGVuZ3RoIH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJhY3RpdmVMaXN0IT09J0RFRkFVTFRfQVNTSUdORUUnXCIgKGNsaWNrKT1cImFjdGl2YXRlTGlzdCgnREVGQVVMVF9BU1NJR05FRScpXCIgY2xhc3M9XCJlZGl0XCIgdHlwZT1cImJ1dHRvblwiPjxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOWJhOzwvaT4gRWRpdDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvaW5wdXQtd2l0aC1waWxsPlxyXG4gICAgICAgICAgICA8YXBwLXBvcG92ZXIgI2RlZmF1bHRBc3NpZ25lZSBbZG9udENsb3Nlb25DbGlja109XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWxpc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGFzc2lnbmVlIG9mIGNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfYXNzaWduZWU/LnZhbHVlIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF2YXRhci1jYXJkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSAgKGNsaWNrKT1cInJlbW92ZShhc3NpZ25lZSwnREVGQVVMVF9BU1NJR05FRScpXCIgY2xhc3M9XCJpY29uc1wiPiYjeGU5MGQ7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7YXNzaWduZWU/Lm1lbWJlcl9uYW1lfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgICAgIDxhcHAtcG9wb3ZlciAjZGVmYXVsdEFzc2lnbmVlR3JvdXAgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1saXN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBncm91cCBvZiBjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2Fzc2lnbmVlX2dyb3VwPy52YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF2YXRhci1jYXJkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSAoY2xpY2spPVwicmVtb3ZlKGFzc2lnbmVlLCdERUZBVUxUX0FTU0lHTkVFX0dST1VQJylcIiBjbGFzcz1cImljb25zXCI+JiN4ZTkwZDs8L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z3JvdXA/Lmdyb3VwX25hbWV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9hcHAtcG9wb3Zlcj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJhZGlvLWdyb3VwLXNlbGVjdG9yXCIgW2NsYXNzLmRpc2FibGVkXT1cImFjdGl2ZUxpc3QgPT09ICdBU1NJR05FRSdcIj5cclxuICAgICAgICAgICAgICAgIDxhcHAtY3MtcmFkaW8gW25hbWVdPVwiJ2Fzc2lnbmVlJ1wiIFtjaGVja2VkXT1cImNvbnRyb2xzPy5hc3NpZ25lZV9jb21wbGV0aW9uX2NyaXRlcmlhPy52YWx1ZSA9PT0gJ0FMTCdcIiAoY2hlY2tlZEV2ZW50KT1cInNldEZvcm1GaWVsZCgnYXNzaWduZWVfY29tcGxldGlvbl9jcml0ZXJpYScsICdBTEwnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIEFMTCBTRUxFQ1RFRCBQRVJTT05TIE5FRUQgVE8gQ09NUExFVEUgVEhJUyA8aSBjbGFzcz1cImljb25zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2FwcFRvb2x0aXBdPVwiJ0lmIHNlbGVjdGVkLCBzZXBhcmF0ZSByZXNwb25zaWJpbGl0aWVzIHdpbGwgYmUgY3JlYXRlZCBmb3IgZWFjaCBwZXJzb24uJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbS1yaWdodFwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIiA+JiN4ZTkxZjs8L2k+XHJcbiAgICAgICAgICAgICAgICA8L2FwcC1jcy1yYWRpbz5cclxuICAgICAgICAgICAgICAgIDxhcHAtY3MtcmFkaW8gW25hbWVdPVwiJ2Fzc2lnbmVlJ1wiIFtjaGVja2VkXT1cImNvbnRyb2xzPy5hc3NpZ25lZV9jb21wbGV0aW9uX2NyaXRlcmlhPy52YWx1ZSA9PT0gJ0FOWU9ORSdcIiAoY2hlY2tlZEV2ZW50KT1cInNldEZvcm1GaWVsZCgnYXNzaWduZWVfY29tcGxldGlvbl9jcml0ZXJpYScsICdBTllPTkUnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIEFOWSBTRUxFQ1RFRCBQRVJTT04gQ0FOIENPTVBMRVRFIFRISVMgPGkgY2xhc3M9XCJpY29uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthcHBUb29sdGlwXT1cIidJZiBzZWxlY3RlZCwgb25seSBvbmUgcmVzcG9uc2liaWxpdHkgd2lsbCBiZSBjcmVhdGVkLidcIiBwbGFjZW1lbnQ9XCJib3R0b20tcmlnaHRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkZWxheT1cIjBcIiB0eXBlPVwid2hpdGVcIiBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZTkxZjs8L2k+XHJcbiAgICAgICAgICAgICAgICA8L2FwcC1jcy1yYWRpbz5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9mb3JtLWZpZWxkPlxyXG5cclxuICAgICAgICA8IS0tIFJldmlld2VyIC0tPlxyXG4gICAgICAgIDxmb3JtLWZpZWxkIFthcHBTY3JvbGxJblZpZXddPVwic2Nyb2xsVG9Cb3R0b21cIiAqbmdJZj1cImFkZGl0aW9uYWxPcHRpb24/LlJFVklFV0VSXCJcclxuICAgICAgICBbY2hlY2tlZF09XCJjb250cm9scz8ucHJvZ3JhbV9yZXZpZXdlcj8udmFsdWU/Lmxlbmd0aCAgfHwgIGNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfcmV2aWV3ZXI/LnZhbHVlPy5sZW5ndGggfHxjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X3Jldmlld2VyPy52YWx1ZT8ubGVuZ3RoICB8fCAgY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9yZXZpZXdlcl9ncm91cD8udmFsdWU/Lmxlbmd0aFwiXHJcbiAgICAgICAgW2FjdGl2ZV09XCJbJ1JFVklFV0VSJywnREVGQVVMVF9SRVZJRVdFUiddPy5pbmNsdWRlcyhhY3RpdmVMaXN0KVwiIFtkaXNhYmxlZF09XCJzaWRlRWxlbWVudHM/LmluY2x1ZGVzKGFjdGl2ZUxpc3QpICYmICFbJ1JFVklFV0VSJywnREVGQVVMVF9SRVZJRVdFUiddLmluY2x1ZGVzKGFjdGl2ZUxpc3QpXCJcclxuICAgICAgICAgICAgW2ltZ109XCInaHR0cHM6Ly9jZG4udi1jb21wbHkuY29tL2xpYnJhcmllcy93b3JrZmxvdy1lbmdpbmUvYXNzZXRzL3dvcmtmbG93L3Jldmlld2VyLnN2ZydcIj5cclxuICAgICAgICAgICAgPGxhYmVsIFtjbGFzcy5kaXNhYmxlZF09XCJhY3RpdmVMaXN0ID09PSAnREVGQVVMVF9SRVZJRVdFUidcIiBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIj5SZXZpZXdlcihzKSA8aSBjbGFzcz1cImljb25zXCIgW2FwcFRvb2x0aXBdPVwiJ1Jldmlld2VycyBhcmUgdXNlcnMgd2hvIGNhbiByZXZpZXcgYSByZXNwb25zaWJpbGl0eSBhZnRlciBpdCBoYXMgYmVlbiBjb21wbGV0ZWQuIFdoaWxlIGNyZWF0aW5nIGEgUHJvZ3JhbSwgeW91IGNhbiBzZWxlY3QgdGhlIHNldCBvZiByZXZpZXdlcnMgcmVzcG9uc2libGUgZm9yIHJldmlld2luZyByZXNwb25zaWJpbGl0aWVzIHdpdGhpbiB0aGlzIFByb2dyYW0uJ1wiIHBsYWNlbWVudD1cImJvdHRvbVwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlYjE2OzwvaT48L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXQtd2l0aC1waWxsIFtkaXNhYmxlZF09XCJhY3RpdmVMaXN0ID09PSAnREVGQVVMVF9SRVZJRVdFUidcIiBbcGxhY2Vob2xkZXJdPVwiJ1NlbGVjdCBwZXJzb25zIHJlc3BvbnNpYmxlIGZvciBleGVjdXRpbmcgY29udHJvbHMgd2l0aGluIHRoaXMgcHJvZ3JhbSdcIiAoc2VsZWN0KT1cImFjdGl2YXRlTGlzdCgnUkVWSUVXRVInKVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9yZXZpZXdlcj8udmFsdWU/Lmxlbmd0aCB8fCBjb250cm9scz8ucHJvZ3JhbV9yZXZpZXdlcl9ncm91cD8udmFsdWU/Lmxlbmd0aFwiPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtaW5uZXJcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX3Jldmlld2VyPy52YWx1ZT8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoaXBcIj48c3BhbiBjbGFzcz1cInZ4LWZzLTExIHZ4LXBhcmFncmFwaC10eHQgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZVwiPlVTRVIoUyk8L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNvdW50IHVzZXJcIiBhcHBQb3BvdmVyIChjbGljayk9XCJyZXZpZXdlci5wb3BvdmVyKClcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPnt7Y29udHJvbHM/LnByb2dyYW1fcmV2aWV3ZXI/LnZhbHVlPy5sZW5ndGh9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2eC1mcy0xMiB2eC1wYXJhZ3JhcGgtdHh0IHZ4LW1sLTIgdngtbXItMlwiICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fcmV2aWV3ZXJfZ3JvdXA/LnZhbHVlPy5sZW5ndGggJiYgY29udHJvbHM/LnByb2dyYW1fcmV2aWV3ZXI/LnZhbHVlPy5sZW5ndGhcIj4mPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1pbm5lclwiICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fcmV2aWV3ZXJfZ3JvdXA/LnZhbHVlPy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hpcFwiPjxzcGFuIGNsYXNzPVwidngtZnMtMTEgdngtcGFyYWdyYXBoLXR4dCB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlXCI+R1JPVVAoUyk8L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX3Jldmlld2VyX2dyb3VwPy52YWx1ZT8ubGVuZ3RoXCIgY2xhc3M9XCJjb3VudFwiIGFwcFBvcG92ZXIgKGNsaWNrKT1cInJldmlld2VyR3JvdXAucG9wb3ZlcigpXCIgcGxhY2VtZW50PVwicmlnaHRcIj57e2NvbnRyb2xzPy5wcm9ncmFtX3Jldmlld2VyX2dyb3VwPy52YWx1ZT8ubGVuZ3RoIH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJhY3RpdmVMaXN0IT09J1JFVklFV0VSJ1wiIChjbGljayk9XCJhY3RpdmF0ZUxpc3QoJ1JFVklFV0VSJylcIiBjbGFzcz1cImVkaXRcIiB0eXBlPVwiYnV0dG9uXCI+PGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5YmE7PC9pPiBFZGl0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9pbnB1dC13aXRoLXBpbGw+XHJcbiAgICAgICAgICAgIDxhcHAtcG9wb3ZlciAjcmV2aWV3ZXIgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1saXN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCByZXZpZXdlciBvZiBjb250cm9scz8ucHJvZ3JhbV9yZXZpZXdlcj8udmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgKGNsaWNrKT1cInJlbW92ZShyZXZpZXdlciwnUkVWSUVXRVInKVwiIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTBkOzwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tyZXZpZXdlcj8ubWVtYmVyX25hbWV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9hcHAtcG9wb3Zlcj5cclxuICAgICAgICAgICAgPGFwcC1wb3BvdmVyICNyZXZpZXdlckdyb3VwIFtkb250Q2xvc2VvbkNsaWNrXT1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tbGlzdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cImFjdGlvbi1pdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgZ3JvdXAgb2YgY29udHJvbHM/LnByb2dyYW1fcmV2aWV3ZXJfZ3JvdXA/LnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyLWNhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIChjbGljayk9XCJyZW1vdmUoZ3JvdXAsJ1JFVklFV0VSX0dST1VQJylcIiBjbGFzcz1cImljb25zXCI+JiN4ZTkwZDs8L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z3JvdXA/Lmdyb3VwX25hbWV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9hcHAtcG9wb3Zlcj5cclxuICAgICAgICAgICAgPGxhYmVsIFtjbGFzcy5kaXNhYmxlZF09XCJhY3RpdmVMaXN0ID09PSAnUkVWSUVXRVInXCIgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+REVGQVVMVCBSZXZpZXdlcihTKSA8aSBjbGFzcz1cImljb25zXCIgW2FwcFRvb2x0aXBdPVwiJ1RoaXMgb3B0aW9uIGxldHMgeW91IHNwZWNpZnkgdGhlIGRlZmF1bHQgcmV2aWV3ZXJzIGZvciBhbGwgbmV3IHJlc3BvbnNpYmlsaXRpZXMgYXNzb2NpYXRlZCB3aXRoIGEgUHJvZ3JhbS4gSWYgYSBkZWZhdWx0IHJldmlld2VyIGlzIHNlbGVjdGVkLCB0aGUgdXNlciB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgc2VsZWN0ZWQgYXMgYSByZXZpZXdlciB3aXRoaW4gdGhlIFxcJ0NyZWF0ZSBhIFJlc3BvbnNpYmlsaXR5XFwnIGZvcm0uIEhvd2V2ZXIsIHRoZSBhc3NpZ25vciBjYW4gbWFrZSBjaGFuZ2VzIHRvIHRoaXMgc2V0dGluZywgaWYgcmVxdWlyZWQuJ1wiIHBsYWNlbWVudD1cImJvdHRvbVwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlYjE2OzwvaT48L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXQtd2l0aC1waWxsIFtkaXNhYmxlZF09XCJhY3RpdmVMaXN0ID09PSAnUkVWSUVXRVInXCIgW3BsYWNlaG9sZGVyXT1cIidTZWxlY3QgcGVyc29ucyByZXNwb25zaWJsZSBmb3IgZXhlY3V0aW5nIGNvbnRyb2xzIHdpdGhpbiB0aGlzIHByb2dyYW0nXCIgKHNlbGVjdCk9XCJhY3RpdmF0ZUxpc3QoJ0RFRkFVTFRfUkVWSUVXRVInKVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X3Jldmlld2VyPy52YWx1ZT8ubGVuZ3RoIHx8IGNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfcmV2aWV3ZXJfZ3JvdXA/LnZhbHVlPy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtaW5uZXJcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfcmV2aWV3ZXI/LnZhbHVlPy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hpcFwiPjxzcGFuIGNsYXNzPVwidngtZnMtMTEgdngtcGFyYWdyYXBoLXR4dCB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlXCI+VVNFUihTKTwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiY291bnQgdXNlclwiIGFwcFBvcG92ZXIgKGNsaWNrKT1cImRlZmF1bHRSZXZpZXdlci5wb3BvdmVyKClcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPnt7Y29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9yZXZpZXdlcj8udmFsdWU/Lmxlbmd0aH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZ4LWZzLTEyIHZ4LXBhcmFncmFwaC10eHQgdngtbWwtMiB2eC1tci0yXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X3Jldmlld2VyX2dyb3VwPy52YWx1ZT8ubGVuZ3RoICYmIGNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfcmV2aWV3ZXI/LnZhbHVlPy5sZW5ndGhcIj4mPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1pbm5lclwiICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9yZXZpZXdlcl9ncm91cD8udmFsdWU/Lmxlbmd0aFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlwXCI+PHNwYW4gY2xhc3M9XCJ2eC1mcy0xMSB2eC1wYXJhZ3JhcGgtdHh0IHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2VcIj5HUk9VUChTKTwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9yZXZpZXdlcl9ncm91cD8udmFsdWU/Lmxlbmd0aFwiIGNsYXNzPVwiY291bnRcIiBhcHBQb3BvdmVyIChjbGljayk9XCJhc3NpZ25lZV9ncm91cC5wb3BvdmVyKClcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPnt7Y29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9yZXZpZXdlcl9ncm91cD8udmFsdWU/Lmxlbmd0aCB9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiYWN0aXZlTGlzdCE9PSdERUZBVUxUX1JFVklFV0VSJ1wiIChjbGljayk9XCJhY3RpdmF0ZUxpc3QoJ0RFRkFVTFRfUkVWSUVXRVInKVwiIGNsYXNzPVwiZWRpdFwiIHR5cGU9XCJidXR0b25cIj48aSBjbGFzcz1cImljb25zXCI+JiN4ZTliYTs8L2k+IEVkaXQ8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2lucHV0LXdpdGgtcGlsbD5cclxuICAgICAgICAgICAgPGFwcC1wb3BvdmVyICNkZWZhdWx0UmV2aWV3ZXIgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1saXN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCByZXZpZXdlciBvZiBjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X3Jldmlld2VyPy52YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF2YXRhci1jYXJkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSAoY2xpY2spPVwicmVtb3ZlKHJldmlld2VyLCdERUZBVUxUX1JFVklFV0VSJylcIiBjbGFzcz1cImljb25zXCI+JiN4ZTkwZDs8L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tyZXZpZXdlcj8ubWVtYmVyX25hbWV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9hcHAtcG9wb3Zlcj5cclxuICAgICAgICAgICAgPGFwcC1wb3BvdmVyICNkZWZhdWx0UmV2aWV3ZXJHcm91cCBbZG9udENsb3Nlb25DbGlja109XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWxpc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGdyb3VwIG9mIGNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfcmV2aWV3ZXJfZ3JvdXA/LnZhbHVlIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF2YXRhci1jYXJkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSAgKGNsaWNrKT1cInJlbW92ZShncm91cCwnREVGQVVMVF9SRVZJRVdFUl9HUk9VUCcpXCIgY2xhc3M9XCJpY29uc1wiPiYjeGU5MGQ7PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z3JvdXA/Lmdyb3VwX25hbWV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9hcHAtcG9wb3Zlcj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJhZGlvLWdyb3VwLXNlbGVjdG9yXCIgW2NsYXNzLmRpc2FibGVkXT1cImFjdGl2ZUxpc3QgPT09ICdSRVZJRVdFUidcIj5cclxuICAgICAgICAgICAgICAgIDxhcHAtY3MtcmFkaW8gW25hbWVdPVwiJ3Jldmlld2VyJ1wiIFtjaGVja2VkXT1cImNvbnRyb2xzPy5yZXZpZXdlcl9jb21wbGV0aW9uX2NyaXRlcmlhPy52YWx1ZSA9PSAnU0VRVUVOVElBTCdcIiAoY2hlY2tlZEV2ZW50KT1cInNldEZvcm1GaWVsZCgncmV2aWV3ZXJfY29tcGxldGlvbl9jcml0ZXJpYScsICdTRVFVRU5USUFMJylcIj5cclxuICAgICAgICAgICAgICAgICAgICBTRVFVRU5USUFMIDxpIGNsYXNzPVwiaWNvbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXBwVG9vbHRpcF09XCInVGhlIHJlc3BvbnNpYmlsaXR5IHdpbGwgYmUgc2VudCBmb3IgcmV2aWV3IG9uZSBhdCBhIHRpbWUgaW4gdGhlIHNlcXVlbmNlIGRlZmluZWQgYnkgeW91LidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJib3R0b20tcmlnaHRcIiBkZWxheT1cIjBcIiB0eXBlPVwid2hpdGVcIiBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZTkxZjs8L2k+XHJcbiAgICAgICAgICAgICAgICA8L2FwcC1jcy1yYWRpbz5cclxuICAgICAgICAgICAgICAgIDxhcHAtY3MtcmFkaW8gW25hbWVdPVwiJ3Jldmlld2VyJ1wiIFtjaGVja2VkXT1cImNvbnRyb2xzPy5yZXZpZXdlcl9jb21wbGV0aW9uX2NyaXRlcmlhPy52YWx1ZSA9PSAnQU5ZT05FJ1wiIChjaGVja2VkRXZlbnQpPVwic2V0Rm9ybUZpZWxkKCdyZXZpZXdlcl9jb21wbGV0aW9uX2NyaXRlcmlhJywgJ0FOWU9ORScpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgQU5ZIFJFVklFV0VSIENBTiBNQVJLIFRISVMgQVMgUkVWSUVXRUQgPGkgY2xhc3M9XCJpY29uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthcHBUb29sdGlwXT1cIidUaGUgcmVzcG9uc2liaWxpdHkgd2lsbCBiZSBzZW50IGZvciByZXZpZXcgdG8gYWxsIHJldmlld2VycyBhdCB0aGUgc2FtZSB0aW1lLiBJZiBhbnlvbmUgb2YgdGhlIHJldmlld2VyIHJldmlld3MgdGhlIHJlc3BvbnNpYmlsaXR5LCBpdCB3aWxsIGJlIGNvbnNpZGVyZWQgYXMgcmV2aWV3ZWQuJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbS1yaWdodFwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlOTFmOzwvaT5cclxuICAgICAgICAgICAgICAgIDwvYXBwLWNzLXJhZGlvPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Zvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgIDwhLS0gT3ZlcnNlZXIgLS0+XHJcbiAgICAgICAgPGZvcm0tZmllbGQgW2FwcFNjcm9sbEluVmlld109XCJzY3JvbGxUb0JvdHRvbVwiICpuZ0lmPVwiYWRkaXRpb25hbE9wdGlvbj8uT1ZFUlNFRVJcIlxyXG4gICAgICAgIFtjaGVja2VkXT1cImNvbnRyb2xzPy5wcm9ncmFtX292ZXJzZWVyPy52YWx1ZT8ubGVuZ3RoICB8fCAgY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9vdmVyc2Vlcj8udmFsdWU/Lmxlbmd0aCB8fGNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfb3ZlcnNlZXI/LnZhbHVlPy5sZW5ndGggIHx8ICBjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X292ZXJzZWVyX2dyb3VwPy52YWx1ZT8ubGVuZ3RoXCJcclxuICAgICAgICBbYWN0aXZlXT1cImFjdGl2ZUxpc3QgPT09ICdPVkVSU0VFUidcIiAgW2Rpc2FibGVkXT1cInNpZGVFbGVtZW50cz8uaW5jbHVkZXMoYWN0aXZlTGlzdCkgJiYgIVsnT1ZFUlNFRVInLCdERUZBVUxUX09WRVJTRUVSJywnREVGQVVMVF9GQUlMRURfT1ZFUlNFRVInXS5pbmNsdWRlcyhhY3RpdmVMaXN0KVwiXHJcbiAgICAgICAgICAgIFtpbWddPVwiJ2h0dHBzOi8vY2RuLnYtY29tcGx5LmNvbS9saWJyYXJpZXMvd29ya2Zsb3ctZW5naW5lL2Fzc2V0cy93b3JrZmxvdy9vdmVyc2lnaHQuc3ZnJ1wiPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCIgW2NsYXNzLmRpc2FibGVkXT1cIlsnREVGQVVMVF9PVkVSU0VFUicsJ0RFRkFVTFRfRkFJTEVEX09WRVJTRUVSJ10uaW5jbHVkZXMoYWN0aXZlTGlzdClcIj5PdmVyc2VlciA8aSBjbGFzcz1cImljb25zXCIgW2FwcFRvb2x0aXBdPVwiJ092ZXJzZWVycyByZWZlciB0byB0aGUgdXNlcnMgd2hvIGNhbiBvdmVyc2VlIGEgcmVzcG9uc2liaWxpdHkgYW5kIHJlY2VpdmUgZW1haWwgdXBkYXRlcyB3aGVuIGEgcmVzcG9uc2liaWxpdHkgaXMgY29tcGxldGVkIG9yIG5vdCBjb21wbGV0ZWQuIFdoaWxlIGNyZWF0aW5nIGEgUHJvZ3JhbSwgdGhpcyBvcHRpb25zIGxldHMgeW91IHJlc3RyaWN0IHRoZSB1c2VycyB3aG8gY2FuIG92ZXJzZWUgdGhlIHJlc3BvbnNpYmlsaXRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBQcm9ncmFtLidcIiBwbGFjZW1lbnQ9XCJib3R0b21cIiBkZWxheT1cIjBcIiB0eXBlPVwid2hpdGVcIiBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCI+JiN4ZWIxNjs8L2k+PC9sYWJlbD5cclxuICAgICAgICAgICAgPGlucHV0LXdpdGgtcGlsbCBbZGlzYWJsZWRdPVwiWydERUZBVUxUX09WRVJTRUVSJywnREVGQVVMVF9GQUlMRURfT1ZFUlNFRVInXS5pbmNsdWRlcyhhY3RpdmVMaXN0KVwiIFtwbGFjZWhvbGRlcl09XCInV2hvIHNob3VsZCBoYXZlIG92ZXJzaWdodCBvZiB0aGUgcmVzcG9uc2liaWxpdHk/J1wiIChzZWxlY3QpPVwiYWN0aXZhdGVMaXN0KCdPVkVSU0VFUicpXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0ZWRcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX292ZXJzZWVyPy52YWx1ZT8ubGVuZ3RoIHx8IGNvbnRyb2xzPy5wcm9ncmFtX292ZXJzZWVyX2dyb3VwPy52YWx1ZT8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWlubmVyXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9vdmVyc2Vlcj8udmFsdWU/Lmxlbmd0aFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlwXCI+PHNwYW4gY2xhc3M9XCJ2eC1mcy0xMSB2eC1wYXJhZ3JhcGgtdHh0IHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2VcIj5VU0VSKFMpPC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJjb3VudCB1c2VyXCIgYXBwUG9wb3ZlciAoY2xpY2spPVwib3ZlcnNlZXJzLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+e3tjb250cm9scz8ucHJvZ3JhbV9vdmVyc2Vlcj8udmFsdWU/Lmxlbmd0aH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fb3ZlcnNlZXJfZ3JvdXA/LnZhbHVlPy5sZW5ndGggJiYgY29udHJvbHM/LnByb2dyYW1fb3ZlcnNlZXI/LnZhbHVlPy5sZW5ndGggXCIgY2xhc3M9XCJ2eC1mcy0xMiB2eC1wYXJhZ3JhcGgtdHh0IHZ4LW1sLTIgdngtbXItMlwiPiY8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1pbm5lclwiICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fb3ZlcnNlZXJfZ3JvdXA/LnZhbHVlPy5sZW5ndGggXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlwXCI+PHNwYW4gY2xhc3M9XCJ2eC1mcy0xMSB2eC1wYXJhZ3JhcGgtdHh0IHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2VcIj5HUk9VUChTKTwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNvdW50XCIgYXBwUG9wb3ZlciAoY2xpY2spPVwib3ZlcnNlZXJHcm91cC5wb3BvdmVyKClcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPnt7Y29udHJvbHM/LnByb2dyYW1fb3ZlcnNlZXJfZ3JvdXA/LnZhbHVlPy5sZW5ndGh9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJhY3RpdmVMaXN0IT09J09WRVJTRUVSJ1wiIChjbGljayk9XCJhY3RpdmF0ZUxpc3QoJ09WRVJTRUVSJylcIiBjbGFzcz1cImVkaXRcIiB0eXBlPVwiYnV0dG9uXCI+PGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5YmE7PC9pPiBFZGl0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9pbnB1dC13aXRoLXBpbGw+XHJcbiAgICAgICAgICAgIDxhcHAtcG9wb3ZlciAjb3ZlcnNlZXJzIFtkb250Q2xvc2VvbkNsaWNrXT1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tbGlzdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cImFjdGlvbi1pdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgb3ZlcnNlZXIgb2YgY29udHJvbHM/LnByb2dyYW1fb3ZlcnNlZXI/LnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyLWNhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnNcIiAgKGNsaWNrKT1cInJlbW92ZShvdmVyc2VlciwnT1ZFUlNFRVInKVwiPiYjeGU5MGQ7PC9pPiB7e292ZXJzZWVyPy5tZW1iZXJfbmFtZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2FwcC1wb3BvdmVyPlxyXG4gICAgICAgICAgICA8YXBwLXBvcG92ZXIgI292ZXJzZWVyR3JvdXAgW2RvbnRDbG9zZW9uQ2xpY2tdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1saXN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBncm91cCBvZiBjb250cm9scz8ucHJvZ3JhbV9vdmVyc2Vlcl9ncm91cD8udmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgKGNsaWNrKT1cInJlbW92ZShncm91cCwnT1ZFUlNFRVJfR1JPVVAnKVwiIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTBkOzwvaT4ge3tncm91cD8uZ3JvdXBfbmFtZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2FwcC1wb3BvdmVyPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyIFtjbGFzcy5kaXNhYmxlZF09XCJhY3RpdmVMaXN0ID09PSAnT1ZFUlNFRVInXCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIiAgW2NsYXNzLmRpc2FibGVkXT1cIlsnT1ZFUlNFRVInXS5pbmNsdWRlcyhhY3RpdmVMaXN0KVwiPkRFRkFVTFQgT3ZlcnNlZXIgPGkgY2xhc3M9XCJpY29uc1wiIFthcHBUb29sdGlwXT1cIidUaGlzIG9wdGlvbiBsZXRzIHlvdSBzcGVjaWZ5IHRoZSBkZWZhdWx0IG92ZXJzZWVycyBmb3IgYWxsIG5ldyByZXNwb25zaWJpbGl0aWVzIGFzc29jaWF0ZWQgd2l0aCBhIFByb2dyYW0uIElmIGEgZGVmYXVsdCBvdmVyc2VlciBpcyBzZWxlY3RlZCwgdGhlIHVzZXIgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIHNlbGVjdGVkIGFzIGFuIG92ZXJzZWVyIHdpdGhpbiB0aGUgXFwnQ3JlYXRlIGEgUmVzcG9uc2liaWxpdHlcXCcgZm9ybS4gSG93ZXZlciwgdGhlIGFzc2lnbm9yIGNhbiBtYWtlIGNoYW5nZXMgdG8gdGhpcyBzZXR0aW5nLCBpZiByZXF1aXJlZC4nXCIgcGxhY2VtZW50PVwiYm90dG9tXCIgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCIgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiPiYjeGViMTY7PC9pPjwvbGFiZWw+XHJcbiAgICAgICAgICAgIDxpbnB1dC13aXRoLXBpbGwgIFtkaXNhYmxlZF09XCJbJ09WRVJTRUVSJywnREVGQVVMVF9GQUlMRURfT1ZFUlNFRVInXS5pbmNsdWRlcyhhY3RpdmVMaXN0KVwiIFtwbGFjZWhvbGRlcl09XCInV2hvIHNob3VsZCBoYXZlIG92ZXJzaWdodCBvZiB0aGUgcmVzcG9uc2liaWxpdHk/J1wiIChzZWxlY3QpPVwiYWN0aXZhdGVMaXN0KCdERUZBVUxUX09WRVJTRUVSJylcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X292ZXJzZWVyPy52YWx1ZT8ubGVuZ3RoIHx8IGNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfb3ZlcnNlZXJfZ3JvdXA/LnZhbHVlPy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWlubmVyXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X292ZXJzZWVyPy52YWx1ZT8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hpcFwiPjxzcGFuIGNsYXNzPVwidngtZnMtMTEgdngtcGFyYWdyYXBoLXR4dCB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlXCI+VVNFUihTKTwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJjb3VudCB1c2VyXCIgYXBwUG9wb3ZlciAoY2xpY2spPVwib3ZlcnNlZXJzRGVmYXVsdC5wb3BvdmVyKClcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPnt7Y29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9vdmVyc2Vlcj8udmFsdWU/Lmxlbmd0aH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfb3ZlcnNlZXJfZ3JvdXA/LnZhbHVlPy5sZW5ndGggJiYgY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9vdmVyc2Vlcj8udmFsdWU/Lmxlbmd0aFwiIGNsYXNzPVwidngtZnMtMTIgdngtcGFyYWdyYXBoLXR4dCB2eC1tbC0yIHZ4LW1yLTJcIj4mPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hpcC1pbm5lclwiICpuZ0lmPVwiY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9vdmVyc2Vlcl9ncm91cD8udmFsdWU/Lmxlbmd0aCBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hpcFwiPjxzcGFuIGNsYXNzPVwidngtZnMtMTEgdngtcGFyYWdyYXBoLXR4dCB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlXCI+R1JPVVAoUyk8L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNvdW50XCIgYXBwUG9wb3ZlciAoY2xpY2spPVwib3ZlcnNlZXJEZWZhdWx0R3JvdXAucG9wb3ZlcigpXCIgcGxhY2VtZW50PVwicmlnaHRcIj57e2NvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfb3ZlcnNlZXJfZ3JvdXA/LnZhbHVlPy5sZW5ndGh9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFjdGl2ZUxpc3QhPT0nREVGQVVMVF9PVkVSU0VFUidcIiAoY2xpY2spPVwiYWN0aXZhdGVMaXN0KCdERUZBVUxUX09WRVJTRUVSJylcIiBjbGFzcz1cImVkaXRcIiB0eXBlPVwiYnV0dG9uXCI+PGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5YmE7PC9pPiBFZGl0PC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvaW5wdXQtd2l0aC1waWxsPlxyXG4gICAgICAgIDxhcHAtcG9wb3ZlciAjb3ZlcnNlZXJzRGVmYXVsdCBbZG9udENsb3Nlb25DbGlja109XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tbGlzdFwiPlxyXG4gICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IG92ZXJzZWVyIG9mIGNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfb3ZlcnNlZXI/LnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnNcIiAgKGNsaWNrKT1cInJlbW92ZShvdmVyc2VlciwnREVGQVVMVF9PVkVSU0VFUicpXCI+JiN4ZTkwZDs8L2k+IHt7b3ZlcnNlZXI/Lm1lbWJlcl9uYW1lfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgPGFwcC1wb3BvdmVyICNvdmVyc2VlckRlZmF1bHRHcm91cCBbZG9udENsb3Nlb25DbGlja109XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tbGlzdFwiPlxyXG4gICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGdyb3VwIG9mIGNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfb3ZlcnNlZXJfZ3JvdXA/LnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIChjbGljayk9XCJyZW1vdmUoZ3JvdXAsJ0RFRkFVTFRfT1ZFUlNFRVJfR1JPVVAnKVwiIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTBkOzwvaT4ge3tncm91cD8uZ3JvdXBfbmFtZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2FwcC1wb3BvdmVyPlxyXG4gICAgICAgIDxsYWJlbCBjbGFzcz1cInZ4LWNvbnRyb2wtcGFuZWxcIiA+IDwvbGFiZWw+XHJcbiAgICAgICAgPGlucHV0LXdpdGgtcGlsbCBjbGFzcz1cInZ4LW10LTJcIiBbZGlzYWJsZWRdPVwiWydPVkVSU0VFUicsJ0RFRkFVTFRfT1ZFUlNFRVInXS5pbmNsdWRlcyhhY3RpdmVMaXN0KVwiIFtwbGFjZWhvbGRlcl09XCInV2hvIHNob3VsZCBiZSBub3RpZmllZCBpZiB0aGUgcmVzcG9uc2liaWxpdHkgaXMgbm90IGNvbXBsZXRlZD8nXCIgKHNlbGVjdCk9XCJhY3RpdmF0ZUxpc3QoJ0RFRkFVTFRfRkFJTEVEX09WRVJTRUVSJylcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0ZWRcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfZmFpbGVkX292ZXJzZWVyPy52YWx1ZT8ubGVuZ3RoIHx8IGNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfZmFpbGVkX292ZXJzZWVyX2dyb3VwPy52YWx1ZT8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtaW5uZXJcIiAqbmdJZj1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfZmFpbGVkX292ZXJzZWVyPy52YWx1ZT8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlwXCI+PHNwYW4gY2xhc3M9XCJ2eC1mcy0xMSB2eC1wYXJhZ3JhcGgtdHh0IHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2VcIj5VU0VSKFMpPC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiY291bnQgdXNlclwiIGFwcFBvcG92ZXIgKGNsaWNrKT1cIm92ZXJzZWVyc0RlZmF1bHRGYWlsLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+e3tjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2ZhaWxlZF9vdmVyc2Vlcj8udmFsdWU/Lmxlbmd0aH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2ZhaWxlZF9vdmVyc2Vlcl9ncm91cD8udmFsdWU/Lmxlbmd0aCAmJiBjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2ZhaWxlZF9vdmVyc2Vlcj8udmFsdWU/Lmxlbmd0aFwiIGNsYXNzPVwidngtZnMtMTIgdngtcGFyYWdyYXBoLXR4dCB2eC1tbC0yIHZ4LW1yLTJcIj4mPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWlubmVyXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2ZhaWxlZF9vdmVyc2Vlcl9ncm91cD8udmFsdWU/Lmxlbmd0aCBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlwXCI+PHNwYW4gY2xhc3M9XCJ2eC1mcy0xMSB2eC1wYXJhZ3JhcGgtdHh0IHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2VcIj5HUk9VUChTKTwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJjb3VudFwiIGFwcFBvcG92ZXIgKGNsaWNrKT1cIm92ZXJzZWVyRGVmYXVsdEZhaWxHcm91cC5wb3BvdmVyKClcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPnt7Y29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9mYWlsZWRfb3ZlcnNlZXJfZ3JvdXA/LnZhbHVlPy5sZW5ndGh9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFjdGl2ZUxpc3QhPT0nREVGQVVMVF9GQUlMRURfT1ZFUlNFRVInXCIgKGNsaWNrKT1cImFjdGl2YXRlTGlzdCgnREVGQVVMVF9GQUlMRURfT1ZFUlNFRVInKVwiIGNsYXNzPVwiZWRpdFwiIHR5cGU9XCJidXR0b25cIj48aSBjbGFzcz1cImljb25zXCI+JiN4ZTliYTs8L2k+IEVkaXQ8L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvaW5wdXQtd2l0aC1waWxsPlxyXG4gICAgPGFwcC1wb3BvdmVyICNvdmVyc2VlcnNEZWZhdWx0RmFpbCBbZG9udENsb3Nlb25DbGlja109XCJ0cnVlXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1saXN0XCI+XHJcbiAgICAgICAgICAgIDx1bCBjbGFzcz1cImFjdGlvbi1pdGVtXCI+XHJcbiAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IG92ZXJzZWVyIG9mIGNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfZmFpbGVkX292ZXJzZWVyPy52YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb25zXCIgIChjbGljayk9XCJyZW1vdmUob3ZlcnNlZXIsJ0RFRkFVTFRfRkFJTEVEX09WRVJTRUVSJylcIj4mI3hlOTBkOzwvaT4ge3tvdmVyc2Vlcj8ubWVtYmVyX25hbWV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9hcHAtcG9wb3Zlcj5cclxuICAgIDxhcHAtcG9wb3ZlciAjb3ZlcnNlZXJEZWZhdWx0RmFpbEdyb3VwIFtkb250Q2xvc2VvbkNsaWNrXT1cInRydWVcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWxpc3RcIj5cclxuICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgZ3JvdXAgb2YgY29udHJvbHM/LnByb2dyYW1fZGVmYXVsdF9mYWlsZWRfb3ZlcnNlZXJfZ3JvdXA/LnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF2YXRhci1jYXJkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIChjbGljayk9XCJyZW1vdmUoZ3JvdXAsJ0RFRkFVTFRfRkFJTEVEX09WRVJTRUVSX0dST1VQJylcIiBjbGFzcz1cImljb25zXCI+JiN4ZTkwZDs8L2k+IHt7Z3JvdXA/Lmdyb3VwX25hbWV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9hcHAtcG9wb3Zlcj5cclxuPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9mb3JtLWZpZWxkPlxyXG5cclxuICAgICAgICA8IS0tIEFzc2Vzc21lbnQgLS0+XHJcbiAgICAgICAgPGZvcm0tZmllbGQgW2FwcFNjcm9sbEluVmlld109XCJzY3JvbGxUb0JvdHRvbVwiICpuZ0lmPVwiYWRkaXRpb25hbE9wdGlvbj8uQVNTRVNTTUVOVFwiXHJcbiAgICAgICAgW2NoZWNrZWRdPVwiY29udHJvbHM/LnByb2dyYW1fYXNzZXNzbWVudHM/LnZhbHVlPy5sZW5ndGhcIlxyXG4gICAgICAgIFthY3RpdmVdPVwiYWN0aXZlTGlzdCA9PT0gJ0FTU0VTU01FTlQnXCIgW2Rpc2FibGVkXT1cInNpZGVFbGVtZW50cy5pbmNsdWRlcyhhY3RpdmVMaXN0KSAmJiBhY3RpdmVMaXN0ICE9PSAnQVNTRVNTTUVOVCdcIlxyXG4gICAgICAgICAgICBbaW1nXT1cIidodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvYXNzZXNzbWVudHMuc3ZnJ1wiPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+QVNTRVNTTUVOVFMgPGkgY2xhc3M9XCJpY29uc1wiIFthcHBUb29sdGlwXT1cIidBc3Nlc3NtZW50cyBhbGxvd3MgeW91IHRvIGFzc29jaWF0ZSBvdXRjb21lIGJhc2VkIHF1ZXN0aW9ubmFpcmVzIG9yIHNlbGYtYXNzZXNzbWVudCBxdWVzdGlvbm5haXJlcyB3aXRoIGEgcmVzcG9uc2liaWxpdHkuIFRoaXMgb3B0aW9uIGxldHMgeW91IHNwZWNpZnkgd2hpY2ggYXNzZXNzbWVudHMgY2FuIGJlIGxpbmtlZCB3aXRoIHJlc3BvbnNpYmlsaXRpZXMgd2l0aGluIGEgUHJvZ3JhbS4nXCIgcGxhY2VtZW50PVwiYm90dG9tXCIgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCIgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiPiYjeGViMTY7PC9pPjwvbGFiZWw+XHJcbiAgICAgICAgICAgIDxpbnB1dC13aXRoLXBpbGwgIFtwbGFjZWhvbGRlcl09XCInU2VsZWN0IGFzc2Vzc21lbnQgZm9yIHRoaXMgcmVzcG9uc2liaWxpdHknXCIgKHNlbGVjdCk9XCJhY3RpdmF0ZUxpc3QoJ0FTU0VTU01FTlQnKVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkXCIgKm5nSWY9XCJjb250cm9scz8ucHJvZ3JhbV9hc3Nlc3NtZW50cz8udmFsdWU/Lmxlbmd0aFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGlwLWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiKGNvbnRyb2xzPy5wcm9ncmFtX2Fzc2Vzc21lbnRzPy52YWx1ZSB8IGFzc2Vzc21lbnRSZXNvbHZlcikgYXMgYXNzZXNzbWVudHNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoaXAtaW5uZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hpcFwiPjxpIGNsYXNzPVwiaWNvbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwicmVtb3ZlKGFzc2Vzc21lbnRzWzBdLCdBU1NFU1NNRU5UJylcIj4mI3hlOTBkOzwvaT57e2Fzc2Vzc21lbnRzWzBdPy5hc3Nlc3NtZW50X25hbWV9fSA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiYXNzZXNzbWVudHM/Lmxlbmd0aCA+IDFcIiBjbGFzcz1cImNvdW50XCIgYXBwUG9wb3ZlclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJwcm9ncmFtX2Fzc2Vzc21lbnRzLnBvcG92ZXIoKVwiIHBsYWNlbWVudD1cInJpZ2h0XCI+K3t7YXNzZXNzbWVudHM/Lmxlbmd0aCAtMSB9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiYWN0aXZlTGlzdCE9PSdBU1NFU1NNRU5UJ1wiIGNsYXNzPVwiZWRpdFwiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwiYWN0aXZhdGVMaXN0KCdBU1NFU1NNRU5UJylcIj48aSBjbGFzcz1cImljb25zXCI+JiN4ZTliYTs8L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEVkaXQ8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2lucHV0LXdpdGgtcGlsbD5cclxuICAgICAgICAgICAgPGFwcC1wb3BvdmVyICNwcm9ncmFtX2Fzc2Vzc21lbnRzIFtkb250Q2xvc2VvbkNsaWNrXT1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1saXN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgYXNzZXNzbWVudCBvZiAoY29udHJvbHM/LnByb2dyYW1fYXNzZXNzbWVudHM/LnZhbHVlIHwgYXNzZXNzbWVudFJlc29sdmVyKSB8IHNsaWNlOjFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiIChjbGljayk9XCJyZW1vdmUoYXNzZXNzbWVudCwnQVNTRVNTTUVOVCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSAgICBjbGFzcz1cImljb25zXCIgPiYjeGU5MGQ7PC9pPiB7e2Fzc2Vzc21lbnQ/LmFzc2Vzc21lbnRfbmFtZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XHJcbiAgICAgICAgPC9mb3JtLWZpZWxkPlxyXG5cclxuXHJcbiAgICAgICAgPCEtLSBGb3JtYXQgJiBFdmlkZW5jZSAtLT5cclxuICAgICAgICA8Zm9ybS1maWVsZCBbYXBwU2Nyb2xsSW5WaWV3XT1cInNjcm9sbFRvQm90dG9tXCIgKm5nSWY9XCJhZGRpdGlvbmFsT3B0aW9uPy5GT1JNQVRFX0VWSURFTkNFXCIgW2NoZWNrZWRdPVwiW3RydWUsZmFsc2VdLmluY2x1ZGVzKGNvbnRyb2xzPy5ldmlkZW5jZV9yZXF1aXJlZD8udmFsdWUpXCJcclxuICAgICAgICAgICAgW2FjdGl2ZV09XCJmYWxzZVwiIFtkaXNhYmxlZF09XCJzaWRlRWxlbWVudHMuaW5jbHVkZXMoYWN0aXZlTGlzdClcIlxyXG4gICAgICAgICAgICBbaW1nXT1cIidodHRwczovL2Nkbi52LWNvbXBseS5jb20vbGlicmFyaWVzL3dvcmtmbG93LWVuZ2luZS9hc3NldHMvd29ya2Zsb3cvZm9ybWF0LWV2aWRlbmNlLnN2ZydcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidngtY29udHJvbC1wYW5lbFwiPkV2aWRlbmNlIDxpIGNsYXNzPVwiaWNvbnNcIiBbYXBwVG9vbHRpcF09XCInVGhpcyBvcHRpb24gbGV0cyB5b3Ugc3BlY2lmeSBpZiB0aGUgZXZpZGVuY2Ugb2YgY29tcGxldGlvbiBvZiBhIHJlc3BvbnNpYmlsaXR5IHdpdGhpbiBhIFByb2dyYW0gbmVlZHMgdG8gYmUgdXBsb2FkZWQuIElmIOKAmFllc+KAmSBpcyBzZWxlY3RlZCwgdGhlIGFzc2lnbmVlcyBmb3IgYWxsIHJlc3BvbnNpYmlsaXRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBQcm9ncmFtIHdpbGwgYmUgcmVxdWlyZWQgdG8gdXBsb2FkIGV2aWRlbmNlIHdoaWxlIGNvbXBsZXRpbmcgdGhlIHJlc3BvbnNpYmlsaXR5LiBIb3dldmVyLCB0aGUgYXNzaWdub3IgY2FuIG1ha2UgY2hhbmdlcyB0byB0aGlzIHNldHRpbmcgaWYgcmVxdWlyZWQuJ1wiIHBsYWNlbWVudD1cImJvdHRvbVwiIGRlbGF5PVwiMFwiIHR5cGU9XCJ3aGl0ZVwiIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIj4mI3hlYjE2OzwvaT48L2xhYmVsPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLWZvcm1hdFwiPlxyXG5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dFwiPkRvIGFsbCByZXNwb25zaWJpbGl0aWVzIHdpdGhpbiB0aGlzIHByb2dyYW0gcmVxdWlyZSBldmlkZW5jZT88L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicmFkaW8tZ3JvdXAgcHJvZ3JhbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxhcHAtY3MtcmFkaW8gW25hbWVdPVwiJ2V2aWRlbmNlX3JlcXVpcmVkJ1wiIFtjaGVja2VkXT1cImNvbnRyb2xzPy5ldmlkZW5jZV9yZXF1aXJlZD8udmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2hlY2tlZEV2ZW50KT1cInNldEZvcm1GaWVsZCgnZXZpZGVuY2VfcmVxdWlyZWQnLHRydWUpXCI+WUVTPC9hcHAtY3MtcmFkaW8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGFwcC1jcy1yYWRpbyBbbmFtZV09XCInZXZpZGVuY2VfcmVxdWlyZWQnXCIgW2NoZWNrZWRdPVwiIWNvbnRyb2xzPy5ldmlkZW5jZV9yZXF1aXJlZD8udmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2hlY2tlZEV2ZW50KT1cInNldEZvcm1GaWVsZCgnZXZpZGVuY2VfcmVxdWlyZWQnLGZhbHNlKVwiPk5PPC9hcHAtY3MtcmFkaW8+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWp1c3RpZnktZW5kIHZ4LW10LTJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mcy0xMSB2eC1mdy01MDAgdngtcGFyYWdyYXBoLXR4dCB2eC10dC11cHBlcmNhc2UgdngtbXItMlwiPkFsbG93IGFueSBmaWxlIHRvIGJlIG1hcmtlZCBhc1xyXG4gICAgICAgICAgICAgICAgICAgIGtleVxyXG4gICAgICAgICAgICAgICAgICAgIGV2aWRlbmNlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8c3dpdGNoIGZvcm1Db250cm9sTmFtZT1cImFsbG93X2FueV9maWxlX2tleV9ldmlkZW5jZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJzZXRGb3JtRmllbGQoJ2FsbG93X2FueV9maWxlX2tleV9ldmlkZW5jZScsJGV2ZW50Py50YXJnZXQ/LmNoZWNrZWQpXCI+PC9zd2l0Y2g+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZm9ybS1maWVsZD5cclxuXHJcblxyXG4gICAgICAgIDwhLS0gQ3VzdG9tIEZpZWxkIC0tPlxyXG4gICAgICAgIDxmb3JtLWZpZWxkIFthcHBTY3JvbGxJblZpZXddPVwic2Nyb2xsVG9Cb3R0b21cIiAqbmdJZj1cImFkZGl0aW9uYWxPcHRpb24/LkNVU1RPTV9GSUVMRFNcIiBbY2hlY2tlZF09XCJjb250cm9scz8uY3VzdG9tX2ZpZWxkcz8udmFsdWU/Lmxlbmd0aFwiXHJcbiAgICAgICAgICAgIFthY3RpdmVdPVwiZmFsc2VcIiBbZGlzYWJsZWRdPVwic2lkZUVsZW1lbnRzLmluY2x1ZGVzKGFjdGl2ZUxpc3QpXCJcclxuICAgICAgICAgICAgW2ltZ109XCInaHR0cHM6Ly9jZG4udi1jb21wbHkuY29tL2xpYnJhcmllcy93b3JrZmxvdy1lbmdpbmUvYXNzZXRzL3dvcmtmbG93L2N1c3RvbS1maWVsZHMuc3ZnJ1wiPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ2eC1jb250cm9sLXBhbmVsXCI+Q1VTVE9NIEZJRUxEUyA8aSBjbGFzcz1cImljb25zXCIgW2FwcFRvb2x0aXBdPVwiJ0N1c3RvbSBmaWVsZHMgZW5hYmxlIHlvdSB0byBhZGQgYWRkaXRpb25hbCBtZXRhIGRhdGEgdG8gYSByZXNwb25zaWJpbGl0eS4nXCIgcGxhY2VtZW50PVwiYm90dG9tXCIgZGVsYXk9XCIwXCIgdHlwZT1cIndoaXRlXCIgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiPiYjeGViMTY7PC9pPjwvbGFiZWw+XHJcbiAgICAgICAgICAgIDxjdXN0b20tZmllbGQgZm9ybUNvbnRyb2xOYW1lPVwiY3VzdG9tX2ZpZWxkc1wiPjwvY3VzdG9tLWZpZWxkPlxyXG4gICAgICAgIDwvZm9ybS1maWVsZD5cclxuICAgIDwvZm9ybT5cclxuPC9kaXY+XHJcblxyXG5cclxuPCEtLSBsaXN0IG9mIHJvbGVzIC0tPlxyXG48cm9sZS1saXN0ICpuZ0lmPVwiYWN0aXZlTGlzdCA9PT0gJ1JPTEUnXCIgW3NlbGVjdGVkXT1cImNvbnRyb2xzPy5wcm9ncmFtX3JvbGVzPy52YWx1ZSB8IHJlZkRpc2Nvbm5lY3RcIiBbbG9hZGluZ109XCJsaXN0TG9hZGluZ1N0YXRlLlJPTEVTXCJcclxuICAgIFtsaXN0XT1cImxpc3RzPy5ST0xFUz8uZGF0YSA/PyBbXVwiIChzYXZlKT1cImxpc3RBY3Rpb24oJGV2ZW50LCdST0xFJylcIiAoY2FuY2VsKT1cImZpZWxkRGVzZWxlY3RvcignUk9MRScpXCI+PC9yb2xlLWxpc3Q+XHJcblxyXG48IS0tIGxpc3Qgb2YgZnJhbWV3b3JrcyAtLT5cclxuPGFwcC1kZWZpbmUtZnJhbWV3b3JrLWxpc3RpbmcgKm5nSWY9XCJhY3RpdmVMaXN0ID09PSAnRlJBTUVXT1JLJ1wiIChjYW5jZWwpPVwiZmllbGREZXNlbGVjdG9yKCdGUkFNRVdPUksnKVwiIChuZXh0KT1cImxpc3RBY3Rpb24oJGV2ZW50LCdGUkFNRVdPUksnKVwiIFttb2RlXT1cIm1vZGVcIiBbc2VsZWN0ZWRGcmFtZXdvcmtdPVwiY29udHJvbHM/LmZyYW1ld29yaz8udmFsdWVcIj48L2FwcC1kZWZpbmUtZnJhbWV3b3JrLWxpc3Rpbmc+XHJcbjwhLS0gbGlzdCBvZiByZXNwb25zaWJpbGl0eSBjZW50ZXIgLS0+XHJcbjxhcHAtcmVzcG9uc2liaWxpdHktY2VudGVycy1saXN0ICpuZ0lmPVwiYWN0aXZlTGlzdCA9PT0gJ1JDJ1wiIFtyZXNwb25zaWJpbGl0eUNlbnRlcnNMaXN0XT1cImxpc3RzPy5SQyA/PyBbXVwiXHJcbiAgICBbcmFkaW9TZWxlY3Rpb25dPVwiZmFsc2VcIiBbcmNJZEtleV09XCIncmNfaWQnXCIgKGNsb3NlUmNMaXN0KT1cImZpZWxkRGVzZWxlY3RvcignUkMnKVwiXHJcbiAgICAoc2F2ZVNlbGVjdGVkTGlzdCk9XCJsaXN0QWN0aW9uKCRldmVudCwnUkMnKVwiIFtzZWxlY3RlZFJlc3BvbnNpYmlsaXR5Q2VudGVyc109XCJjb250cm9scz8ucmM/LnZhbHVlIHwgcmVmRGlzY29ubmVjdFwiPlxyXG48L2FwcC1yZXNwb25zaWJpbGl0eS1jZW50ZXJzLWxpc3Q+XHJcbjwhLS0gcmVuZGVyIHVzZXJsaXN0IHdpdGggZ3JvdXAgLS0+XHJcblxyXG48dXNlci1ncm91cC1saXN0ICpuZ0lmPVwiYWN0aXZlTGlzdCA9PT0gJ09XTkVSJ1wiIFtncm91cEVuYWJsZWRdPVwidHJ1ZVwiIFtzaW5nbGVTZWxlY3RdPVwiZmFsc2VcIiBbbG9hZGluZ109XCJsaXN0TG9hZGluZ1N0YXRlLlVTRVJTXCJcclxuICAgIFtub25SZW1vdmFibGVVc2VySWRzXT1cImxpc3RzLk5PTl9SRU1PVkFCTEVfT1dORVJTICB8IGxpc3RUb0lkIDogJ21lbWJlcl9pZCdcIiBbdXNlcmxpc3RdPVwibGlzdHM/Lk9XTkVSUz8uZGF0YSA/PyBbXVwiXHJcbiAgICBbc2VsZWN0ZWRVc2Vyc109XCJjb250cm9scz8ucHJvZ3JhbV9vd25lcnM/LnZhbHVlIHwgcmVmRGlzY29ubmVjdFwiXHJcbiAgICAoZmV0Y2hVc2VyRGF0YSk9XCJmZXRjaFVzZXJzQXNzb2NpYXRlZFdpdGhSb2xlcyhmYWxzZSwkZXZlbnQpXCIgW3VzZXJMaXN0SW5mb109XCJsaXN0cz8uT1dORVJTXCJcclxuICAgIFtncm91cExpc3RJbmZvXT1cImxpc3RzPy5PV05FUlNfR1JPVVBTXCIgW2dyb3VwTGlzdF09XCJsaXN0cz8uT1dORVJTX0dST1VQUz8uZGF0YSA/PyBbXVwiXHJcbiAgICBbc2VsZWN0ZWRHcm91cHNdPVwiY29udHJvbHM/LnByb2dyYW1fb3duZXJzX2dyb3VwPy52YWx1ZSB8IHJlZkRpc2Nvbm5lY3RcIiAoc2F2ZSk9XCJsaXN0QWN0aW9uKCRldmVudCwnT1dORVInKVwiXHJcbiAgICAoY2FuY2VsKT1cImZpZWxkRGVzZWxlY3RvcignT1dORVInKVwiIFtwYW5lbFRpdGxlXT1cInBhbmVsVGl0bGVPd25lclwiPjwvdXNlci1ncm91cC1saXN0PlxyXG48dXNlci1ncm91cC1saXN0ICpuZ0lmPVwiYWN0aXZlTGlzdCA9PT0gJ0FQUFJPVkVSJ1wiIFtncm91cEVuYWJsZWRdPVwiZmFsc2VcIiBbc2luZ2xlU2VsZWN0XT1cInRydWVcIlxyXG4gICAgW3VzZXJsaXN0XT1cImxpc3RzPy5BUFBST1ZFUlM/LmRhdGEgPz8gW11cIiBbc2VsZWN0ZWRVc2Vyc109XCJjb250cm9scz8ucHJvZ3JhbV9hcHByb3Zlcj8udmFsdWUgfCByZWZEaXNjb25uZWN0XCJcclxuICAgIFt1c2VyTGlzdEluZm9dPVwibGlzdHM/LkFQUFJPVkVSU1wiIChzYXZlKT1cImxpc3RBY3Rpb24oJGV2ZW50LCdBUFBST1ZFUicpXCIgKGNhbmNlbCk9XCJmaWVsZERlc2VsZWN0b3IoJ0FQUFJPVkVSJylcIiBbcGFuZWxUaXRsZV09XCJwYW5lbFRpdGxlQXBwcm92ZXJcIj5cclxuPC91c2VyLWdyb3VwLWxpc3Q+XHJcbjx1c2VyLWdyb3VwLWxpc3QgKm5nSWY9XCJhY3RpdmVMaXN0ID09PSAnQVNTSUdORUUnXCIgW2dyb3VwRW5hYmxlZF09XCJ0cnVlXCIgW3NpbmdsZVNlbGVjdF09XCJmYWxzZVwiXHJcbiAgICBbdXNlcmxpc3RdPVwibGlzdHM/LkFTU0lHTkVFUyA/PyBbXVwiIFtzZWxlY3RlZFVzZXJzXT1cImNvbnRyb2xzPy5wcm9ncmFtX2Fzc2lnbmVlPy52YWx1ZSB8IHJlZkRpc2Nvbm5lY3RcIiAgW2dyb3VwTGlzdF09XCJsaXN0cz8uQVNTSUdORUVTX0dST1VQID8/IFtdXCJcclxuICAgIFtzZWxlY3RlZEdyb3Vwc109XCJjb250cm9scz8ucHJvZ3JhbV9hc3NpZ25lZV9ncm91cD8udmFsdWUgfCByZWZEaXNjb25uZWN0XCJcclxuICAgIFt1c2VyTGlzdEluZm9dPVwibGlzdHM/LkFTU0lHTkVFU1wiIChzYXZlKT1cImxpc3RBY3Rpb24oJGV2ZW50LCdBU1NJR05FRScpXCIgKGNhbmNlbCk9XCJmaWVsZERlc2VsZWN0b3IoJ0FTU0lHTkVFJylcIiBbcGFuZWxUaXRsZV09XCJwYW5lbFRpdGxlQXNzaWduZWVcIj5cclxuPC91c2VyLWdyb3VwLWxpc3Q+XHJcbjx1c2VyLWdyb3VwLWxpc3QgKm5nSWY9XCJhY3RpdmVMaXN0ID09PSAnREVGQVVMVF9BU1NJR05FRSdcIiBbZ3JvdXBFbmFibGVkXT1cInRydWVcIiBbc2luZ2xlU2VsZWN0XT1cImZhbHNlXCJcclxuICAgIFt1c2VybGlzdF09XCJsaXN0cz8uREVGQVVMVF9BU1NJR05FRVMgPz8gW11cIiBbc2VsZWN0ZWRVc2Vyc109XCJjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2Fzc2lnbmVlPy52YWx1ZSB8IHJlZkRpc2Nvbm5lY3RcIiAgW2dyb3VwTGlzdF09XCJsaXN0cz8uREVGQVVMVF9BU1NJR05FRVNfR1JPVVAgPz8gW11cIlxyXG4gICAgW3NlbGVjdGVkR3JvdXBzXT1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfYXNzaWduZWVfZ3JvdXA/LnZhbHVlIHwgcmVmRGlzY29ubmVjdFwiXHJcbiAgICBbdXNlckxpc3RJbmZvXT1cImxpc3RzPy5ERUZBVUxUX0FTU0lHTkVFXCIgKHNhdmUpPVwibGlzdEFjdGlvbigkZXZlbnQsJ0RFRkFVTFRfQVNTSUdORUUnKVwiIChjYW5jZWwpPVwiZmllbGREZXNlbGVjdG9yKCdERUZBVUxUX0FTU0lHTkVFJylcIj5cclxuPC91c2VyLWdyb3VwLWxpc3Q+XHJcblxyXG48dXNlci1ncm91cC1saXN0ICpuZ0lmPVwiYWN0aXZlTGlzdCA9PT0gJ1JFVklFV0VSJ1wiIFtncm91cEVuYWJsZWRdPVwiZmFsc2VcIiBbc2luZ2xlU2VsZWN0XT1cImZhbHNlXCJcclxuICAgIFt1c2VybGlzdF09XCJsaXN0cz8uUkVWSUVXRVJTID8/IFtdXCIgW3NlbGVjdGVkVXNlcnNdPVwiY29udHJvbHM/LnByb2dyYW1fcmV2aWV3ZXI/LnZhbHVlIHwgcmVmRGlzY29ubmVjdFwiICBbZ3JvdXBMaXN0XT1cImxpc3RzPy5SRVZJRVdFUlNfR1JPVVAgPz8gW11cIlxyXG4gICAgW3NlbGVjdGVkR3JvdXBzXT1cImNvbnRyb2xzPy5wcm9ncmFtX3Jldmlld2VyX2dyb3VwPy52YWx1ZSB8IHJlZkRpc2Nvbm5lY3RcIlxyXG4gICAgW3VzZXJMaXN0SW5mb109XCJsaXN0cz8uUkVWSUVXRVJTXCIgKHNhdmUpPVwibGlzdEFjdGlvbigkZXZlbnQsJ1JFVklFV0VSJylcIiAoY2FuY2VsKT1cImZpZWxkRGVzZWxlY3RvcignUkVWSUVXRVInKVwiIFtwYW5lbFRpdGxlXT1cInBhbmVsVGl0bGVSZXZpZXdlclwiPlxyXG48L3VzZXItZ3JvdXAtbGlzdD5cclxuPHVzZXItZ3JvdXAtbGlzdCAqbmdJZj1cImFjdGl2ZUxpc3QgPT09ICdERUZBVUxUX1JFVklFV0VSJ1wiIFtncm91cEVuYWJsZWRdPVwiZmFsc2VcIiBbc2luZ2xlU2VsZWN0XT1cImZhbHNlXCJcclxuICAgIFt1c2VybGlzdF09XCJsaXN0cz8uREVGQVVMVF9SRVZJRVdFUlMgPz8gW11cIiBbc2VsZWN0ZWRVc2Vyc109XCJjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X3Jldmlld2VyPy52YWx1ZSB8IHJlZkRpc2Nvbm5lY3RcIiAgW2dyb3VwTGlzdF09XCJsaXN0cz8uREVGQVVMVF9SRVZJRVdFUlNfR1JPVVAgPz8gW11cIlxyXG4gICAgW3NlbGVjdGVkR3JvdXBzXT1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfcmV2aWV3ZXJfZ3JvdXA/LnZhbHVlIHwgcmVmRGlzY29ubmVjdFwiXHJcbiAgICBbdXNlckxpc3RJbmZvXT1cImxpc3RzPy5ERUZBVUxUX1JFVklFV0VSU1wiIChzYXZlKT1cImxpc3RBY3Rpb24oJGV2ZW50LCdERUZBVUxUX1JFVklFV0VSJylcIiAoY2FuY2VsKT1cImZpZWxkRGVzZWxlY3RvcignREVGQVVMVF9SRVZJRVdFUicpXCIgW3BhbmVsVGl0bGVdPVwicGFuZWxUaXRsZURlZmF1bHRSZXZpZXdlclwiPlxyXG48L3VzZXItZ3JvdXAtbGlzdD5cclxuPHVzZXItZ3JvdXAtbGlzdCAqbmdJZj1cImFjdGl2ZUxpc3QgPT09ICdPVkVSU0VFUidcIiBbZ3JvdXBFbmFibGVkXT1cImZhbHNlXCIgW3NpbmdsZVNlbGVjdF09XCJmYWxzZVwiXHJcbiAgICBbdXNlcmxpc3RdPVwibGlzdHM/Lk9WRVJTRUVSUyA/PyBbXVwiIFtzZWxlY3RlZFVzZXJzXT1cImNvbnRyb2xzPy5wcm9ncmFtX292ZXJzZWVyPy52YWx1ZSB8IHJlZkRpc2Nvbm5lY3RcIiAgW2dyb3VwTGlzdF09XCJsaXN0cz8uT1ZFUlNFRVJTX0dST1VQID8/IFtdXCJcclxuICAgIFtzZWxlY3RlZEdyb3Vwc109XCJjb250cm9scz8ucHJvZ3JhbV9vdmVyc2Vlcl9ncm91cD8udmFsdWUgfCByZWZEaXNjb25uZWN0XCJcclxuICAgIFt1c2VyTGlzdEluZm9dPVwibGlzdHM/Lk9WRVJTRUVTXCIgKHNhdmUpPVwibGlzdEFjdGlvbigkZXZlbnQsJ09WRVJTRUVSJylcIiAoY2FuY2VsKT1cImZpZWxkRGVzZWxlY3RvcignT1ZFUlNFRVInKVwiPlxyXG48L3VzZXItZ3JvdXAtbGlzdD5cclxuPHVzZXItZ3JvdXAtbGlzdCAqbmdJZj1cImFjdGl2ZUxpc3QgPT09ICdERUZBVUxUX09WRVJTRUVSJ1wiIFtncm91cEVuYWJsZWRdPVwiZmFsc2VcIiBbc2luZ2xlU2VsZWN0XT1cImZhbHNlXCJcclxuICAgIFt1c2VybGlzdF09XCJsaXN0cz8uREVGQVVMVF9PVkVSU0VFUlMgPz8gW11cIiBbc2VsZWN0ZWRVc2Vyc109XCJjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X292ZXJzZWVyPy52YWx1ZSB8IHJlZkRpc2Nvbm5lY3RcIiAgW2dyb3VwTGlzdF09XCJsaXN0cz8uREVGQVVMVF9PVkVSU0VFUlNfR1JPVVAgPz8gW11cIlxyXG4gICAgW3NlbGVjdGVkR3JvdXBzXT1cImNvbnRyb2xzPy5wcm9ncmFtX2RlZmF1bHRfb3ZlcnNlZXJfZ3JvdXA/LnZhbHVlIHwgcmVmRGlzY29ubmVjdFwiXHJcbiAgICBbdXNlckxpc3RJbmZvXT1cImxpc3RzPy5ERUZBVUxUX09WRVJTRUVSU1wiIChzYXZlKT1cImxpc3RBY3Rpb24oJGV2ZW50LCdERUZBVUxUX09WRVJTRUVSJylcIiAoY2FuY2VsKT1cImZpZWxkRGVzZWxlY3RvcignREVGQVVMVF9PVkVSU0VFUicpXCI+XHJcbjwvdXNlci1ncm91cC1saXN0PlxyXG48dXNlci1ncm91cC1saXN0ICpuZ0lmPVwiYWN0aXZlTGlzdCA9PT0gJ0RFRkFVTFRfRkFJTEVEX09WRVJTRUVSJ1wiIFtncm91cEVuYWJsZWRdPVwiZmFsc2VcIiBbc2luZ2xlU2VsZWN0XT1cImZhbHNlXCJcclxuICAgIFt1c2VybGlzdF09XCJsaXN0cz8uREVGQVVMVF9PVkVSU0VFUlMgPz8gW11cIiBbc2VsZWN0ZWRVc2Vyc109XCJjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2ZhaWxlZF9vdmVyc2Vlcj8udmFsdWUgfCByZWZEaXNjb25uZWN0XCIgIFtncm91cExpc3RdPVwibGlzdHM/LkRFRkFVTFRfT1ZFUlNFRVJTX0dST1VQID8/IFtdXCJcclxuICAgIFtzZWxlY3RlZEdyb3Vwc109XCJjb250cm9scz8ucHJvZ3JhbV9kZWZhdWx0X2ZhaWxlZF9vdmVyc2Vlcl9ncm91cD8udmFsdWUgfCByZWZEaXNjb25uZWN0XCJcclxuICAgIFt1c2VyTGlzdEluZm9dPVwibGlzdHM/LkRFRkFVTFRfT1ZFUlNFRVJTXCIgKHNhdmUpPVwibGlzdEFjdGlvbigkZXZlbnQsJ0RFRkFVTFRfRkFJTEVEX09WRVJTRUVSJylcIiAoY2FuY2VsKT1cImZpZWxkRGVzZWxlY3RvcignREVGQVVMVF9GQUlMRURfT1ZFUlNFRVInKVwiPlxyXG48L3VzZXItZ3JvdXAtbGlzdD5cclxuPGFzc2Vzc21lbnQtcGlja2VyICpuZ0lmPVwiYWN0aXZlTGlzdCA9PT0gJ0FTU0VTU01FTlQnXCIgW3NlbGVjdGVkQXNzZXNzbWVudF09XCJjb250cm9scz8ucHJvZ3JhbV9hc3Nlc3NtZW50cz8udmFsdWVcIiAoY2FuY2VsQXNzZXNzbWVudCk9XCJmaWVsZERlc2VsZWN0b3IoJ0FTU0VTU01FTlQnKVwiIChvbkFzc2Vzc21lbnRTZWxlY3QpPVwibGlzdEFjdGlvbigkZXZlbnQsJ0FTU0VTU01FTlQnKVwiPjwvYXNzZXNzbWVudC1waWNrZXI+XHJcbjxhcHAtbG9hZGVyLWlubGluZSAqbmdJZj1cImxvYWRlclwiPjwvYXBwLWxvYWRlci1pbmxpbmU+XHJcbiAgICA8YXBwLXNtaWxleS1kaWFsb2ctaW5saW5lXHJcbiAgICAgICAgKm5nSWY9XCJzaG93U21pbGV5XCJcclxuICAgICAgICBbbWVzc2FnZV09XCJzbWlsZXlNZXNzYWdlXCJcclxuICAgICAgICBbYWN0aW9uQnV0dG9uc109XCJhY3Rpb25CdXR0b25zXCJcclxuICAgICAgICAoYWN0aW9uKT1cImFjdGlvbigkZXZlbnQpXCJcclxuICAgICAgICAoY2xvc2VTbWlsZXkpPVwiY2xvc2VTbWlsZXkoJGV2ZW50KVwiPlxyXG4gICAgPC9hcHAtc21pbGV5LWRpYWxvZy1pbmxpbmU+XHJcbiJdfQ==