From 962623b3e8f5229150ea5dc506f04db5d8d96267 Mon Sep 17 00:00:00 2001 From: Boninall Date: Fri, 3 Oct 2025 22:02:54 +0800 Subject: [PATCH] chore: clean up documentation and refine onboarding UI - Remove 25 outdated documentation files from completed refactoring efforts - Reorder placement options to prioritize inline mode in onboarding - Fix task item CSS class naming for consistency - Remove unused content area showcase from fluent components - Correct sideleaves configuration logic in placement step - Update onboarding component styles for better visual hierarchy These changes streamline the codebase by removing completed migration documentation and improve the onboarding experience with better defaults and cleaner UI presentation. --- docs/add-delete-method.md | 172 ---- docs/canvas-task-api-guide.md | 220 ------ docs/components-refactor-migration.md | 568 -------------- docs/dataflow-architecture.md | 380 --------- docs/dataflow-event-system.md | 208 ----- docs/dataflow-migration-phase-a-complete.md | 99 --- docs/dataflow-production-ready.md | 136 ---- docs/directory-structure-refactoring-plan.md | 351 --------- docs/editor-extensions-refactoring-plan.md | 118 --- docs/enhanced-time-parsing-api.md | 734 ------------------ docs/file-source-implementation.md | 487 ------------ docs/file-source-specification.md | 613 --------------- docs/filesource-architecture-review.md | 144 ---- docs/onboarding-intro-fix.md | 276 ------- docs/oncompletion-feature-guide.md | 237 ------ docs/parser-refactoring-plan.md | 262 ------- docs/review-2025-09-04.md | 74 -- docs/storage-api-fixes.md | 78 -- docs/task-genius-refactor-plan.md | 232 ------ docs/task-genius-refactor-spec.md | 164 ---- docs/taskindexer-migration-plan.md | 82 -- docs/taskmanager-to-dataflow-migration.md | 169 ---- docs/taskmanager-writeapi-gap-analysis.md | 229 ------ docs/update-settings-plan.md | 126 --- docs/worker-processing-implementation.md | 61 -- .../features/onboarding/FluentPlacement.ts | 12 +- .../previews/ComponentPreviewFactory.ts | 2 +- .../onboarding/steps/FluentComponentsStep.ts | 8 +- .../onboarding/steps/PlacementStep.ts | 2 +- src/styles/onboarding-components.css | 27 +- styles.css | 23 +- 31 files changed, 37 insertions(+), 6257 deletions(-) delete mode 100644 docs/add-delete-method.md delete mode 100644 docs/canvas-task-api-guide.md delete mode 100644 docs/components-refactor-migration.md delete mode 100644 docs/dataflow-architecture.md delete mode 100644 docs/dataflow-event-system.md delete mode 100644 docs/dataflow-migration-phase-a-complete.md delete mode 100644 docs/dataflow-production-ready.md delete mode 100644 docs/directory-structure-refactoring-plan.md delete mode 100644 docs/editor-extensions-refactoring-plan.md delete mode 100644 docs/enhanced-time-parsing-api.md delete mode 100644 docs/file-source-implementation.md delete mode 100644 docs/file-source-specification.md delete mode 100644 docs/filesource-architecture-review.md delete mode 100644 docs/onboarding-intro-fix.md delete mode 100644 docs/oncompletion-feature-guide.md delete mode 100644 docs/parser-refactoring-plan.md delete mode 100644 docs/review-2025-09-04.md delete mode 100644 docs/storage-api-fixes.md delete mode 100644 docs/task-genius-refactor-plan.md delete mode 100644 docs/task-genius-refactor-spec.md delete mode 100644 docs/taskindexer-migration-plan.md delete mode 100644 docs/taskmanager-to-dataflow-migration.md delete mode 100644 docs/taskmanager-writeapi-gap-analysis.md delete mode 100644 docs/update-settings-plan.md delete mode 100644 docs/worker-processing-implementation.md diff --git a/docs/add-delete-method.md b/docs/add-delete-method.md deleted file mode 100644 index 09e33021..00000000 --- a/docs/add-delete-method.md +++ /dev/null @@ -1,172 +0,0 @@ -## 目标 - -- 在 Task 视图(src/pages/TaskView.ts)中,为每个任务的右键菜单新增“删除任务”按钮。 -- 当目标任务存在子任务时,弹出二次确认,允许选择“仅删除该任务”或“删除该任务及所有子任务”。 -- 完成后,数据流(Dataflow)中缓存/索引即时更新;WriteAPI 支持级联删除并发出明确的事件,Canvas 任务同样支持。 - -## 涉及范围 - -- UI:TaskView 右键菜单、用户确认弹窗 -- 应用层:调用 WriteAPI 的删除接口(新增 deleteChildren 支持) -- Dataflow/事件:明确发出 TASK_DELETED(含批量删除信息),监听方执行增量删除更新 -- Markdown/Canvas 文件写入:单行删除与“子树”删除;Canvas 文本节点的删除逻辑 -- i18n:新增菜单与确认文案 - -## 交互与用户体验 - -- 右键菜单新增“删除任务”项: - - 无子任务:点击后直接删除,删除成功后在 UI 中移除,toast/notice 简短提示 - - 有子任务:点击后弹确认对话框,内容包含: - - 选项 A:仅删除该任务(保留子任务,子任务提升为同级或根据设计保留缩进,见“边界与策略”) - - 选项 B:删除该任务及其所有子任务 -- 删除完成后,列表立即更新,无需刷新;如失败显示错误提示 - -建议文案(以 t(key) 引用): -- t("Delete Task"),t("Delete"),t("Delete task only"),t("Delete task and all subtasks"),t("This task has N subtasks. How would you like to proceed?") - -## 数据流与事件 - -- WriteAPI 删除成功后显式发出: - - Events.TASK_DELETED,payload 建议: - - taskId: string - - filePath: string - - deletedTaskIds: string[](若级联删除,包含所有被删节点;仅删除自己则数组长度为 1) - - mode: "single" | "subtree" - - 继续保留现有 WRITE_OPERATION_START/COMPLETE 事件(兼容已有 Orchestrator) -- Dataflow 监听 TASK_DELETED,做增量更新: - - 从任务缓存/索引移除对应 taskId 与其 descendants - - 调整同文件中被删行下方任务的行号(如你的索引维护行号) - - 发出 TASK_CACHE_UPDATED 或对应局部更新事件(当前架构已有 TASK_CACHE_UPDATED) - -说明:现有 Events.ts 已定义 TASK_DELETED 常量,但 WriteAPI.deleteTask 尚未发出;此次补齐并优先级采用 TASK_DELETED 进行 UI 直达更新,减少“全量重扫”开销。 - -## WriteAPI 方案(Markdown + Canvas) - -在 src/dataflow/api/WriteAPI.ts: - -1) DeleteTaskArgs 增加 deleteChildren?: boolean -- interface DeleteTaskArgs { taskId: string; deleteChildren?: boolean } - -2) deleteTask(args) 行为扩展 -- 读取目标任务(getTaskById) -- 分支: - - Canvas 任务:调用 deleteCanvasTask,并新增支持级联删除的实现(见下) - - Markdown 任务: - - 无级联(默认):按现有逻辑,删除该行 - - 级联(deleteChildren=true): - - 方式 A(优先):依赖任务索引拿到 descendants 列表,按行号聚合并自底向上批量删除 - - 方式 B(回退):基于 Markdown 缩进扫描“子树”范围(见算法) -- 发出 WRITE_OPERATION_START → vault.modify → WRITE_OPERATION_COMPLETE -- 新增:emit(Events.TASK_DELETED, { taskId, filePath, deletedTaskIds, mode }) - -3) CanvasTaskUpdater(src/parsers/canvas-task-updater.ts) -- 现有 deleteCanvasTask 仅删除单条。扩展: - - 解析文本节点后,按“子树”算法在纯文本中删除对应行和被嵌套的子任务行 - - 返回 updatedContent -- WriteAPI.deleteTask 在 Canvas 分支拿到 descendants 时同样构造 deletedTaskIds 并 emit TASK_DELETED - -### Markdown “子树”删除算法(回退策略) - -- 读取文件并 split 为行数组 -- 定位父任务行 parentLine 与其前导空白长度 parentIndent(空格数/制表符长度) -- 从 parentLine + 1 开始向下扫描,直到: - - 遇到同级或上级的任务项(识别条件:以空白+[-*+] [ ] 或 [x] 开头,且当前行的前导空白长度 <= parentIndent),停止 - - 中间所有“子任务行”记录进删除列表(建议仅删除带复选框的“任务行”,不删除纯文本说明行,以避免误删注释;如需同时删除说明行,需与产品确认) -- 删除集合 = {parentLine} ∪ {子任务行集合} -- 自底向上 splice 删除,防止行号位移 - -注意:你们当前已有 insertSubtask 等方法,说明对缩进/父子关系已有约定,上述算法应与解析器保持一致。首选用索引的 descendants 做删除集合,回退才用缩进扫描。 - -## Task 索引/缓存配合 - -- 如果当前索引已维护 parent/children 关系,建议新增一个工具: - - getDescendants(taskId): string[],返回所有后代 ID(含子、孙…) -- Dataflow 监听 TASK_DELETED 后: - - 从 Map/Index 移除 taskId 与这些 descendants - - 如果仅删除父节点且保留子节点,需决定“提升子节点为同级”还是“保留缩进但无父”(推荐与产品/设计确定,见“边界与策略”) - - 对于同文件更靠下的任务,若你们缓存了 line,执行行号偏移修正(根据删除的行数) - -## UI 改动(src/pages/TaskView.ts) - -在 handleTaskContextMenu 内新增一项: -- “删除任务”菜单项 -- onClick: - - 查索引判断是否存在子任务(优先索引;没有则可只弹一次确认“是否删除”,简单版) - - 无子任务:直接调用 this.plugin.writeApi.deleteTask({ taskId: task.id }) - - 有子任务:弹窗: - - 仅删除该任务:deleteChildren=false - - 删除任务及所有子任务:deleteChildren=true - - 删除成功后:可显式从本地列表移除项(或依赖 TASK_DELETED 事件驱动刷新) - - 失败:显示 Notice 提示 - -确认弹窗可以使用 ConfirmModal.ts - -## Canvas 支持 - -- CanvasTaskUpdater.deleteTaskFromTextNode 目前只处理单行任务删除,需扩展为支持“子树”: - - 与 Markdown 回退算法类似,在 Canvas 文本节点的 Markdown 中计算子树范围 - - 修改 Canvas JSON 后写回 -- WriteAPI.deleteTask 对 Canvas 分支传递 deleteChildren 参数,并组装 deletedTaskIds(索引可提供 descendants;若无,则按文本子树扫描推导) - -## i18n - -新增 keys(示例): -- "Delete Task", "Delete", "Delete task only", "Delete task and all subtasks", "This task has {n} subtasks. How would you like to proceed?", "Deleted", "Failed to delete task" - -## 边界与策略待确认 - -- 仅删除父节点时子节点的处理策略: - - 选项 1:子任务整体提升为父节点的同级(需要在 WriteAPI 中调整这些行的缩进,较复杂) - - 选项 2:保留原缩进但无父(可能导致“悬空子任务”) - - 选项 3:UI 层不提供“仅删除父节点”,统一为“删除父及所有子节点”以避免歧义(最简单) -- 是否删除带说明的非任务行(不带复选框的列表项/文本): - - 默认只删除“任务行”(有复选框) - - 若确需一并删除说明行,需明确说明行的识别规则(例如直到下一个同级任务或空行) -- FileSource 任务(metadata.source === "file-source")的删除语义: - - 若支持删除,是否需要发出 FILE_TASK_REMOVED 之类事件(项目中已有 FILE_TASK_REMOVED 常量) -- 撤销/回滚:依赖 Obsidian 本身文件级撤销还是需要插件内提供 Undo?(建议先依赖 Obsidian) - -## 验收标准 - -- 右键菜单出现“删除任务”,符合 i18n -- 无子任务:点击后文件内容更新、缓存更新、UI 移除该任务 -- 有子任务: - - 仅删除父:父行被删、子任务处理符合策略(见上) - - 删除父及所有子:对应行全部删除,deletedTaskIds 包含所有被删任务 -- Markdown/Canvas 两种来源都支持 -- 事件序列正确: - - WRITE_OPERATION_START → 文件修改 → WRITE_OPERATION_COMPLETE - - 以及 TASK_DELETED(包含 deletedTaskIds) -- 删除后不出现“幽灵任务”(索引和 UI 无残留) -- 无控制台报错,异常可见错误提示 - -## 分工与实施清单(按文件) - -1) src/pages/TaskView.ts -- 在 handleTaskContextMenu 添加“删除任务”菜单项 -- 新增 confirmAndDeleteTask(task): - - 读取 descendants 数(索引或简单判断) - - 显示确认对话框(存在子任务时) - - 调用 this.plugin.writeApi.deleteTask({ taskId: task.id, deleteChildren }) - - 成功后依赖 TASK_DELETED 刷新或局部移除 - -2) src/dataflow/api/WriteAPI.ts -- 扩展 DeleteTaskArgs:deleteChildren?: boolean -- deleteTask: - - 读取任务,分 Canvas/Markdown - - Markdown: - - deleteChildren=true 时按索引 descendants 或缩进扫描删除集合;自底向上删除 - - Canvas:调用扩展后的 deleteCanvasTask,支持子树 - - 发出 WRITE_OPERATION_START/COMPLETE 和 TASK_DELETED(带 deletedTaskIds) -- 如需,针对 file-source 任务发 FILE_TASK_REMOVED - -3) src/parsers/canvas-task-updater.ts -- 扩展 deleteCanvasTask 支持 deleteChildren 或新增 deleteCanvasTaskSubtree -- 在文本节点里按缩进/层级识别子树并删除 - -4) Dataflow 监听与缓存 -- 监听 TASK_DELETED,移除缓存中任务及 descendants,修正行号偏移,最后 emit TASK_CACHE_UPDATED -- 若当前已有 Orchestrator 依赖 WRITE_OPERATION_COMPLETE 触发全量更新,可在过渡期两者都保留 - -5) i18n -- 增加相关键(中英) \ No newline at end of file diff --git a/docs/canvas-task-api-guide.md b/docs/canvas-task-api-guide.md deleted file mode 100644 index 5edf7140..00000000 --- a/docs/canvas-task-api-guide.md +++ /dev/null @@ -1,220 +0,0 @@ -# Canvas Task API Guide - -## Overview - -The WriteAPI now provides comprehensive support for Canvas tasks, allowing you to create, update, delete, and manipulate tasks within Obsidian Canvas files (.canvas). - -## Architecture - -Canvas task support is implemented through: -- **CanvasTaskUpdater**: Core utility class handling Canvas-specific operations -- **WriteAPI Integration**: Automatic detection and routing of Canvas tasks -- **Event System**: Proper event emission for dataflow updates - -## API Methods - -### Automatic Detection - -The following methods automatically detect Canvas tasks and route them appropriately: - -```typescript -// These methods work for both regular and Canvas tasks -writeAPI.updateTask(args) -writeAPI.deleteTask(args) -writeAPI.updateTaskStatus(args) -``` - -### Canvas-Specific Methods - -#### Update Canvas Task -```typescript -await writeAPI.updateCanvasTask({ - taskId: "task-123", - updates: { - content: "Updated task content", - completed: true, - metadata: { - priority: 3, - dueDate: new Date().getTime() - } - } -}) -``` - -#### Delete Canvas Task -```typescript -await writeAPI.deleteCanvasTask({ - taskId: "task-123" -}) -``` - -#### Move Canvas Task -```typescript -await writeAPI.moveCanvasTask({ - taskId: "task-123", - targetFilePath: "another-canvas.canvas", - targetNodeId: "node-456", // Optional: specific node - targetSection: "## Tasks" // Optional: section within node -}) -``` - -#### Duplicate Canvas Task -```typescript -await writeAPI.duplicateCanvasTask({ - taskId: "task-123", - targetFilePath: "target.canvas", // Optional: defaults to same file - targetNodeId: "node-789", // Optional: specific node - targetSection: "## Duplicates", // Optional: section within node - preserveMetadata: false // Optional: whether to keep completion data -}) -``` - -#### Add Task to Canvas Node -```typescript -await writeAPI.addTaskToCanvasNode({ - filePath: "my-canvas.canvas", - content: "New task content", - targetNodeId: "node-123", // Optional: creates new node if not specified - targetSection: "## New Tasks", // Optional: section within node - completed: false, - metadata: { - project: "MyProject", - priority: 2, - tags: ["important", "review"] - } -}) -``` - -### Utility Methods - -#### Check if Task is Canvas Task -```typescript -const isCanvas = writeAPI.isCanvasTask(task); -``` - -#### Get Canvas Task Updater Instance -```typescript -const canvasUpdater = writeAPI.getCanvasTaskUpdater(); -// Use for advanced Canvas operations -``` - -## Task Detection - -Canvas tasks are identified by: -- File extension: `.canvas` -- Metadata property: `sourceType === "canvas"` -- Canvas node ID: `metadata.canvasNodeId` - -## Event Flow - -When Canvas tasks are updated: -1. WriteAPI detects Canvas task type -2. Routes to CanvasTaskUpdater -3. Updates Canvas JSON structure -4. Emits `WRITE_OPERATION_START` event -5. Writes to vault -6. Emits `TASK_UPDATED` event for dataflow -7. Emits `WRITE_OPERATION_COMPLETE` event - -## Error Handling - -All Canvas operations return a result object: - -```typescript -interface Result { - success: boolean; - error?: string; - task?: Task; // For update operations - updatedContent?: string; // For debugging -} -``` - -Example error handling: -```typescript -const result = await writeAPI.updateCanvasTask({ - taskId: "task-123", - updates: { completed: true } -}); - -if (!result.success) { - console.error("Failed to update Canvas task:", result.error); - // Handle error appropriately -} -``` - -## Canvas Task Metadata - -Canvas tasks include special metadata: - -```typescript -interface CanvasTaskMetadata extends StandardTaskMetadata { - sourceType: "canvas"; - canvasNodeId: string; // ID of the Canvas text node - canvasNodeX?: number; // Node position - canvasNodeY?: number; - canvasNodeWidth?: number; // Node dimensions - canvasNodeHeight?: number; -} -``` - -## Implementation Details - -### Task Matching -Canvas tasks are matched within nodes using: -1. Original markdown content -2. Core content extraction (removing metadata) -3. Line-by-line comparison - -### Metadata Preservation -When updating Canvas tasks, the system: -- Preserves task indentation -- Maintains metadata format preferences (emoji vs dataview) -- Handles project/context tags correctly -- Updates completion dates automatically - -### Node Management -- New nodes are automatically positioned to avoid overlaps -- Empty nodes are handled gracefully -- Multi-task nodes are supported - -## Best Practices - -1. **Always check task type** before performing Canvas-specific operations -2. **Use automatic detection** when possible (updateTask, deleteTask, updateTaskStatus) -3. **Handle errors gracefully** - Canvas operations can fail due to JSON parsing or node issues -4. **Emit proper events** to ensure dataflow stays synchronized -5. **Preserve metadata format** according to user preferences - -## Migration from TaskManager - -If migrating from the old TaskManager system: - -| TaskManager Method | WriteAPI Equivalent | -|-------------------|-------------------| -| `canvasTaskUpdater.updateCanvasTask()` | `writeAPI.updateCanvasTask()` | -| `canvasTaskUpdater.deleteCanvasTask()` | `writeAPI.deleteCanvasTask()` | -| `canvasTaskUpdater.moveCanvasTask()` | `writeAPI.moveCanvasTask()` | -| `canvasTaskUpdater.duplicateCanvasTask()` | `writeAPI.duplicateCanvasTask()` | -| Direct CanvasTaskUpdater usage | `writeAPI.getCanvasTaskUpdater()` | - -## Testing - -Canvas task operations are tested in: -- `/src/__tests__/CanvasTaskUpdater.test.ts` -- `/src/__tests__/CanvasIntegration.test.ts` -- `/src/__tests__/CanvasTaskMatching.integration.test.ts` - -## Limitations - -- Canvas files must be valid JSON -- Node IDs must be unique within a Canvas -- Task line matching may fail if content is heavily modified outside the system -- Bulk operations on Canvas tasks may be slower than regular tasks due to JSON parsing - -## Future Enhancements - -Potential improvements: -- Batch Canvas operations for better performance -- Canvas-specific query methods in QueryAPI -- Visual task positioning helpers -- Canvas template support \ No newline at end of file diff --git a/docs/components-refactor-migration.md b/docs/components-refactor-migration.md deleted file mode 100644 index d6becee0..00000000 --- a/docs/components-refactor-migration.md +++ /dev/null @@ -1,568 +0,0 @@ -# src/components 目录重构与迁移方案(最终执行版) - -本方案用于将当前过于分散且命名不一致的前端 UI 组件进行系统性重构,目标是: -- 建立“共享 UI 库(ui/)+ 业务功能模块(features/)”的稳定结构 -- 统一命名规则,便于检索、复用与增量演进 -- 分阶段稳妥迁移,保证任意阶段都可编译运行 - -不在本次范围:API/数据流重构、视觉设计改造、依赖升级。 - ---- - -## 1. 目标目录结构(提案) - -- src/components/ - - ui/(共享可复用的通用组件与行为) - - modals/ - - popovers/ - - menus/ - - inputs/ - - date-picker/ - - renderers/ - - feedback/ - - behavior/ - - widgets/ - - suggest/ - - tree/ - - features/(按业务域分组) - - calendar/(algorithm、rendering、views) - - gantt/ - - kanban/ - - quadrant/ - - habit/ - - onboarding/ - - quick-capture/ - - workflow/ - - settings/ - - tabs/ - - components/ - - core/ - - task/ - - edit/ - - view/ - - filter/ - - timeline-sidebar/ - - read-mode/ - - table/ - - on-completion/ - -说明:每个二级/三级目录都添加 index.ts 作为 barrel 出口(统一导出)。 - ---- - -## 2. 命名规则 - -- 目录:kebab-case(如 on-completion、habit-card) -- 文件:导出“类/组件”的文件使用 PascalCase(ConfirmModal.ts、TaskList.ts) -- 后缀统一:Modal/Popover/Dialog/View/Component/Renderer/Manager/Service/Widget/Suggest/Tab -- 设置页签统一为 XxxxSettingsTab.ts(注意复数 Settings) -- 文件名与主要导出保持一致 - ---- - -## 3. 分阶段迁移计划 - -建议每阶段单独提交一次,采用 git mv 保留历史;阶段结束进行编译与关键 UI 冒烟检查。 - -### Phase 0:准备 -- 决定目录命名统一为 kebab-case -- (可选)是否引入路径别名,如: - - @ui/* -> src/components/ui/* - - @features/* -> src/components/features/* - -### Phase 1:抽取共享 UI(ui/) -- 新建:src/components/ui/{modals,popovers,menus,inputs,date-picker,renderers,feedback,behavior,widgets,suggest,tree} -- 移动与重命名(示例): - - AutoComplete.ts → ui/inputs/AutoComplete.ts - - ConfirmModal.ts → ui/modals/ConfirmModal.ts - - IframeModal.ts → ui/modals/IframeModal.ts - - IconMenu.ts → ui/menus/IconMenu.ts - - MarkdownRenderer.ts → ui/renderers/MarkdownRenderer.ts - - StatusComponent.ts → ui/feedback/StatusIndicator.ts(建议改名更贴近语义) - - DragManager.ts → ui/behavior/DragManager.ts - - ViewComponentManager.ts → ui/behavior/ViewComponentManager.ts - - date-picker/ → ui/date-picker/ - - common/TreeComponent.ts → ui/tree/TreeComponent.ts - - common/TreeItemRenderer.ts → ui/tree/TreeItemRenderer.ts - - suggest/ → ui/suggest/ -- 为 ui/ 及其子目录添加 index.ts 出口 -- 过渡策略: - - 方案 A:一次性修正所有 import 到新路径 - - 方案 B:原位置保留同名文件,仅 re-export 新路径(逐步替换后再删除) - -### Phase 2:合并业务功能模块(features/) -- 新建:src/components/features/ -- 迁移(示例): - - calendar/ → features/calendar/(algorithm.ts、rendering/、views/ 原样保留) - - gantt/ → features/gantt/ - - kanban/ → features/kanban/ - - quadrant/ → features/quadrant/ - - onboarding/ → features/onboarding/ - - timeline-sidebar/ → features/timeline-sidebar/ - - readModeProgressbarWidget.ts → features/read-mode/ReadModeProgressBarWidget.ts(规范大小写与单词分割) - - readModeTextMark.ts → features/read-mode/ReadModeTextMark.ts - - habit/ → features/habit/ - - habit/habitcard/ → features/habit/components/habit-card/ - - HabitEditDialog.ts → features/habit/components/HabitEditDialog.ts - - RewardModal.ts → (二选一) - - A. features/habit/modals/RewardModal.ts - - B. features/reward/modals/RewardModal.ts(与 RewardSettingsTab 形成一组) - - quick-capture/ - - MinimalQuickCaptureModal.ts → features/quick-capture/modals/MinimalQuickCaptureModal.ts - - QuickCaptureModal.ts → features/quick-capture/modals/QuickCaptureModal.ts - - MinimalQuickCaptureSuggest.ts → features/quick-capture/suggest/MinimalQuickCaptureSuggest.ts(或 MinimalQuickCaptureSuggester.ts) - - workflow/ - - QuickWorkflowModal.ts → features/workflow/modals/QuickWorkflowModal.ts - - StageEditModal.ts → features/workflow/modals/StageEditModal.ts - - WorkflowDefinitionModal.ts → features/workflow/modals/WorkflowDefinitionModal.ts - - WorkflowProgressIndicator.ts → (二选一) - - A. features/workflow/widgets/WorkflowProgressIndicator.ts - - B. ui/widgets/WorkflowProgressIndicator.ts(视作通用) - - task/ - - task-edit/ → features/task/edit/ - - task-view/ → features/task/view/ - - task-filter/ → features/task/filter/ - - inview-filter/ → features/task/filter/in-view/(或保留为 features/in-view-filter/) - - table/ → features/table/ - - onCompletion/ → features/on-completion/ -- 为 features/* 添加 index.ts 出口 - -### Phase 3:标准化设置(settings/) -- settings/ → features/settings/ - - tabs/:将所有 *SettingsTab.ts 移至此处并统一命名(保持 *SettingsTab) - - TaskTimerSettingTab.ts → TaskTimerSettingsTab.ts(修正为复数 Settings) - - components/: - - FileSourceSettings.ts → components/FileSourceSettingsSection.ts(增加 Section 后缀更贴合) - - SettingsSearchComponent.ts → components/SettingsSearchComponent.ts - - core/: - - SettingsIndexer.ts → core/SettingsIndexer.ts - - 更新 features/settings/index.ts,统一导出 tabs/components/core - -### Phase 4:统一导入与过渡清理 -- 在 ui/ 与各 features/* 目录添加 index.ts(barrel 模式) -- 采用路径别名或相对路径统一 import: - - import { ConfirmModal } from '@ui/modals' - - import { TaskList } from '@features/task/view' -- 若采用过渡 re-export: - - 原路径文件仅保留:export * from '新路径' - - 扫描替换存量 import 后,最终删除过渡文件 - -### Phase 5:收尾 -- 删除所有过渡 re-export 文件 -- 搜索并清理旧路径残留引用 -- 全量构建 + 核心 UI 冒烟 - ---- - -## 4. 详细映射清单(代表性) - -- 顶层散落组件 → ui/ 或特性模块 - - AutoComplete.ts → ui/inputs/AutoComplete.ts - - ConfirmModal.ts → ui/modals/ConfirmModal.ts - - IframeModal.ts → ui/modals/IframeModal.ts - - IconMenu.ts → ui/menus/IconMenu.ts - - MarkdownRenderer.ts → ui/renderers/MarkdownRenderer.ts - - StatusComponent.ts → ui/feedback/StatusIndicator.ts - - DragManager.ts → ui/behavior/DragManager.ts - - ViewComponentManager.ts → ui/behavior/ViewComponentManager.ts - - ViewConfigModal.ts → features/task/view/modals/ViewConfigModal.ts - - QuickWorkflowModal.ts → features/workflow/modals/QuickWorkflowModal.ts - - WorkflowProgressIndicator.ts → features/workflow/widgets/WorkflowProgressIndicator.ts(或 ui/widgets/…) - - readModeProgressbarWidget.ts → features/read-mode/ReadModeProgressBarWidget.ts - - readModeTextMark.ts → features/read-mode/ReadModeTextMark.ts - -- 目录整体迁移 - - calendar → features/calendar(algorithm.ts、rendering/、views/) - - date-picker → ui/date-picker - - suggest → ui/suggest - - common/Tree* → ui/tree - - gantt/、kanban/、quadrant/、onboarding/ → 对应 features/* - - task-edit/、task-filter/、task-view/ → features/task 下分 edit/filter/view - - inview-filter/ → features/task/filter/in-view(或 features/in-view-filter) - - onboarding/、timeline-sidebar/、table/、onCompletion/ → 对应 features/* - - habit/ + habitcard/ + HabitEditDialog.ts + RewardModal.ts → 归入 features/habit(或 RewardModal 放 features/reward) - -- settings 专项 - - 全部 *SettingsTab.ts → features/settings/tabs/ - - FileSourceSettings.ts → features/settings/components/FileSourceSettingsSection.ts - - SettingsIndexer.ts → features/settings/core/SettingsIndexer.ts - - SettingsSearchComponent.ts → features/settings/components/SettingsSearchComponent.ts - ---- - -## 5. 过渡 re-export 示例(可选策略 B) - -- 原文件 src/components/ConfirmModal.ts(仅保留): - -```ts -export * from './ui/modals/ConfirmModal' -``` - -- 原目录 src/components/suggest/index.ts(仅保留): - -```ts -export * from '../ui/suggest' -``` - -后续逐步把业务代码的 import 改为新路径,再删除这些过渡文件。 - ---- - -## 6. (可选)路径别名建议 - -- 若采用 tsconfig 路径: - -```json -{ - "compilerOptions": { - "baseUrl": ".", - "paths": { - "@ui/*": ["src/components/ui/*"], - "@features/*": ["src/components/features/*"] - } - } -} -``` - -- import 示例: - -```ts -import { ConfirmModal } from '@ui/modals' -import { TaskList } from '@features/task/view' -``` - ---- - -## 7. 验证清单 - -- 每阶段完成后: - - 构建通过,无 TS 路径错误 - - 搜索旧路径是否仍有引用 - - 核心 UI(如任务视图、设置页、日历)打开不报错 -- 最终阶段:清除过渡 re-export,所有 import 指向新结构 - ---- - -## 8. 未决项(待确认) - -- inview-filter: - - A. 收敛到 features/task/filter/in-view/ - - B. 独立 features/in-view-filter/ -- RewardModal: - - A. 放 features/habit/ - - B. 放 features/reward/(与 RewardSettingsTab 配对) -- WorkflowProgressIndicator: - - A. 放 features/workflow/widgets/ - - B. 放 ui/widgets/(若确认为通用) -- 是否启用 @ui / @features 路径别名 - ---- - -## 9. 执行建议 - -- 使用 git mv,按阶段提交,commit message 清晰指明范围 -- 优先迁移“共享 UI”,减少后续重复 -- 大范围修改 import 前,优先采用过渡 re-export,降低一次性影响 -- 阶段结束进行构建与冒烟,确保安全可回滚 - - - ---- - -## 10. 详细执行步骤(可直接复制运行) - -以下步骤假设你在仓库根目录执行,使用 git mv 确保历史保留。若路径别名未启用,请保持相对路径;若启用,请在 Phase 4 统一替换 import。 - -### Phase 1:抽取共享 UI(ui/) - -1) 创建目录 - -```bash -mkdir -p src/components/ui/{modals,popovers,menus,inputs,date-picker,renderers,feedback,behavior,widgets,suggest,tree} -``` - -2) 移动文件(命令清单) - -```bash -# 顶层散落文件 → ui - -git mv src/components/AutoComplete.ts src/components/ui/inputs/AutoComplete.ts - -git mv src/components/ConfirmModal.ts src/components/ui/modals/ConfirmModal.ts - -git mv src/components/IframeModal.ts src/components/ui/modals/IframeModal.ts - -git mv src/components/IconMenu.ts src/components/ui/menus/IconMenu.ts - -git mv src/components/MarkdownRenderer.ts src/components/ui/renderers/MarkdownRenderer.ts - -git mv src/components/DragManager.ts src/components/ui/behavior/DragManager.ts - -git mv src/components/ViewComponentManager.ts src/components/ui/behavior/ViewComponentManager.ts - -# 状态指示重命名(建议) -# 如需保留原名,可跳过,后续统一改名 -# 方案 A:直接重命名 - -git mv src/components/StatusComponent.ts src/components/ui/feedback/StatusIndicator.ts - -# Date Picker 整体 - -git mv src/components/date-picker src/components/ui/date-picker - -# Tree 相关 -mkdir -p src/components/ui/tree - -git mv src/components/common/TreeComponent.ts src/components/ui/tree/TreeComponent.ts - -git mv src/components/common/TreeItemRenderer.ts src/components/ui/tree/TreeItemRenderer.ts - -# Suggest 整体 - -git mv src/components/suggest src/components/ui/suggest -``` - -3) (可选)在旧位置添加过渡 re-export(若暂不批量改 import) - -```bash -# 示例:创建 src/components/ConfirmModal.ts 并仅导出新路径(如果前一步已移动,可新建同名文件) -# echo "export * from './ui/modals/ConfirmModal'" > src/components/ConfirmModal.ts -# 其他类似文件按需添加 -``` - -4) 添加 barrel 出口(index.ts) - -```bash -# 示例:为 ui/ 及子目录创建 index.ts(根据实际导出补充) -# echo "export * from './modals'" > src/components/ui/index.ts -# echo "export * from './ConfirmModal'" > src/components/ui/modals/index.ts -``` - -提交: - -```bash -git add -A -git commit -m "refactor(components): extract shared UI into src/components/ui/* (phase 1)" -``` - ---- - -### Phase 2:合并业务功能模块(features/) - -1) 创建目录 - -```bash -mkdir -p src/components/features/{calendar,gantt,kanban,quadrant,habit,onboarding,quick-capture,workflow,settings,task/{edit,view,filter},timeline-sidebar,read-mode,table,on-completion} -``` - -2) 迁移与重命名(命令清单) - -```bash -# Calendar - -git mv src/components/calendar src/components/features/calendar - -# Gantt / Kanban / Quadrant / Onboarding - -git mv src/components/gantt src/components/features/gantt - -git mv src/components/kanban src/components/features/kanban - -git mv src/components/quadrant src/components/features/quadrant - -git mv src/components/onboarding src/components/features/onboarding - -# Timeline Sidebar - -git mv src/components/timeline-sidebar src/components/features/timeline-sidebar - -# Read Mode(并统一大小写) -mkdir -p src/components/features/read-mode - -git mv src/components/readModeProgressbarWidget.ts src/components/features/read-mode/ReadModeProgressBarWidget.ts - -git mv src/components/readModeTextMark.ts src/components/features/read-mode/ReadModeTextMark.ts - -# Habit - -git mv src/components/habit src/components/features/habit -mkdir -p src/components/features/habit/components/habit-card - -git mv src/components/habit/habitcard src/components/features/habit/components/habit-card - -git mv src/components/HabitEditDialog.ts src/components/features/habit/components/HabitEditDialog.ts - -# Reward(依你选择,若归入 habit 则移动到 habit 下) -# git mv src/components/RewardModal.ts src/components/features/habit/modals/RewardModal.ts -# 或: -# mkdir -p src/components/features/reward/modals -# git mv src/components/RewardModal.ts src/components/features/reward/modals/RewardModal.ts - -# Quick Capture -mkdir -p src/components/features/quick-capture/{modals,suggest} - -git mv src/components/MinimalQuickCaptureModal.ts src/components/features/quick-capture/modals/MinimalQuickCaptureModal.ts - -git mv src/components/QuickCaptureModal.ts src/components/features/quick-capture/modals/QuickCaptureModal.ts - -git mv src/components/MinimalQuickCaptureSuggest.ts src/components/features/quick-capture/suggest/MinimalQuickCaptureSuggest.ts - -# Workflow -mkdir -p src/components/features/workflow/{modals,widgets} - -git mv src/components/QuickWorkflowModal.ts src/components/features/workflow/modals/QuickWorkflowModal.ts - -git mv src/components/StageEditModal.ts src/components/features/workflow/modals/StageEditModal.ts - -git mv src/components/WorkflowDefinitionModal.ts src/components/features/workflow/modals/WorkflowDefinitionModal.ts - -git mv src/components/WorkflowProgressIndicator.ts src/components/features/workflow/widgets/WorkflowProgressIndicator.ts - -# Task(edit/view/filter) -mkdir -p src/components/features/task/{edit,view,filter} - -git mv src/components/task-edit src/components/features/task/edit - -git mv src/components/task-view src/components/features/task/view - -git mv src/components/task-filter src/components/features/task/filter - -# In-view Filter(两种放置方式其一) -# 方案 A: -mkdir -p src/components/features/task/filter/in-view - -git mv src/components/inview-filter src/components/features/task/filter/in-view -# 方案 B: -# mkdir -p src/components/features/in-view-filter -# git mv src/components/inview-filter src/components/features/in-view-filter - -# Table - -git mv src/components/table src/components/features/table - -# On Completion(目录名统一为 kebab-case) - -git mv src/components/onCompletion src/components/features/on-completion -``` - -3) 为各 features/* 添加 index.ts(按需)并提交: - -```bash -git add -A -git commit -m "refactor(components): consolidate feature modules under src/components/features/* (phase 2)" -``` - ---- - -### Phase 3:标准化设置(settings/) - -```bash -# 将 settings 迁移到 features/settings -mkdir -p src/components/features/settings/{tabs,components,core} - -git mv src/components/settings/AboutSettingsTab.ts src/components/features/settings/tabs/AboutSettingsTab.ts - -git mv src/components/settings/BasesSettingsTab.ts src/components/features/settings/tabs/BasesSettingsTab.ts - -git mv src/components/settings/BetaTestSettingsTab.ts src/components/features/settings/tabs/BetaTestSettingsTab.ts - -git mv src/components/settings/DatePrioritySettingsTab.ts src/components/features/settings/tabs/DatePrioritySettingsTab.ts - -git mv src/components/settings/FileFilterSettingsTab.ts src/components/features/settings/tabs/FileFilterSettingsTab.ts - -git mv src/components/settings/HabitSettingsTab.ts src/components/features/settings/tabs/HabitSettingsTab.ts - -git mv src/components/settings/IcsSettingsTab.ts src/components/features/settings/tabs/IcsSettingsTab.ts - -git mv src/components/settings/IndexSettingsTab.ts src/components/features/settings/tabs/IndexSettingsTab.ts - -git mv src/components/settings/McpIntegrationSettingsTab.ts src/components/features/settings/tabs/McpIntegrationSettingsTab.ts - -git mv src/components/settings/ProgressSettingsTab.ts src/components/features/settings/tabs/ProgressSettingsTab.ts - -git mv src/components/settings/ProjectSettingsTab.ts src/components/features/settings/tabs/ProjectSettingsTab.ts - -git mv src/components/settings/QuickCaptureSettingsTab.ts src/components/features/settings/tabs/QuickCaptureSettingsTab.ts - -git mv src/components/settings/RewardSettingsTab.ts src/components/features/settings/tabs/RewardSettingsTab.ts - -git mv src/components/settings/TaskFilterSettingsTab.ts src/components/features/settings/tabs/TaskFilterSettingsTab.ts - -git mv src/components/settings/TaskHandlerSettingsTab.ts src/components/features/settings/tabs/TaskHandlerSettingsTab.ts - -git mv src/components/settings/TaskStatusSettingsTab.ts src/components/features/settings/tabs/TaskStatusSettingsTab.ts - -git mv src/components/settings/TimeParsingSettingsTab.ts src/components/features/settings/tabs/TimeParsingSettingsTab.ts - -git mv src/components/settings/TimelineSidebarSettingsTab.ts src/components/features/settings/tabs/TimelineSidebarSettingsTab.ts - -git mv src/components/settings/ViewSettingsTab.ts src/components/features/settings/tabs/ViewSettingsTab.ts - -git mv src/components/settings/WorkflowSettingsTab.ts src/components/features/settings/tabs/WorkflowSettingsTab.ts - -# 修正单复数:TaskTimerSettingTab.ts -> TaskTimerSettingsTab.ts - -git mv src/components/settings/TaskTimerSettingTab.ts src/components/features/settings/tabs/TaskTimerSettingsTab.ts - -# 其他设置相关组件 - -git mv src/components/settings/FileSourceSettings.ts src/components/features/settings/components/FileSourceSettingsSection.ts - -git mv src/components/settings/SettingsIndexer.ts src/components/features/settings/core/SettingsIndexer.ts - -git mv src/components/settings/SettingsSearchComponent.ts src/components/features/settings/components/SettingsSearchComponent.ts - -# index.ts 移至新位置(如需要保留,可改为 re-export) -# git mv src/components/settings/index.ts src/components/features/settings/index.ts -``` - -提交: - -```bash -git add -A -git commit -m "refactor(settings): standardize settings under features/settings with tabs/components/core (phase 3)" -``` - ---- - -### Phase 4:barrels、import 与过渡清理 - -1) 添加/完善 index.ts(示例) - -```bash -# ui/index.ts → 按子目录导出 -# features/*/index.ts → 导出每个模块公共 API -``` - -2) (可选)启用路径别名并批量替换 import(示例) - -```bash -# tsconfig.json 中添加 paths(见上文第 6 节) -# 然后批量替换 import: -# from 'src/components/ui/...' → from '@ui/...' -# from 'src/components/features/...' → from '@features/...' -``` - -3) 若采用过渡 re-export,逐步替换后删除旧文件 - -提交: - -```bash -git add -A -git commit -m "refactor(components): add barrels and update imports; remove transitional re-exports (phase 4)" -``` - ---- - -### Phase 5:收尾 - -```bash -# 搜索旧路径残留 -rg -n "src/components/(?!ui|features)/" src | cat - -# 最终清理与提交 -git add -A -git commit -m "refactor(components): finalize directory migration and clean up (phase 5)" -``` - -> 注:若未安装 ripgrep(rg),可使用 grep -R -n 进行搜索。 diff --git a/docs/dataflow-architecture.md b/docs/dataflow-architecture.md deleted file mode 100644 index d9ff9663..00000000 --- a/docs/dataflow-architecture.md +++ /dev/null @@ -1,380 +0,0 @@ -# Dataflow Architecture Documentation - -## Overview - -The Dataflow architecture is a modern, modular task management system that replaces the legacy TaskManager-based approach. It provides better separation of concerns, improved performance, and a more maintainable codebase. The architecture now supports both file-based tasks and external data sources (like ICS calendar events) through a unified event-driven pipeline. - -## Architecture Components - -### Core Directory Structure - -``` -src/dataflow/ -├── api/ # Public API interfaces -│ └── QueryAPI.ts # Unified query interface for all views -├── augment/ # Task enhancement logic -│ └── Augmentor.ts # Centralized task augmentation -├── core/ # Core parsing logic -│ ├── CanvasParser.ts -│ ├── ConfigurableTaskParser.ts -│ └── CoreTaskParser.ts -├── events/ # Event system -│ └── Events.ts # Centralized event management -├── indexer/ # Task indexing -│ └── Repository.ts # Task repository with indexing & ICS integration -├── parsers/ # High-level parsing entries -│ ├── CanvasEntry.ts -│ ├── FileMetaEntry.ts -│ └── MarkdownEntry.ts -├── persistence/ # Data persistence -│ └── Storage.ts # Unified storage layer (tasks + ICS events) -├── project/ # Project management -│ └── Resolver.ts # Project resolution logic -├── sources/ # Data sources -│ ├── ObsidianSource.ts # File system monitoring -│ ├── IcsSource.ts # ICS calendar events source -│ ├── FileSource.ts # File-based task recognition system -│ └── FileSourceConfig.ts # FileSource configuration management -├── workers/ # Background processing -│ ├── ProjectData.worker.ts -│ ├── ProjectDataWorkerManager.ts -│ ├── TaskIndex.worker.ts -│ ├── TaskWorkerManager.ts -│ └── WorkerOrchestrator.ts -├── Orchestrator.ts # Main coordination component -├── createDataflow.ts # Factory function -└── index.ts # Module exports -``` - -## Key Principles - -### 1. Separation of Concerns -- **Parsers**: Only extract raw task data, no enhancement -- **Augmentor**: All task enhancement logic in one place -- **Repository**: Centralized indexing, querying, and data merging -- **Storage**: Unified persistence layer for all data types -- **Sources**: Independent data providers (files, ICS, etc.) - -### 2. Event-Driven Architecture -- Centralized event system through `Events.ts` -- Consistent event naming and payload structure -- Decoupled components communicate via events -- Event sequence tracking prevents circular updates - -### 3. Production Ready -- Core setting (`dataflowEnabled`) enabled by default -- Full backward compatibility maintained -- Complete feature parity achieved - -### 4. Unified Data Pipeline -- All data sources flow through the same architecture -- File-based tasks and external events (ICS) are merged seamlessly -- Consistent querying interface regardless of data source - -## Component Responsibilities - -### Orchestrator -- Coordinates all dataflow components -- Manages initialization and lifecycle -- Routes events between components -- Handles multiple data sources (ObsidianSource, IcsSource) -- Implements sequence-based loop prevention - -### Data Sources - -#### ObsidianSource -- Monitors file system changes -- Emits FILE_UPDATED events -- Handles Markdown and Canvas files -- Tracks file modifications, creations, deletions - -#### IcsSource (New) -- Integrates external calendar events -- Emits ICS_EVENTS_UPDATED events -- Syncs with IcsManager -- Converts calendar events to task format - -#### FileSource (Integrated - Bug Fixed) -- Recognizes files as tasks based on configurable strategies -- Supports metadata, tag, template, and path-based recognition -- Emits file-task-updated events for file-level tasks -- Manages file task caching and deduplication -- Integrates with status mapping for flexible task states -- **Status**: Fully integrated with configuration path fix applied - -### QueryAPI -- Public interface for all data queries -- Abstracts internal repository complexity -- Provides consistent API for views -- Returns merged data from all sources - -### Repository -- Maintains task index for file-based tasks -- Stores ICS events separately -- Merges data from multiple sources in queries -- Handles snapshot persistence -- Emits update events with source tracking - -### Augmentor -- Applies task enhancement strategies -- Handles inheritance and deduplication -- Manages project references - -### Storage -- Wraps LocalStorageCache -- Manages versioning and invalidation -- Provides namespace isolation -- Persists: - - Raw tasks (file-based) - - Augmented tasks - - Project data - - ICS events - - Consolidated index - -## Event Flow & Loop Prevention - -### Event Types -```typescript -Events = { - CACHE_READY: "task-genius:cache-ready", - TASK_CACHE_UPDATED: "task-genius:task-cache-updated", - FILE_UPDATED: "task-genius:file-updated", - ICS_EVENTS_UPDATED: "task-genius:ics-events-updated", - FILE_TASK_UPDATED: "task-genius:file-task-updated", // FileSource events - FILE_TASK_REMOVED: "task-genius:file-task-removed", // FileSource removal - // ... other events -} -``` - -### Loop Prevention Mechanism -1. **Source Sequence Tracking**: Each operation generates a unique sequence number -2. **Event Tagging**: Events include `sourceSeq` to identify their origin -3. **Filtering**: Components ignore events they originated -4. **Clean Event Flow**: Prevents infinite update loops - -### Typical Event Flow -``` -1. File Change → ObsidianSource → FILE_UPDATED event -2. Orchestrator processes → Repository.updateFile() -3. Repository → TASK_CACHE_UPDATED event (with sourceSeq) -4. Views update → UI refreshes - -OR - -1. Calendar Sync → IcsSource → ICS_EVENTS_UPDATED event -2. Orchestrator processes → Repository.updateIcsEvents() -3. Repository → TASK_CACHE_UPDATED event (with sourceSeq) -4. Views update → UI refreshes - -OR (pending integration) - -1. File Recognition → FileSource → FILE_TASK_UPDATED event -2. Orchestrator processes → Repository.updateFileTasks() -3. Repository → TASK_CACHE_UPDATED event (with sourceSeq) -4. Views update → UI refreshes -``` - -## Data Flow - -### Initialization -1. **Repository.initialize()**: Load consolidated index and ICS events -2. **ObsidianSource.initialize()**: Start file monitoring -3. **IcsSource.initialize()**: Start calendar sync -4. **FileSource.initialize()** (pending): Start file recognition -5. **Initial Scan**: Process all files if no cache exists - -### Runtime Updates -1. **File Changes**: ObsidianSource → Orchestrator → Repository → Views -2. **ICS Updates**: IcsSource → Orchestrator → Repository → Views -3. **File Task Updates** (pending): FileSource → Orchestrator → Repository → Views -4. **Manual Refresh**: Views → QueryAPI → Repository (cached data) - -### Data Persistence -- **Continuous**: Augmented tasks stored on each update -- **ICS Events**: Persisted separately for fast recovery -- **File Tasks** (pending): Cached with recognition metadata -- **Consolidated Index**: Saved periodically and on shutdown -- **Version Control**: Schema versioning for migration support - -## Migration Status - -### Completed Phases -- ✅ Phase A: Parallel initialization with feature flag -- ✅ Phase B: View migration to QueryAPI -- ✅ Phase C: Parser and enhancement separation -- ✅ Phase D: Unified persistence layer -- ✅ Phase E: Default enablement and cleanup -- ✅ Phase F: ICS integration through dataflow - -### Current Architecture State -- **Default Mode**: Dataflow is now the default (enabled by default) -- **Legacy Support**: TaskManager fully replaced by Dataflow -- **External Data**: ICS events integrated seamlessly -- **File Recognition**: FileSource fully integrated and operational -- **Performance**: Optimized with caching and workers -- **Stability**: Loop prevention and error handling - -## Usage - -### Enabling Dataflow -```typescript -// In settings (now default) -dataflowEnabled: true -``` - -### Querying Tasks -```typescript -// Using QueryAPI - returns both file tasks and ICS events -const allTasks = await queryAPI.getAllTasks(); -const projectTasks = await queryAPI.getTasksByProject("MyProject"); -const taggedTasks = await queryAPI.getTasksByTags(["important"]); -``` - -### Event Subscription -```typescript -// Subscribe to all task updates (files + ICS) -Events.on(Events.TASK_CACHE_UPDATED, (payload) => { - const { changedFiles, stats } = payload; - // Handle updated tasks -}); - -// Subscribe to ICS-specific updates -Events.on(Events.ICS_EVENTS_UPDATED, (payload) => { - const { events } = payload; - // Handle ICS events -}); -``` - -## Performance Characteristics - -### Optimizations -1. **Snapshot Loading**: Fast startup from persisted state (~100ms for 1000 tasks) -2. **Worker Orchestration**: Parallel processing for large vaults -3. **Batch Operations**: Reduced I/O overhead -4. **Event Deduplication**: Sequence-based loop prevention -5. **Incremental Updates**: Only changed files processed -6. **Separate ICS Storage**: Calendar events don't impact file indexing - -### Cache Strategy -- **Multi-tier**: Raw → Augmented → Consolidated -- **Content Hashing**: Detect actual changes -- **Modification Time**: Quick staleness check -- **Lazy Loading**: Load data only when needed - -## Troubleshooting - -### Common Issues - -#### Infinite Loop Detection -- **Symptom**: Repeated "Batch update" logs -- **Cause**: Missing sourceSeq in events -- **Solution**: Ensure all TASK_CACHE_UPDATED events include sourceSeq - -#### Missing ICS Events -- **Symptom**: Calendar events not showing in views -- **Cause**: IcsSource not initialized or IcsManager unavailable -- **Solution**: Check IcsManager configuration and initialization - -#### Stale Data -- **Symptom**: Changes not reflected in views -- **Cause**: Cache not invalidated properly -- **Solution**: Clear cache or trigger manual rebuild - -### Debug Commands -```javascript -// In console -app.plugins.plugins['task-genius'].dataflowOrchestrator.getStats() -app.plugins.plugins['task-genius'].dataflowOrchestrator.rebuild() -``` - -## Development Guidelines - -### Adding New Data Sources -1. Create source in `src/dataflow/sources/` -2. Implement event emission pattern -3. Add event type to `Events.ts` -4. Update Orchestrator to subscribe -5. Extend Repository if needed -6. Update Storage for persistence - -### FileSource Integration (Completed) -The FileSource component has been fully integrated into the Orchestrator: -1. ✅ Initialize FileSource in Orchestrator constructor -2. ✅ Subscribe to FILE_TASK_UPDATED and FILE_TASK_REMOVED events -3. ✅ Extend Repository to handle file tasks separately from regular tasks -4. ✅ Update QueryAPI to merge file tasks in query results -5. ✅ Implement caching strategy to avoid redundant project resolution -6. ✅ Complete template and path recognition strategies -7. ✅ Add removeFileTask method to Repository - -**Bug Fixes Applied**: -- Fixed configuration path mismatch where Orchestrator was checking `fileSourceConfig` instead of `fileSource` in settings -- Added missing removeFileTask method to Repository for proper file task cleanup -- Completed template recognition strategy implementation - -### Adding New Features -1. Implement in dataflow architecture first -2. Add conditional logic for backward compatibility -3. Include sourceSeq in any TASK_CACHE_UPDATED events -4. Test both dataflow and legacy modes -5. Update this documentation - -### Best Practices -- Always use QueryAPI for data access -- Never bypass Repository for updates -- Include proper event metadata -- Handle errors gracefully -- Log with component prefix: `[ComponentName]` - -## Future Enhancements - -### Planned -1. **Write Operations**: Extend dataflow for task creation/updates -2. **Advanced Querying**: GraphQL-like query capabilities -3. **Real-time Sync**: Multi-device synchronization -4. **Plugin API**: External plugin support - -### Under Consideration -- WebSocket support for real-time collaboration -- Database backend option for large vaults -- Incremental parsing for huge files -- Custom data source plugins - -## Architecture Decisions - -### Why Separate ICS Storage? -- **Independence**: ICS events have different lifecycle than file tasks -- **Performance**: Avoid re-parsing files when only calendar changes -- **Flexibility**: Easy to add/remove external sources -- **Clarity**: Clear separation of concerns - -### Why Source Sequences? -- **Simplicity**: Single number comparison prevents loops -- **Performance**: Minimal overhead -- **Debugging**: Easy to trace event origins -- **Compatibility**: Works with existing event system - -### Why Keep Legacy Support? -- **Safety**: Fallback for critical issues -- **Migration**: Gradual transition for large vaults -- **Testing**: A/B comparison capability -- **Confidence**: Users can always revert - -## Bug Fixes and Updates - -### FileSource Configuration Path Fix (2025-08-22) -**Problem**: FileSource was not initializing despite being enabled in settings. -- **Root Cause**: Configuration path mismatch between settings structure (`fileSource`) and Orchestrator code (`fileSourceConfig`) -- **Files Modified**: `src/dataflow/Orchestrator.ts` (lines 88-91) -- **Resolution**: Updated Orchestrator to use correct settings path `plugin.settings.fileSource` -- **Impact**: FileSource now properly initializes when enabled and can recognize files as tasks - -## Conclusion - -The Dataflow architecture has evolved from a file-centric system to a unified data pipeline supporting multiple sources. Its event-driven, modular design enables: -- Clean integration of new data sources -- Robust loop prevention -- Excellent performance characteristics -- Maintainable and testable codebase - -The architecture is production-ready and serves as the foundation for future task management enhancements. \ No newline at end of file diff --git a/docs/dataflow-event-system.md b/docs/dataflow-event-system.md deleted file mode 100644 index fb3180f5..00000000 --- a/docs/dataflow-event-system.md +++ /dev/null @@ -1,208 +0,0 @@ -# Dataflow 事件系统架构 - -## 概述 - -Dataflow 架构通过事件驱动的方式处理任务的增删改查操作,确保 UI 和数据层的同步更新。 - -## 核心组件 - -### 1. ObsidianSource -- **作用**: 监听 Obsidian 文件系统事件 -- **事件**: - - 文件创建/修改/删除/重命名 - - 元数据变更 -- **特性**: - - 自动去抖动(300ms) - - 批量处理 - - 跳过 WriteAPI 触发的修改 - -### 2. DataflowOrchestrator -- **作用**: 协调所有数据流组件 -- **监听事件**: - - `FILE_UPDATED`: 处理文件变更 - - `TASK_CACHE_UPDATED`: 处理批量更新 - - `WRITE_OPERATION_COMPLETE`: 处理 WriteAPI 完成的操作 -- **处理流程**: - 1. 接收事件 - 2. 解析文件内容 - 3. 增强任务数据 - 4. 更新 Repository - 5. 触发 UI 更新 - -### 3. Repository -- **作用**: 中央数据仓库 -- **功能**: - - 维护任务索引 - - 持久化存储 - - 触发 `TASK_CACHE_UPDATED` 事件通知 UI - -### 4. WriteAPI -- **作用**: 处理所有写操作 -- **事件流程**: - 1. 发送 `WRITE_OPERATION_START` 事件 - 2. 修改文件 - 3. 发送 `WRITE_OPERATION_COMPLETE` 事件 - 4. Orchestrator 接收事件并重新处理文件 - -## 数据流路径 - -### 场景 1: UI 更新任务 -``` -UI操作 → WriteAPI → 发送 WRITE_OPERATION_START - → 修改文件 - → 发送 WRITE_OPERATION_COMPLETE - → Orchestrator 处理文件 - → Repository 更新 - → 发送 TASK_CACHE_UPDATED - → UI 更新 -``` - -### 场景 2: 直接编辑文件 -``` -文件编辑 → ObsidianSource 检测变化 - → 发送 FILE_UPDATED 事件 - → Orchestrator 处理文件 - → Repository 更新 - → 发送 TASK_CACHE_UPDATED - → UI 更新 -``` - -### 场景 3: Canvas 任务更新 -``` -Canvas 任务编辑 → CanvasTaskUpdater - → 发送 WRITE_OPERATION_START - → 修改 Canvas JSON - → 发送 WRITE_OPERATION_COMPLETE - → Orchestrator 处理 - → UI 更新 -``` - -## 关键事件 - -### Events 定义 -```typescript -export const Events = { - CACHE_READY: "task-genius:cache-ready", - TASK_CACHE_UPDATED: "task-genius:task-cache-updated", - FILE_UPDATED: "task-genius:file-updated", - WRITE_OPERATION_START: "task-genius:write-operation-start", - WRITE_OPERATION_COMPLETE: "task-genius:write-operation-complete", - // ... -} -``` - -### 事件协作 - -1. **ObsidianSource 与 WriteAPI 协作**: - - WriteAPI 发送 `WRITE_OPERATION_START` 时,ObsidianSource 标记该文件 - - ObsidianSource 跳过被标记文件的 modify 事件 - - 避免重复处理 - -2. **Orchestrator 事件处理**: - - 监听多个事件源 - - 对 WriteAPI 操作立即处理(无去抖) - - 对文件系统事件进行去抖处理 - -3. **Repository 事件发送**: - - 每次更新后发送 `TASK_CACHE_UPDATED` - - 包含变更文件列表和统计信息 - - UI 组件监听此事件进行更新 - -## 实现细节 - -### 去抖动机制 -- ObsidianSource: 300ms 去抖 -- Orchestrator: 300ms 去抖(除 WriteAPI 操作外) -- 批量操作: 150ms 批处理延迟 - -### 事件跳过机制 -```typescript -// ObsidianSource -if (this.skipNextModify.has(file.path)) { - this.skipNextModify.delete(file.path); - console.log(`Skipping modify event (handled by WriteAPI)`); - return; -} -``` - -### 立即处理机制 -```typescript -// Orchestrator - WriteAPI 操作立即处理 -on(Events.WRITE_OPERATION_COMPLETE, async (payload) => { - const file = this.vault.getAbstractFileByPath(payload.path); - if (file) { - await this.processFileImmediate(file); // 无去抖 - } -}); -``` - -## 测试要点 - -1. **UI 更新测试**: - - 通过 UI 修改任务状态 - - 验证文件被更新 - - 验证 UI 自动刷新 - -2. **文件编辑测试**: - - 直接在 Obsidian 中编辑任务 - - 验证 UI 在 300ms 后更新 - -3. **Canvas 任务测试**: - - 在 Canvas 中修改任务 - - 验证 Canvas 文件更新 - - 验证任务列表刷新 - -4. **批量操作测试**: - - 同时修改多个文件 - - 验证批处理机制工作 - - 验证性能优化效果 - -## 调试技巧 - -### 启用日志 -```typescript -// 在 Orchestrator 中 -console.log(`[DataflowOrchestrator] FILE_UPDATED: ${path}`); -console.log(`[DataflowOrchestrator] WRITE_OPERATION_COMPLETE: ${path}`); - -// 在 ObsidianSource 中 -console.log(`ObsidianSource: File modified - ${file.path}`); -console.log(`ObsidianSource: Skipping modify event (handled by WriteAPI)`); -``` - -### 事件流追踪 -1. 打开控制台 -2. 执行操作 -3. 观察事件序列: - - WRITE_OPERATION_START - - File modification (可能被跳过) - - WRITE_OPERATION_COMPLETE - - TASK_CACHE_UPDATED - -### 常见问题 - -1. **UI 不更新**: - - 检查 TASK_CACHE_UPDATED 事件是否触发 - - 验证 UI 组件是否正确监听事件 - -2. **重复处理**: - - 检查 skipNextModify 机制 - - 验证去抖动时间设置 - -3. **Canvas 更新失败**: - - 检查 CanvasTaskUpdater 事件发送 - - 验证 Canvas JSON 格式正确 - -## 未来改进 - -1. **性能优化**: - - 实现更智能的增量更新 - - 优化大文件处理 - -2. **错误处理**: - - 添加重试机制 - - 改进错误报告 - -3. **监控**: - - 添加性能指标 - - 实现事件追踪系统 \ No newline at end of file diff --git a/docs/dataflow-migration-phase-a-complete.md b/docs/dataflow-migration-phase-a-complete.md deleted file mode 100644 index 4a3cbcdb..00000000 --- a/docs/dataflow-migration-phase-a-complete.md +++ /dev/null @@ -1,99 +0,0 @@ -# Dataflow Migration - Phase A Complete - -## Summary -Phase A of the dataflow migration has been successfully implemented. This phase enables parallel initialization of both the traditional TaskManager and the new dataflow architecture, with experimental user control. - -## Completed Tasks - -### A1: Experimental Settings Switch ✅ -- **Location**: `src/common/setting-definition.ts`, `src/setting.ts` -- **Changes**: - - Added `experimental.dataflowEnabled` setting with default `false` - - Created new "Experimental" tab in settings UI - - Added warning messages and user-friendly descriptions - - Added CSS styles for experimental settings - -### A2: Parallel Initialization ✅ -- **Location**: `src/index.ts`, `src/dataflow/createDataflow.ts` -- **Changes**: - - Created `createDataflow()` factory function - - Added `isDataflowEnabled()` utility function - - Modified plugin `onload()` to conditionally initialize dataflow - - Added proper cleanup in `onunload()` - - Both systems run in parallel when dataflow is enabled - -### A3: TaskView Data Source Selection ✅ -- **Location**: `src/pages/TaskView.ts` -- **Changes**: - - Modified `loadTasks()` method to check dataflow availability - - Modified `loadTasksFast()` method with same logic - - Added fallback mechanism to TaskManager if dataflow fails - - Maintained backward compatibility - -## Key Features - -### Safe Experimentation -- Users can enable/disable dataflow through settings -- Automatic fallback to TaskManager on any dataflow errors -- Both systems can run simultaneously for comparison - -### Non-Breaking Changes -- All existing functionality preserved -- No changes to default behavior (dataflow disabled by default) -- Graceful error handling - -### Ready for Testing -- TaskView now conditionally uses QueryAPI when dataflow is enabled -- Console logging for debugging and verification -- Clean separation between old and new systems - -## Testing Instructions - -1. **Enable Dataflow**: - - Go to Settings → Advanced → Experimental - - Toggle "Enable Dataflow Architecture" - - Restart plugin (recommended) - -2. **Verify Operation**: - - Open Task Genius view - - Check console for messages: - - "Loading tasks from dataflow orchestrator..." (dataflow enabled) - - "TaskView loaded X tasks from dataflow" (success) - - "Loading tasks from TaskManager" (fallback/disabled) - -3. **Test Fallback**: - - If dataflow fails, should automatically fall back to TaskManager - - No user-visible errors should occur - -## Next Phase Recommendations - -**Phase B: View Migration** -- Migrate remaining views (Projects, Tags, Forecast) -- Add more sophisticated error handling -- Implement data consistency checks - -**Phase C: Feature Parity** -- Ensure all TaskManager features work with dataflow -- Performance comparison and optimization -- User feedback collection - -## Code Locations - -``` -src/common/setting-definition.ts # Settings definition -src/setting.ts # Settings UI -src/styles/setting.css # Experimental settings styles -src/index.ts # Plugin initialization -src/dataflow/createDataflow.ts # Dataflow factory -src/pages/TaskView.ts # Main view with conditional data source -``` - -## Architecture Notes - -The implementation maintains clean separation: -- **Settings Layer**: Controls experimental features -- **Initialization Layer**: Manages parallel system startup -- **Data Layer**: Provides conditional data source selection -- **UI Layer**: Unchanged, works with both systems - -This approach allows for gradual migration with minimal risk and easy rollback capabilities. \ No newline at end of file diff --git a/docs/dataflow-production-ready.md b/docs/dataflow-production-ready.md deleted file mode 100644 index 8cafa75f..00000000 --- a/docs/dataflow-production-ready.md +++ /dev/null @@ -1,136 +0,0 @@ -# Dataflow Architecture - Production Ready - -## Overview - -The Dataflow architecture has been promoted from experimental status to production ready. This document outlines the changes made to reflect this milestone. - -## Changes Made - -### 1. Settings Structure Update - -**Before (Experimental)**: -```typescript -interface TaskProgressBarSettings { - experimental?: { - dataflowEnabled: boolean; - }; -} - -// Default -experimental: { - dataflowEnabled: true -} -``` - -**After (Production)**: -```typescript -interface TaskProgressBarSettings { - // Core Architecture Settings - dataflowEnabled: boolean; -} - -// Default -dataflowEnabled: true -``` - -### 2. Settings UI Migration - -- **Moved from**: Experimental tab → Index & Sources tab -- **New location**: Core Architecture section in Index & Sources -- **Updated description**: Removed experimental warnings, emphasized as recommended setting - -### 3. Code References Updated - -All references to `settings.experimental.dataflowEnabled` have been updated to `settings.dataflowEnabled`: - -- `src/dataflow/createDataflow.ts` - `isDataflowEnabled()` function -- `src/index.ts` - Command handlers -- `src/mcp/McpServer.ts` - MCP integration -- `src/components/settings/IndexSettingsTab.ts` - Settings UI - -### 4. Default Behavior - -- **Default value**: `true` (Dataflow enabled by default) -- **Fallback behavior**: If setting is undefined, defaults to `true` -- **Migration**: Existing users with `experimental.dataflowEnabled: false` will need to manually update - -## Migration Guide - -### For Plugin Users - -1. **Automatic Migration**: New installations will use Dataflow by default -2. **Existing Users**: - - If you had Dataflow enabled: No action needed - - If you had Dataflow disabled: Check "Index & Sources" → "Enable Dataflow Architecture" -3. **Settings Location**: Find Dataflow settings in "Index & Sources" tab instead of "Experimental" - -### For Developers - -1. **API Changes**: Use `plugin.settings.dataflowEnabled` instead of `plugin.settings.experimental?.dataflowEnabled` -2. **Default Assumption**: Code should assume Dataflow is enabled unless explicitly disabled -3. **Backward Compatibility**: Old experimental setting is ignored - -## Benefits of Production Status - -### 1. User Confidence -- No longer marked as experimental -- Clear indication that the feature is stable and recommended -- Reduced barrier to adoption - -### 2. Simplified Settings -- Cleaner settings structure -- More logical organization (Core Architecture vs Experimental) -- Better user experience - -### 3. Development Focus -- Experimental tab reserved for truly experimental features -- Core architecture decisions are clearly separated -- Easier maintenance and documentation - -## Architecture Maturity Indicators - -### ✅ Completed Milestones - -1. **Feature Parity**: All TaskManager functionality replicated -2. **Performance**: Optimized with caching and workers -3. **Stability**: Comprehensive error handling and recovery -4. **Testing**: Extensive test coverage -5. **Documentation**: Complete architecture documentation -6. **User Feedback**: Positive feedback from beta users - -### ✅ Production Readiness Criteria - -1. **Zero Data Loss**: Safe migration from legacy system -2. **Performance**: Equal or better performance than legacy -3. **Reliability**: Stable operation under various conditions -4. **Maintainability**: Clean, well-documented codebase -5. **Extensibility**: Easy to add new features - -## Future Roadmap - -### Short Term -- Monitor user adoption and feedback -- Performance optimizations based on real usage -- Bug fixes and stability improvements - -### Medium Term -- Advanced query capabilities -- Additional data source integrations -- Enhanced caching strategies - -### Long Term -- Plugin ecosystem support -- Advanced analytics and insights -- Multi-vault synchronization - -## Conclusion - -The promotion of Dataflow architecture to production status represents a significant milestone in the Task Genius plugin's evolution. The architecture has proven itself through extensive testing and real-world usage, providing a solid foundation for future enhancements. - -Users can now confidently use the Dataflow architecture as the primary task processing system, enjoying improved performance, reliability, and feature richness compared to the legacy TaskManager system. - ---- - -**Document Version**: 1.0 -**Last Updated**: 2025-01-23 -**Status**: Production Ready ✅ \ No newline at end of file diff --git a/docs/directory-structure-refactoring-plan.md b/docs/directory-structure-refactoring-plan.md deleted file mode 100644 index b10b26af..00000000 --- a/docs/directory-structure-refactoring-plan.md +++ /dev/null @@ -1,351 +0,0 @@ -# Directory Structure Refactoring Plan - -## Overview -This document outlines the comprehensive refactoring plan for reorganizing the `src/utils` directory and establishing a clearer, more maintainable directory structure for the Task Genius plugin. - -## Current Issues - -### Problem Analysis -1. **Mixed Responsibilities**: The `src/utils/` directory contains managers, services, parsers, utilities, and executors all mixed together -2. **Inconsistent Naming**: Files have inconsistent naming conventions (e.g., `TaskManager.ts` vs `taskUtil.ts`) -3. **Poor Organization**: Related functionality is scattered across different locations -4. **Overly Large Files**: `TaskManager.ts` is over 27,000 tokens and should be split -5. **Unclear Dependencies**: Hard to understand relationships between components - -## Existing Structures to Preserve - -### Keep As-Is -- **`src/dataflow/`** - Already well-organized with: - - `api/` - QueryAPI, WriteAPI for dataflow operations - - `parsers/` - Dataflow-specific parsers (MarkdownEntry, FileMetaEntry, CanvasEntry) - - `workers/` - Dataflow-specific workers - - `core/`, `events/`, `sources/`, etc. - -- **`src/mcp/`** - MCP server implementation with: - - `auth/` - Authentication middleware - - `bridge/` - Bridge implementations (DataflowBridge, TaskManagerBridge) - - `types/` - Type definitions - -## New Directory Structure - -``` -src/ -├── cache/ # Caching and storage utilities -│ ├── local-storage-cache.ts (from utils/persister.ts) -│ └── project-data-cache.ts (from utils/ProjectDataCache.ts) -│ -├── core/ # Core business logic -│ ├── goal/ # Goal-related functionality (moved from utils/goal/) -│ │ ├── edit-mode.ts -│ │ ├── read-mode.ts -│ │ └── regex-goal.ts -│ ├── project-filter.ts (from utils/projectFilter.ts) -│ ├── project-tree-builder.ts (from utils/projectTreeBuilder.ts) -│ ├── task-indexer.ts (from utils/import/TaskIndexer.ts) -│ └── workflow-converter.ts (from utils/workflowConversion.ts) -│ -├── dataflow/ # [EXISTING - NO CHANGES] -│ └── workers/ # Add worker-related utilities here -│ ├── [existing files] -│ ├── task-index-message.ts (from utils/workers/TaskIndexWorkerMessage.ts) -│ └── deferred-promise.ts (from utils/workers/deferred.ts) -│ -├── executors/ # Action executors -│ └── completion/ # Task completion actions -│ ├── base-executor.ts (from utils/onCompletion/BaseActionExecutor.ts) -│ ├── archive-executor.ts (from utils/onCompletion/ArchiveActionExecutor.ts) -│ ├── complete-executor.ts (from utils/onCompletion/CompleteActionExecutor.ts) -│ ├── delete-executor.ts (from utils/onCompletion/DeleteActionExecutor.ts) -│ ├── duplicate-executor.ts (from utils/onCompletion/DuplicateActionExecutor.ts) -│ ├── keep-executor.ts (from utils/onCompletion/KeepActionExecutor.ts) -│ ├── move-executor.ts (from utils/onCompletion/MoveActionExecutor.ts) -│ └── canvas-operation-utils.ts (from utils/onCompletion/CanvasTaskOperationUtils.ts) -│ -├── managers/ # Feature-specific managers -│ ├── completion-manager.ts (from utils/OnCompletionManager.ts) -│ ├── file-filter-manager.ts (from utils/FileFilterManager.ts) -│ ├── file-task-manager.ts (from utils/FileTaskManager.ts) -│ ├── habit-manager.ts (from utils/HabitManager.ts) -│ ├── icon-manager.ts (from utils/TaskGeniusIconManager.ts) -│ ├── ics-manager.ts (from utils/ics/IcsManager.ts) -│ ├── onboarding-manager.ts (from utils/OnboardingConfigManager.ts) -│ ├── project-config-manager.ts (from utils/ProjectConfigManager.ts) -│ ├── rebuild-progress-manager.ts (from utils/RebuildProgressManager.ts) -│ ├── reward-manager.ts (from utils/RewardManager.ts) -│ ├── task-manager.ts (from utils/TaskManager.ts) -│ ├── timer-manager.ts (from utils/TaskTimerManager.ts) -│ └── version-manager.ts (from utils/VersionManager.ts) -│ -├── mcp/ # [EXISTING - NO CHANGES] -│ -├── parsers/ # General-purpose parsers (non-dataflow) -│ ├── canvas-parser.ts (from utils/parsing/CanvasParser.ts) -│ ├── canvas-task-updater.ts (from utils/parsing/CanvasTaskUpdater.ts) -│ ├── configurable-task-parser.ts (from utils/workers/ConfigurableTaskParser.ts) -│ ├── context-detector.ts (from utils/workers/ContextDetector.ts) -│ ├── file-metadata-parser.ts (from utils/workers/FileMetadataTaskParser.ts) -│ ├── file-metadata-updater.ts (from utils/workers/FileMetadataTaskUpdater.ts) -│ ├── holiday-detector.ts (from utils/ics/HolidayDetector.ts) -│ ├── ics-parser.ts (from utils/ics/IcsParser.ts) -│ ├── ics-status-mapper.ts (from utils/ics/StatusMapper.ts) -│ └── webcal-converter.ts (from utils/ics/WebcalUrlConverter.ts) -│ -├── services/ # Service classes -│ ├── settings-change-detector.ts (from utils/SettingsChangeDetector.ts) -│ ├── task-parsing-service.ts (from utils/TaskParsingService.ts) -│ ├── time-parsing-service.ts (from utils/TimeParsingService.ts) -│ ├── timer-export-service.ts (from utils/TaskTimerExporter.ts) -│ ├── timer-format-service.ts (from utils/TaskTimerFormatter.ts) -│ └── timer-metadata-service.ts (from utils/TaskTimerMetadataDetector.ts) -│ -└── utils/ # Pure utility functions only - ├── date/ # Date utilities - │ ├── date-formatter.ts (from utils/dateUtil.ts) - │ └── date-helper.ts (from utils/DateHelper.ts) - ├── file/ # File utilities - │ ├── file-operations.ts (from utils/fileUtils.ts) - │ └── file-type-detector.ts (from utils/fileTypeUtils.ts) - ├── task/ # Task utilities - │ ├── filter-compatibility.ts (from utils/filterUtils.ts) - │ ├── priority-utils.ts (from utils/priorityUtils.ts) - │ ├── task-filter-utils.ts (from utils/TaskFilterUtils.ts) - │ ├── task-migration.ts (from utils/taskMigrationUtils.ts) - │ └── task-operations.ts (from utils/taskUtil.ts - if not deprecated) - ├── ui/ # UI utilities - │ ├── tree-view-utils.ts (from utils/treeViewUtil.ts) - │ └── view-mode-utils.ts (from utils/viewModeUtils.ts) - └── id-generator.ts (from utils/common.ts) -``` - -## Implementation Phases - -### Phase 1: Directory Creation -Create all new directories before moving any files: -- `src/managers/` -- `src/services/` -- `src/executors/completion/` -- `src/parsers/` -- `src/cache/` -- `src/core/goal/` -- `src/utils/date/` -- `src/utils/file/` -- `src/utils/task/` -- `src/utils/ui/` - -### Phase 2: Manager Migration -Move all manager classes from `src/utils/` to `src/managers/`: - -| Original File | New Location | Rename Reason | -|--------------|--------------|---------------| -| `FileTaskManager.ts` | `managers/file-task-manager.ts` | Kebab-case consistency | -| `HabitManager.ts` | `managers/habit-manager.ts` | Kebab-case consistency | -| `TaskManager.ts` | `managers/task-manager.ts` | Kebab-case consistency | -| `OnCompletionManager.ts` | `managers/completion-manager.ts` | Clearer naming + kebab-case | -| `OnboardingConfigManager.ts` | `managers/onboarding-manager.ts` | Simpler name + kebab-case | -| `ProjectConfigManager.ts` | `managers/project-config-manager.ts` | Kebab-case consistency | -| `RebuildProgressManager.ts` | `managers/rebuild-progress-manager.ts` | Kebab-case consistency | -| `RewardManager.ts` | `managers/reward-manager.ts` | Kebab-case consistency | -| `TaskGeniusIconManager.ts` | `managers/icon-manager.ts` | Simpler name + kebab-case | -| `TaskTimerManager.ts` | `managers/timer-manager.ts` | Simpler name + kebab-case | -| `VersionManager.ts` | `managers/version-manager.ts` | Kebab-case consistency | -| `FileFilterManager.ts` | `managers/file-filter-manager.ts` | Kebab-case consistency | -| `ics/IcsManager.ts` | `managers/ics-manager.ts` | Flatten structure + kebab-case | - -### Phase 3: Service Migration -Move service classes from `src/utils/` to `src/services/`: - -| Original File | New Location | Rename Reason | -|--------------|--------------|---------------| -| `TaskParsingService.ts` | `services/task-parsing-service.ts` | Kebab-case consistency | -| `TimeParsingService.ts` | `services/time-parsing-service.ts` | Kebab-case consistency | -| `SettingsChangeDetector.ts` | `services/settings-change-detector.ts` | Kebab-case consistency | -| `TaskTimerExporter.ts` | `services/timer-export-service.ts` | Clearer naming + kebab-case | -| `TaskTimerFormatter.ts` | `services/timer-format-service.ts` | Clearer naming + kebab-case | -| `TaskTimerMetadataDetector.ts` | `services/timer-metadata-service.ts` | Clearer naming + kebab-case | - -### Phase 4: Executor Migration -Move executors from `src/utils/onCompletion/` to `src/executors/completion/`: - -| Original File | New Location | Rename Reason | -|--------------|--------------|---------------| -| `onCompletion/BaseActionExecutor.ts` | `executors/completion/base-executor.ts` | Simpler name + kebab-case | -| `onCompletion/ArchiveActionExecutor.ts` | `executors/completion/archive-executor.ts` | Simpler name + kebab-case | -| `onCompletion/CompleteActionExecutor.ts` | `executors/completion/complete-executor.ts` | Simpler name + kebab-case | -| `onCompletion/DeleteActionExecutor.ts` | `executors/completion/delete-executor.ts` | Simpler name + kebab-case | -| `onCompletion/DuplicateActionExecutor.ts` | `executors/completion/duplicate-executor.ts` | Simpler name + kebab-case | -| `onCompletion/KeepActionExecutor.ts` | `executors/completion/keep-executor.ts` | Simpler name + kebab-case | -| `onCompletion/MoveActionExecutor.ts` | `executors/completion/move-executor.ts` | Simpler name + kebab-case | -| `onCompletion/CanvasTaskOperationUtils.ts` | `executors/completion/canvas-operation-utils.ts` | Clearer naming + kebab-case | - -### Phase 5: Parser Migration -Move parsers from various locations to appropriate directories: - -| Original File | New Location | Rename Reason | -|--------------|--------------|---------------| -| `parsing/CanvasParser.ts` | `parsers/canvas-parser.ts` | Kebab-case consistency | -| `parsing/CanvasTaskUpdater.ts` | `parsers/canvas-task-updater.ts` | Kebab-case consistency | -| `ics/IcsParser.ts` | `parsers/ics-parser.ts` | Flatten structure + kebab-case | -| `ics/HolidayDetector.ts` | `parsers/holiday-detector.ts` | Flatten structure + kebab-case | -| `ics/StatusMapper.ts` | `parsers/ics-status-mapper.ts` | Clearer naming + kebab-case | -| `ics/WebcalUrlConverter.ts` | `parsers/webcal-converter.ts` | Simpler name + kebab-case | -| `workers/ConfigurableTaskParser.ts` | `parsers/configurable-task-parser.ts` | Kebab-case consistency | -| `workers/ContextDetector.ts` | `parsers/context-detector.ts` | Kebab-case consistency | -| `workers/FileMetadataTaskParser.ts` | `parsers/file-metadata-parser.ts` | Simpler name + kebab-case | -| `workers/FileMetadataTaskUpdater.ts` | `parsers/file-metadata-updater.ts` | Simpler name + kebab-case | - -### Phase 6: Cache Migration -Move caching utilities to `src/cache/`: - -| Original File | New Location | Rename Reason | -|--------------|--------------|---------------| -| `persister.ts` | `cache/local-storage-cache.ts` | Descriptive name + kebab-case | -| `ProjectDataCache.ts` | `cache/project-data-cache.ts` | Kebab-case consistency | - -### Phase 7: Core Business Logic Migration -Move core business logic to `src/core/`: - -| Original File | New Location | Rename Reason | -|--------------|--------------|---------------| -| `projectFilter.ts` | `core/project-filter.ts` | Kebab-case consistency | -| `projectTreeBuilder.ts` | `core/project-tree-builder.ts` | Kebab-case consistency | -| `workflowConversion.ts` | `core/workflow-converter.ts` | Clearer naming + kebab-case | -| `goal/` (entire directory) | `core/goal/` | Preserve structure | -| `import/TaskIndexer.ts` | `core/task-indexer.ts` | Flatten structure + kebab-case | - -### Phase 8: Worker Migration to Dataflow -Move worker utilities to existing `src/dataflow/workers/`: - -| Original File | New Location | Rename Reason | -|--------------|--------------|---------------| -| `workers/TaskIndexWorkerMessage.ts` | `dataflow/workers/task-index-message.ts` | Simpler name + kebab-case | -| `workers/deferred.ts` | `dataflow/workers/deferred-promise.ts` | Descriptive name + kebab-case | - -### Phase 9: Utility Reorganization -Reorganize remaining utilities into categorized subdirectories: - -| Original File | New Location | Rename Reason | -|--------------|--------------|---------------| -| `DateHelper.ts` | `utils/date/date-helper.ts` | Kebab-case consistency | -| `dateUtil.ts` | `utils/date/date-formatter.ts` | Descriptive name + kebab-case | -| `fileTypeUtils.ts` | `utils/file/file-type-detector.ts` | Descriptive name + kebab-case | -| `fileUtils.ts` | `utils/file/file-operations.ts` | Descriptive name + kebab-case | -| `priorityUtils.ts` | `utils/task/priority-utils.ts` | Kebab-case consistency | -| `taskUtil.ts` | `utils/task/task-operations.ts` | Descriptive name + kebab-case | -| `TaskFilterUtils.ts` | `utils/task/task-filter-utils.ts` | Kebab-case consistency | -| `filterUtils.ts` | `utils/task/filter-compatibility.ts` | Descriptive name + kebab-case | -| `taskMigrationUtils.ts` | `utils/task/task-migration.ts` | Simpler name + kebab-case | -| `treeViewUtil.ts` | `utils/ui/tree-view-utils.ts` | Kebab-case consistency | -| `viewModeUtils.ts` | `utils/ui/view-mode-utils.ts` | Kebab-case consistency | -| `common.ts` | `utils/id-generator.ts` | Descriptive name + kebab-case | - -### Phase 10: Import Path Updates -After all files are moved, update all import statements throughout the codebase: - -1. Use automated refactoring tools where possible -2. Run TypeScript compiler to identify broken imports -3. Update test file imports -4. Update barrel exports (index.ts files) -5. Verify no circular dependencies were introduced - -### Phase 11: Cleanup -1. Remove empty directories -2. Delete or update `src/utils/README.md` -3. Update any documentation that references old file paths -4. Run full test suite to ensure nothing broke - -## Validation Checklist - -- [ ] All directories created successfully -- [ ] All files moved to new locations -- [ ] All files renamed to kebab-case -- [ ] All import paths updated -- [ ] TypeScript compilation succeeds -- [ ] All tests pass -- [ ] No circular dependencies introduced -- [ ] Documentation updated -- [ ] Commit with detailed message explaining the refactoring - -## Commit Message Template - -``` -refactor: reorganize directory structure for better maintainability - -BREAKING CHANGE: Major directory restructuring - all import paths updated - -Motivation: -- Mixed responsibilities in utils/ directory causing confusion -- Inconsistent naming conventions across files -- Poor organization making code discovery difficult -- Need for clearer separation of concerns - -Changes by category: - -Managers (utils/ → managers/): -- Renamed to kebab-case for consistency -- FileTaskManager → file-task-manager -- TaskGeniusIconManager → icon-manager (simplified) -- OnCompletionManager → completion-manager (clarified) - -Services (utils/ → services/): -- Separated service classes from utilities -- TaskTimerExporter → timer-export-service (clarified purpose) -- TaskTimerFormatter → timer-format-service (clarified purpose) - -Executors (utils/onCompletion/ → executors/completion/): -- Grouped action executors together -- Simplified names (e.g., BaseActionExecutor → base-executor) - -Parsers (various → parsers/): -- Consolidated general-purpose parsers -- Kept dataflow-specific parsers in dataflow/parsers/ - -Core Logic (utils/ → core/): -- Moved business logic out of utils -- Created goal/ subdirectory for goal-related features - -Cache (utils/ → cache/): -- Separated caching utilities -- persister → local-storage-cache (descriptive rename) - -Pure Utilities (reorganized in utils/): -- Created subdirectories: date/, file/, task/, ui/ -- Renamed for clarity and consistency -- common.ts → id-generator.ts (specific purpose) - -Worker Integration: -- Moved worker utilities to dataflow/workers/ -- Maintains consistency with dataflow architecture - -Benefits: -- Clear separation of concerns -- Easier code discovery -- Consistent naming conventions -- Better maintainability -- Reduced cognitive load for developers -``` - -## Notes - -1. **Naming Convention**: All files use kebab-case for consistency -2. **Dataflow Preservation**: The existing dataflow architecture is preserved -3. **MCP Preservation**: The MCP server structure remains unchanged -4. **Gradual Migration**: Can be implemented in phases to minimize disruption -5. **Future Consideration**: TaskManager.ts should be split into smaller, focused modules - -## Risk Mitigation - -1. **Create a branch**: `refactor/directory-structure` -2. **Implement in small commits**: One phase per commit for easy rollback -3. **Run tests after each phase**: Ensure nothing breaks -4. **Use automated tools**: VSCode's "Move file" and "Rename Symbol" features -5. **Review imports carefully**: Some imports might need manual adjustment -6. **Document changes**: Update README and other docs as needed - -## Future Improvements - -After this refactoring: -1. Consider splitting `TaskManager.ts` into smaller modules -2. Create barrel exports (index.ts) for each major directory -3. Add JSDoc comments to clarify module purposes -4. Consider dependency injection for better testability -5. Evaluate if any managers should become services or vice versa \ No newline at end of file diff --git a/docs/editor-extensions-refactoring-plan.md b/docs/editor-extensions-refactoring-plan.md deleted file mode 100644 index 15c12ac3..00000000 --- a/docs/editor-extensions-refactoring-plan.md +++ /dev/null @@ -1,118 +0,0 @@ -# Editor Extensions Refactoring Plan - -## Overview -This document outlines the refactoring of the `editor-ext` directory to improve organization, consistency, and maintainability of editor extension code. - -## Completed on: 2025-01-19 - -## Changes Implemented - -### Directory Renaming -- **Old**: `src/editor-ext/` -- **New**: `src/editor-extensions/` -- **Reason**: More complete and professional naming - -### New Directory Structure - -``` -src/editor-extensions/ -├── autocomplete/ # Auto-completion and suggestion features -│ ├── task-metadata-suggest.ts -│ └── parent-task-updater.ts -│ -├── task-operations/ # Task operations (status, cleanup, monitoring) -│ ├── status-cycler.ts -│ ├── status-switcher.ts -│ ├── completion-monitor.ts -│ ├── mark-cleanup.ts -│ └── gutter-marker.ts -│ -├── date-time/ # Date and time features -│ ├── date-picker.ts -│ ├── date-manager.ts -│ └── task-timer.ts -│ -├── ui-widgets/ # UI decorations and widgets -│ ├── progress-bar-widget.ts -│ ├── priority-picker.ts -│ └── workflow-decorator.ts -│ -├── workflow/ # Workflow features -│ ├── workflow-handler.ts -│ └── workflow-enter-handler.ts -│ -└── core/ # Core editor functionality - ├── markdown-editor.ts - ├── extended-gutter.ts - ├── regex-cursor.ts - ├── task-filter-panel.ts - └── quick-capture-panel.ts -``` - -## File Renaming Details - -### Autocomplete -| Original | New | Reason | -|----------|-----|--------| -| QuickCaptureSuggest.ts | task-metadata-suggest.ts | More accurate description of task metadata suggestions | -| autoCompleteParent.ts | parent-task-updater.ts | Clearly indicates parent task update functionality | - -### Task Operations -| Original | New | Reason | -|----------|-----|--------| -| cycleCompleteStatus.ts | status-cycler.ts | Simplified name, kebab-case | -| taskStatusSwitcher.ts | status-switcher.ts | Kebab-case consistency | -| monitorTaskCompleted.ts | completion-monitor.ts | Simplified and clearer | -| taskMarkCleanup.ts | mark-cleanup.ts | Simplified name | -| TaskGutterHandler.ts | gutter-marker.ts | More accurate description | - -### Date-Time -| Original | New | Reason | -|----------|-----|--------| -| datePicker.ts | date-picker.ts | Kebab-case consistency | -| autoDateManager.ts | date-manager.ts | Simplified name | -| taskTimer.ts | task-timer.ts | Kebab-case consistency | - -### UI Widgets -| Original | New | Reason | -|----------|-----|--------| -| progressBarWidget.ts | progress-bar-widget.ts | Kebab-case consistency | -| priorityPicker.ts | priority-picker.ts | Kebab-case consistency | -| workflowDecorator.ts | workflow-decorator.ts | Kebab-case consistency | - -### Workflow -| Original | New | Reason | -|----------|-----|--------| -| workflow.ts | workflow-handler.ts | More explicit name | -| workflowRootEnterHandler.ts | workflow-enter-handler.ts | Simplified name | - -### Core -| Original | New | Reason | -|----------|-----|--------| -| markdownEditor.ts | markdown-editor.ts | Kebab-case consistency | -| patchedGutter.ts | extended-gutter.ts | More professional name | -| regexp-cursor.ts | regex-cursor.ts | Common abbreviation | -| filterTasks.ts | task-filter-panel.ts | More explicit name | -| quickCapture.ts | quick-capture-panel.ts | More explicit name | - -## Benefits Achieved - -1. **Clear Separation of Concerns**: Each subdirectory now has a specific, well-defined purpose -2. **Consistent Naming**: All files use kebab-case naming convention -3. **Improved Discoverability**: Developers can easily find functionality based on category -4. **Better Maintainability**: Related code is grouped together -5. **Professional Structure**: The naming and organization follows modern best practices - -## Migration Impact - -- All import paths have been updated throughout the codebase -- No functionality changes, only organizational improvements -- Build succeeds with no errors -- All tests continue to pass - -## Future Considerations - -1. Consider creating barrel exports (index.ts) for each subdirectory -2. Add README files in each subdirectory explaining the purpose and contents -3. Consider further splitting large files if they contain multiple responsibilities -4. Add JSDoc comments to exported functions for better documentation \ No newline at end of file diff --git a/docs/enhanced-time-parsing-api.md b/docs/enhanced-time-parsing-api.md deleted file mode 100644 index 9fbc4e06..00000000 --- a/docs/enhanced-time-parsing-api.md +++ /dev/null @@ -1,734 +0,0 @@ -# Enhanced Time Parsing API Documentation - -## Overview - -The Enhanced Time Parsing API extends Task Genius's existing time parsing capabilities to support granular time recognition including single times, time ranges, and intelligent date inheritance. This document provides comprehensive developer guidance for working with the enhanced time parsing system. - -## Core Interfaces - -### TimeComponent - -The `TimeComponent` interface represents a parsed time value with validation and range support. - -```typescript -interface TimeComponent { - /** Hour (0-23) */ - hour: number; - /** Minute (0-59) */ - minute: number; - /** Second (0-59, optional) */ - second?: number; - /** Original text that was parsed */ - originalText: string; - /** Whether this is part of a time range */ - isRange: boolean; - /** Range partner (for start/end time pairs) */ - rangePartner?: TimeComponent; -} -``` - -#### Usage Example - -```typescript -// Creating a TimeComponent for 2:30 PM -const timeComponent: TimeComponent = { - hour: 14, - minute: 30, - originalText: "2:30 PM", - isRange: false -}; - -// Creating a time range (9:00-17:00) -const startTime: TimeComponent = { - hour: 9, - minute: 0, - originalText: "9:00-17:00", - isRange: true, - rangePartner: endTime -}; - -const endTime: TimeComponent = { - hour: 17, - minute: 0, - originalText: "9:00-17:00", - isRange: true, - rangePartner: startTime -}; -``` - -### EnhancedParsedTimeResult - -Extends the existing `ParsedTimeResult` to include time component information. - -```typescript -interface EnhancedParsedTimeResult extends ParsedTimeResult { - // Time-specific components - timeComponents: { - startTime?: TimeComponent; - endTime?: TimeComponent; - dueTime?: TimeComponent; - scheduledTime?: TimeComponent; - }; - // Enhanced expressions with time information - parsedExpressions: Array; -} -``` - -#### Usage Example - -```typescript -import { TimeParsingService } from '../services/time-parsing-service'; - -const timeParser = new TimeParsingService(); -const result: EnhancedParsedTimeResult = await timeParser.parseTimeExpressions( - "Meeting tomorrow 2:30 PM - 4:00 PM" -); - -// Access parsed time components -if (result.timeComponents.startTime) { - console.log(`Start: ${result.timeComponents.startTime.hour}:${result.timeComponents.startTime.minute}`); -} - -if (result.timeComponents.endTime) { - console.log(`End: ${result.timeComponents.endTime.hour}:${result.timeComponents.endTime.minute}`); -} -``` - -### EnhancedTimeExpression - -Represents a parsed time expression with enhanced metadata. - -```typescript -interface EnhancedTimeExpression { - text: string; - date: Date; - type: "start" | "due" | "scheduled"; - index: number; - length: number; - // New time-specific fields - timeComponent?: TimeComponent; - isTimeRange: boolean; - rangeStart?: TimeComponent; - rangeEnd?: TimeComponent; -} -``` - -### EnhancedStandardTaskMetadata - -Extends task metadata to include time components alongside existing timestamp fields. - -```typescript -interface EnhancedStandardTaskMetadata extends StandardTaskMetadata { - // Time-specific metadata (separate from date timestamps) - timeComponents?: { - /** Start time component */ - startTime?: TimeComponent; - /** End time component (for time ranges) */ - endTime?: TimeComponent; - /** Due time component */ - dueTime?: TimeComponent; - /** Scheduled time component */ - scheduledTime?: TimeComponent; - }; - - // Enhanced date fields that combine date + time - enhancedDates?: { - /** Full datetime for start (combines startDate + startTime) */ - startDateTime?: Date; - /** Full datetime for end (combines date + endTime) */ - endDateTime?: Date; - /** Full datetime for due (combines dueDate + dueTime) */ - dueDateTime?: Date; - /** Full datetime for scheduled (combines scheduledDate + scheduledTime) */ - scheduledDateTime?: Date; - }; -} -``` - -## TimeParsingService API - -### Core Methods - -#### parseTimeComponents(text: string): Promise - -Extracts time components from text without processing dates. - -```typescript -const timeParser = new TimeParsingService(); - -// Parse single time -const singleTime = await timeParser.parseTimeComponents("Meeting at 2:30 PM"); -// Returns: [{ hour: 14, minute: 30, originalText: "2:30 PM", isRange: false }] - -// Parse time range -const timeRange = await timeParser.parseTimeComponents("Workshop 9:00-17:00"); -// Returns: [ -// { hour: 9, minute: 0, originalText: "9:00-17:00", isRange: true, rangePartner: endTime }, -// { hour: 17, minute: 0, originalText: "9:00-17:00", isRange: true, rangePartner: startTime } -// ] -``` - -#### parseTimeExpressions(text: string): Promise - -Enhanced version of the existing method that includes time component parsing. - -```typescript -const result = await timeParser.parseTimeExpressions("Project due tomorrow 5:00 PM"); - -// Access both date and time information -console.log(result.parsedExpressions[0].date); // Date object for tomorrow -console.log(result.timeComponents.dueTime?.hour); // 17 -console.log(result.timeComponents.dueTime?.minute); // 0 -``` - -#### combineDateTime(date: Date, timeComponent: TimeComponent): Date - -Utility method to combine date and time components into a full datetime object. - -```typescript -const date = new Date('2024-12-25'); -const timeComponent: TimeComponent = { hour: 14, minute: 30, originalText: "2:30 PM", isRange: false }; - -const combinedDateTime = timeParser.combineDateTime(date, timeComponent); -// Returns: Date object for 2024-12-25 14:30:00 -``` - -### Configuration - -#### EnhancedTimeParsingConfig - -Configure time parsing behavior through the enhanced configuration interface. - -```typescript -interface EnhancedTimeParsingConfig extends TimeParsingConfig { - timePatterns: { - /** Single time patterns (12:00, 12:00:00, 1:30 PM) */ - singleTime: RegExp[]; - /** Time range patterns (12:00-13:00, 12:00 - 13:00, 12:00~13:00) */ - timeRange: RegExp[]; - /** Time separators for ranges */ - rangeSeparators: string[]; - }; - timeDefaults: { - /** Default format preference (12-hour vs 24-hour) */ - preferredFormat: "12h" | "24h"; - /** Default AM/PM when ambiguous */ - defaultPeriod: "AM" | "PM"; - /** How to handle midnight crossing ranges */ - midnightCrossing: "next-day" | "same-day" | "error"; - }; -} -``` - -#### Usage Example - -```typescript -const config: EnhancedTimeParsingConfig = { - // ... existing config - timeDefaults: { - preferredFormat: "24h", - defaultPeriod: "AM", - midnightCrossing: "next-day" - } -}; - -const timeParser = new TimeParsingService(config); -``` - -## Date Inheritance API - -### DateInheritanceService - -Handles intelligent date resolution for time-only expressions. - -```typescript -interface DateInheritanceService { - /** Resolve date for time-only expressions using priority logic */ - resolveDateForTimeOnly( - task: Task, - timeComponent: TimeComponent, - context: DateResolutionContext - ): Promise; - - /** Get file-based date information with caching */ - getFileDateInfo(filePath: string): Promise; - - /** Extract daily note date from file path/title */ - extractDailyNoteDate(filePath: string): Date | null; -} -``` - -#### Usage Example - -```typescript -import { DateInheritanceService } from '../services/date-inheritance-service'; - -const dateService = new DateInheritanceService(); - -const context: DateResolutionContext = { - currentLine: "- [ ] Meeting 📅 14:30", - filePath: "Daily Notes/2024-12-25.md", - parentTask: undefined, - fileMetadataCache: new Map() -}; - -const timeComponent: TimeComponent = { - hour: 14, - minute: 30, - originalText: "14:30", - isRange: false -}; - -const result = await dateService.resolveDateForTimeOnly(task, timeComponent, context); -console.log(result.resolvedDate); // Date for 2024-12-25 14:30 -console.log(result.source); // "daily-note-date" -console.log(result.confidence); // "high" -``` - -### DateResolutionContext - -Provides context information for date resolution. - -```typescript -interface DateResolutionContext { - /** Current line being parsed */ - currentLine: string; - /** File path of the task */ - filePath: string; - /** Parent task information for inheritance */ - parentTask?: Task; - /** File metadata cache */ - fileMetadataCache?: Map; -} -``` - -### DateResolutionResult - -Result of date resolution with metadata about the source and confidence. - -```typescript -interface DateResolutionResult { - /** Resolved date */ - resolvedDate: Date; - /** Source of the date */ - source: "line-date" | "metadata-date" | "daily-note-date" | "file-ctime" | "parent-task"; - /** Confidence level of the resolution */ - confidence: "high" | "medium" | "low"; - /** Whether fallback was used */ - usedFallback: boolean; -} -``` - -## Timeline Integration - -### EnhancedTimelineEvent - -Extended timeline event interface with time information. - -```typescript -interface EnhancedTimelineEvent extends TimelineEvent { - // Enhanced time information - timeInfo?: { - /** Primary time for display and sorting */ - primaryTime: Date; - /** End time for ranges */ - endTime?: Date; - /** Whether this is a time range */ - isRange: boolean; - /** Original time component from parsing */ - timeComponent?: TimeComponent; - /** Display format preference */ - displayFormat: "time-only" | "date-time" | "range"; - }; -} -``` - -#### Usage Example - -```typescript -// Creating an enhanced timeline event -const timelineEvent: EnhancedTimelineEvent = { - // ... existing TimelineEvent properties - timeInfo: { - primaryTime: new Date('2024-12-25T14:30:00'), - endTime: new Date('2024-12-25T16:00:00'), - isRange: true, - timeComponent: startTimeComponent, - displayFormat: "range" - } -}; -``` - -## Error Handling - -### TimeParsingError - -Structured error information for time parsing failures. - -```typescript -interface TimeParsingError { - type: "invalid-format" | "midnight-crossing" | "ambiguous-time" | "range-error"; - originalText: string; - position: number; - message: string; - fallbackUsed: boolean; - fallbackValue?: TimeComponent; -} -``` - -### EnhancedParseResult - -Comprehensive result structure with error handling. - -```typescript -interface EnhancedParseResult { - success: boolean; - result?: EnhancedParsedTimeResult; - errors: TimeParsingError[]; - warnings: string[]; -} -``` - -#### Usage Example - -```typescript -const parseResult: EnhancedParseResult = await timeParser.parseWithErrorHandling( - "Invalid time format 25:70" -); - -if (!parseResult.success) { - parseResult.errors.forEach(error => { - console.error(`Time parsing error: ${error.message}`); - if (error.fallbackUsed && error.fallbackValue) { - console.log(`Using fallback: ${error.fallbackValue.hour}:${error.fallbackValue.minute}`); - } - }); -} -``` - -## Migration Strategies - -### Automatic Task Enhancement - -Existing tasks are automatically enhanced when accessed through the new API: - -```typescript -import { TaskMigrationService } from '../services/task-migration-service'; - -const migrationService = new TaskMigrationService(); - -// Migrate existing task to enhanced format -const enhancedTask = migrationService.migrateTaskToEnhanced(existingTask); - -// Check if task has enhanced metadata -if (enhancedTask.metadata.timeComponents) { - console.log("Task has enhanced time information"); -} -``` - -### Backward Compatibility - -The enhanced API maintains full backward compatibility: - -```typescript -// Existing code continues to work -const oldResult = await timeParser.parseTimeExpressions("tomorrow 5pm"); -console.log(oldResult.parsedExpressions[0].date); // Still works - -// New features are additive -if (oldResult.timeComponents?.dueTime) { - console.log("Enhanced time info available"); -} -``` - -### Gradual Migration - -For large codebases, migrate incrementally: - -```typescript -// 1. Update type annotations to enhanced interfaces -function processTask(task: Task) { - // Enhanced functionality available - if (task.metadata.timeComponents?.startTime) { - // Use enhanced time information - } else { - // Fall back to existing timestamp-based logic - } -} - -// 2. Update parsing calls to use enhanced methods -const result = await timeParser.parseTimeExpressions(text); -// Enhanced result includes both old and new fields - -// 3. Update UI components to display enhanced information -if (result.timeComponents?.startTime) { - displayEnhancedTime(result.timeComponents.startTime); -} else { - displayBasicTime(result.parsedExpressions[0].date); -} -``` - -## Performance Considerations - -### Caching Strategies - -The enhanced time parsing system includes several performance optimizations: - -```typescript -// File metadata caching -const fileCache = new Map(); -const context: DateResolutionContext = { - // ... other properties - fileMetadataCache: fileCache -}; - -// Reuse cache across multiple parsing operations -const result1 = await dateService.resolveDateForTimeOnly(task1, time1, context); -const result2 = await dateService.resolveDateForTimeOnly(task2, time2, context); -``` - -### Batch Processing - -For processing multiple tasks efficiently: - -```typescript -// Batch process tasks with shared context -const tasks = await getAllTasks(); -const batchContext = await createBatchContext(tasks); - -const enhancedTasks = await Promise.all( - tasks.map(task => enhanceTaskWithTimeInfo(task, batchContext)) -); -``` - -### Memory Management - -Time components are lightweight objects, but for large datasets: - -```typescript -// Use weak references for temporary time components -const timeComponentCache = new WeakMap(); - -// Clean up enhanced metadata when not needed -function cleanupEnhancedMetadata(task: Task) { - if (task.metadata.enhancedDates) { - delete task.metadata.enhancedDates; - } -} -``` - -## Testing Utilities - -### Mock Time Components - -```typescript -// Test utilities for creating mock time components -export function createMockTimeComponent( - hour: number, - minute: number, - options: Partial = {} -): TimeComponent { - return { - hour, - minute, - originalText: `${hour}:${minute.toString().padStart(2, '0')}`, - isRange: false, - ...options - }; -} - -// Create mock time ranges -export function createMockTimeRange( - startHour: number, - startMinute: number, - endHour: number, - endMinute: number -): [TimeComponent, TimeComponent] { - const originalText = `${startHour}:${startMinute}-${endHour}:${endMinute}`; - - const startTime: TimeComponent = { - hour: startHour, - minute: startMinute, - originalText, - isRange: true, - rangePartner: undefined // Will be set below - }; - - const endTime: TimeComponent = { - hour: endHour, - minute: endMinute, - originalText, - isRange: true, - rangePartner: startTime - }; - - startTime.rangePartner = endTime; - - return [startTime, endTime]; -} -``` - -### Test Examples - -```typescript -describe('Enhanced Time Parsing', () => { - let timeParser: TimeParsingService; - - beforeEach(() => { - timeParser = new TimeParsingService(); - }); - - test('should parse single time correctly', async () => { - const result = await timeParser.parseTimeComponents("Meeting at 2:30 PM"); - - expect(result).toHaveLength(1); - expect(result[0].hour).toBe(14); - expect(result[0].minute).toBe(30); - expect(result[0].isRange).toBe(false); - }); - - test('should parse time range correctly', async () => { - const result = await timeParser.parseTimeComponents("Workshop 9:00-17:00"); - - expect(result).toHaveLength(2); - expect(result[0].hour).toBe(9); - expect(result[1].hour).toBe(17); - expect(result[0].isRange).toBe(true); - expect(result[1].isRange).toBe(true); - expect(result[0].rangePartner).toBe(result[1]); - }); -}); -``` - -## Best Practices - -### API Usage - -1. **Always check for enhanced metadata availability**: -```typescript -if (task.metadata.timeComponents?.startTime) { - // Use enhanced time information -} else { - // Fall back to timestamp-based logic -} -``` - -2. **Use type guards for enhanced interfaces**: -```typescript -function isEnhancedTask(task: Task): task is Task { - return 'timeComponents' in task.metadata; -} -``` - -3. **Handle errors gracefully**: -```typescript -try { - const result = await timeParser.parseTimeExpressions(text); - // Process result -} catch (error) { - // Fall back to basic date parsing - const basicResult = await timeParser.parseBasicDates(text); -} -``` - -### Performance Optimization - -1. **Cache file metadata for batch operations** -2. **Use lazy loading for enhanced metadata** -3. **Implement proper cleanup for temporary objects** -4. **Consider memory usage in large datasets** - -### Integration Guidelines - -1. **Maintain backward compatibility in all public APIs** -2. **Provide migration utilities for existing integrations** -3. **Document breaking changes clearly** -4. **Use feature flags for gradual rollout** - -## Examples and Recipes - -### Common Integration Patterns - -#### Task Creation with Enhanced Time Parsing - -```typescript -async function createTaskWithTime(text: string, filePath: string): Promise { - const timeParser = new TimeParsingService(); - const dateService = new DateInheritanceService(); - - // Parse time expressions - const parseResult = await timeParser.parseTimeExpressions(text); - - // Create base task - const task: Task = { - // ... basic task properties - metadata: { - // ... basic metadata - } - }; - - // Add enhanced time information if available - if (parseResult.timeComponents) { - const enhancedMetadata: EnhancedStandardTaskMetadata = { - ...task.metadata, - timeComponents: parseResult.timeComponents - }; - - // Resolve dates for time-only expressions - if (parseResult.timeComponents.startTime && !parseResult.parsedExpressions[0]?.date) { - const context: DateResolutionContext = { - currentLine: text, - filePath, - parentTask: undefined - }; - - const dateResult = await dateService.resolveDateForTimeOnly( - task, - parseResult.timeComponents.startTime, - context - ); - - enhancedMetadata.enhancedDates = { - startDateTime: timeParser.combineDateTime( - dateResult.resolvedDate, - parseResult.timeComponents.startTime - ) - }; - } - - task.metadata = enhancedMetadata; - } - - return task; -} -``` - -#### Timeline Event Enhancement - -```typescript -function createEnhancedTimelineEvent(task: Task): EnhancedTimelineEvent { - const baseEvent: TimelineEvent = { - // ... create base timeline event - }; - - if (isEnhancedTask(task) && task.metadata.timeComponents?.startTime) { - const timeComponent = task.metadata.timeComponents.startTime; - const enhancedEvent: EnhancedTimelineEvent = { - ...baseEvent, - timeInfo: { - primaryTime: task.metadata.enhancedDates?.startDateTime || baseEvent.date, - endTime: task.metadata.enhancedDates?.endDateTime, - isRange: timeComponent.isRange, - timeComponent, - displayFormat: timeComponent.isRange ? "range" : "time-only" - } - }; - - return enhancedEvent; - } - - return baseEvent; -} -``` - -This comprehensive API documentation provides developers with all the necessary information to integrate with and extend the enhanced time parsing system while maintaining backward compatibility and following best practices. \ No newline at end of file diff --git a/docs/file-source-implementation.md b/docs/file-source-implementation.md deleted file mode 100644 index e1dcd738..00000000 --- a/docs/file-source-implementation.md +++ /dev/null @@ -1,487 +0,0 @@ -# FileSource Implementation Tracking - -## Overview - -This document tracks the implementation progress of the FileSource feature, which enables files to be recognized as tasks based on their metadata properties. The implementation follows the dataflow architecture patterns and integrates seamlessly with existing functionality. - -## Task Breakdown - -### Phase 1: Core Infrastructure (Week 1-2) - -#### TypeScript Definitions -- [x] Create `src/types/file-source.d.ts` - - [x] `FileSourceTaskMetadata` interface - - [x] `FileSourceConfiguration` interface - - [x] `RecognitionStrategy` interface - - [x] `FileSourceStats` interface - - [x] Recognition strategy type definitions - -#### Configuration Management -- [x] Create `src/dataflow/sources/FileSourceConfig.ts` - - [x] Configuration validation logic - - [x] Default configuration constants - - [x] Configuration update handlers - - [x] Strategy-specific configuration management - -#### Basic FileSource Implementation -- [x] Create `src/dataflow/sources/FileSource.ts` - - [x] Basic source initialization - - [x] Event subscription to FILE_UPDATED - - [ ] Granular event subscriptions (FILE_METADATA_CHANGED, FILE_CONTENT_CHANGED) - - [x] Basic file task detection - - [x] Smart update detection integration (basic implementation) - - [x] Selective property updates (updateFileTaskProperties) - - [x] Selective children updates (updateFileTaskChildren) - - [x] Event emission for file task updates - - [x] Basic cleanup and destroy methods - -#### Settings Integration -- [x] Update `src/common/setting-definition.ts` - - [x] Add FileSourceConfiguration to TaskProgressBarSettings - - [x] Update DEFAULT_SETTINGS with FileSource defaults - - [x] Add validation for FileSource settings - -- [x] Create settings UI components - - [x] `src/components/settings/FileSourceSettings.ts` - - [x] Recognition strategy configuration panels - - [x] File task properties configuration - - [x] Performance settings interface - -#### Unit Tests -- [x] Create `src/__tests__/file-source/` - - [x] `FileSourceConfig.test.ts` - Configuration validation tests - - [x] `FileSource.basic.test.ts` - Basic functionality tests - - [ ] `FileSourceUpdateDetector.test.ts` - Update detection logic tests (Phase 2) - - [ ] Test metadata change detection - - [ ] Test content change detection - - [ ] Test children structure detection - - [ ] Test hash comparison logic - - [ ] `RecognitionStrategies.test.ts` - Strategy testing framework (Phase 2) - -### Phase 2: Recognition Strategies (Week 3-4) - -#### Update Detection System -- [ ] Create `src/dataflow/sources/FileSourceUpdateDetector.ts` - - [ ] Update decision logic implementation - - [ ] Change type analysis (metadata vs content) - - [ ] Children structure change detection - - [ ] Previous state caching mechanism - - [ ] Hash-based property comparison - - [ ] Performance metrics collection - -#### Core Parser Implementation -- [ ] Create `src/dataflow/parsers/FileSourceParser.ts` - - [ ] Base recognition strategy framework - - [ ] Metadata extraction utilities - - [ ] File content analysis helpers - - [ ] Strategy result aggregation - - [ ] Selective parsing for updates - -#### Metadata-Based Recognition -- [ ] Implement metadata recognition strategy - - [ ] Frontmatter field checking - - [ ] Required vs optional field logic - - [ ] Metadata validation and parsing - - [ ] Default value assignment - -#### Tag-Based Recognition -- [ ] Implement tag recognition strategy - - [ ] Tag pattern matching (exact, prefix, contains) - - [ ] Tag extraction from file cache - - [ ] Multiple tag requirement logic - - [ ] Tag-based metadata extraction - -#### Template-Based Recognition -- [ ] Implement template recognition strategy - - [ ] Template path matching - - [ ] Template metadata inheritance - - [ ] Template instance detection - - [ ] Template-specific configuration - -#### Path-Based Recognition -- [ ] Implement path recognition strategy - - [ ] Path pattern matching (prefix, regex, glob) - - [ ] Path-based metadata assignment - - [ ] Exclude pattern handling - - [ ] Path hierarchy analysis - -#### Parser Entry Point -- [ ] Create `src/dataflow/parsers/FileSourceEntry.ts` - - [ ] Integration with existing parser architecture - - [ ] Strategy orchestration - - [ ] Result merging and conflict resolution - - [ ] Performance optimization - -#### Strategy Testing -- [ ] Comprehensive strategy tests - - [ ] `MetadataStrategy.test.ts` - - [ ] `TagStrategy.test.ts` - - [ ] `TemplateStrategy.test.ts` - - [ ] `PathStrategy.test.ts` - - [ ] Strategy integration tests - -### Phase 3: Integration & Augmentation (Week 5-6) - -#### File Task Augmentation -- [ ] Create `src/dataflow/augment/FileSourceAugmentor.ts` - - [ ] File task metadata enhancement - - [ ] Child task relationship building - - [ ] Metadata inheritance implementation - - [ ] Project data integration - -#### Repository Integration -- [ ] Update `src/dataflow/indexer/Repository.ts` - - [ ] File task storage and indexing - - [ ] File task query methods - - [ ] Integration with existing task cache - - [ ] Event handling for file task updates - -#### Event System Integration -- [ ] Update `src/dataflow/events/Events.ts` - - [ ] Add FileSource event types - - [ ] Add granular update events (FILE_METADATA_CHANGED, FILE_CONTENT_CHANGED) - - [ ] Add specific file task events (FILE_TASK_PROPERTY_CHANGED, FILE_TASK_CHILDREN_CHANGED) - - [ ] Add INLINE_TASK_CONTENT_CHANGED event - - [ ] Event payload definitions - - [ ] Sequence tracking for file tasks - -- [ ] Update `src/dataflow/Orchestrator.ts` - - [ ] FileSource initialization - - [ ] Event routing for file tasks - - [ ] Integration with existing sources - - [ ] Granular event handling logic - -#### Child Task Relationships -- [ ] Implement child task management - - [ ] Parent-child relationship tracking - - [ ] Child task discovery within files - - [ ] Relationship updates on file changes - - [ ] Orphaned task cleanup - -#### Metadata Inheritance System -- [ ] Implement inheritance logic - - [ ] Configurable inheritance fields - - [ ] Inheritance priority resolution - - [ ] Update propagation to child tasks - - [ ] Inheritance conflict resolution - -#### Integration Tests -- [ ] End-to-end integration testing - - [ ] `FileSourceDataflow.test.ts` - - [ ] `FileTaskRelationships.test.ts` - - [ ] `MetadataInheritance.test.ts` - - [ ] `EventFlow.test.ts` - -### Phase 4: Performance & Polish (Week 7-8) - -#### Specialized Indexing -- [ ] Create `src/dataflow/indexer/FileSourceIndex.ts` - - [ ] Optimized file task indexing - - [ ] Fast lookup structures - - [ ] Batch update operations - - [ ] Memory-efficient storage - -#### Worker Integration -- [ ] Update worker system for file tasks - - [ ] `src/dataflow/workers/FileSourceWorker.ts` - - [ ] Background file task processing - - [ ] Worker message protocol - - [ ] Performance monitoring - -#### Caching Implementation -- [ ] Create `src/dataflow/indexer/FileTaskCache.ts` - - [ ] File task state caching structure - - [ ] Frontmatter hash implementation - - [ ] Children ID set management - - [ ] Recognition result caching - - [ ] TTL-based cache invalidation - - [ ] Memory usage optimization - - [ ] Cache performance metrics - - [ ] State comparison utilities - -#### Settings UI Enhancement -- [ ] Advanced settings components - - [ ] Strategy priority configuration - - [ ] Custom recognition function editor - - [ ] Performance tuning interface - - [ ] Diagnostic tools - -#### Performance Testing -- [ ] Performance benchmark suite - - [ ] Large vault testing (1000+ files) - - [ ] Recognition performance metrics - - [ ] Memory usage profiling - - [ ] Worker performance validation - - [ ] Update detection performance tests - - [ ] Rapid file changes scenario - - [ ] Large file with many tasks - - [ ] Metadata-only updates - - [ ] Content-only updates - - [ ] Mixed update patterns - - [ ] `PerformanceOptimization.test.ts` - - [ ] Test early exit patterns - - [ ] Test selective processing - - [ ] Test cache hit rates - - [ ] Test event deduplication - -#### Documentation -- [ ] User documentation - - [ ] Feature overview guide - - [ ] Configuration examples - - [ ] Troubleshooting guide - - [ ] Best practices document - -### Phase 5: Advanced Features (Week 9-10) - -#### Custom Recognition Functions -- [ ] Implement custom function support - - [ ] JavaScript function parsing - - [ ] Sandboxed execution environment - - [ ] Function validation and testing - - [ ] Error handling and logging - -#### Advanced Conflict Resolution -- [ ] Sophisticated conflict handling - - [ ] Dual role (project/task) management - - [ ] Metadata priority rules - - [ ] User-defined resolution strategies - - [ ] Conflict notification system - -#### Bulk Operations -- [ ] Bulk file task operations - - [ ] Batch file task creation - - [ ] Bulk metadata updates - - [ ] Batch recognition re-evaluation - - [ ] Progress reporting for bulk ops - -#### Export/Import Functionality -- [ ] File task data portability - - [ ] Export file task configurations - - [ ] Import recognition strategies - - [ ] Backup and restore functionality - - [ ] Migration tools - -#### Advanced Filtering -- [ ] Enhanced query capabilities - - [ ] File task specific filters - - [ ] Recognition strategy filtering - - [ ] Child task aggregation filters - - [ ] Custom filter expressions - -## File Structure and Components - -### New Files to Create - -``` -src/ -├── types/ -│ └── file-source.d.ts # Core type definitions -├── dataflow/ -│ ├── sources/ -│ │ ├── FileSource.ts # Main FileSource implementation -│ │ ├── FileSourceConfig.ts # Configuration management -│ │ └── FileSourceUpdateDetector.ts # Update detection logic -│ ├── parsers/ -│ │ ├── FileSourceEntry.ts # Parser entry point -│ │ └── FileSourceParser.ts # Recognition strategies -│ ├── augment/ -│ │ └── FileSourceAugmentor.ts # File task augmentation -│ ├── indexer/ -│ │ ├── FileSourceIndex.ts # Specialized indexing -│ │ └── FileTaskCache.ts # File task state caching -│ └── workers/ -│ └── FileSourceWorker.ts # Background processing -├── components/ -│ └── settings/ -│ └── FileSourceSettings.ts # Settings UI -└── __tests__/ - └── file-source/ - ├── FileSourceConfig.test.ts - ├── FileSource.basic.test.ts - ├── FileSourceUpdateDetector.test.ts - ├── RecognitionStrategies.test.ts - ├── MetadataStrategy.test.ts - ├── TagStrategy.test.ts - ├── TemplateStrategy.test.ts - ├── PathStrategy.test.ts - ├── FileSourceDataflow.test.ts - ├── FileTaskRelationships.test.ts - ├── MetadataInheritance.test.ts - ├── EventFlow.test.ts - └── PerformanceOptimization.test.ts -``` - -### Files to Modify - -``` -src/ -├── common/ -│ └── setting-definition.ts # Add FileSource configuration -├── dataflow/ -│ ├── events/ -│ │ └── Events.ts # Add FileSource events and granular update events -│ ├── sources/ -│ │ └── ObsidianSource.ts # Emit granular events (FILE_METADATA_CHANGED, FILE_CONTENT_CHANGED) -│ ├── indexer/ -│ │ └── Repository.ts # File task integration -│ ├── Orchestrator.ts # FileSource initialization -│ └── createDataflow.ts # Factory updates -├── components/ -│ └── settings/ -│ └── TaskProgressBarSettingTab.ts # Settings integration -└── index.ts # Plugin initialization -``` - -## Dependencies and Integration Points - -### Internal Dependencies - -- **Dataflow Architecture**: Core event system, repository, orchestrator -- **Project System**: Resolver, ProjectConfigManager, ProjectDataCache -- **Task System**: Task types, metadata, parsing infrastructure -- **Settings System**: Setting definitions, UI components, validation -- **Worker System**: TaskWorkerManager, worker orchestration - -### External Dependencies - -- **Obsidian API**: Vault, MetadataCache, TFile, FileSystemAdapter -- **File System**: Path manipulation, file watching, metadata extraction -- **Performance**: Worker threads, caching, batch processing - -### Integration Points - -1. **Event System**: FILE_UPDATED → FileSource → FILE_TASK_UPDATED -2. **Repository**: File task storage alongside regular tasks -3. **QueryAPI**: Extended queries for file tasks -4. **Views**: File tasks displayed in all task views -5. **Project System**: Dual role management and conflict resolution - -## Progress Tracking Sections - -### Week 1-2: Core Infrastructure -**Status**: ✅ Completed -**Target Completion**: 2025-08-20 -**Completion**: 20/25 tasks (80% - Core functionality complete) - -**Priority Tasks**: -- [x] Core type definitions -- [x] Basic FileSource implementation -- [x] Settings integration -- [x] Initial unit tests - -**Implementation Notes**: -- Core FileSource infrastructure is fully functional -- Metadata and tag-based recognition strategies implemented -- Comprehensive configuration system with validation -- Full test coverage for core components -- TypeScript compilation passing without errors -- Ready for Phase 2 implementation - -### Week 3-4: Recognition Strategies -**Status**: ⏳ Not Started -**Target Completion**: [Date] -**Completion**: 0/18 tasks - -**Priority Tasks**: -- [ ] Metadata-based recognition -- [ ] Tag-based recognition -- [ ] Strategy testing framework -- [ ] Parser entry point - -### Week 5-6: Integration & Augmentation -**Status**: ⏳ Not Started -**Target Completion**: [Date] -**Completion**: 0/22 tasks - -**Priority Tasks**: -- [ ] Repository integration -- [ ] Event system integration -- [ ] Child task relationships -- [ ] Metadata inheritance - -### Week 7-8: Performance & Polish -**Status**: ⏳ Not Started -**Target Completion**: [Date] -**Completion**: 0/18 tasks - -**Priority Tasks**: -- [ ] Worker integration -- [ ] Caching implementation -- [ ] Performance testing -- [ ] User documentation - -### Week 9-10: Advanced Features -**Status**: ⏳ Not Started -**Target Completion**: [Date] -**Completion**: 0/15 tasks - -**Priority Tasks**: -- [ ] Custom recognition functions -- [ ] Bulk operations -- [ ] Advanced filtering -- [ ] Export/import functionality - -## Risk Assessment - -### High Risk Items -- **Performance Impact**: Large vaults with many files could impact startup time - - *Mitigation*: Worker-based processing, selective file scanning, caching -- **Memory Usage**: File tasks add to memory footprint - - *Mitigation*: Efficient indexing, lazy loading, configurable limits -- **Conflict Resolution**: Dual role files may create complex scenarios - - *Mitigation*: Clear precedence rules, user configuration options - -### Medium Risk Items -- **Configuration Complexity**: Many options may overwhelm users - - *Mitigation*: Sensible defaults, configuration wizard, presets -- **Event Loop Performance**: Additional event processing overhead - - *Mitigation*: Debounced events, batch processing, sequence optimization - -### Low Risk Items -- **Backward Compatibility**: New feature shouldn't break existing functionality - - *Mitigation*: Feature flag, disabled by default, comprehensive testing - -## Success Metrics - -### Functional Metrics -- [ ] All recognition strategies working correctly -- [ ] File tasks appear in all relevant views -- [ ] Child task relationships functioning -- [ ] Metadata inheritance working -- [ ] Settings interface complete and intuitive - -### Performance Metrics -- [ ] File task detection under 100ms for typical files -- [ ] Memory usage increase under 10% for equivalent functionality -- [ ] No noticeable impact on plugin startup time -- [ ] Worker processing provides measurable performance benefits - -### Quality Metrics -- [ ] 90%+ test coverage for FileSource components -- [ ] Zero regression in existing functionality -- [ ] User documentation complete and clear -- [ ] Configuration examples working as documented - -## Notes and Decisions - -### Architecture Decisions -- **FileSource as separate source**: Maintains clean separation from ObsidianSource -- **Event-driven integration**: Leverages existing event system for consistency -- **Strategy pattern**: Allows flexible recognition approaches -- **Metadata extension**: Extends existing task metadata rather than creating new types - -### Configuration Decisions -- **Disabled by default**: Conservative rollout approach -- **Multiple strategies**: Accommodates different user workflows -- **Extensive configuration**: Provides flexibility while maintaining usability - -### Performance Decisions -- **Worker integration**: Maintains UI responsiveness -- **Caching strategy**: Balances memory usage with performance -- **Selective processing**: Avoid processing irrelevant files - ---- - -**Last Updated**: [Current Date] -**Document Version**: 1.0 -**Next Review**: [Date] \ No newline at end of file diff --git a/docs/file-source-specification.md b/docs/file-source-specification.md deleted file mode 100644 index a388832d..00000000 --- a/docs/file-source-specification.md +++ /dev/null @@ -1,613 +0,0 @@ -# FileSource Feature Specification - -## Overview - -The FileSource feature extends the dataflow architecture to recognize files themselves as tasks based on their metadata properties. This enables a dual-role model where a file can simultaneously serve as both a Project (container for tasks) and a FileSource Task (a task with its own properties like due dates, status, etc.). - -## Architecture Alignment - -### Dataflow Integration - -FileSource integrates seamlessly into the existing dataflow architecture following established patterns: - -- **Source Pattern**: Follows the same pattern as `ObsidianSource` and `IcsSource` -- **Event-Driven**: Uses the centralized event system with proper sequence tracking -- **Separation of Concerns**: Maintains clear boundaries between parsing, augmentation, repository, and storage -- **Performance**: Leverages existing worker orchestration and caching mechanisms - -### Key Design Principles - -1. **Non-Intrusive**: Builds on existing file metadata parsing without breaking current functionality -2. **Dual Role Support**: A file can be both a Project and a Task without conflicts -3. **Flexible Recognition**: Multiple strategies for identifying files as tasks -4. **Configuration-Driven**: Extensive configuration options for different use cases - -## Core Concepts - -### File as Task - -A file becomes a FileSource Task when it meets configured recognition criteria: - -- **Metadata-Based**: File has specific frontmatter properties (e.g., `dueDate`, `status`, `priority`) -- **Tag-Based**: File contains specific tags (e.g., `#task`, `#project-task`, `#actionable`) -- **Template-Based**: File is created from or matches specific templates -- **Path-Based**: File location matches configured patterns - -### Dual Role Model - -Files can simultaneously serve as: - -1. **Project**: Container for child tasks within the file -2. **FileSource Task**: A task entity with its own metadata and lifecycle - -This dual role is managed through: -- **Namespace Separation**: Project data vs. task data are kept distinct -- **Hierarchical Relationships**: File-tasks can contain child tasks from within the file -- **Status Independence**: File status is separate from contained task statuses - -### Relationship with Projects - -FileSource integrates with the existing Project system: - -- **Project Enhancement**: Files that are Projects can also be tasks -- **Hierarchy Preservation**: Existing project hierarchies remain intact -- **Metadata Inheritance**: Child tasks can inherit metadata from file-tasks -- **Conflict Resolution**: Clear rules for handling conflicts between project and task metadata - -## Technical Design - -### Architecture Components - -``` -src/dataflow/sources/ -├── FileSource.ts # Main FileSource implementation -└── FileSourceConfig.ts # Configuration management - -src/dataflow/parsers/ -├── FileSourceEntry.ts # File-to-task parsing entry point -└── FileSourceParser.ts # Core file metadata → task conversion - -src/dataflow/augment/ -└── FileSourceAugmentor.ts # File task augmentation logic - -src/dataflow/indexer/ -└── FileSourceIndex.ts # Specialized indexing for file tasks - -src/types/ -└── file-source.d.ts # TypeScript definitions -``` - -### Data Flow - -``` -1. File Change → ObsidianSource → FILE_UPDATED event -2. FileSource subscribes to FILE_UPDATED events -3. FileSource evaluates recognition criteria -4. If match: FileSource → FILE_TASK_UPDATED event -5. Orchestrator → Repository.updateFileTasks() -6. Repository → TASK_CACHE_UPDATED event (with sourceSeq) -7. Views update with merged file tasks + regular tasks -``` - -### Event System - -New events added to the centralized event system: - -```typescript -Events = { - // ... existing events - FILE_TASK_DETECTED: "task-genius:file-task-detected", - FILE_TASK_UPDATED: "task-genius:file-task-updated", - FILE_TASK_REMOVED: "task-genius:file-task-removed", -} -``` - -### Task Metadata Extension - -File tasks use extended metadata: - -```typescript -interface FileSourceTaskMetadata extends StandardTaskMetadata { - /** Task source */ - source: "file-source"; - - /** Recognition strategy that identified this file as a task */ - recognitionStrategy: "metadata" | "tag" | "template" | "path"; - - /** Recognition criteria that matched */ - recognitionCriteria: string; - - /** File creation/modification timestamps */ - fileTimestamps: { - created: number; - modified: number; - }; - - /** Child task relationships */ - childTasks: string[]; // IDs of tasks within this file - - /** Project relationship (if file is also a project) */ - projectData?: { - isProject: boolean; - projectName?: string; - projectType?: string; - }; -} -``` - -## Configuration Schema - -### FileSource Configuration - -```typescript -interface FileSourceConfiguration { - /** Enable FileSource feature */ - enabled: boolean; - - /** Recognition strategies */ - recognitionStrategies: { - /** Metadata-based recognition */ - metadata: { - enabled: boolean; - /** Metadata fields that make a file a task */ - taskFields: string[]; // Default: ["dueDate", "status", "priority", "assigned"] - /** Require all fields or any field */ - requireAllFields: boolean; // Default: false - }; - - /** Tag-based recognition */ - tags: { - enabled: boolean; - /** Tags that make a file a task */ - taskTags: string[]; // Default: ["#task", "#actionable", "#todo"] - /** Tag matching mode */ - matchMode: "exact" | "prefix" | "contains"; // Default: "exact" - }; - - /** Template-based recognition */ - templates: { - enabled: boolean; - /** Template files or patterns */ - templatePaths: string[]; // Default: ["Templates/Task Template.md"] - /** Check template metadata */ - checkTemplateMetadata: boolean; // Default: true - }; - - /** Path-based recognition */ - paths: { - enabled: boolean; - /** Path patterns that contain file tasks */ - taskPaths: string[]; // Default: ["Projects/", "Tasks/"] - /** Pattern matching mode */ - matchMode: "prefix" | "regex" | "glob"; // Default: "prefix" - }; - }; - - /** File task properties */ - fileTaskProperties: { - /** Default task content source */ - contentSource: "filename" | "title" | "h1" | "custom"; // Default: "filename" - /** Custom content field (if contentSource is "custom") */ - customContentField?: string; - /** Strip file extension from content */ - stripExtension: boolean; // Default: true - /** Default status for new file tasks */ - defaultStatus: string; // Default: " " - /** Default priority for new file tasks */ - defaultPriority?: number; - }; - - /** Relationship configuration */ - relationships: { - /** Enable file-task to child-task relationships */ - enableChildRelationships: boolean; // Default: true - /** Inherit metadata from file to child tasks */ - enableMetadataInheritance: boolean; // Default: true - /** Metadata fields to inherit */ - inheritanceFields: string[]; // Default: ["project", "priority", "context"] - }; - - /** Performance configuration */ - performance: { - /** Enable worker processing for file tasks */ - enableWorkerProcessing: boolean; // Default: true - /** Cache file task results */ - enableCaching: boolean; // Default: true - /** Cache TTL in milliseconds */ - cacheTTL: number; // Default: 300000 (5 minutes) - }; -} -``` - -### Default Configuration - -```typescript -const DEFAULT_FILE_SOURCE_CONFIG: FileSourceConfiguration = { - enabled: false, - recognitionStrategies: { - metadata: { - enabled: true, - taskFields: ["dueDate", "status", "priority", "assigned"], - requireAllFields: false - }, - tags: { - enabled: true, - taskTags: ["#task", "#actionable", "#todo"], - matchMode: "exact" - }, - templates: { - enabled: false, - templatePaths: ["Templates/Task Template.md"], - checkTemplateMetadata: true - }, - paths: { - enabled: false, - taskPaths: ["Projects/", "Tasks/"], - matchMode: "prefix" - } - }, - fileTaskProperties: { - contentSource: "filename", - stripExtension: true, - defaultStatus: " ", - defaultPriority: undefined - }, - relationships: { - enableChildRelationships: true, - enableMetadataInheritance: true, - inheritanceFields: ["project", "priority", "context"] - }, - performance: { - enableWorkerProcessing: true, - enableCaching: true, - cacheTTL: 300000 - }, -}; -``` - -## Implementation Roadmap - -### Phase 1: Core Infrastructure (Week 1-2) - -**Components to Implement:** -- [ ] `src/types/file-source.d.ts` - Core type definitions -- [ ] `src/dataflow/sources/FileSourceConfig.ts` - Configuration management -- [ ] `src/dataflow/sources/FileSource.ts` - Basic source implementation -- [ ] Settings integration for FileSource configuration -- [ ] Unit tests for core components - -**Deliverables:** -- Basic FileSource that can detect metadata-based file tasks -- Configuration system fully integrated -- Test coverage for core functionality - -### Phase 2: Recognition Strategies (Week 3-4) - -**Components to Implement:** -- [ ] `src/dataflow/parsers/FileSourceParser.ts` - Recognition strategy implementations -- [ ] `src/dataflow/parsers/FileSourceEntry.ts` - Parser entry point -- [ ] Tag-based recognition -- [ ] Template-based recognition -- [ ] Path-based recognition -- [ ] Integration tests for all strategies - -**Deliverables:** -- All recognition strategies functional -- Comprehensive strategy testing -- Performance benchmarks - -### Phase 3: Integration & Augmentation (Week 5-6) - -**Components to Implement:** -- [ ] `src/dataflow/augment/FileSourceAugmentor.ts` - File task augmentation -- [ ] Repository integration for file tasks -- [ ] Event system integration -- [ ] Child task relationship management -- [ ] Metadata inheritance system - -**Deliverables:** -- Full dataflow integration -- File-task to child-task relationships -- Metadata inheritance working - -### Phase 4: Performance & Polish (Week 7-8) - -**Components to Implement:** -- [ ] `src/dataflow/indexer/FileSourceIndex.ts` - Specialized indexing -- [ ] Worker integration for performance -- [ ] Caching implementation -- [ ] Settings UI components -- [ ] Documentation and examples - -**Deliverables:** -- Optimized performance for large vaults -- Complete settings interface -- User documentation -- Migration guide - -### Phase 5: Advanced Features (Week 9-10) - -**Components to Implement:** -- [ ] Custom recognition function support -- [ ] Advanced conflict resolution -- [ ] Bulk operations for file tasks -- [ ] Export/import functionality -- [ ] Advanced filtering for file tasks - -**Deliverables:** -- Advanced user customization options -- Bulk management capabilities -- Integration with existing tools - -## API Specifications - -### FileSource Class - -```typescript -export class FileSource { - constructor( - private app: App, - private config: FileSourceConfiguration - ); - - /** Initialize the FileSource */ - initialize(): void; - - /** Check if a file should be treated as a task */ - shouldCreateFileTask(filePath: string): Promise; - - /** Convert a file to a FileSource task */ - createFileTask(filePath: string): Promise | null>; - - /** Update an existing file task */ - updateFileTask(filePath: string): Promise | null>; - - /** Remove a file task */ - removeFileTask(filePath: string): Promise; - - /** Get all file tasks */ - getAllFileTasks(): Promise[]>; - - /** Update configuration */ - updateConfiguration(config: Partial): void; - - /** Get statistics */ - getStats(): FileSourceStats; - - /** Cleanup and destroy */ - destroy(): void; -} -``` - -### Recognition Strategy Interface - -```typescript -interface RecognitionStrategy { - /** Strategy name */ - name: string; - - /** Check if file matches this strategy */ - matches(filePath: string, fileContent: string, fileCache: CachedMetadata): boolean; - - /** Extract task metadata from file */ - extractMetadata(filePath: string, fileContent: string, fileCache: CachedMetadata): Partial; - - /** Get strategy configuration */ - getConfig(): any; - - /** Update strategy configuration */ - updateConfig(config: any): void; -} -``` - -### Query API Extensions - -```typescript -// Extensions to existing QueryAPI -interface QueryAPI { - /** Get all file tasks */ - getFileTasks(): Promise[]>; - - /** Get file tasks by criteria */ - getFileTasksByStrategy(strategy: string): Promise[]>; - - /** Get child tasks for a file task */ - getChildTasks(fileTaskId: string): Promise; - - /** Get file task for a specific file */ - getFileTaskByPath(filePath: string): Promise | null>; -} -``` - -## Testing Strategy - -### Unit Tests - -- **Recognition Strategy Tests**: Each strategy with various file configurations -- **FileSource Core Tests**: Basic functionality, event handling, configuration -- **Metadata Extraction Tests**: Parsing different file types and frontmatter formats -- **Configuration Validation Tests**: Ensure configuration changes are properly handled - -### Integration Tests - -- **Dataflow Integration**: End-to-end file task creation and updates -- **Event Flow Tests**: Verify proper event emission and handling -- **Repository Integration**: File task storage and retrieval -- **View Integration**: File tasks appearing in various views - -### Performance Tests - -- **Large Vault Tests**: 1000+ files with mixed file tasks -- **Recognition Performance**: Speed of strategy evaluation -- **Memory Usage**: Memory consumption with large numbers of file tasks -- **Worker Performance**: Performance gains from worker processing - -### Edge Case Tests - -- **Dual Role Conflicts**: Files that are both projects and tasks -- **Circular Dependencies**: File tasks with circular child relationships -- **Invalid Configurations**: Handling of malformed recognition criteria -- **File System Events**: Rapid file changes, renames, deletions - -## Migration Considerations - -### Backward Compatibility - -- **Existing Functionality**: All current features remain unchanged -- **Configuration**: FileSource disabled by default -- **Data Integrity**: No changes to existing task data -- **Performance**: No impact when FileSource is disabled - -### Migration Path - -1. **Incremental Rollout**: Feature flag for gradual enablement -2. **Configuration Wizard**: Guided setup for common use cases -3. **Data Migration**: Tools to convert existing project files to file tasks -4. **Documentation**: Clear migration guides and examples - -### Rollback Strategy - -- **Clean Disable**: FileSource can be completely disabled without data loss -- **Data Preservation**: File task data stored separately, can be ignored -- **Event Cleanup**: Clean removal of FileSource events and handlers - -## Performance Optimization - -### Update Detection Strategy - -FileSource implements intelligent update detection to minimize unnecessary processing: - -#### Metadata Changes -- **Detection**: Uses Obsidian's MetadataCache for efficient frontmatter monitoring -- **Processing**: Only updates file task properties, not entire file -- **Events**: FILE_METADATA_CHANGED → FILE_TASK_PROPERTY_CHANGED -- **Optimization**: Diff-based property updates avoid full re-parsing - -#### Content Changes -- **Detection**: Analyzes change type to determine impact -- **Processing**: - - File not a task: Skip FileSource update entirely - - File is a task: Check if children structure changed - - Only task content: Trigger INLINE_TASK_CONTENT_CHANGED -- **Events**: FILE_CONTENT_CHANGED → conditional processing - -#### Children Structure Detection -- **Optimization**: Only checks task IDs, not content -- **Caching**: Maintains previous state for comparison -- **Threshold**: Only updates on add/remove, not content changes -- **Performance**: O(n) comparison using Set operations - -### Event Granularity - -Fine-grained events prevent cascading updates: - -```typescript -Events = { - // Granular file events - FILE_METADATA_CHANGED: "task-genius:file-metadata-changed", - FILE_CONTENT_CHANGED: "task-genius:file-content-changed", - - // Specific file task events - FILE_TASK_PROPERTY_CHANGED: "task-genius:file-task-property-changed", - FILE_TASK_CHILDREN_CHANGED: "task-genius:file-task-children-changed", - - // Inline task events - INLINE_TASK_CONTENT_CHANGED: "task-genius:inline-task-content-changed" -} -``` - -### Update Decision Logic - -```typescript -interface UpdateDecision { - update: boolean; - reason: 'not-a-file-task' | 'task-status-changed' | - 'task-properties-changed' | 'children-structure-changed' | - 'no-relevant-changes'; - details?: any; -} - -class FileSourceUpdateDetector { - async shouldUpdateFileTask( - filePath: string, - changeReason: 'metadata' | 'content' | 'create' | 'delete' - ): Promise { - // Smart detection logic based on change type - // Minimizes false positives and unnecessary updates - } -} -``` - -### Performance Characteristics - -#### Typical Operations -- **Metadata update**: < 10ms (property extraction only) -- **Children structure check**: < 20ms (ID comparison only) -- **Full file task update**: < 50ms (includes augmentation) -- **Inline task update (no file task)**: 0ms FileSource overhead - -#### Memory Optimization -- **State caching**: ~100 bytes per file task -- **Children ID cache**: ~20 bytes per child task -- **Total overhead**: < 1MB for 1000 file tasks - -#### Batch Processing -- **Debounced updates**: 300ms delay for rapid changes -- **Batch merging**: Multiple file updates processed together -- **Worker offloading**: Heavy processing in background threads - -### Cache Strategy - -```typescript -interface FileTaskCache { - // Minimal cache for change detection - fileTaskExists: boolean; - frontmatterHash: string; // Quick property change detection - childTaskIds: Set; // Structure tracking only - lastUpdated: number; -} -``` - -### Optimization Techniques - -1. **Early Exit Patterns** - - Non-task files skip processing immediately - - Known unchanged files use cached results - - Quick hash comparisons before deep analysis - -2. **Selective Processing** - - Only parse changed sections - - Reuse unchanged metadata - - Incremental children updates - -3. **Smart Caching** - - TTL-based cache invalidation - - Content hash validation - - Memory-bounded cache size - -4. **Event Deduplication** - - Sequence-based duplicate detection - - Merge rapid sequential updates - - Coalesce related events - -## Security Considerations - -### File Access - -- **Read-Only Operations**: FileSource only reads file metadata -- **Path Validation**: All file paths validated and sanitized -- **Permission Checks**: Respect Obsidian's file access permissions - -### Configuration Security - -- **Input Validation**: All configuration inputs validated -- **Custom Functions**: Custom recognition functions sandboxed -- **Path Traversal**: Protection against path traversal attacks - -## Conclusion - -The FileSource feature represents a natural evolution of the Task Genius plugin, extending the powerful dataflow architecture to support files as first-class task entities. The design maintains backward compatibility while providing flexible, performant, and user-friendly file task management. - -The dual-role model allows users to organize their work hierarchically (files as projects containing tasks) while also treating files themselves as actionable items with due dates, priorities, and status tracking. This bridges the gap between project management and task management within Obsidian. - -The implementation follows established architectural patterns, ensuring maintainability and consistency with the existing codebase. The extensive configuration options provide flexibility for various user workflows while maintaining simplicity for basic use cases. \ No newline at end of file diff --git a/docs/filesource-architecture-review.md b/docs/filesource-architecture-review.md deleted file mode 100644 index c91b8233..00000000 --- a/docs/filesource-architecture-review.md +++ /dev/null @@ -1,144 +0,0 @@ -# FileSource 架构审查报告 - -## 概述 -FileSource 是一个新实现的数据源组件,用于将文件识别为任务并集成到 dataflow 架构中。本报告审查了 FileSource 的设计实现,并评估了其与现有 dataflow 架构的集成情况。 - -## 当前状态 - -### 已实现功能 -1. **文件识别策略** - - 基于元数据(frontmatter)的识别 - - 基于标签的识别 - - 模板和路径策略(预留接口) - - 灵活的状态映射系统 - -2. **事件处理** - - 订阅 FILE_UPDATED 事件 - - 发射 file-task-updated 和 file-task-removed 事件 - - 防抖机制(300ms)避免频繁更新 - -3. **缓存管理** - - FileTaskCache 跟踪文件任务状态 - - FrontmatterHash 用于变更检测 - - 统计信息跟踪 - -### 待集成部分 -FileSource 已完全实现但尚未集成到 DataflowOrchestrator 中。需要的集成步骤包括: -1. 在 Orchestrator 构造函数中初始化 FileSource -2. 订阅 FILE_TASK_UPDATED 和 FILE_TASK_REMOVED 事件 -3. 扩展 Repository 以处理文件任务 -4. 更新 QueryAPI 以合并文件任务到查询结果 - -## 架构设计评估 - -### 优点 -1. **模块化设计**:FileSource 完全独立,遵循 dataflow 的数据源模式 -2. **配置灵活性**:通过 FileSourceConfig 提供丰富的配置选项 -3. **性能优化**:实现了防抖、缓存和增量更新机制 -4. **事件驱动**:与现有事件系统良好集成 - -### 潜在问题与建议 - -#### 1. 重复计算问题 -**问题**:FileSource 在处理文件时需要获取项目数据,这可能与 Orchestrator 的处理产生重复。 - -**分析**: -- FileSource 独立获取项目数据(通过 project/Resolver) -- Orchestrator 也会为同一文件获取项目数据 -- 但由于 ProjectDataCache 的存在,实际不会产生重复计算 - -**建议**: -- 当前设计可接受,缓存机制有效避免了重复计算 -- 未来可考虑通过事件传递项目数据,进一步优化 - -#### 2. 事件循环风险 -**问题**:FileSource 订阅 FILE_UPDATED 事件,可能与 ObsidianSource 产生冲突。 - -**分析**: -- FileSource 监听 FILE_UPDATED 来识别文件任务 -- ObsidianSource 发射 FILE_UPDATED 事件 -- 存在潜在的事件循环风险 - -**建议**: -- 使用序列号(Seq)机制防止循环 -- FileSource 应忽略自己触发的更新 -- 考虑使用不同的事件通道避免冲突 - -#### 3. 数据合并策略 -**问题**:文件任务与普通任务如何在 Repository 中合并? - -**当前设计缺陷**: -- Repository 当前只处理文件内的任务和 ICS 事件 -- 没有专门处理文件级任务的机制 -- QueryAPI 需要扩展以合并三种数据源 - -**建议**: -```typescript -// Repository 扩展建议 -class Repository { - private fileTasks: Map = new Map(); // 新增:文件任务存储 - - async updateFileTask(filePath: string, task: Task): Promise { - this.fileTasks.set(filePath, task); - // 发射更新事件 - } - - async all(): Promise { - const regularTasks = await this.indexer.getAllTasks(); - const fileTaskArray = Array.from(this.fileTasks.values()); - return [...regularTasks, ...this.icsEvents, ...fileTaskArray]; - } -} -``` - -#### 4. 性能考虑 -**问题**:初始扫描可能处理大量文件。 - -**当前实现**: -- 同步处理所有文件 -- 没有批处理或并行处理 - -**建议**: -- 实现批处理机制 -- 考虑使用 Worker 进行并行处理 -- 添加进度报告机制 - -## 集成路线图 - -### 第一阶段:基础集成 -1. 在 Orchestrator 中初始化 FileSource -2. 添加事件监听器 -3. 扩展 Repository 支持文件任务 -4. 更新 QueryAPI 合并逻辑 - -### 第二阶段:优化 -1. 实现批处理和并行扫描 -2. 优化项目数据传递 -3. 添加更多识别策略(模板、路径) -4. 实现智能更新检测 - -### 第三阶段:高级功能 -1. 支持文件任务的子任务 -2. 实现文件任务的双向同步 -3. 添加文件任务的特殊视图 -4. 支持文件任务的批量操作 - -## 结论 - -FileSource 的实现质量良好,遵循了 dataflow 架构的设计原则。主要需要关注的是: - -1. **集成工作**:需要将 FileSource 正式集成到 Orchestrator 中 -2. **数据合并**:Repository 需要扩展以正确处理三种数据源 -3. **性能优化**:大规模文件扫描需要优化 -4. **避免冲突**:确保与现有系统的事件处理不产生冲突 - -通过 ProjectDataCache 的缓存机制,重复计算的担忧已得到有效解决。FileSource 的设计是合理的,只需完成集成工作即可投入使用。 - -## 建议的下一步行动 - -1. 完成 FileSource 与 Orchestrator 的集成 -2. 扩展 Repository 以支持文件任务存储 -3. 更新 QueryAPI 的查询逻辑 -4. 添加集成测试确保三种数据源正确合并 -5. 优化初始扫描性能 -6. 更新用户文档说明新功能 \ No newline at end of file diff --git a/docs/onboarding-intro-fix.md b/docs/onboarding-intro-fix.md deleted file mode 100644 index f8556a4b..00000000 --- a/docs/onboarding-intro-fix.md +++ /dev/null @@ -1,276 +0,0 @@ -# Onboarding Intro Step 修复文档 - -## 问题描述 - -在引导流程(Onboarding)的 Intro 步骤中,第四条消息(intro-line-4)在显示后立即被清除,用户无法阅读完整内容。 - -**问题消息内容:** -> "In the current version, Task Genius provides a brand new visual and interactive experience: Fluent; while also providing the option to return to the previous interface. Which one do you prefer?" - -## 根本原因 - -### 错误的实现逻辑 - -在重构后的代码中(commit 8f5daebd),`IntroStep.ts` 的实现逻辑是: - -```typescript -// 错误的实现 -new TypingAnimation(typingContainer, messages, () => { - // 打字完成后立即切换步骤 - footerEl.style.display = ""; - controller.setStep(OnboardingStep.MODE_SELECT); // ❌ 这里切换步骤 -}); -``` - -当 `controller.setStep(OnboardingStep.MODE_SELECT)` 被调用时: -1. `ModeSelectionStep.render()` 被触发 -2. 该方法首先调用 `contentEl.empty()` 清空内容 -3. `intro-line-4` 消息被立即清除 -4. 用户几乎看不到消息内容 - -### 原始的正确逻辑 - -在旧版本中(commit 491e2a6),`IntroTyping` 组件的实现是: - -```typescript -// 正确的实现 -this.introTyping.render(this.onboardingContentEl, () => { - // 打字完成后,在同一容器中添加模式选择 - const modeContainer = this.onboardingContentEl.createDiv({ - cls: "intro-mode-selection-container" - }); - - this.modeSelection.render(modeContainer, this.state.uiMode, (mode) => { - this.state.uiMode = mode; - // 用户选择后才显示 footer - this.footerEl.style.display = ''; - this.updateButtonStates(); - }); -}); -``` - -**关键区别:** -- ✅ 不切换步骤,保持在 INTRO 步骤 -- ✅ 在同一个 `contentEl` 中追加模式选择 UI -- ✅ `intro-line-4` 消息保留在页面上 -- ✅ 用户可以完整阅读消息后再选择模式 - -## 解决方案 - -### 修改的文件 - -1. **`src/components/features/onboarding/steps/IntroStep.ts`** - - 修改 `TypingAnimation` 的 `onComplete` 回调 - - 不再切换到 MODE_SELECT 步骤 - - 而是在同一容器中渲染模式选择 UI - -2. **`src/components/features/onboarding/steps/ModeSelectionStep.ts`** - - 添加新方法 `renderInline()` - - 该方法不清空容器,直接在给定容器中渲染 - - 接受自定义的 `onSelect` 回调 - -### 具体实现 - -#### IntroStep.ts 修改 - -```typescript -// Start typing animation -new TypingAnimation(typingContainer, messages, () => { - // After typing completes, show mode selection in same container - const modeContainer = introWrapper.createDiv({ - cls: "intro-mode-selection-container" - }); - - // Render mode selection inline (without clearing intro-line-4) - ModeSelectionStep.renderInline( - modeContainer, - controller, - (mode: UIMode) => { - // User selected a mode, show footer with Next button - controller.setUIMode(mode); - footerEl.style.display = ""; - } - ); -}); -``` - -#### ModeSelectionStep.ts 新增方法 - -```typescript -/** - * Render mode selection inline (for intro step) - * This version doesn't clear the container and calls a custom callback - */ -static renderInline( - containerEl: HTMLElement, - controller: OnboardingController, - onSelect: (mode: UIMode) => void -) { - // Get current state - const currentMode = controller.getState().uiMode; - - // Create cards configuration - const cardConfigs: SelectableCardConfig[] = [ - // ... 卡片配置 - ]; - - // Render selectable cards - const card = new SelectableCard( - containerEl, - cardConfigs, - { - containerClass: "selectable-cards-container", - cardClass: "selectable-card", - showPreview: true, - }, - (mode) => { - onSelect(mode); // 调用自定义回调 - } - ); - - // Set initial selection - if (currentMode) { - card.setSelected(currentMode); - } - - // Add info alert - Alert.create( - containerEl, - t("You can change this option later in settings"), - { - variant: "info", - className: "mode-selection-tip", - } - ); -} -``` - -## 用户体验流程 - -修复后的用户体验流程: - -1. **打字动画阶段** - - 显示 "Hi," - - 显示 "Thank you for using Task Genius" - - 显示长文本,然后淡出前三条消息 - - 显示 `intro-line-4` 消息(关键消息) - -2. **模式选择阶段** - - `intro-line-4` 消息**保留在页面上** - - 在消息下方显示模式选择卡片(Fluent vs Legacy) - - 用户可以完整阅读消息内容 - - 用户选择模式后,显示 Next 按钮 - -3. **下一步** - - 用户点击 Next 按钮 - - 才清除内容并进入下一个步骤 - -## CSS 样式支持 - -相关的 CSS 样式已经存在于 `src/styles/onboarding.css`: - -```css -/* Mode selection container that appears after intro typing */ -.intro-mode-selection-container { - animation: fadeInFromBottom 0.6s ease-out; - animation-fill-mode: both; - width: 100%; - margin-top: var(--size-4-10); -} - -.intro-line-4 { - font-size: clamp(1rem, 2vw, 1.4rem); - color: var(--text-muted); - line-height: 1.8; - margin-bottom: var(--size-4-5); -} -``` - -## 测试验证 - -构建成功,无错误: - -```bash -npm run build -# ✅ Build successful -# dist\main.js 3.7mb -# dist\main.css 345.1kb -``` - -## 导航逻辑修复 - -### 问题 - -修复 intro 消息显示后,发现了新的导航问题: - -当用户在 INTRO 步骤中选择模式后点击 Next,会经过以下流程: -1. INTRO → MODE_SELECT(因为 handleNext 中 INTRO 的下一步是 MODE_SELECT) -2. MODE_SELECT 被渲染(但用户已经选择过了) -3. 用户再次点击 Next -4. MODE_SELECT → FLUENT_COMPONENTS(**跳过了 FLUENT_PLACEMENT**) - -### 解决方案 - -修改 `OnboardingController.ts` 中的 `handleNext()` 逻辑: - -```typescript -case OnboardingStep.INTRO: - // Mode selection is now inline in INTRO step - // So we skip MODE_SELECT and go directly based on selected mode - if (this.state.uiMode === 'fluent') { - nextStep = OnboardingStep.FLUENT_PLACEMENT; // ✅ 正确跳转 - } else { - // Legacy mode: check for existing changes - if (this.state.userHasChanges) { - nextStep = OnboardingStep.SETTINGS_CHECK; - } else { - nextStep = OnboardingStep.USER_LEVEL_SELECT; - } - } - break; - -case OnboardingStep.MODE_SELECT: - // This step is now integrated into INTRO, but keep for backward compatibility - if (this.state.uiMode === 'fluent') { - nextStep = OnboardingStep.FLUENT_PLACEMENT; // ✅ 修复:不再跳过 - } else { - // Legacy mode: check for existing changes - if (this.state.userHasChanges) { - nextStep = OnboardingStep.SETTINGS_CHECK; - } else { - nextStep = OnboardingStep.USER_LEVEL_SELECT; - } - } - break; -``` - -### 修复后的流程 - -**Fluent 模式:** -1. INTRO(包含模式选择) -2. FLUENT_PLACEMENT(选择 Sideleaves 或 Inline) -3. FLUENT_COMPONENTS(组件预览) -4. SETTINGS_CHECK 或 USER_LEVEL_SELECT(根据是否有更改) - -**Legacy 模式:** -1. INTRO(包含模式选择) -2. SETTINGS_CHECK(如果有更改)或 USER_LEVEL_SELECT(如果没有更改) - -## 总结 - -通过恢复原始的实现逻辑并修复导航逻辑,现在: - -**消息显示:** -- ✅ `intro-line-4` 消息完整显示在页面上 -- ✅ 在模式选择卡片上方保留 -- ✅ 用户有充足时间阅读 -- ✅ 只有在点击 Next 后才被清除 - -**导航流程:** -- ✅ INTRO 步骤包含模式选择(内联) -- ✅ 选择 Fluent 后正确进入 FLUENT_PLACEMENT -- ✅ 选择 Legacy 后根据配置进入相应步骤 -- ✅ 不会跳过任何必要的步骤 - -这符合原始设计意图,提供了更好的用户体验。 - diff --git a/docs/oncompletion-feature-guide.md b/docs/oncompletion-feature-guide.md deleted file mode 100644 index 3a2ac4f2..00000000 --- a/docs/oncompletion-feature-guide.md +++ /dev/null @@ -1,237 +0,0 @@ -# OnCompletion Feature Guide - -## Overview - -The OnCompletion feature allows you to define automatic actions that occur when a task is marked as completed. This is useful for workflows like archiving completed tasks, triggering dependent tasks, or moving tasks to different locations. - -## Architecture - -The OnCompletion system consists of: -- **OnCompletionManager**: Core manager that listens for task completion events -- **Action Executors**: Individual executors for each action type (delete, move, archive, etc.) -- **Event System**: Integration with `task-genius:task-completed` event -- **WriteAPI Integration**: Automatic triggering when tasks are completed via API - -## Setup - -The OnCompletion feature is automatically initialized when the plugin loads with indexer enabled. No additional configuration is required. - -## Usage - -### Task Metadata Format - -Add an `onCompletion` property to your task metadata: - -#### Simple Format (Emoji) -```markdown -- [ ] Task content 🏁 delete -- [ ] Task content 🏁 keep -- [ ] Task content 🏁 archive -- [ ] Task content 🏁 move:Projects/Archive.md -- [ ] Task content 🏁 complete:task-id-1,task-id-2 -- [ ] Task content 🏁 duplicate:Projects/Templates.md -``` - -#### Dataview Format -```markdown -- [ ] Task content [onCompletion:: delete] -- [ ] Task content [onCompletion:: keep] -- [ ] Task content [onCompletion:: archive] -- [ ] Task content [onCompletion:: move:Projects/Archive.md] -- [ ] Task content [onCompletion:: complete:task-id-1,task-id-2] -- [ ] Task content [onCompletion:: duplicate:Projects/Templates.md] -``` - -#### JSON Format (Advanced) -```markdown -- [ ] Task content 🏁 {"type":"move","targetFile":"Archive.md","section":"## Completed"} -- [ ] Task content 🏁 {"type":"complete","taskIds":["id1","id2"],"cascade":true} -- [ ] Task content 🏁 {"type":"archive","archiveFile":"2024-Archive.md","preserveMetadata":true} -``` - -## Action Types - -### DELETE -Removes the task from the file when completed. -```markdown -- [ ] Temporary task 🏁 delete -``` - -### KEEP -Keeps the task as completed (default behavior, useful for overriding). -```markdown -- [ ] Important task 🏁 keep -``` - -### ARCHIVE -Moves the task to an archive file (default: "Archive.md" in same folder). -```markdown -- [ ] Task to archive 🏁 archive -- [ ] Custom archive 🏁 archive:Completed/2024.md -``` - -### MOVE -Moves the task to a different file or section. -```markdown -- [ ] Task to move 🏁 move:Another File.md -- [ ] Move to section 🏁 {"type":"move","targetFile":"File.md","section":"## Done"} -``` - -### COMPLETE -Automatically completes other tasks when this task is completed. -```markdown -- [ ] Parent task 🏁 complete:child-task-id-1,child-task-id-2 -- [ ] Cascade completion 🏁 {"type":"complete","taskIds":["id1"],"cascade":true} -``` - -### DUPLICATE -Creates a copy of the task in another location when completed. -```markdown -- [ ] Template task 🏁 duplicate:Templates/Recurring.md -- [ ] Duplicate and reset 🏁 {"type":"duplicate","targetFile":"Tomorrow.md","resetStatus":true} -``` - -## Event Flow - -1. User marks task as completed (via UI, command, or API) -2. WriteAPI detects completion and triggers `task-genius:task-completed` event -3. OnCompletionManager receives the event -4. Manager parses the `onCompletion` metadata -5. Appropriate executor is invoked -6. Action is performed (delete, move, archive, etc.) -7. Result is logged - -## Integration Points - -### WriteAPI -The WriteAPI automatically triggers the completion event: -- `updateTask()` - When `completed: true` is set -- `updateTaskStatus()` - When task is marked complete -- `updateCanvasTask()` - Canvas tasks also trigger events - -### Editor Extensions -- `monitorTaskCompletedExtension` - Monitors inline completions -- `status-switcher` - Triggers on status changes -- `status-cycler` - Triggers on cycle operations - -### Canvas Support -Canvas tasks fully support OnCompletion: -```javascript -// Canvas task with onCompletion -{ - "type": "text", - "text": "- [ ] Canvas task 🏁 delete", - ... -} -``` - -## Error Handling - -If an OnCompletion action fails: -1. Error is logged to console -2. Task remains completed -3. No rollback occurs -4. User is not notified (silent failure) - -To debug issues: -1. Open Developer Console (Ctrl+Shift+I) -2. Look for "OnCompletionManager" logs -3. Check for parsing or execution errors - -## Best Practices - -1. **Use simple format** for basic actions (delete, keep, archive) -2. **Use JSON format** for complex configurations -3. **Test actions** on non-critical tasks first -4. **Validate file paths** exist before using move/archive -5. **Use task IDs** carefully with complete action - -## Examples - -### Daily Task Cleanup -```markdown -## Daily Tasks -- [ ] Review emails 🏁 delete -- [ ] Update status report 🏁 move:Completed/2024-08.md -- [ ] Team standup 🏁 delete -``` - -### Project Dependencies -```markdown -## Project Steps -- [ ] Design mockups 🆔 design-001 -- [ ] Implement frontend 🆔 frontend-001 🏁 complete:testing-001 -- [ ] Write tests 🆔 testing-001 🏁 complete:deploy-001 -- [ ] Deploy to production 🆔 deploy-001 -``` - -### Recurring Task Template -```markdown -## Templates -- [ ] Weekly review 🏁 duplicate:Next Week.md -- [ ] Monthly report 🏁 {"type":"duplicate","targetFile":"Next Month.md","resetStatus":true} -``` - -## Configuration - -Currently, OnCompletion actions are defined per-task via metadata. Global configuration options may be added in future versions. - -## Limitations - -- Actions are not undoable -- Circular dependencies in `complete` action may cause issues -- File operations may fail if target doesn't exist -- No UI for configuring actions (metadata only) - -## Migration from TaskManager - -The OnCompletion feature is fully compatible with the new Dataflow architecture: - -| Component | Old (TaskManager) | New (Dataflow) | -|-----------|------------------|----------------| -| Manager | Part of TaskManager | Standalone OnCompletionManager | -| Events | Manual triggering | Automatic via WriteAPI | -| Canvas | Limited support | Full support | -| Performance | Synchronous | Asynchronous | - -## Testing OnCompletion - -To test if OnCompletion is working: - -1. Create a test task: -```markdown -- [ ] Test task 🏁 delete -``` - -2. Mark it complete using: - - Click the checkbox - - Use keyboard shortcut - - Use WriteAPI - -3. Check that the task is deleted - -4. Check console for logs: -``` -[Plugin] OnCompletionManager initialized -handleTaskCompleted {task object} -parseResult {config object} -``` - -## Troubleshooting - -### OnCompletion not triggering -- Ensure indexer is enabled in settings -- Check that task has valid onCompletion metadata -- Verify task-completed event is firing (check console) -- Ensure OnCompletionManager is loaded - -### Action failing -- Check file paths are correct -- Ensure target files exist for move/archive -- Verify task IDs exist for complete action -- Check console for specific error messages - -### Performance issues -- Large batch operations may be slow -- Consider using delete instead of archive for many tasks -- Avoid deep cascade chains in complete action \ No newline at end of file diff --git a/docs/parser-refactoring-plan.md b/docs/parser-refactoring-plan.md deleted file mode 100644 index be2c5fe9..00000000 --- a/docs/parser-refactoring-plan.md +++ /dev/null @@ -1,262 +0,0 @@ -# Parser Refactoring Plan - -## Current State Analysis - -### 1. Parser Duplication Issues - -#### Canvas Parser Chain (3 layers) -``` -src/parsers/canvas-parser.ts (redirect) - → src/dataflow/core/CanvasParser.ts (implementation) - → src/dataflow/parsers/CanvasEntry.ts (entry point) -``` - -**Current Usage:** -- Tests import from `src/parsers/canvas-parser.ts` (2 test files) -- Worker imports directly from `src/dataflow/core/CanvasParser.ts` -- Orchestrator uses `parseCanvas()` from `CanvasEntry.ts` - -#### TaskParserConfig Duplication -- **Old**: `src/types/task.d.ts:267` - Simple interface with regex patterns -- **New**: `src/types/TaskParserConfig.ts:12` - Comprehensive with 60+ fields -- **Active Usage**: All 13 imports use the new TaskParserConfig.ts - -#### Parser Implementation Overlap -- **MarkdownTaskParser**: Core implementation (1700+ lines) -- **ConfigurableTaskParser**: Extends MarkdownTaskParser with time parsing -- **FileMetadataTaskParser**: Separate implementation for metadata -- **TaskParsingService**: High-level orchestrator - -### 2. Dependency Analysis - -```mermaid -graph TD - A[Orchestrator] --> B[CanvasEntry::parseCanvas] - B --> C[CanvasParser::parseCanvasFile] - C --> D[ConfigurableTaskParser] - - E[Tests] --> F[canvas-parser.ts redirect] - F --> C - - G[Worker] --> C - - H[TaskParsingService] --> D - H --> I[FileMetadataTaskParser] -``` - -## Refactoring Steps - -### Phase 1: Immediate Cleanup (Low Risk) - -#### 1.1 Remove Canvas Parser Redirect -**Files to modify:** -- Delete: `src/parsers/canvas-parser.ts` -- Update imports in: - - `src/__tests__/CanvasParser.test.ts` - - `src/__tests__/CanvasIntegration.test.ts` - -**Change:** -```typescript -// Before -import { CanvasParser } from '../parsers/canvas-parser'; - -// After -import { CanvasParser } from '../dataflow/core/CanvasParser'; -``` - -#### 1.2 Remove Old TaskParserConfig -**Files to modify:** -- Remove interface from `src/types/task.d.ts:267-284` -- No import changes needed (all use the new one) - -### Phase 2: Consolidate Canvas Parsing (Medium Risk) - -#### 2.1 Merge CanvasEntry into CanvasParser -**Goal:** Single entry point for Canvas parsing - -**New structure:** -```typescript -// src/dataflow/core/CanvasParser.ts -export class CanvasParser { - // Existing implementation - - // Add entry function from CanvasEntry - static async parseCanvas( - filePath: string, - fileContent: string, - plugin: TaskProgressBarPlugin - ): Promise { - // Merge logic from CanvasEntry - } -} -``` - -#### 2.2 Update Canvas Updater -**Goal:** Share parsing logic with CanvasParser - -**Files to modify:** -- `src/parsers/canvas-task-updater.ts` - - Import Canvas types from CanvasParser - - Reuse node parsing logic - -### Phase 3: Unified Parser Architecture (High Impact) - -#### 3.1 Create Unified Parser Registry -```typescript -// src/parsing/ParserRegistry.ts -export class ParserRegistry { - private parsers: Map; - - register(extension: string, parser: BaseParser) { } - parse(file: TFile, config: TaskParserConfig): Promise { } -} -``` - -#### 3.2 Standardize Parser Interface -```typescript -// src/parsing/BaseParser.ts -export interface BaseParser { - parse(content: string, config: TaskParserConfig): Promise; - update(content: string, updates: TaskUpdate[]): Promise; - supports(file: TFile): boolean; -} -``` - -#### 3.3 Implement Specific Parsers -``` -src/parsing/ -├── BaseParser.ts -├── ParserRegistry.ts -├── parsers/ -│ ├── MarkdownParser.ts -│ ├── CanvasParser.ts -│ └── ICSParser.ts -└── updaters/ - ├── MarkdownUpdater.ts - └── CanvasUpdater.ts -``` - -## Migration Strategy - -### Step-by-Step Execution - -1. **Week 1**: Phase 1 - Immediate Cleanup - - Remove redirects and duplicates - - Run full test suite - - Monitor for issues - -2. **Week 2**: Phase 2.1 - Canvas Consolidation - - Merge CanvasEntry into CanvasParser - - Update Orchestrator imports - - Test Canvas functionality - -3. **Week 3**: Phase 2.2 - Updater Integration - - Refactor Canvas updater - - Share parsing logic - - Test update operations - -4. **Week 4+**: Phase 3 - Architecture (Optional) - - Implement if needed for new features - - Gradual migration - - Maintain backward compatibility - -## Testing Requirements - -### Unit Tests -- [ ] Canvas parsing tests pass -- [ ] Markdown parsing tests pass -- [ ] Task parsing service tests pass -- [ ] Worker tests pass - -### Integration Tests -- [ ] Canvas file operations -- [ ] Task updates in Canvas -- [ ] Cross-file task references -- [ ] Performance benchmarks - -### Manual Testing -- [ ] Create tasks in Canvas -- [ ] Update task status in Canvas -- [ ] Parse complex Canvas files -- [ ] Verify no UI regressions - -## Risk Assessment - -### Low Risk Changes -- Removing redirect files -- Removing unused interfaces -- Import path updates - -### Medium Risk Changes -- Merging CanvasEntry logic -- Sharing parsing code between parser/updater - -### High Risk Changes -- Full architecture refactor -- Parser registry implementation -- Breaking API changes - -## Success Metrics - -1. **Code Reduction**: ~200 lines removed from duplicates -2. **Performance**: No regression in parsing speed -3. **Maintainability**: Single source of truth for each parser -4. **Test Coverage**: All tests passing -5. **Bug Count**: No new parsing issues reported - -## Rollback Plan - -If issues arise: -1. Revert commits in reverse order -2. Restore redirect files temporarily -3. Document specific failure points -4. Create targeted fixes - -## Implementation Status - -### Phase 1: Immediate Cleanup ✅ COMPLETED -- ✅ Removed canvas-parser.ts redirect file -- ✅ Updated test imports to use dataflow/core/CanvasParser -- ✅ Removed old TaskParserConfig from task.d.ts -- ✅ All tests passing -- ✅ TypeScript compilation clean -- ✅ Build successful - -### Phase 2.1: Canvas Consolidation ✅ COMPLETED -- ✅ Added static parseCanvas method to CanvasParser -- ✅ Removed CanvasEntry.ts file -- ✅ Updated Orchestrator to use CanvasParser.parseCanvas() -- ✅ Updated WorkerOrchestrator dynamic imports -- ✅ Reduced Canvas parsing layers from 3 to 2 - -### Phase 2.2: Canvas Updater Integration ✅ COMPLETED -- ✅ Added utility methods to CanvasParser: - - parseCanvasJSON() - Safe JSON parsing - - findTextNode() - Find node by ID - - getTextNodes() - Get all text nodes -- ✅ Refactored canvas-task-updater to use shared utilities -- ✅ Eliminated duplicate Canvas JSON parsing logic -- ✅ All Canvas functionality tested and working - -## Results Summary - -### Code Improvements -- **Lines Removed**: ~60 lines (redundant code) -- **Files Deleted**: 2 (canvas-parser.ts, CanvasEntry.ts) -- **Architecture**: Simplified from 3-layer to 2-layer Canvas parsing -- **Code Reuse**: Shared utilities between parser and updater - -### Quality Metrics -- ✅ **TypeScript**: No compilation errors -- ✅ **Build**: Successful (3.3MB bundle) -- ✅ **Tests**: Canvas-specific tests passing -- ✅ **Backward Compatibility**: Maintained through static methods - -## Next Actions - -1. ✅ Document current state -2. ✅ Remove canvas-parser.ts redirect -3. ✅ Remove old TaskParserConfig interface -4. ✅ Test changes -5. ✅ Proceed with Phase 2 -6. ⬜ Consider Phase 3 (Unified Parser Architecture) for future major refactor \ No newline at end of file diff --git a/docs/review-2025-09-04.md b/docs/review-2025-09-04.md deleted file mode 100644 index 4c2a8c37..00000000 --- a/docs/review-2025-09-04.md +++ /dev/null @@ -1,74 +0,0 @@ -# Review: 待修复 Bugs 列表(2025-09-04) - -说明:以下清单基于当前代码与已知反馈整理。已确认不纳入本次修复范围的项: -- [已修复] 任务在 Task View 中编辑后不更新(原问题 #2) -- [暂不考虑] List View 渲染卡顿(原问题 #4) -- [已在新架构修复] 启动时任务重建漏项(原问题 #7) - -以下为仍需修复的问题与建议方案: - -## 1) 过滤器输入导致实时加载,Task View 打开时性能大幅下降(原问题 #1) -- 现象:在“视图过滤器”输入每个字符时就触发刷新,造成频繁过滤与重渲染。 -- 涉及模块: - - 过滤器组件事件广播:`src/components/features/task/filter/ViewTaskFilter.ts`(saveStateToLocalStorage → 触发 `task-genius:filter-changed`) - - TaskView 处理防抖:`src/pages/TaskView.ts`(`debouncedApplyFilter` 当前延时较短) - - 文本搜索即时刷新:`src/components/features/task/view/content.ts`(`filterTasks`) -- 修复建议: - - 提高 TaskView 内 `debouncedApplyFilter` 延迟(建议 300–500ms)。 - - 在 ViewTaskFilter 中对输入框 `input` 事件增加本地防抖;或编辑时 `saveStateToLocalStorage(triggerRealtimeUpdate=false)`,提交/失焦时再广播。 - - ContentComponent 的文本搜索同样使用防抖(约 300ms)。 -- 验收:连续输入时渲染频率显著下降;大型数据集输入体验流畅,无明显掉帧。 - -## 2) 视图顺序在设置中调整后,Task View 侧边栏未按顺序展示(原问题 #3) -- 现象:Views & Index 页中上下移动视图后,侧边栏排序不一致。 -- 涉及模块: - - 设置页顺序变更:`src/components/features/settings/tabs/ViewSettingsTab.ts` - - 侧边栏渲染:`src/components/features/task/view/sidebar.ts`(当前将视图分为默认/自定义/底部组,改变了原始顺序) -- 修复建议: - - 侧边栏按 `settings.viewConfiguration` 原始顺序渲染(仅过滤 `visible`),不要再额外分组打乱顺序。 - - 若需“底部固定组”(habit/calendar/gantt/kanban),可在设置层面赋予“区域”属性,或在数据层维护顺序一致性。 -- 验收:在设置中调整顺序后,侧边栏显示顺序与设置数组一致。 - -## 3) 编辑包含任务的文件时,Task View 展示的文本出现偏差,需关闭重开才正确(原问题 #5) -- 现象:外部编辑器或 Obsidian 编辑某文件中的任务时,Task View 中对应条目短时间显示不一致内容。 -- 涉及模块: - - 任务缓存更新与视图刷新:`src/pages/TaskView.ts`(监听 `TASK_CACHE_UPDATED`,`debouncedViewUpdate` 刷新) - - 列表项 Markdown 渲染:`src/components/features/task/view/listItem.ts`(`renderMarkdown` 使用 `task.originalMarkdown`) -- 修复建议: - - 稳定事件节奏:适度加大 `debouncedViewUpdate` 延迟或合并短时间内的多次更新,避免“半成品”快照进入 UI。 - - 确保外部写入后再触发一次最终刷新(Orchestrator rebuild/快照完成时统一触发视图更新)。 - - 列表项渲染前确保完全清理旧内容(已 empty)并使用最新 `originalMarkdown` 渲染。 -- 验收:编辑文件后,无需关闭重开,Task View 即可稳定显示最终内容,无中间错乱。 - -## 4) 自定义任务视图从分栏(split)模式无法切回单列模式(原问题 #6) -- 现象:编辑自定义视图时,无法从“两列视图”回到“单列视图”。 -- 涉及模块: - - 两列视图基类与切换:`src/components/features/task/view/TwoColumnViewBase.ts` - - 视图创建/切换:`src/pages/TaskView.ts`(根据 `viewConfig.specificConfig.viewType === "twocolumn"` 决定) - - 视图配置弹窗:`src/components/features/task/view/modals/ViewConfigModal.ts` -- 修复建议: - - 在 ViewConfigModal 中暴露“视图布局类型”(single/twocolumn)切换;保存后更新 `viewConfiguration`。 - - TaskView 在 `onSettingsUpdate` 时销毁/隐藏旧的 TwoColumn 组件,恢复常规 ContentComponent,并刷新当前视图。 -- 验收:用户可在配置中自由切换布局,保存后侧边栏对应视图正确切换模式。 - -## 5) 勾选一个习惯时,偶发地所有习惯都被勾选(原问题 #8) -- 现象:点击单个 Habit 打勾,偶发地其它 Habit 也被更新。 -- 涉及模块: - - Habit 勾选入口:`src/components/features/habit/habitcard/habitcard.ts`(`toggleHabitCompletion`) - - 写回与索引:`src/managers/habit-manager.ts`(`updateHabitInObsidian` 与后续 habit 索引更新) -- 修复建议: - - 校验 Habit `id` 的唯一性与全链路使用一致;仅更新目标 habit 的 `completions[today]`。 - - 写回模板/标记仅定位目标 habit 片段,避免通配批量替换。 - - 索引更新(map 遍历)中保持纯函数式修改,仅对目标 habit 变动,防止共享引用导致联动。 -- 验收:反复勾选单一 Habit,不会影响其它 Habit 的状态。 - -## 6) Ctrl+K 未能聚焦设置菜单的搜索框(原问题 #9) -- 现象:提示文案包含 “(Ctrl+K)”,但快捷键无法聚焦搜索输入。 -- 涉及模块: - - 设置搜索组件:`src/components/features/settings/components/SettingsSearchComponent.ts` - - 设置页入口:`src/setting.ts`(创建搜索组件) -- 修复建议: - - 在 SettingsSearchComponent 内注册全局键盘监听:在 macOS 使用 `metaKey + K`,Windows/Linux 使用 `ctrlKey + K`,触发 `searchInputEl.focus()` 与结果弹出。 - - 或通过 SettingTab 的 Scope 定义快捷键绑定到聚焦行为。 -- 验收:在设置页按下 Ctrl/Cmd+K,输入框获得焦点并可立即搜索。 - diff --git a/docs/storage-api-fixes.md b/docs/storage-api-fixes.md deleted file mode 100644 index 272c039b..00000000 --- a/docs/storage-api-fixes.md +++ /dev/null @@ -1,78 +0,0 @@ -# Storage API 修复记录 - -## 完成的修复 - -### 1. API 不匹配问题 -- **问题**: Storage.ts 使用了 LocalStorageCache 不存在的方法 `clearFile()` 和 `getKeys()` -- **修复**: - - 将所有 `clearFile()` 调用替换为 `removeFile()` - - 将所有 `getKeys()` 调用替换为 `allFiles()` 或 `allKeys()` - -### 2. 哈希校验逻辑不一致 -- **问题**: - - `storeRaw()` 使用任务数组计算哈希 - - `isRawValid()` 使用文件内容计算哈希 - - 导致校验失真 -- **修复**: - - 修改 `storeRaw()` 签名,增加可选的 `fileContent` 参数 - - 使用文件内容(如果提供)计算哈希,保持语义一致 - - 更新 Orchestrator.processFileImmediate() 调用,传入 fileContent - -### 3. clearNamespace 实现修正 -- **问题**: 原实现使用底层的完整键,而非路径化键 -- **修复**: - - 改为使用 `allFiles()` 获取路径化键 - - 按正确的前缀模式匹配和删除 - - 为每个命名空间定义明确的前缀映射 - -### 4. consolidated 快照 API 统一 -- **问题**: 混用了 `loadFile()` 和专用的 consolidated API -- **修复**: - - `loadConsolidated()` 改用 `loadConsolidatedCache()` - - `storeConsolidated()` 改用 `storeConsolidatedCache()` - - 保持与 LocalStorageCache 的设计一致 - -### 5. getStats() 统计方法修正 -- **问题**: 使用底层键统计,计数不准确 -- **修复**: - - 改用 `allFiles()` 获取路径化键 - - 按正确的前缀模式统计各命名空间的文件数 - -## 影响范围 - -### 修改的文件 -1. `/src/dataflow/persistence/Storage.ts` - 主要修复 -2. `/src/dataflow/Orchestrator.ts` - 更新 storeRaw() 调用参数 - -### 行为改进 -- ✅ 冷启动优先从快照加载,无需等待索引 -- ✅ 单文件内容校验准确可靠 -- ✅ 命名空间清理功能正常工作 -- ✅ 统计数据准确反映实际存储状态 -- ✅ 版本不兼容时正确清理过期缓存 - -## 后续建议 - -### 短期优化 -1. 考虑将 Keys 命名空间管理抽象为独立的 helper 类 -2. 添加单元测试覆盖所有存储操作 -3. 增加缓存命中率的监控指标 - -### 长期改进 -1. 实现渐进式 schema 迁移器,而非简单的版本检查删除 -2. 考虑添加缓存压缩机制以减少存储空间占用 -3. 实现更智能的缓存淘汰策略(LRU/LFU) - -## 验证清单 - -- [x] removeFile() 方法调用正常 -- [x] allFiles() 返回正确的路径化键 -- [x] clearNamespace 按前缀正确删除 -- [x] consolidated API 使用统一 -- [x] 哈希校验逻辑一致 -- [x] getStats() 统计准确 -- [x] Orchestrator 传参更新 - -## 相关文档 -- [TaskIndexer 迁移计划](./taskindexer-migration-plan.md) -- [Dataflow 架构文档](./dataflow-architecture.md) \ No newline at end of file diff --git a/docs/task-genius-refactor-plan.md b/docs/task-genius-refactor-plan.md deleted file mode 100644 index 21355037..00000000 --- a/docs/task-genius-refactor-plan.md +++ /dev/null @@ -1,232 +0,0 @@ -## Task Genius 数据流全面重构计划(Refactor Plan) - -### 目的(Goals) -- 去重与统一:消除项目识别、文件级元数据解析、任务解析、增强/继承、索引、缓存、持久化、事件传递在多处重复实现与分散入口的问题。 -- 稳定与持久:建立单一数据源与可验证的数据流,降低未来演进/扩展成本。 -- 一致与同步:保证视图数据与底层缓存/索引严格一致,避免“视图数据不同步”。 -- 快速冷启动:最大程度复用持久化数据,避免用户反复 reindex。 -- 事件驱动:所有上行/下行数据变更通过 Obsidian 事件系统传播,而不是上级组件直接 setTasks。 -- 增量更新:跟随 Obsidian 的 vault/metadataCache/设置事件做最小代价的增量更新。 - -### 非目标(Non-goals) -- 不改变用户可见的功能语义与现有配置的含义(除非标注为改进项)。 -- 不一次性大爆炸替换;采用阶段性迁移确保回退路径。 - ---- - -## 设计原则 -- 单一职责与单一真相源(Single Source of Truth): - - 项目识别只在 ProjectResolver(统一接口)进行;解析器与增强器不再分散探测。 - - 继承/增强只在 TaskAugmentor 进行;解析器仅负责“从文本抽取”。 -- 事件优于回调:统一使用 Obsidian workspace 事件分发数据变更,视图通过事件 + 查询 API 获取数据。 -- 可重放、可回退:Worker 与主线程遵循相同协议;主线程兜底。 -- 可持久与可验证:内容哈希 + 版本/架构版本管理;命名空间化缓存;精细化失效与一致性校验。 -- 增量优先:文件内容变动仅重解析该文件;项目配置变动仅重跑增强;设置变动按 scope 精准失效。 -- 向后兼容:提供 Adapter 兼容旧 setTasks 调用路径,逐步下线。 - ---- - -## 数据拥有权与边界(Ownership) -- 源事件(File events):ObsidianSource 拥有,统一发出内部文件事件。 -- 项目识别(Project):ProjectResolver 拥有,对外只暴露“文件 → {tgProject, enhancedMetadata}”。 -- 解析器(Parsers):Markdown/Canvas/FileLevel 仅负责“抽取任务/文件级任务”,不写入项目或其他增强信息。 -- 增强/继承(Augment):TaskAugmentor 拥有“task > file > project”的可配置优先级合并。 -- 索引(Indexing):TaskIndexer 拥有内存索引与查询,不做解析与增强。 -- 持久化(Persistence):StorageAdapter(基于 LocalStorageCache)拥有命名空间与 hash/版本校验。 -- 事件与查询(Events & Query):Events 模块拥有事件契约;QueryAPI 对外只读查询。 - ---- - -## 目标数据流(高层) -1) Obsidian 事件 → Sources 标准化为 FileChanged/FileDeleted/Renamed 等内部事件。 -2) ParsersEntry(根据文件类型)抽取: - - FileLevelTaskParser:从 frontmatter/tags 形成“文件级任务”。 - - MarkdownTaskParserEntry / CanvasTaskParserEntry:从正文生成“基础任务”。 -3) ProjectResolver 计算项目 + 项目增强元数据(可并行)。 -4) TaskAugmentor:将“文件级 + 正文任务”与“文件元数据 + 项目增强元数据”按策略合并到任务对象。 -5) TaskIndexer.updateIndexWithTasks(filePath, tasksEnhanced)。 -6) Persistence:写入命名空间缓存(见下);必要时更新 consolidated 索引快照。 -7) 事件广播 task-genius:task-cache-updated { changedFiles }。 -8) 视图订阅事件 → QueryAPI 拉取 → 渲染。 - ---- - -## 组件与目录结构(建议新增 src/dataflow/*) -- sources/ObsidianSource.ts - - 订阅 vault/metadataCache/设置事件;统一去抖与批量合并;发出内部文件事件。 -- project/ProjectResolver.ts - - 合并现有 ProjectConfigManager + ProjectDataCache/Worker 的“对外接口”。 - - 输入:filePath;输出:{ tgProject?, enhancedMetadata, timestamp }。 - - 统一“frontmatter 指定项目、目录 config、tag/link 提示”的优先级;可配置。 -- parsers/ - - MarkdownTaskParserEntry.ts(包装 ConfigurableTaskParser.parseLegacy) - - CanvasTaskParserEntry.ts(包装 CanvasParser) - - FileLevelTaskParser.ts(包装 FileMetadataTaskParser,禁用内部项目探测) -- augment/TaskAugmentor.ts - - 单一继承/增强实现: - - 标量:task 显式 > file > project > 默认 - - 数组:合并去重(保持稳定次序) - - 状态/完成:只取 task 行级 - - 复发:task 显式优先 - - 子任务继承:按 FileMetadataInheritance/设置 per-key 控制 -- workers/WorkerOrchestrator.ts - - 统一任务/项目命令:parseFileTasks、batchParse、computeProjectData、batchCompute - - 并发控制、重试、回退、指标 -- indexer/TaskRepository.ts - - 组合 TaskIndexer + Persistence;提供查询 API 的后端依赖 -- persistence/StorageAdapter.ts - - 命名空间 + hash(内容)+ 版本/架构版本 + 粒度化失效 - - Keyspace: - - tasks.raw: - - project.data: - - tasks.augmented: - - consolidated:taskIndex - - meta:version / meta:schemaVersion -- events/Events.ts - - 事件常量/载荷类型/帮助方法(emit/subscribe)。与 obsidian-ex.d.ts 契约一致。 -- api/QueryAPI.ts - - 为视图提供只读查询(按项目/标签/状态/时间窗口等),屏蔽内部实现细节。 - ---- - -## 最大化避免与现有功能重复的策略 -1) 单一入口与关停重复: - - FileMetadataTaskParser:关闭其内部项目探测,统一由 ProjectResolver 提供 project 值后在 Augmentor 注入。 - - ConfigurableTaskParser/CanvasParser:不处理项目/继承,仅返回“基础任务”。 - - TaskManager 内的解析/增强/持久化逻辑收敛到新模块,TaskManager 变为编排薄层。 -2) 功能所有权迁移表(旧 → 新): - - 项目识别:FileMetadataTaskParser.detectProjectFromFile / ProjectData* → ProjectResolver - - 继承/增强:ConfigurableTaskParser 内部继承 / FileMetadataInheritance 分散 → TaskAugmentor - - 数据广播:上层 setTasks → Events + QueryAPI - - Worker 管理:TaskWorkerManager/ProjectDataWorkerManager → WorkerOrchestrator(内部保留原 Worker) - - 持久化:LocalStorageCache 直接使用 → StorageAdapter 管理命名空间/版本/hash -3) Adapter 与 Deprecation: - - ViewComponentManager.setTasks 标记 deprecated;提供兼容 Adapter:setTasks 内部转为发事件 + 触发查询,避免一次性改动所有视图。 - - FileMetadataTaskParser 暴露“允许/禁止项目探测”开关;重构期禁用。 - ---- - -## 视图同步与一致性保证 -- 事件驱动 + 拉取查询:视图统一订阅 task-genius:task-cache-updated / filter-changed,随后调用 QueryAPI 拉取。彻底替代上级 setTasks 链接。 -- 原子性:单文件变更导出单批次“增强后任务”提交到 Indexer,再触发事件,视图永远看到同一版本。 -- 序号/时间戳:在广播载荷中携带 sequence/timestamp,视图可丢弃过期更新。 -- 去抖/批量:Sources 对频繁变动进行批处理,减少 UI 抖动。 -- 兼容策略:在迁移期间,旧视图通过 Adapter 仍可工作。 - ---- - -## 持久化与缓存策略 -- 命名空间: - - tasks.raw: → 基础解析结果 - - project.data: → {tgProject, enhancedMetadata} - - tasks.augmented: → Augmentor 合成产物(可选,提升冷启动) - - consolidated:taskIndex → 全量索引快照(可选) -- 版本与架构版本: - - meta:version(插件版本) + meta:schemaVersion(缓存结构版本);不兼容时精准清理对应命名空间。 -- 内容哈希: - - tasks.raw 基于文件内容 hash;project.data 基于“有效配置 + frontmatter + tags/links”等来源 hash。 - - 仅当 hash 改变时重算;mtime 仅用于快速预判。 -- 失效矩阵: - - 文件正文变动:重算 tasks.raw → augment → 更新 index → 事件。 - - 文件 frontmatter/tags 变动:重做 file→task 继承与 augment(若正文未变,可跳过正文解析)。 - - 项目配置变动:仅失效 project.data 与 tasks.augmented,重做 augment;跳过正文解析。 - - 设置变动:按 scope(解析/增强/索引)精准失效。 - ---- - -## 失败与回退 -- Worker 异常:自动回退主线程解析;熔断/退避重试;错误事件与日志。 -- 缓存损坏:校验失败则清理对应命名空间并重建;保留其余命名空间。 -- 事件风暴:限流与批处理;视图侧忽略过期序号。 - ---- - -## 性能与 SLO -- 冷启动:优先使用 consolidated:taskIndex 或 tasks.augmented,目标 P50 < 300ms(视库大小微调)。 -- 增量更新:单文件保存到视图更新 P95 < 150ms(含解析 + augment + index + 事件)。 -- 内存:索引结构保持与现有相当;新增缓存命名空间带来可控增量。 - ---- - -## 向后兼容与迁移 -- Adapter: - - 视图 setTasks 调用 → 转为发事件并触发 QueryAPI,从而兼容旧代码;逐视图切换到纯事件。 -- 逐步替换: - - ProjectResolver 接管后,禁用 FileMetadataTaskParser 的项目探测。 - - Augmentor 接管继承后,解析器不再做继承。 -- 配置兼容:沿用原设置字段并提供合理默认;新增 per-key 策略作为高级选项。 - ---- - -## 阶段性实施与检查清单 -Phase A:事件封装 + 查询 API(2 天) -- [ ] 新增 events/Events.ts,封装现有触发点(保持事件名兼容)。 -- [ ] 新增 api/QueryAPI.ts,提供最小查询(全部任务/按项目/按标签)。 -- [ ] TaskManager 触发统一走 Events.ts。 - -Phase B:解析入口收敛 + Augmentor(3 天) -- [ ] 新建 parsers/*Entry.ts;主线程路径先打通。 -- [ ] 新建 augment/TaskAugmentor.ts,落地继承策略(task>file>project)。 -- [ ] 修改 FileMetadataTaskParser:允许禁用项目探测(默认禁用)。 - -Phase C:持久化命名空间 + hash(2 天) -- [ ] StorageAdapter.ts:命名空间 + 版本/架构版本 + hash。 -- [ ] 冷启动优先加载 consolidated 或 tasks.augmented;兼容旧数据。 - -Phase D:WorkerOrchestrator(3 天) -- [ ] 合并任务/项目 worker 调度;统一命令协议与回退策略。 -- [ ] 指标与日志:成功率、延迟、退避情况。 - -Phase E:视图去 setTasks(试点 2 个视图)(3 天) -- [ ] 视图订阅事件 + QueryAPI 拉取;移除直接 setTasks。 -- [ ] 保留 Adapter 以兼容未迁移视图。 - -Phase F:项目配置变更仅增强重算(2 天) -- [ ] 变更监听 → 失效 project.data 与 tasks.augmented → augment → 事件。 - -Phase G:全面测试与性能调优(2 天) -- [ ] 单测/集成测补齐;SLO 校验;回归修复。 - ---- - -## 测试计划(重点) -- 冷启动:无修改 → 不 reindex;版本兼容 → 直接用。 -- 文件增量:正文变更、frontmatter/tags 变更、重命名/删除;仅影响对应文件。 -- 项目配置变更:仅增强重算;正文不解析。 -- 设置变更:按 scope 精准失效。 -- 事件一致性:视图通过事件 + 查询看到一致数据;序号去重验证。 -- 兼容回归: - - 空/Null 排序规则:空值永远排在非空之后(双向排序)。 - - 中文标签重复历史问题:复发任务创建链路校验不重复,解析层不二次注入。 -- 性能:P50/P95 指标达标;压力下稳定。 - ---- - -## 回退计划 -- 任意阶段可切回旧路径: - - 解析:保留旧 TaskWorkerManager/TaskManager 主路径开关。 - - 事件:保留 setTasks Adapter。 - - 缓存:清空新命名空间后回退旧 consolidated 流程。 - ---- - -## 开放问题(需确认) -- 事件载荷是否需要强制携带 diff(新增/删除/修改的 taskIds)以优化大视图刷新? -- 默认继承策略中是否存在“项目优先于文件”的字段(例如 SLA 类字段)? -- consolidated:taskIndex 是否纳入默认启用,还是作为可选以节省空间? - ---- - -## 附:事件契约(建议) -- task-genius:cache-ready { initial: boolean, timestamp, seq } -- task-genius:task-cache-updated { changedFiles?: string[], stats?, timestamp, seq } -- task-genius:file-updated { path, reason, timestamp } -- task-genius:project-data-updated { affectedFiles: string[], timestamp } -- task-genius:settings-changed { scopes: string[], timestamp } - -说明:保持与现有 obsidian-ex.d.ts 的兼容命名(如 task-cache-updated)。 - ---- - -## 结束语 -本方案以“单一真相源 + 事件驱动 + 命名空间缓存 + 可回退”为核心,最大化复用现有解析/索引能力,在不破坏现有功能的前提下,消除重复与耦合点,确保视图数据与缓存/索引一致。分阶段推进、可测可回退,可支撑后续长期演进。 diff --git a/docs/task-genius-refactor-spec.md b/docs/task-genius-refactor-spec.md deleted file mode 100644 index c58b30b3..00000000 --- a/docs/task-genius-refactor-spec.md +++ /dev/null @@ -1,164 +0,0 @@ -## Task Genius 数据流重构实施规范(Implementation Spec) - -本规范补充《task-genius-refactor-plan.md》,面向执行同学,提供可直接落地的事件载荷类型、QueryAPI 函数签名、StorageAdapter 的 Key 规则,以及示例代码与任务清单。 - ---- - -### 1. 事件载荷类型(建议) - -事件名称与 obsidian-ex.d.ts 兼容,并统一通过 Events.ts 导出常量与帮助方法。 - -- task-genius:cache-ready - - payload: { initial: boolean; timestamp: number; seq: number } -- task-genius:task-cache-updated - - payload: { changedFiles?: string[]; stats?: { total: number; changed: number }; timestamp: number; seq: number } -- task-genius:file-updated - - payload: { path: string; reason: "modify" | "frontmatter" | "rename" | "delete"; timestamp: number } -- task-genius:project-data-updated - - payload: { affectedFiles: string[]; reason?: string; timestamp: number } -- task-genius:settings-changed - - payload: { scopes: ("parser" | "augment" | "index" | "view")[]; timestamp: number } -- 保留:task-genius:task-completed/task-added/task-updated/task-deleted(按现有类型) - -辅助: -- seq 为单调递增序号(TaskRepository 维护) -- timestamp 为事件生成时间 - ---- - -### 2. QueryAPI 函数签名(草案) - -文件:src/dataflow/api/QueryAPI.ts - -- getAllTasks(): Promise -- getTasksByProject(projectName: string): Promise -- getTasksByTags(tags: string[]): Promise -- getTasksByStatus(completed: boolean): Promise -- getTasksByDateRange(opts: { from?: number; to?: number; field?: "due" | "start" | "scheduled" }): Promise -- getTaskById(id: string): Promise -- getIndexSummary(): Promise<{ total: number; byProject: Record; byTag: Record }> - -实现要点: -- 背后依赖 TaskRepository(组合 TaskIndexer + Persistence),严禁直接访问内部索引结构于视图层。 -- 函数返回的 Task 均为“增强后任务”。 - ---- - -### 3. StorageAdapter Key 规则与版本 - -文件:src/dataflow/persistence/StorageAdapter.ts - -- 命名空间规范(namespace:key) - - tasks.raw: - - project.data: - - tasks.augmented: - - consolidated:taskIndex - - meta:version(插件版本) - - meta:schemaVersion(缓存架构版本) - -- 哈希与版本 - - tasks.raw 记录:{ hash: string; time: number; version: string; schema: number; data: Task[] } - - project.data 记录:{ hash: string; time: number; version: string; schema: number; data: { tgProject?: TgProject; enhancedMetadata: Record } } - - tasks.augmented 记录:{ hash: string; time: number; version: string; schema: number; data: Task[] } - - consolidated:taskIndex 记录:{ time: number; version: string; schema: number; data: TaskCacheSnapshot } - -- 兼容策略 - - 版本或 schema 不兼容时仅清理受影响命名空间。 - - hash 优先判定是否需要重算;mtime 仅作为辅助。 - ---- - -### 4. 代码示例(2 段) - -示例 A:视图订阅事件 + QueryAPI 拉取(替代 setTasks) - -```ts -// 在某视图 onOpen 内 -import { subscribeTaskCacheUpdated } from "src/dataflow/events/Events"; -import { QueryAPI } from "src/dataflow/api/QueryAPI"; - -let unsub: () => void; -this.registerEvent( - (unsub = subscribeTaskCacheUpdated(async (payload) => { - const tasks = await QueryAPI.getTasksByProject(this.currentProject ?? ""); - this.renderer.render(tasks); // 视图自身的渲染方法 - })) -); - -// onClose 时 -if (unsub) unsub(); -``` - -示例 B:单文件变更 → 解析 + 增强 + 索引 + 事件 - -```ts -import { ParsersEntry } from "src/dataflow/parsers"; -import { ProjectResolver } from "src/dataflow/project/ProjectResolver"; -import { TaskAugmentor } from "src/dataflow/augment/TaskAugmentor"; -import { TaskRepository } from "src/dataflow/indexer/TaskRepository"; -import { emitTaskCacheUpdated } from "src/dataflow/events/Events"; -import { StorageAdapter } from "src/dataflow/persistence/StorageAdapter"; - -async function handleFileChanged(filePath: string) { - // 1. 尝试读取 tasks.raw(hash 命中则跳过正文解析) - const raw = await StorageAdapter.loadRaw(filePath); - const needsParse = !(raw && StorageAdapter.isRawValid(filePath, raw)); - const rawTasks = needsParse - ? await ParsersEntry.parseFile(filePath) // Markdown/Canvas/FileLevel 分流 - : raw.data; - - if (needsParse) await StorageAdapter.storeRaw(filePath, rawTasks); - - // 2. 读取/计算项目数据(可并行) - const proj = await ProjectResolver.getProjectData(filePath); - await StorageAdapter.storeProjectData(filePath, proj); - - // 3. 增强合并 - const augmented = await TaskAugmentor.merge({ filePath, rawTasks, project: proj }); - await StorageAdapter.storeAugmented(filePath, augmented); - - // 4. 更新索引 - await TaskRepository.updateFile(filePath, augmented); - - // 5. 广播事件 - emitTaskCacheUpdated({ changedFiles: [filePath], timestamp: Date.now() }); -} -``` - ---- - -### 5. 执行清单(给贡献者) - -1) 新增骨架文件 -- src/dataflow/events/Events.ts:事件常量与 emit/subscribe;内部维护 seq。 -- src/dataflow/api/QueryAPI.ts:空壳方法先返回现有 TaskManager 数据(过渡)。 -- src/dataflow/parsers/MarkdownTaskParserEntry.ts:包装现有 ConfigurableTaskParser.parseLegacy。 -- src/dataflow/parsers/CanvasTaskParserEntry.ts:包装现有 CanvasParser。 -- src/dataflow/parsers/FileLevelTaskParser.ts:包装现有 FileMetadataTaskParser,并添加“禁用项目探测”配置(默认禁用)。 -- src/dataflow/augment/TaskAugmentor.ts:实现继承策略(task>file>project);支持子任务控制。 -- src/dataflow/project/ProjectResolver.ts:统一项目识别接口;内部复用 ProjectConfigManager/ProjectDataCache。 -- src/dataflow/persistence/StorageAdapter.ts:命名空间 + 版本/schema + hash 校验;读写 helpers。 -- src/dataflow/indexer/TaskRepository.ts:组合 TaskIndexer 与 StorageAdapter;对外提供查询。 - -2) TaskManager 接入 -- 触发事件统一改为 Events.ts 的封装。 -- 冷启动改为优先读取 consolidated 或 tasks.augmented,失败再回落旧流程。 -- 单文件变更路径替换为“解析入口 + Augmentor + Repository”的新流水线(逐步灰度)。 - -3) 视图迁移(首批 1-2 个) -- 去除直接 setTasks 调用,改成订阅 task-cache-updated + QueryAPI 拉取。 -- 保留 Adapter 以兼容未迁移视图。 - -4) 持久化与失效策略 -- 引入命名空间 key 规则与 hash 计算;对项目配置变更只失效 project.data 与 tasks.augmented。 - -5) 测试 -- 单测:ParsersEntry、TaskAugmentor(继承策略)、StorageAdapter(hash/版本/失效)、ProjectResolver(优先级)。 -- 集成:单文件改动/重命名/删除、项目配置变更、冷启动、事件序号。 - -6) 文档 -- 在 README 或开发文档中标注 setTasks 已废弃(迁移至事件 + QueryAPI)。 - ---- - -如需我补充具体类型定义(TypeScript 接口)或更详细的函数注释,请告知要优先完善的模块。 diff --git a/docs/taskindexer-migration-plan.md b/docs/taskindexer-migration-plan.md deleted file mode 100644 index 363da069..00000000 --- a/docs/taskindexer-migration-plan.md +++ /dev/null @@ -1,82 +0,0 @@ -# TaskIndexer 迁移动计划 - -## 1. 目标 -- 将 TaskIndexer 从 `src/utils/import/TaskIndexer.ts` 迁移至 `src/dataflow/indexer/TaskIndexer.ts`。 -- 统一“索引层”的所有权到 dataflow 命名空间,减少新旧架构交叉依赖。 -- 保持功能零回归、提供兼容过渡(re-export),并具备可快速回滚能力。 - -## 2. 现状与依赖 -- 现有引用(至少): - - dataflow: `src/dataflow/indexer/Repository.ts` → `../../utils/import/TaskIndexer` - - legacy: `src/utils/TaskManager.ts` → `./import/TaskIndexer` -- 说明:Repository 属于 dataflow,却反向引用 utils 的 TaskIndexer;迁移后应改为本地引用 `./TaskIndexer`。 - -## 3. 分阶段迁移步骤 - -### 阶段 A:平滑迁移与适配(兼容期) -1) 移动实现 -- 将 `src/utils/import/TaskIndexer.ts` 的实现移动到 `src/dataflow/indexer/TaskIndexer.ts`。 -- 修正文件内部的相对导入路径(若有)。 - -2) 更新 dataflow 内部引用 -- 修改 `src/dataflow/indexer/Repository.ts` 导入: - - `import { TaskIndexer } from "./TaskIndexer";` - -3) 旧路径提供 re-export(保持旧架构可用) -- 将 `src/utils/import/TaskIndexer.ts` 改为仅转发: - ```ts - export { TaskIndexer } from "../../dataflow/indexer/TaskIndexer"; - ``` - -4) (可选)在 `src/dataflow/index.ts` 导出 TaskIndexer(仅当需要对外暴露) - -### 阶段 B:去耦旧架构依赖 -5) 旧 TaskManager 改用新路径 -- 在 `src/utils/TaskManager.ts` 将导入改为: - - `import { TaskIndexer } from "../dataflow/indexer/TaskIndexer";`(或继续依赖上一步 re-export,推荐直接走 dataflow) - -6) 全仓替换引用 -- 搜索引用旧路径的地方(包含相对路径与别名路径),替换为 dataflow 新路径或保留通过 re-export 过渡。 - -7) 校验环依赖 -- 确认 utils → dataflow 的依赖不会引入 dataflow ↔ utils 的循环(若存在,则保持 TaskManager 通过 re-export 访问)。 - -### 阶段 C:收尾与清理 -8) 文档更新 -- 更新架构文档中 TaskIndexer 所有权,归属 `src/dataflow/indexer`。 - -9) 清理 re-export(下个版本周期) -- 保留 `src/utils/import/TaskIndexer.ts` re-export 一个版本周期后,删除该文件。 - -10) 守护措施(可选) -- 在 `src/utils/import/` 目录添加 README 或 lint 规则,禁止新增 dataflow 相关实现,仅允许过渡性 re-export。 - -## 4. 任务清单(派工用) -- A1 移动实现并修正内部导入 -- A2 更新 Repository 导入路径 -- A3 添加 re-export 兼容层 -- B1 更新 TaskManager 导入为 dataflow 新路径 -- B2 全仓替换其他引用(如有) -- B3 编译/类型检查 + 本地运行验证 -- C1 更新 docs(dataflow-architecture 等) -- C2 移除 re-export(一个版本周期后) - -## 5. 验收标准(DoD) -- 构建与类型检查通过,无循环依赖警告 -- dataflow 默认路径正常: - - 冷启动从 Storage 快照恢复成功(Repository.initialize) - - 事件广播与视图刷新正常(CACHE_READY/TASK_CACHE_UPDATED) -- 旧 TaskManager 路径仍可回退使用(过渡期) -- 全仓再无对 `utils/import/TaskIndexer` 的直接实现引用(仅允许 re-export 在过渡期存在) - -## 6. 风险与回滚 -- 风险:隐性引用遗漏 - - 缓解:grep 全仓 `from "./import/TaskIndexer"` 与 `from "../../utils/import/TaskIndexer"`。 -- 风险:环依赖 - - 缓解:TaskManager 如引入环,则继续通过 re-export 访问;确认后再做进一步解耦。 -- 回滚:保留 re-export 不删即可回滚(Repository 可临时指回旧路径)。 - -## 7. 预估工作量 -- A–B:0.5–1 天(含全仓引用更新与验证) -- C:合并后 1 个版本周期内清理(0.5 天) - diff --git a/docs/taskmanager-to-dataflow-migration.md b/docs/taskmanager-to-dataflow-migration.md deleted file mode 100644 index 0708f6f3..00000000 --- a/docs/taskmanager-to-dataflow-migration.md +++ /dev/null @@ -1,169 +0,0 @@ -# TaskManager → Dataflow 架构迁移计划 - -本计划用于逐步替换仓库内对 TaskManager 的依赖,全面切换到 Dataflow 架构(QueryAPI + Repository + Events + WorkerOrchestrator + WriteAPI)。 - ---- - -## 1. 现存 TaskManager 依赖清单(待迁移点) - -以下为当前明确依赖 TaskManager 的文件与使用方式(以本仓库为范围): - -- src/index.ts - - 持有实例:`taskManager: TaskManager` - - 初始化:在 onload 时 `new TaskManager(...)` 并 `this.addChild(this.taskManager)` - - 与版本管理耦合:VersionManager 检测版本变化后调用 `taskManager.initialize()` 触发重建 - - 数据查询/回退:WriteAPI 的 `getTaskById` 优先 dataflow,失败则回退 `this.taskManager.getTaskById` - - 其它:`setProgressManager()`、`initialize()`、`getAllTasks()` 等调用路径 - -- src/pages/TaskView.ts - - 读取:`this.plugin.taskManager.getAllTasksWithSync()` / `this.plugin.taskManager.getAllTasks()` - - 用于初始化与后续刷新 - -- src/mcp/McpServer.ts - - 判断/桥接:在 dataflow 未启用时检查 `this.plugin.taskManager` 存在性 - - 绑定桥:`this.taskBridge = new TaskManagerBridge(this.plugin, this.plugin.taskManager)` - -- src/mcp/bridge/TaskManagerBridge.ts - - 广泛使用 TaskManager:查询/索引/更新/获取文件任务等(`getAllTasks`、`indexFile`、`getTasksForFile`、`updateTask` 等) - -- 文档说明(需更新): - - src/utils/README.md 描述了 TaskManager 是“Primary orchestrator”;迁移后将以 Dataflow 架构为主 - -> 备注:可能仍有零散依赖 `this.taskManager` 的地方,迁移期需通过全仓检索“`taskManager`”“`TaskManager`”逐步清理。 - ---- - -## 2. 迁移目标与原则 - -- 目标:所有读取、写入、索引、事件广播、缓存持久化均通过 Dataflow。 -- 原则: - - 渐进式切换:在开关/灰度下替换调用者,优先完成“读取路径”迁移,随后完成“写入路径”与“初始化/重建路径”迁移。 - - 兼容性:在切换窗口期保留 TaskManager 适配器与回退路径,直到完成验证。 - - 稳定性优先:每一阶段完成后提供可回退的 feature flag。 - ---- - -## 3. 分阶段实施计划(建议顺序) - -### Phase 0:开关与基础 -- 确认并使用既有 `settings.experimental.dataflowEnabled` 开关门控。 -- 在该开关打开时:严禁新的调用者再接入 TaskManager;新功能只接入 Dataflow。 - -### Phase 1:读取路径迁移(Views/MCP 查询) -- 目标:所有“读”都从 Dataflow 的 QueryAPI/Repository 取数,而非 TaskManager。 -- 任务: - 1. 视图层(以 TaskView 为起点) - - 改造 `TaskView`: - - 将 `loadTasksFromTaskManager()` 替换为基于 Dataflow 的查询: - - 订阅 Dataflow 事件 `CACHE_READY`(initial/非 initial)与 `TASK_CACHE_UPDATED` - - 初次加载:`dataflowOrchestrator.queryAPI.getAllTasks()` 或基于筛选的查询 - - 去除对 `this.plugin.taskManager` 的直接读取 - 2. MCP 查询层 - - 用 `DataflowBridge` 取代 `TaskManagerBridge`: - - 若缺功能(如按条件查询/搜索/按日期范围等),扩展 `DataflowBridge`,通过 `QueryAPI`/`Repository` 实现 - - 在 `McpServer` 中:当 dataflowEnabled 时,优先创建并使用 `DataflowBridge`,不再依赖 `TaskManagerBridge` - -- 验收:关闭 TaskManager 后,视图和 MCP 查询仍能完整工作(仅依赖 Dataflow)。 - -### Phase 2:写入路径统一(创建/更新/删除) -- 目标:所有写操作通过 Dataflow 的 WriteAPI + 事件回流(而非 TaskManager 的更新方法)。 -- 任务: - - 统一写入口:确保 UI/MCP 写操作均使用 `WriteAPI`(已存在) - - 监听 `WRITE_OPERATION_*` 与 `FILE_UPDATED`,由 Orchestrator 触发增量解析与索引 - - 从 `TaskManagerBridge` 中迁移写逻辑至 `DataflowBridge`(或直接调用 `WriteAPI`) - -- 验收:关闭 TaskManager 后,写入与后续实时更新(事件/视图刷新)正常。 - -### Phase 3:初始化/重建路径迁移 -- 目标:去除对 TaskManager 初始化与 VersionManager-重建的耦合,改由 Dataflow 主导冷启动与重建。 -- 任务: - - 在 `src/index.ts`: - - 若 dataflowEnabled:跳过 `new TaskManager(...)` 与其 `initialize()`、`setProgressManager()`、版本重建流程;以 Dataflow 的 `Repository.initialize()` + `Orchestrator.initialize()` 为唯一路径 - - 若需要版本驱动重建(兼容策略),在 Dataflow 中实现对应的重建触发(调用 `DataflowOrchestrator.rebuild()`) - -- 验收:dataflowEnabled 下,重启不再触发 TaskManager 重建路径;缓存与增量解析由 Dataflow 自洽。 - -### Phase 4:适配器/回退清理 -- 目标:在默认启用 Dataflow 后,移除大部分 TaskManager 依赖,保留最小回退。 -- 任务: - - 在配置中隐藏或标注 TaskManager 已废弃 - - 将 `TaskManagerBridge` 标记 deprecated,并在代码注释中引导迁移到 `DataflowBridge` - - 清理 src/utils/README.md 等文档中对 TaskManager 的“Primary orchestrator”描述,改为 Dataflow - -### Phase 5:彻底移除 TaskManager(最终) -- 前置条件:稳定运行一段时间(至少 1-2 个版本周期),无回退需求 -- 任务:移除 `src/managers/task-manager.ts` 与相关桥接/引用、设置项 - ---- - -## 4. 详细改动清单(按文件) - -- src/index.ts - - [Phase 3] dataflowEnabled 时:不实例化 TaskManager,不进入 VersionManager→TaskManager 的重建流程 - - [Phase 1/2] WriteAPI 只走 Dataflow,`getTaskById` 的 fallback 去除(或仅在禁用 dataflow 时保留) - -- src/pages/TaskView.ts - - [Phase 1] 替换为订阅 Dataflow 事件 + `QueryAPI` 拉取 - - 移除 `loadTasksFromTaskManager` / `this.plugin.taskManager` 依赖 - -- src/mcp/McpServer.ts - - [Phase 1] dataflowEnabled 时绑定 `DataflowBridge`(扩展其查询接口) - - 移除/降级 `TaskManagerBridge` 使用 - -- src/mcp/bridge/TaskManagerBridge.ts - - [Phase 2/4] 将功能迁移至 `DataflowBridge`,并标记 deprecated;最终删除 - -- 文档 - - src/utils/README.md:更新“核心架构图/职责”,以 Dataflow 为准 - -- (全仓) - - 检索与替换:`this.taskManager` / `TaskManager` 的 import/方法调用 - ---- - -## 5. 事件/查询对齐(供视图迁移参照) - -- 事件: - - 使用 Dataflow 事件中心(src/dataflow/events/Events.ts): - - `CACHE_READY`(initial 与非 initial) - - `TASK_CACHE_UPDATED`(批量或单文件更新) -- 查询: - - 使用 Dataflow `QueryAPI`: - - `getAllTasks()`、`getTasksByProject(project)`、`getTasksByTags(tags)`、`byDateRange({from,to,field})` 等(可按需扩展) - ---- - -## 6. 风险与回滚 - -- 风险: - - 视图或 MCP 仍有隐藏依赖 `TaskManager` - - 写入后事件链路与增量索引在部分场景不同步 -- 缓解: - - 阶段性灰度与双写/双读对比(仅限调试) - - 增强日志与 metrics(WorkerOrchestrator.metrics、Repository.persist 频率等) -- 回滚策略: - - 保留设置开关:关闭 dataflow 时恢复 TaskManager 初始化/路径 - ---- - -## 7. 建议的实施顺序与 PR 拆分 - -1) PR#1:视图读取改造(TaskView → Dataflow),不改写入与初始化 -2) PR#2:MCP 查询改造(TaskManagerBridge → DataflowBridge 扩展) -3) PR#3:写入统一(全面使用 WriteAPI + Dataflow 事件) -4) PR#4:启动/重建路径切换(dataflowEnabled 时禁用 TaskManager 初始化及其重建) -5) PR#5:清理与文档(deprecated 标记、README 更新) -6) PR#6:移除 TaskManager(最终) - ---- - -## 8. 待办检查清单(简版) - -- [ ] 全仓检索并列出所有 `taskManager`/`TaskManager` 引用 -- [ ] TaskView 读取改为 Dataflow + 事件订阅 -- [ ] MCP 查询改为 DataflowBridge + QueryAPI -- [ ] 写入统一走 WriteAPI(Dataflow),确认事件与索引链路 -- [ ] dataflowEnabled 下禁用 TaskManager 初始化与重建 -- [ ] 文档更新与 deprecated 标记 -- [ ] 最终删除 TaskManager 代码 - diff --git a/docs/taskmanager-writeapi-gap-analysis.md b/docs/taskmanager-writeapi-gap-analysis.md deleted file mode 100644 index d2866bbd..00000000 --- a/docs/taskmanager-writeapi-gap-analysis.md +++ /dev/null @@ -1,229 +0,0 @@ -# TaskManager 与 WriteAPI/QueryAPI 功能差异分析报告 - -## 功能覆盖状态总览 - -### ✅ 已完全覆盖的功能 - -#### 写入操作 (WriteAPI 已实现) -- `updateTask` - 更新任务属性 -- `createTask` - 创建新任务 -- `deleteTask` - 删除任务 -- `updateTaskStatus` - 更新任务状态/完成标记 -- `batchUpdateTaskStatus` - 批量更新任务状态 -- `postponeTasks` - 推迟任务到新日期 -- `batchUpdateText` - 批量文本查找替换 -- `batchCreateSubtasks` - 批量创建子任务 -- `createTaskInDailyNote` - 在日记中创建任务 -- `addProjectTaskToQuickCapture` - 添加项目任务到快速捕获 - -#### 查询操作 (QueryAPI 已实现) -- `getAllTasks` / `getAllTasksSync` - 获取所有任务 -- `getTaskById` / `getTaskByIdSync` - 按ID获取任务 -- `getTasksByProject` - 按项目筛选任务 -- `getTasksByTags` - 按标签筛选任务 -- `getTasksByStatus` - 按完成状态筛选任务 -- `getTasksByDateRange` - 按日期范围筛选任务 -- `query` - 通用查询接口 (支持 TaskFilter 和 SortingCriteria) - -### ⚠️ 需要补充的功能 - -#### 1. 便捷查询方法 (需要在 QueryAPI 中添加) - -```typescript -// 需要添加到 QueryAPI 的方法: - -// 获取特定文件的任务 -async getTasksForFile(filePath: string): Promise { - const allTasks = await this.getAllTasks(); - return allTasks.filter(task => task.filePath === filePath); -} - -// 获取今天到期的任务 -async getTasksDueToday(): Promise { - const today = new Date(); - today.setHours(0, 0, 0, 0); - const tomorrow = new Date(today); - tomorrow.setDate(tomorrow.getDate() + 1); - - return this.getTasksByDateRange({ - from: today, - to: tomorrow, - field: 'due' - }); -} - -// 获取过期任务 -async getOverdueTasks(): Promise { - const now = new Date(); - const allTasks = await this.getAllTasks(); - return allTasks.filter(task => - !task.completed && - task.metadata?.dueDate && - task.metadata.dueDate < now.getTime() - ); -} - -// 获取所有可用的上下文和项目 -async getAvailableContextsAndProjects(): Promise<{ - contexts: string[]; - projects: string[]; -}> { - const allTasks = await this.getAllTasks(); - const contexts = new Set(); - const projects = new Set(); - - allTasks.forEach(task => { - if (task.metadata?.context) contexts.add(task.metadata.context); - if (task.metadata?.project) projects.add(task.metadata.project); - // 兼容旧格式 - const tgProject = (task.metadata as any)?.tgProject; - if (tgProject?.name) projects.add(tgProject.name); - }); - - return { - contexts: Array.from(contexts).sort(), - projects: Array.from(projects).sort() - }; -} - -// 获取未完成任务 (便捷方法) -async getIncompleteTasks(): Promise { - return this.getTasksByStatus(false); -} - -// 获取已完成任务 (便捷方法) -async getCompletedTasks(): Promise { - return this.getTasksByStatus(true); -} -``` - -#### 2. 同步查询方法 (需要添加到 QueryAPI) - -```typescript -// 基于缓存的同步方法: - -getTasksForFileSync(filePath: string): Task[] { - const allTasks = this.getAllTasksSync(); - return allTasks.filter(task => task.filePath === filePath); -} - -getIncompleteTasksSync(): Task[] { - const allTasks = this.getAllTasksSync(); - return allTasks.filter(task => !task.completed); -} - -getCompletedTasksSync(): Task[] { - const allTasks = this.getAllTasksSync(); - return allTasks.filter(task => task.completed); -} -``` - -### 🏗️ 架构差异说明 - -#### 管理器功能迁移 -原 TaskManager 中的管理器功能在 Dataflow 架构中有不同的实现位置: - -| TaskManager 功能 | Dataflow 架构对应 | -|-----------------|------------------| -| `FileFilterManager` | 集成在 `ObsidianSource` 和 `ConfigurableTaskParser` | -| `OnCompletionManager` | 需要在 `WriteAPI` 或独立模块中实现 | -| `RebuildProgressManager` | 集成在 `Orchestrator` 的 `rebuild()` 方法 | -| `forceReindex()` | `DataflowOrchestrator.rebuild()` | -| `updateParsingConfiguration()` | 配置直接更新,Orchestrator 监听配置变化 | -| `updateFileFilterConfiguration()` | 配置直接更新,ObsidianSource 响应变化 | - -#### Canvas 和元数据支持 -- `CanvasTaskUpdater` - 应该作为 WriteAPI 的扩展方法 -- `FileMetadataTaskUpdater` - 已集成在 `ConfigurableTaskParser` - -### 📋 实施建议 - -#### 优先级 1:补充常用查询方法 ✅ 已完成 -在 `src/dataflow/api/QueryAPI.ts` 中添加: -- [x] `getTasksForFile()` - ✅ 已实现 -- [x] `getTasksDueToday()` - ✅ 已实现 -- [x] `getOverdueTasks()` - ✅ 已实现 -- [x] `getAvailableContextsAndProjects()` - ✅ 已实现 -- [x] 对应的同步版本 (基于缓存) - ✅ 已实现 -- [x] `getIncompleteTasks()` / `getCompletedTasks()` - ✅ 已实现 - -#### 优先级 2:OnCompletion 支持 -- [ ] 创建 `src/dataflow/managers/OnCompletionManager.ts` -- [ ] 在 WriteAPI 中集成 OnCompletion 触发逻辑 -- [ ] 支持任务完成后的自动操作 - -#### 优先级 3:Canvas 支持增强 -- [ ] 在 WriteAPI 中添加 `updateCanvasTask()` 方法 -- [ ] 确保 Canvas 文件的任务更新正确触发事件 - -#### 优先级 4:清理和文档 -- [ ] 更新 API 文档说明新增方法 -- [ ] 在迁移指南中标注功能对应关系 -- [ ] 清理遗留的 TaskManager 引用 - -### 📊 影响评估 - -#### 低风险补充 -- 查询便捷方法 - 仅是现有功能的封装 -- 同步查询方法 - 基于已有缓存机制 - -#### 中等风险功能 -- OnCompletionManager - 需要与事件系统深度集成 -- Canvas 任务更新 - 需要处理特殊文件格式 - -#### 已解决的风险 -- 批量操作 - WriteAPI 已完整实现 -- 日记集成 - createTaskInDailyNote 已实现 -- 快速捕获 - addProjectTaskToQuickCapture 已实现 - -## 结论 - -WriteAPI 和 QueryAPI 已经覆盖了 TaskManager 的核心功能(约 **98%**)。 - -### 已完成的补充功能(2025-08-22) - -✅ **QueryAPI 便捷查询方法** - 全部实现: -- `getTasksForFile()` / `getTasksForFileSync()` - 获取文件任务 -- `getTasksDueToday()` / `getTasksDueTodaySync()` - 今日到期任务 -- `getOverdueTasks()` / `getOverdueTasksSync()` - 过期任务 -- `getIncompleteTasks()` / `getIncompleteTasksSync()` - 未完成任务 -- `getCompletedTasks()` / `getCompletedTasksSync()` - 已完成任务 -- `getAvailableContextsAndProjects()` / `getAvailableContextsAndProjectsSync()` - 可用项目/上下文 - -✅ **WriteAPI Canvas 支持** - 全部实现: -- `updateCanvasTask()` - 更新 Canvas 任务 -- `deleteCanvasTask()` - 删除 Canvas 任务 -- `moveCanvasTask()` - 移动 Canvas 任务 -- `duplicateCanvasTask()` - 复制 Canvas 任务 -- `addTaskToCanvasNode()` - 添加任务到 Canvas 节点 -- `isCanvasTask()` - 检查是否为 Canvas 任务 -- `getCanvasTaskUpdater()` - 获取 CanvasTaskUpdater 实例 -- **自动检测**:`updateTask()`, `deleteTask()`, `updateTaskStatus()` 会自动检测并处理 Canvas 任务 - -✅ **OnCompletion 管理器** - 全部实现: -- OnCompletionManager 已集成到主插件 -- WriteAPI 自动触发 task-completed 事件 -- 支持所有 OnCompletion 操作(delete, keep, archive, move, complete, duplicate) -- Canvas 任务也完全支持 OnCompletion -- 完整的错误处理和日志记录 - -## 最终成果 - -### 功能覆盖率 -WriteAPI 和 QueryAPI 现已覆盖 TaskManager **100%** 的功能! - -### 已完成的所有工作 -1. ✅ 所有 QueryAPI 便捷查询方法 -2. ✅ 完整的 Canvas 任务支持 -3. ✅ OnCompletion 管理器集成 -4. ✅ 事件系统完整集成 -5. ✅ 同步和异步方法支持 - -### 架构优势 -- **模块化设计**:各组件职责清晰 -- **事件驱动**:松耦合的组件通信 -- **性能优化**:缓存机制和请求去重 -- **向后兼容**:自动检测任务类型 -- **可扩展性**:易于添加新功能 - -迁移已完全完成,系统现已成功切换到 Dataflow 架构! \ No newline at end of file diff --git a/docs/update-settings-plan.md b/docs/update-settings-plan.md deleted file mode 100644 index 8e08cfb7..00000000 --- a/docs/update-settings-plan.md +++ /dev/null @@ -1,126 +0,0 @@ -# obsidian:// deep link rollout plan for Task Genius settings - -This plan documents the exact deep-link formats supported by the plugin and where to add "Open Settings" buttons across the docs-site so users can jump directly to the right configuration screens in Obsidian. - -## Supported URI formats - -Primary scheme (recommended): -- Open plugin settings root - - obsidian://task-genius/settings -- Open a specific tab - - obsidian://task-genius/settings?tab= -- Open tab and scroll to a section (where supported) - - obsidian://task-genius/settings?tab=§ion= -- Open tab and focus the search box with a query - - obsidian://task-genius/settings?tab=&search= -- Trigger tab-specific actions (currently on MCP tab): - - Enable MCP server: obsidian://task-genius/settings?tab=mcp-integration&action=enable - - Test MCP connection: obsidian://task-genius/settings?tab=mcp-integration&action=test - - Regenerate auth token: obsidian://task-genius/settings?tab=mcp-integration&action=regenerate-token - -Alternative legacy form (also supported): -- obsidian://task-genius?action=settings (less explicit; prefer the path-based form above) - -Notes -- Use ASCII punctuation exactly as shown: obsidian:// (not full‑width colon). -- MCP Integration tab exists on desktop only; on mobile, deep links will land on the General tab. - -## Tab IDs you can link to - -- general -- index -- view-settings -- file-filter -- progress-bar -- task-status -- task-handler -- task-filter -- project -- workflow -- date-priority -- quick-capture -- task-timer -- time-parsing -- timeline-sidebar -- reward -- habit -- ics-integration -- mcp-integration (desktop only) -- beta-test -- experimental -- about - -Special sections -- On the MCP Integration tab, section=cursor expands and scrolls to the Cursor client configuration section when present: - - obsidian://task-genius/settings?tab=mcp-integration§ion=cursor - -## Placement plan in docs-site - -Add a small call-to-action button near the top of each page’s Configuration or Getting Started section. Use consistent labels and the recommended links below. - -Already good -- MCP Integration index: Includes Enable/Test deep links. Keep as is. -- MCP Clients (Cursor, Claude Desktop, Claude Code): Include “Open MCP Settings” deep links. Keep/expand with regenerate-token link in troubleshooting where helpful. - -Add/update these pages -- /docs/getting-started - - Add an “Open Task Genius Settings” button: obsidian://task-genius/settings -- /docs/installation/index, /docs/installation/community, /docs/installation/manual - - After “Enable the plugin”, add: “Open Task Genius Settings”: obsidian://task-genius/settings -- /docs/quick-capture - - Add: “Open Quick Capture Settings”: obsidian://task-genius/settings?tab=quick-capture -- /docs/habit - - Add: “Open Habit Settings”: obsidian://task-genius/settings?tab=habit -- /docs/task-view/habit-view - - Add: “Open Habit Settings”: obsidian://task-genius/settings?tab=habit -- /docs/ics-support - - Add: “Open ICS Integration Settings”: obsidian://task-genius/settings?tab=ics-integration -- /docs/progress-bars - - Add: “Open Progress Display Settings”: obsidian://task-genius/settings?tab=progress-bar -- /docs/task-status - - Add: “Open Checkbox Status Settings”: obsidian://task-genius/settings?tab=task-status -- /docs/filtering - - Add: “Open Task Filter Settings”: obsidian://task-genius/settings?tab=task-filter -- /docs/date-priority - - Add: “Open Dates & Priority Settings”: obsidian://task-genius/settings?tab=date-priority -- /docs/task-view/timeline-sidebar-view - - Add: “Open Timeline Sidebar Settings”: obsidian://task-genius/settings?tab=timeline-sidebar -- /docs/workflows - - Add: “Open Workflows Settings”: obsidian://task-genius/settings?tab=workflow -- /docs/reward - - Add: “Open Rewards Settings”: obsidian://task-genius/settings?tab=reward - -Optional advanced links -- MCP quick actions (place in troubleshooting sections): - - Enable server: obsidian://task-genius/settings?tab=mcp-integration&action=enable - - Test connection: obsidian://task-genius/settings?tab=mcp-integration&action=test - - Regenerate token: obsidian://task-genius/settings?tab=mcp-integration&action=regenerate-token -- Jump straight to Cursor section (MCP Integration): - - obsidian://task-genius/settings?tab=mcp-integration§ion=cursor - -## Copy and style guidelines - -- Button label conventions - - Primary: “Open … Settings” (e.g., “Open MCP Settings”). - - Keep labels short; avoid sentence case after the first word. -- Use a styled anchor tag in MDX pages for visual prominence, e.g.: - - Open Habit Settings -- Place the button right after the first paragraph of the Configuration section, or at the end of the Installation steps. -- Include a one-line fallback for users whose environment blocks deeplinks: “If the button doesn’t work, open Obsidian → Settings → Community Plugins → Task Genius → [Tab Name].” - -## Consistency notes for client docs - -- Server name in examples - - Our server name auto-derives from the vault (e.g., my-vault-tasks) with a fallback obsidian-tasks. For simplicity, standardize docs examples to obsidian-tasks unless showing multi-vault setups. -- Auth header format - - Always show: Authorization: Bearer TOKEN+APP_ID -- Ports - - Default port 7777. Use 7778, 7779 in multi-vault examples. - -## Validation checklist - -- All new links use ASCII obsidian:// and correct tab IDs. -- MCP action links validated on desktop (enable, test, regenerate-token). -- Mobile gracefully shows General tab when MCP tab not available. -- Pages render with a single primary button per configuration area to reduce clutter. - diff --git a/docs/worker-processing-implementation.md b/docs/worker-processing-implementation.md deleted file mode 100644 index a98bf554..00000000 --- a/docs/worker-processing-implementation.md +++ /dev/null @@ -1,61 +0,0 @@ -# Worker Processing Control Implementation - -## Overview -Implemented complete control for background worker processing in Task Genius plugin, allowing users to enable/disable worker threads for file parsing performance optimization. - -## Changes Made - -### 1. Settings UI Integration (`IndexSettingsTab.ts`) -- Updated the "Enable worker processing" toggle to use the new `fileSource.performance.enableWorkerProcessing` setting path -- Added backward compatibility with legacy `fileParsingConfig.enableWorkerProcessing` setting -- Ensures proper initialization of setting structure when needed - -### 2. WorkerOrchestrator Enhancement (`WorkerOrchestrator.ts`) -- Added `enableWorkerProcessing` configuration option to constructor -- Implemented `setWorkerProcessingEnabled()` method for dynamic control -- Added `isWorkerProcessingEnabled()` status check method -- Enhanced `getMetrics()` to provide comprehensive performance statistics -- Circuit breaker automatically resets when re-enabling workers - -### 3. DataflowOrchestrator Integration (`Orchestrator.ts`) -- Reads worker processing setting from both new and legacy paths -- Passes configuration to WorkerOrchestrator during initialization -- Added `updateSettings()` method to propagate setting changes -- Added `getWorkerStatus()` for monitoring worker state and metrics - -### 4. Settings Update Flow (`setting.ts`) -- Modified `applySettingsUpdate()` to call `dataflowOrchestrator.updateSettings()` -- Ensures worker processing changes take effect immediately without restart - -### 5. FileSource Management (`FileSource.ts`) -- Added `cleanup()` method for proper resource cleanup -- Added `updateConfig()` alias for configuration updates -- Properly handles initialization and cleanup based on settings - -## How It Works - -1. **User toggles setting**: User changes "Enable worker processing" in Index Settings -2. **Setting saved**: New value stored in `fileSource.performance.enableWorkerProcessing` -3. **Update propagated**: `applySettingsUpdate()` calls `dataflowOrchestrator.updateSettings()` -4. **Worker control**: `WorkerOrchestrator.setWorkerProcessingEnabled()` updates worker state -5. **Processing mode**: Tasks are processed either by workers or main thread based on setting - -## Benefits - -- **Performance Control**: Users can disable workers if experiencing issues -- **Dynamic Updates**: Changes take effect immediately without plugin restart -- **Backward Compatibility**: Works with both old and new setting paths -- **Circuit Breaker**: Automatic recovery when re-enabling workers -- **Monitoring**: Comprehensive metrics for debugging and optimization - -## Testing - -Created comprehensive test suite (`worker-processing-control.test.ts`) that verifies: -- Default enabled state -- Configuration respect on initialization -- Dynamic enabling/disabling -- Circuit breaker reset behavior -- Metrics availability -- Settings path fallback logic - -All tests pass successfully, confirming proper implementation. \ No newline at end of file diff --git a/src/components/features/onboarding/FluentPlacement.ts b/src/components/features/onboarding/FluentPlacement.ts index 81c30710..190165c1 100644 --- a/src/components/features/onboarding/FluentPlacement.ts +++ b/src/components/features/onboarding/FluentPlacement.ts @@ -52,17 +52,19 @@ export class FluentPlacement { el.addClass("clickable-icon"); }; + + makeCard( + "inline", + t("Inline (Single-Page Immersion)"), + t("All content in one page, focusing on the main view and reducing interface distractions.") + ); + makeCard( "sideleaves", t("Sideleaves (Multi-Column Collaboration)"), t("Left navigation and right details as separate workspace sidebars, ideal for simultaneous browsing and editing.") ); - makeCard( - "inline", - t("Inline (Single-Page Immersion)"), - t("All content in one page, focusing on the main view and reducing interface distractions.") - ); const tips = section.createDiv({ cls: "placement-tips" }); tips.createEl("p", { diff --git a/src/components/features/onboarding/previews/ComponentPreviewFactory.ts b/src/components/features/onboarding/previews/ComponentPreviewFactory.ts index 52ee1f48..79b5c9a5 100644 --- a/src/components/features/onboarding/previews/ComponentPreviewFactory.ts +++ b/src/components/features/onboarding/previews/ComponentPreviewFactory.ts @@ -229,7 +229,7 @@ export class ComponentPreviewFactory { ]; mockTasks.forEach(task => { - const taskItem = taskList.createDiv({ cls: "task-list-item" }); + const taskItem = taskList.createDiv({ cls: "task-item" }); const checkbox = taskItem.createDiv({ cls: "task-checkbox" }); setIcon(checkbox, "circle"); diff --git a/src/components/features/onboarding/steps/FluentComponentsStep.ts b/src/components/features/onboarding/steps/FluentComponentsStep.ts index 3143415c..668b7452 100644 --- a/src/components/features/onboarding/steps/FluentComponentsStep.ts +++ b/src/components/features/onboarding/steps/FluentComponentsStep.ts @@ -41,7 +41,7 @@ export class FluentComponentsStep { }> = [ { id: "sidebar", label: t("Sidebar") }, { id: "topnav", label: t("Top Navigation") }, - { id: "content", label: t("Content Area") }, + // { id: "content", label: t("Content Area") }, { id: "project", label: t("Project Management") }, ]; @@ -92,9 +92,9 @@ export class FluentComponentsStep { case "topnav": this.renderTopNavShowcase(previewSection, descSection); break; - case "content": - this.renderContentShowcase(previewSection, descSection); - break; + // case "content": + // this.renderContentShowcase(previewSection, descSection); + // break; case "project": this.renderProjectShowcase(previewSection, descSection); break; diff --git a/src/components/features/onboarding/steps/PlacementStep.ts b/src/components/features/onboarding/steps/PlacementStep.ts index 449fc380..3c8df793 100644 --- a/src/components/features/onboarding/steps/PlacementStep.ts +++ b/src/components/features/onboarding/steps/PlacementStep.ts @@ -68,7 +68,7 @@ export class PlacementStep { showPreview: true, }, (placement) => { - controller.setUseSideLeaves(placement === "sideleaves"); + controller.setUseSideLeaves(placement === "inline"); } ); diff --git a/src/styles/onboarding-components.css b/src/styles/onboarding-components.css index 30f6a1fe..616a7c11 100644 --- a/src/styles/onboarding-components.css +++ b/src/styles/onboarding-components.css @@ -4,6 +4,19 @@ overflow-y: hidden; } +.component-preview .v2-nav-left { + display: none; +} + +.onboarding-view:has(.component-showcase) .onboarding-header { + padding: calc(var(--onboarding-spacing) * 2) var(--onboarding-spacing) var(--size-4-2) var(--onboarding-spacing); +} + +.v2-top-navigation.component-preview { + overflow-x: auto; + padding: 0; +} + /* Component showcase container */ .component-showcase { display: flex; @@ -68,7 +81,6 @@ .component-preview { pointer-events: none; user-select: none; - transform-origin: top left; } /* Scale down previews to fit */ @@ -76,17 +88,8 @@ max-width: 300px; } -.component-preview-topnav { - transform: scale(0.9); -} - -.component-preview-content { - transform: scale(0.9); -} - .component-preview-popover { max-width: 350px; - transform: scale(0.9); } /* Disable interactions in previews */ @@ -141,10 +144,6 @@ .component-showcase-preview { min-height: 300px; } - - .component-preview { - transform: scale(0.75); - } } /* File filter preview styles */ diff --git a/styles.css b/styles.css index f12084f2..9882f78a 100644 --- a/styles.css +++ b/styles.css @@ -2482,6 +2482,16 @@ input.tg-settings-search-input { .onboarding-view:has(.component-showcase) .onboarding-content { overflow-y: hidden; } +.component-preview .v2-nav-left { + display: none; +} +.onboarding-view:has(.component-showcase) .onboarding-header { + padding: calc(var(--onboarding-spacing) * 2) var(--onboarding-spacing) var(--size-4-2) var(--onboarding-spacing); +} +.v2-top-navigation.component-preview { + overflow-x: auto; + padding: 0; +} .component-showcase { display: flex; gap: var(--size-4-6); @@ -2536,20 +2546,12 @@ input.tg-settings-search-input { .component-preview { pointer-events: none; user-select: none; - transform-origin: top left; } .component-preview-sidebar { max-width: 300px; } -.component-preview-topnav { - transform: scale(0.9); -} -.component-preview-content { - transform: scale(0.9); -} .component-preview-popover { max-width: 350px; - transform: scale(0.9); } .component-preview input, .component-preview button, @@ -2592,9 +2594,6 @@ input.tg-settings-search-input { .component-showcase-preview { min-height: 300px; } - .component-preview { - transform: scale(0.75); - } } .file-filter-preview { display: flex; @@ -17696,4 +17695,4 @@ div[data-type^=tg-timeline-sidebar-view] .timeline-event-content-text .markdown- padding: 10px 24px; font-size: 15px; } -/*# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsic3JjL3N0eWxlcy9wcm9ncmVzc2Jhci5jc3MiLCAic3JjL3N0eWxlcy90YXNrLXRpbWVyLmNzcyIsICJzcmMvc3R5bGVzL3NldHRpbmcuY3NzIiwgInNyYy9zdHlsZXMvc2V0dGluZy12Mi5jc3MiLCAic3JjL3N0eWxlcy9iZXRhLXdhcm5pbmcuY3NzIiwgInNyYy9zdHlsZXMvc2V0dGluZ3Mtc2VhcmNoLmNzcyIsICJzcmMvc3R5bGVzL3NldHRpbmdzLW1pZ3JhdGlvbi5jc3MiLCAic3JjL3N0eWxlcy93b3Jrc3BhY2Utc2V0dGluZ3Mtc2VsZWN0b3IuY3NzIiwgInNyYy9zdHlsZXMvbW9kYWwuY3NzIiwgInNyYy9zdHlsZXMvbGF5b3V0LXBsYWNlbWVudC5jc3MiLCAic3JjL3N0eWxlcy9vbmJvYXJkaW5nLWNvbXBvbmVudHMuY3NzIiwgInNyYy9zdHlsZXMvZmlsZS1maWx0ZXItc2V0dGluZ3MuY3NzIiwgInNyYy9zdHlsZXMvdGFzay1kZXRhaWxzLmNzcyIsICJzcmMvc3R5bGVzL29uQ29tcGxldGlvbi5jc3MiLCAic3JjL3N0eWxlcy91bml2ZXJzYWwtc3VnZ2VzdC5jc3MiLCAic3JjL3N0eWxlcy9oYWJpdC1lZGl0LWRpYWxvZy5jc3MiLCAic3JjL3N0eWxlcy9oYWJpdC1saXN0LmNzcyIsICJzcmMvc3R5bGVzL2ljcy1zZXR0aW5ncy5jc3MiLCAic3JjL3N0eWxlcy90YXNrLWZpbHRlci5jc3MiLCAic3JjL3N0eWxlcy9nbG9iYWwtZmlsdGVyLmNzcyIsICJzcmMvc3R5bGVzL3ZpZXctc2V0dGluZy10YWIuY3NzIiwgInNyYy9zdHlsZXMvbWNwLWludGVncmF0aW9uLmNzcyIsICJzcmMvc3R5bGVzL3dvcmtmbG93LmNzcyIsICJzcmMvc3R5bGVzL2RhdGUtcGlja2VyLmNzcyIsICJzcmMvc3R5bGVzL3F1aWNrLWNhcHR1cmUuY3NzIiwgInNyYy9zdHlsZXMvdGFzay1saXN0LmNzcyIsICJzcmMvc3R5bGVzL2lubGluZS1lZGl0b3IuY3NzIiwgInNyYy9zdHlsZXMvdHJlZS12aWV3LmNzcyIsICJzcmMvc3R5bGVzL2ZvcmVjYXN0LmNzcyIsICJzcmMvc3R5bGVzL2NhbGVuZGFyLmNzcyIsICJzcmMvc3R5bGVzL3RhZy12aWV3LmNzcyIsICJzcmMvc3R5bGVzL3Byb2plY3Qtdmlldy5jc3MiLCAic3JjL3N0eWxlcy9wcm9qZWN0LXRyZWUuY3NzIiwgInNyYy9zdHlsZXMvcmV2aWV3LXZpZXcuY3NzIiwgInNyYy9zdHlsZXMvdmlldy5jc3MiLCAic3JjL3N0eWxlcy9jYWxlbmRhci92aWV3LmNzcyIsICJzcmMvc3R5bGVzL2NhbGVuZGFyL2V2ZW50LmNzcyIsICJzcmMvc3R5bGVzL2NhbGVuZGFyL2JhZGdlLmNzcyIsICJzcmMvc3R5bGVzL2thbmJhbi9rYW5iYW4uY3NzIiwgInNyYy9jb21wb25lbnRzL2ZlYXR1cmVzL3Rhc2svZmlsdGVyL2luLXZpZXcvZmlsdGVyLmNzcyIsICJzcmMvc3R5bGVzL2dhbnR0L2dhbnR0LmNzcyIsICJzcmMvc3R5bGVzL3Byb3BlcnR5LXZpZXcuY3NzIiwgInNyYy9zdHlsZXMvdGFibGUuY3NzIiwgInNyYy9zdHlsZXMvcXVhZHJhbnQvcXVhZHJhbnQuY3NzIiwgInNyYy9zdHlsZXMvaGFiaXQuY3NzIiwgInNyYy9zdHlsZXMvZ2xvYmFsLmNzcyIsICJzcmMvc3R5bGVzL3ZpZXctY29uZmlnLmNzcyIsICJzcmMvc3R5bGVzL3Rhc2stc3RhdHVzLmNzcyIsICJzcmMvc3R5bGVzL29uYm9hcmRpbmcuY3NzIiwgInNyYy9zdHlsZXMvbm9pc2UuY3NzIiwgInNyYy9zdHlsZXMvdGltZWxpbmUtc2lkZWJhci5jc3MiLCAic3JjL3N0eWxlcy9yZXdhcmQuY3NzIiwgInNyYy9zdHlsZXMvdGFzay1ndXR0ZXIuY3NzIiwgInNyYy9zdHlsZXMvYmFzZS12aWV3LmNzcyIsICJzcmMvZXhwZXJpbWVudGFsL3YyL3N0eWxlcy92Mi5jc3MiLCAic3JjL2V4cGVyaW1lbnRhbC92Mi9zdHlsZXMvdjItZW5oYW5jZWQuY3NzIiwgInNyYy9leHBlcmltZW50YWwvdjIvc3R5bGVzL3YyLWNvbnRlbnQtaGVhZGVyLmNzcyIsICJzcmMvc3R5bGVzL3YyLXByb2plY3QtcG9wb3Zlci5jc3MiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qIFNldCBEZWZhdWx0IFByb2dyZXNzIEJhciBGb3IgUGx1Z2luICovXHJcbi5jbS10YXNrLXByb2dyZXNzLWJhciB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtYXJnaW4tbGVmdDogNXB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDFweDtcclxufVxyXG5cclxuLm5vLXByb2dyZXNzLWJhciAuY20tdGFzay1wcm9ncmVzcy1iYXIge1xyXG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLkh5cGVyTUQtaGVhZGVyIC5jbS10YXNrLXByb2dyZXNzLWJhciB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtYXJnaW4tbGVmdDogNXB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDVweDtcclxufVxyXG5cclxuLnByb2dyZXNzLWJhci1pbmxpbmUge1xyXG5cdGhlaWdodDogOHB4O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLyogUHJvZ3Jlc3MgYmFyIGNvbG9ycyBmb3IgZGlmZmVyZW50IHBlcmNlbnRhZ2VzIG9mIGNvbXBsZXRpb24gKi9cclxuLnByb2dyZXNzLWJhci1pbmxpbmUtZW1wdHkge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByb2dyZXNzLWJhY2tncm91bmQtY29sb3IpO1xyXG59XHJcblxyXG4ucHJvZ3Jlc3MtYmFyLWlubGluZS0wIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcm9ncmVzcy0wLWNvbG9yKTtcclxufVxyXG5cclxuLnByb2dyZXNzLWJhci1pbmxpbmUtMSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJvZ3Jlc3MtMjUtY29sb3IpO1xyXG59XHJcblxyXG4ucHJvZ3Jlc3MtYmFyLWlubGluZS0yIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcm9ncmVzcy01MC1jb2xvcik7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1iYXItaW5saW5lLTMge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByb2dyZXNzLTc1LWNvbG9yKTtcclxufVxyXG5cclxuLnByb2dyZXNzLWJhci1pbmxpbmUtY29tcGxldGUge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByb2dyZXNzLTEwMC1jb2xvcik7XHJcbn1cclxuXHJcbi8qIENvbG9ycyBmb3IgZGlmZmVyZW50IHRhc2sgc3RhdHVzZXMgKi9cclxuLnByb2dyZXNzLWNvbXBsZXRlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFzay1jb21wbGV0ZWQtY29sb3IpO1xyXG5cdHotaW5kZXg6IDM7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1pbi1wcm9ncmVzcyB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFzay1pbi1wcm9ncmVzcy1jb2xvcik7XHJcblx0ei1pbmRleDogMjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdGhlaWdodDogMTAwJTtcclxufVxyXG5cclxuLnByb2dyZXNzLWFiYW5kb25lZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFzay1hYmFuZG9uZWQtY29sb3IpO1xyXG5cdHotaW5kZXg6IDE7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1wbGFubmVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YXNrLXBsYW5uZWQtY29sb3IpO1xyXG5cdHotaW5kZXg6IDE7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1iYXItaW5saW5lLWJhY2tncm91bmQge1xyXG5cdGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJvZ3Jlc3MtYmFja2dyb3VuZC1jb2xvcik7XHJcblx0Ym9yZGVyLXJhZGl1czogMTBweDtcclxuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHdpZHRoOiA4NXB4O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ucHJvZ3Jlc3MtYmFyLWlubGluZS1iYWNrZ3JvdW5kLmhpZGRlbiB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLyogU3RhdHVzIGluZGljYXRvcnMgaW4gdGhlIHRhc2sgbnVtYmVyIGRpc3BsYXkgKi9cclxuLmNtLXRhc2stcHJvZ3Jlc3MtYmFyIC50YXNrLXN0YXR1cy1pbmRpY2F0b3Ige1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRtYXJnaW4tcmlnaHQ6IDJweDtcclxufVxyXG5cclxuLmNtLXRhc2stcHJvZ3Jlc3MtYmFyIC5jb21wbGV0ZWQtaW5kaWNhdG9yIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1jb21wbGV0ZWQtY29sb3IpO1xyXG59XHJcblxyXG4uY20tdGFzay1wcm9ncmVzcy1iYXIgLmluLXByb2dyZXNzLWluZGljYXRvciB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2staW4tcHJvZ3Jlc3MtY29sb3IpO1xyXG59XHJcblxyXG4uY20tdGFzay1wcm9ncmVzcy1iYXIgLmFiYW5kb25lZC1pbmRpY2F0b3Ige1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLWFiYW5kb25lZC1jb2xvcik7XHJcbn1cclxuXHJcbi5jbS10YXNrLXByb2dyZXNzLWJhciAucGxhbm5lZC1pbmRpY2F0b3Ige1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLXBsYW5uZWQtY29sb3IpO1xyXG59XHJcblxyXG4vKiBTZXQgRGVmYXVsdCBQcm9ncmVzcyBCYXIgV2l0aCBOdW1iZXIgRm9yIFBsdWdpbiAqL1xyXG4uY20tdGFzay1wcm9ncmVzcy1iYXIud2l0aC1udW1iZXIge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5IeXBlck1ELWhlYWRlclxyXG5cdC5jbS10YXNrLXByb2dyZXNzLWJhci53aXRoLW51bWJlclxyXG5cdC5wcm9ncmVzcy1iYXItaW5saW5lLWJhY2tncm91bmQsXHJcbi5IeXBlck1ELWhlYWRlciAuY20tdGFzay1wcm9ncmVzcy1iYXIud2l0aC1udW1iZXIgLnByb2dyZXNzLXN0YXR1cyB7XHJcblx0bWFyZ2luLWJvdHRvbTogNXB4O1xyXG59XHJcblxyXG4uY20tdGFzay1wcm9ncmVzcy1iYXIud2l0aC1udW1iZXIgLnByb2dyZXNzLWJhci1pbmxpbmUtYmFja2dyb3VuZCB7XHJcblx0bWFyZ2luLWJvdHRvbTogLTJweDtcclxuXHR3aWR0aDogNDJweDtcclxufVxyXG5cclxuLmNtLXRhc2stcHJvZ3Jlc3MtYmFyLndpdGgtbnVtYmVyIC5wcm9ncmVzcy1zdGF0dXMge1xyXG5cdGZvbnQtc2l6ZTogMTNweDtcclxuXHRtYXJnaW4tbGVmdDogM3B4O1xyXG59XHJcblxyXG4vKiBBZGFwdGF0aW9ucyBmb3IgZGFyayB0aGVtZSAqL1xyXG4udGhlbWUtZGFyayAucHJvZ3Jlc3MtY29tcGxldGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YXNrLWNvbXBsZXRlZC1jb2xvcik7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC5wcm9ncmVzcy1pbi1wcm9ncmVzcyB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFzay1pbi1wcm9ncmVzcy1jb2xvcik7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC5wcm9ncmVzcy1hYmFuZG9uZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhc2stYWJhbmRvbmVkLWNvbG9yKTtcclxufVxyXG5cclxuLnRoZW1lLWRhcmsgLnByb2dyZXNzLXBsYW5uZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhc2stcGxhbm5lZC1jb2xvcik7XHJcbn1cclxuXHJcbi50YXNrLXByb2dyZXNzLWJhci1wb3BvdmVyIHtcclxuXHR3aWR0aDogNDAwcHg7XHJcbn1cclxuIiwgIi8qIFRhc2sgVGltZXIgV2lkZ2V0IFN0eWxlcyAtIFNpbXBsZSBUZXh0LUJhc2VkICovXHJcblxyXG4udGFzay10aW1lci13aWRnZXQge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1hcmdpbjogNHB4IDA7XHJcblx0cGFkZGluZzogMnB4IDA7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG5cclxuLyogU3RhcnQgYnV0dG9uIGFuZCBhY3Rpb24gbGlua3MgKi9cclxuLnRhc2stdGltZXItc3RhcnQsXHJcbi50YXNrLXRpbWVyLWFjdGlvbiB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi50YXNrLXRpbWVyLXN0YXJ0OmhvdmVyLFxyXG4udGFzay10aW1lci1hY3Rpb246aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudC1ob3Zlcik7XHJcbn0iLCAiLyogRXhwZXJpbWVudGFsIFNldHRpbmdzICovXHJcbi5leHBlcmltZW50YWwtc2V0dGluZ3Mtc2VjdGlvbiB7XHJcblx0bWFyZ2luOiAyMHB4IDA7XHJcbn1cclxuXHJcbi5leHBlcmltZW50YWwtc2VjdGlvbi1oZWFkaW5nIHtcclxuXHRtYXJnaW46IDIwcHggMCAxMHB4IDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmV4cGVyaW1lbnRhbC1zdWJzZWN0aW9uLWhlYWRpbmcge1xyXG5cdG1hcmdpbjogMTVweCAwIDhweCAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4uZXhwZXJpbWVudGFsLXdhcm5pbmcge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0cGFkZGluZzogMTJweDtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0bWFyZ2luOiAxMHB4IDAgMjBweCAwO1xyXG5cdGJvcmRlci1sZWZ0OiA0cHggc29saWQgdmFyKC0tY29sb3ItcmVkKTtcclxufVxyXG5cclxuLmV4cGVyaW1lbnRhbC1kYXRhZmxvdy1zZWN0aW9uIHtcclxuXHRtYXJnaW46IDE1cHggMDtcclxuXHRwYWRkaW5nOiAxNXB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcbn1cclxuXHJcbi5leHBlcmltZW50YWwtaW5mbyB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG5cdG1hcmdpbi10b3A6IDhweDtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG59XHJcblxyXG4uZXhwZXJpbWVudGFsLXJlc3RhcnQtbm90aWNlIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWZvcm0tZmllbGQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRwYWRkaW5nOiA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdG1hcmdpbi10b3A6IDEwcHg7XHJcblx0Zm9udC1zaXplOiAwLjg1ZW07XHJcbn1cclxuXHJcbi8qIENoZWNrYm94IFN0YXR1cyBDeWNsZSBtYW5hZ2VtZW50IFVJICovXHJcbi50YXNrLXN0YXRlcy1jb250YWluZXIge1xyXG5cdG1hcmdpbjogMTBweCAwO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA1cHg7XHJcblx0cGFkZGluZzogMTBweDtcclxufVxyXG5cclxuLnRhc2stc3RhdGUtcm93IHtcclxuXHRtYXJnaW4tYm90dG9tOiA4cHg7XHJcbn1cclxuXHJcbi50YXNrLXN0YXRlLXJvdyAuc2V0dGluZy1pdGVtIHtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0cGFkZGluZzogNnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxufVxyXG5cclxuLnRhc2stc3RhdGUtcm93IC5zZXR0aW5nLWl0ZW0taW5mbyB7XHJcblx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG59XHJcblxyXG4udGFzay1zdGF0ZS1yb3cgLnNldHRpbmctaXRlbS1jb250cm9sIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRmbGV4LXdyYXA6IG5vd3JhcDtcclxufVxyXG5cclxuLnRhc2stc3RhdGUtcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XHJcbn1cclxuXHJcbi50YXNrLXN0YXRlLXJvdyAuZXh0cmEtc2V0dGluZy1idXR0b24ge1xyXG5cdHBhZGRpbmc6IDRweDtcclxuXHR3aWR0aDogMjRweDtcclxuXHRoZWlnaHQ6IDI0cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdG1hcmdpbi1sZWZ0OiA0cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4udGFzay1zdGF0ZS1yb3cgLnNldHRpbmctaXRlbS1jb250cm9sIGJ1dHRvbiB7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLnRhc2stc3RhdGUtY29udGFpbmVyIHtcclxuXHRtYXJnaW4taW5saW5lLXN0YXJ0OiBjYWxjKHZhcigtLWNoZWNrYm94LXNpemUpICogLTEpO1xyXG59XHJcblxyXG4udGFzay1zdGF0ZS1jb250YWluZXIgLnRhc2stc3RhdGUge1xyXG5cdHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1zaXplLTItMSk7XHJcblx0cGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1zaXplLTItMik7XHJcblxyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi8qIEV4cGVyaW1lbnRhbCBTZXR0aW5ncyAqL1xyXG4uZXhwZXJpbWVudGFsLXNldHRpbmdzLXNlY3Rpb24ge1xyXG5cdG1hcmdpbjogMjBweCAwO1xyXG59XHJcblxyXG4uZXhwZXJpbWVudGFsLXNlY3Rpb24taGVhZGluZyB7XHJcblx0bWFyZ2luOiAyMHB4IDAgMTBweCAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5leHBlcmltZW50YWwtc3Vic2VjdGlvbi1oZWFkaW5nIHtcclxuXHRtYXJnaW46IDE1cHggMCA4cHggMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLmV4cGVyaW1lbnRhbC13YXJuaW5nIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdHBhZGRpbmc6IDEycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdG1hcmdpbjogMTBweCAwIDIwcHggMDtcclxuXHRib3JkZXItbGVmdDogNHB4IHNvbGlkIHZhcigtLWNvbG9yLXJlZCk7XHJcbn1cclxuXHJcbi5leHBlcmltZW50YWwtZGF0YWZsb3ctc2VjdGlvbiB7XHJcblx0bWFyZ2luOiAxNXB4IDA7XHJcblx0cGFkZGluZzogMTVweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG59XHJcblxyXG4uZXhwZXJpbWVudGFsLWluZm8ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxuXHRtYXJnaW4tdG9wOiA4cHg7XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG5cclxuLmV4cGVyaW1lbnRhbC1yZXN0YXJ0LW5vdGljZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1mb3JtLWZpZWxkKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0cGFkZGluZzogOHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG59XHJcblxyXG4vKiBDaGVja2JveCBTdGF0dXMgQ3ljbGUgbWFuYWdlbWVudCBVSSAqL1xyXG4udGFzay1zdGF0ZXMtY29udGFpbmVyIHtcclxuXHRtYXJnaW46IDEwcHggMDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNXB4O1xyXG5cdHBhZGRpbmc6IDEwcHg7XHJcbn1cclxuXHJcbi50YXNrLXN0YXRlLXJvdyB7XHJcblx0bWFyZ2luLWJvdHRvbTogOHB4O1xyXG59XHJcblxyXG4udGFzay1zdGF0ZS1yb3cgLnNldHRpbmctaXRlbSB7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdHBhZGRpbmc6IDZweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcbn1cclxuXHJcbi50YXNrLXN0YXRlLXJvdyAuc2V0dGluZy1pdGVtLWluZm8ge1xyXG5cdG1hcmdpbi1yaWdodDogMTBweDtcclxufVxyXG5cclxuLnRhc2stc3RhdGUtcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0ZmxleC13cmFwOiBub3dyYXA7XHJcbn1cclxuXHJcbi50YXNrLXN0YXRlLXJvdyAuc2V0dGluZy1pdGVtLWNvbnRyb2wgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG59XHJcblxyXG4udGFzay1zdGF0ZS1yb3cgLmV4dHJhLXNldHRpbmctYnV0dG9uIHtcclxuXHRwYWRkaW5nOiA0cHg7XHJcblx0d2lkdGg6IDI0cHg7XHJcblx0aGVpZ2h0OiAyNHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRtYXJnaW4tbGVmdDogNHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLnRhc2stc3RhdGUtcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCBidXR0b24ge1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi50YXNrLXN0YXRlLWNvbnRhaW5lciB7XHJcblx0bWFyZ2luLWlubGluZS1zdGFydDogY2FsYyh2YXIoLS1jaGVja2JveC1zaXplKSAqIC0xKTtcclxufVxyXG5cclxuLnRhc2stc3RhdGUtY29udGFpbmVyIC50YXNrLXN0YXRlIHtcclxuXHRwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdHBhZGRpbmctaW5saW5lLWVuZDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcclxuXHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4vKiBDYXRlZ29yaXplZCB0YWJzIGNvbnRhaW5lciAqL1xyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYnMtY2F0ZWdvcml6ZWQtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC02KTtcclxufVxyXG5cclxuLyogQ2F0ZWdvcnkgc2VjdGlvbiAqL1xyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLWNhdGVnb3J5LXNlY3Rpb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLyogQ2F0ZWdvcnkgaGVhZGVyICovXHJcbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtY2F0ZWdvcnktaGVhZGVyIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcclxuXHRwYWRkaW5nOiAwIHZhcigtLXNpemUtNC0yKTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTQtMSk7XHJcbn1cclxuXHJcbi8qIENhdGVnb3J5IHRhYnMgY29udGFpbmVyICovXHJcbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtY2F0ZWdvcnktdGFicyB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCBtaW5tYXgoMjAwcHgsIDFmcikpO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcblx0LnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy1jYXRlZ29yeS10YWJzIHtcclxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgyMDBweCwgMWZyKSk7XHJcblx0fVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQudGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLWNhdGVnb3J5LXRhYnMge1xyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcblx0fVxyXG59XHJcblxyXG4vKiBMZWdhY3kgdGFicyBjb250YWluZXIgKGZhbGxiYWNrKSAqL1xyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYnMtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XHJcblx0Z3JpZC1hdXRvLXJvd3M6IHZhcigtLXNpemUtNC0xOCk7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC00KTtcclxuXHRoZWlnaHQ6IGZpdC1jb250ZW50O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTQpO1xyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQudGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYnMtY29udGFpbmVyIHtcclxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XHJcblx0fVxyXG59XHJcblxyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYiB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpIHZhcigtLXNpemUtNC00KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtaW4taGVpZ2h0OiB2YXIoLS1zaXplLTQtMTIpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtdGFiOjphZnRlciB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAxMHB4O1xyXG5cdHJpZ2h0OiAtODBweDtcclxuXHR3aWR0aDogMjAwcHg7XHJcblx0aGVpZ2h0OiAyMDBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xyXG5cdHRyYW5zZm9ybTogcm90YXRlWigtMTVkZWcpO1xyXG5cdHotaW5kZXg6IDA7XHJcblx0b3BhY2l0eTogMC43O1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYjpob3Zlcjo6YWZ0ZXIge1xyXG5cdHRyYW5zZm9ybTogcm90YXRlWigtMTBkZWcpO1xyXG5cdG9wYWNpdHk6IDAuOTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWItYWN0aXZlOjphZnRlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRvcGFjaXR5OiAwLjM7XHJcbn1cclxuXHJcbi8qIFRhYiBjb250ZW50IHN0eWxpbmcgKi9cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWItaWNvbixcclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWIgc3BhbixcclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWItbGFiZWwge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR6LWluZGV4OiAxO1xyXG59XHJcblxyXG4vKiBFbmhhbmNlZCB0YWIgaWNvbiBzdHlsaW5nIGZvciBjYXRlZ29yaXplZCBsYXlvdXQgKi9cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy1jYXRlZ29yeS10YWJzIC5zZXR0aW5ncy10YWItaWNvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtNCk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtY2F0ZWdvcnktdGFicyAuc2V0dGluZ3MtdGFiLWljb24gc3ZnIHtcclxuXHR3aWR0aDogdmFyKC0taWNvbi1zKTtcclxuXHRoZWlnaHQ6IHZhcigtLWljb24tcyk7XHJcbn1cclxuXHJcbi8qIEVuaGFuY2VkIHRhYiBsYWJlbCBzdHlsaW5nIGZvciBjYXRlZ29yaXplZCBsYXlvdXQgKi9cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy1jYXRlZ29yeS10YWJzIC5zZXR0aW5ncy10YWItbGFiZWwge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcblx0ZmxleDogMTtcclxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG4vKiBFbmhhbmNlZCBob3ZlciBhbmQgYWN0aXZlIHN0YXRlcyBmb3IgY2F0ZWdvcml6ZWQgdGFicyAqL1xyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLWNhdGVnb3J5LXRhYnMgLnNldHRpbmdzLXRhYjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1tKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy1jYXRlZ29yeS10YWJzIC5zZXR0aW5ncy10YWItYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1tKTtcclxuXHRmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLWNhdGVnb3J5LXRhYnMgLnNldHRpbmdzLXRhYi1hY3RpdmU6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxufVxyXG5cclxuLyogTGVnYWN5IHRhYiBzdHlsZXMgKGZhbGxiYWNrKSAqL1xyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtdGFiLWFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYi1zZWN0aW9ucyB7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWItc2VjdGlvbiB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWItc2VjdGlvbi1hY3RpdmUge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYi1zZWN0aW9uLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWItc2VjdGlvbi1oZWFkZXIgLmhlYWRlci1idXR0b24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRnYXA6IDRweDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYi1zZWN0aW9uLWhlYWRlciAuaGVhZGVyLWJ1dHRvbi1pY29uIHtcclxuXHQtLWljb24tc2l6ZTogMTZweDtcclxuXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4vKiBUYWIgc2VjdGlvbiBoZWFkZXIgdmlzaWJpbGl0eSBydWxlcyAqL1xyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYltkYXRhLXRhYi1pZD1cImdlbmVyYWxcIl0ge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIEhpZGUgY2F0ZWdvcml6ZWQgdGFicyBjb250YWluZXIgd2hlbiBhbnkgbm9uLWdlbmVyYWwgdGFiIGlzIGFjdGl2ZSAqL1xyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYnMtY2F0ZWdvcml6ZWQtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtc2V0dGluZ3M6aGFzKFxyXG5cdFx0LnNldHRpbmdzLXRhYi1zZWN0aW9uLWFjdGl2ZTpub3QoW2RhdGEtdGFiLWlkPVwiZ2VuZXJhbFwiXSlcclxuXHQpXHJcblx0LnNldHRpbmdzLXRhYnMtY2F0ZWdvcml6ZWQtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiBMZWdhY3kgdGFicyBjb250YWluZXIgdmlzaWJpbGl0eSAoZmFsbGJhY2spICovXHJcbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtdGFicy1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIFNob3cgbGVnYWN5IHRhYnMgd2hlbiBnZW5lcmFsIHRhYiBpcyBhY3RpdmUgKGZhbGxiYWNrIGJlaGF2aW9yKSAqL1xyXG4udGFzay1nZW5pdXMtc2V0dGluZ3M6aGFzKC5zZXR0aW5ncy10YWItYWN0aXZlW2RhdGEtdGFiLWlkPVwiZ2VuZXJhbFwiXSlcclxuXHQuc2V0dGluZ3MtdGFicy1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcbn1cclxuXHJcbi8qIFNldHRpbmdzIGhlYWRlciB2aXNpYmlsaXR5IC0gaGlkZSB3aGVuIG5vbi1nZW5lcmFsIHRhYiBpcyBhY3RpdmUgKi9cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzLWhlYWRlciB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1zZXR0aW5nczpoYXMoXHJcblx0XHQuc2V0dGluZ3MtdGFiLXNlY3Rpb24tYWN0aXZlOm5vdChbZGF0YS10YWItaWQ9XCJnZW5lcmFsXCJdKVxyXG5cdClcclxuXHQudGFzay1nZW5pdXMtc2V0dGluZ3MtaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiBFeHByZXNzaW9uIGV4YW1wbGVzIGluIHNldHRpbmdzICovXHJcbi5leHByZXNzaW9uLWV4YW1wbGVzIHtcclxuXHRtYXJnaW4tdG9wOiA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNXB4O1xyXG59XHJcblxyXG4uZXhwcmVzc2lvbi1leGFtcGxlLWl0ZW0ge1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1zaXplLTQtMyk7XHJcblx0cGFkZGluZy1yaWdodDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHQvKiBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpOyAqL1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDZweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5leHByZXNzaW9uLWV4YW1wbGUtbmFtZSB7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi5leHByZXNzaW9uLWV4YW1wbGUtY29kZSB7XHJcblx0cGFkZGluZzogNHB4IDhweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xyXG5cdHVzZXItc2VsZWN0OiB0ZXh0O1xyXG59XHJcblxyXG4uZXhwcmVzc2lvbi1leGFtcGxlLXVzZSB7XHJcblx0YWxpZ24tc2VsZjogZmxleC1lbmQ7XHJcblx0bWFyZ2luLXRvcDogNHB4O1xyXG59XHJcblxyXG4uY3VzdG9tLWZvcm1hdC10ZXh0YXJlYSB7XHJcblx0aGVpZ2h0OiAyMDBweDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG5cdHJlc2l6ZTogdmVydGljYWw7XHJcbn1cclxuXHJcbi5jdXN0b20tZm9ybWF0LXByZXZpZXctY29udGFpbmVyIHtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4uY3VzdG9tLWZvcm1hdC1wcmV2aWV3LWxhYmVsIHtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4uY3VzdG9tLWZvcm1hdC1wcmV2aWV3LWNvbnRlbnQge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1pbnRlcmZhY2UpO1xyXG59XHJcblxyXG4uY3VzdG9tLWZvcm1hdC1wbGFjZWhvbGRlci1pbmZvIHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG5cclxuXHR1c2VyLXNlbGVjdDogdGV4dDtcclxufVxyXG5cclxuLmN1c3RvbS1mb3JtYXQtcHJldmlldy1lcnJvcixcclxuLmV4cHJlc3Npb24tcHJldmlldy1lcnJvciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4vKiBcdTg4NjhcdThGQkVcdTVGMEZcdTc5M0FcdTRGOEJcdTk4ODRcdTg5QzhcdTY4MzdcdTVGMEYgKi9cclxuLmV4cHJlc3Npb24tZXhhbXBsZS1wcmV2aWV3IHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4ucHJlc2V0LWZpbHRlcnMtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdHBhZGRpbmc6IDhweDtcclxuXHRib3JkZXItcmFkaXVzOiA1cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4ucHJlc2V0LWZpbHRlci1yb3cge1xyXG5cdG1hcmdpbi1ib3R0b206IDVweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0cGFkZGluZy10b3A6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5wcmVzZXQtZmlsdGVyLXJvdzpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcclxufVxyXG5cclxuLm5vLXByZXNldHMtbWVzc2FnZSB7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMTVweDtcclxufVxyXG5cclxuLnByZXNldC1zYXZlZC1tZXNzYWdlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiA1cHg7XHJcblx0bWFyZ2luLXRvcDogNXB4O1xyXG5cdGFuaW1hdGlvbjogZmFkZUluIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1zYXZlLXByZXNldCB7XHJcblx0bWFyZ2luLXRvcDogMTVweDtcclxuXHRwYWRkaW5nOiAxMHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xyXG59XHJcblxyXG4udGctbW9kYWwtYnV0dG9uLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdGdhcDogMTBweDtcclxuXHRtYXJnaW4tdG9wOiAyMHB4O1xyXG59XHJcblxyXG4udGctbW9kYWwtYnV0dG9uLWNvbnRhaW5lciBidXR0b24ge1xyXG5cdHBhZGRpbmc6IDZweCAxMnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi50Zy1tb2RhbC1idXR0b24tY29udGFpbmVyIGJ1dHRvbi5tb2Qtd2FybmluZyB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XHJcblx0ZnJvbSB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdH1cclxuXHR0byB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxufVxyXG5cclxuLm1vZGFsLXdvcmtmbG93LWRlZmluaXRpb24ge1xyXG5cdG1heC13aWR0aDogODAwcHg7XHJcblx0d2lkdGg6IDkwdnc7XHJcbn1cclxuXHJcbi5tb2RhbC1zdGFnZS1kZWZpbml0aW9uIHtcclxuXHRtYXgtd2lkdGg6IDgwMHB4O1xyXG5cdHdpZHRoOiA5MHZ3O1xyXG59XHJcblxyXG4vKiBXb3JrZmxvdyBzZXR0aW5ncyBwYW5lbCBpbXByb3ZlbWVudHMgKi9cclxuLndvcmtmbG93LWNvbnRhaW5lciB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHRwYWRkaW5nOiAxNXB4O1xyXG5cdG1heC1oZWlnaHQ6IDUwMHB4O1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3gtc2hhZG93OiAwIDFweCA0cHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcclxufVxyXG5cclxuLndvcmtmbG93LXJvdyB7XHJcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHRwYWRkaW5nOiAxMnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xyXG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLndvcmtmbG93LXJvdyAuc2V0dGluZy1pdGVtIHtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0cGFkZGluZzogMDtcclxufVxyXG5cclxuLndvcmtmbG93LXJvdyAuc2V0dGluZy1pdGVtLWluZm8ge1xyXG5cdHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLndvcmtmbG93LXJvdyAuc2V0dGluZy1pdGVtLW5hbWUge1xyXG5cdGZvbnQtc2l6ZTogMTZweDtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1yb3cgLnNldHRpbmctaXRlbS1kZXNjcmlwdGlvbiB7XHJcblx0Zm9udC1zaXplOiAxM3B4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tdG9wOiA0cHg7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZXMtaW5mbyB7XHJcblx0bWFyZ2luLXRvcDogMTJweDtcclxuXHRwYWRkaW5nOiA4cHggMCAwIDA7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlcy1saXN0IHtcclxuXHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0cGFkZGluZzogMDtcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS1pdGVtIHtcclxuXHRwYWRkaW5nOiA0cHggOHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRmb250LXNpemU6IDEycHg7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS1jeWNsZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFzay1pbi1wcm9ncmVzcy1jb2xvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLXRlcm1pbmFsIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YXNrLWNvbXBsZXRlZC1jb2xvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLm5vLXdvcmtmbG93cy1tZXNzYWdlIHtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAxNXB4O1xyXG59XHJcblxyXG4vKiBXb3JrZmxvdyBtb2RhbCBzdHlsZXMgKi9cclxuLndvcmtmbG93LWZvcm0ge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZXMtc2VjdGlvbiB7XHJcblx0bWFyZ2luLXRvcDogMjBweDtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmctdG9wOiAxNXB4O1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2VzLXNlY3Rpb24gaDIge1xyXG5cdG1hcmdpbi10b3A6IDA7XHJcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHRmb250LXNpemU6IDEuM2VtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZXMtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAxNXB4O1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2VzLWNvbnRhaW5lciAud29ya2Zsb3ctc3RhZ2VzLWxpc3Qge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdGZsZXgtd3JhcDogdW5zZXQ7XHJcblx0Z2FwOiB1bnNldDtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlcy1jb250YWluZXIgLndvcmtmbG93LXN0YWdlLWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0cGFkZGluZzogMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLndvcmtmbG93LWJ1dHRvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRnYXA6IDEwcHg7XHJcblx0bWFyZ2luLXRvcDogMjBweDtcclxuXHRwYWRkaW5nLXRvcDogMTBweDtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc2F2ZS1idXR0b24sXHJcbi53b3JrZmxvdy1jYW5jZWwtYnV0dG9uLFxyXG4ud29ya2Zsb3ctYWRkLXN0YWdlLWJ1dHRvbiB7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLndvcmtmbG93LXNhdmUtYnV0dG9uLm1vZC1jdGEge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLndvcmtmbG93LWNhbmNlbC1idXR0b24ge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctYWRkLXN0YWdlLWJ1dHRvbiB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdG1hcmdpbi10b3A6IDEwcHg7XHJcbn1cclxuXHJcbi5uby1zdGFnZXMtbWVzc2FnZSB7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMTVweDtcclxufVxyXG5cclxuLyogU3RhZ2UgZWRpdGluZyBzdHlsZXMgKi9cclxuLndvcmtmbG93LXN0YWdlLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRwYWRkaW5nOiA4cHggMTJweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxuXHRib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2UtbmFtZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRmbGV4OiAxO1xyXG5cdG1hcmdpbi1yaWdodDogMTBweDtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLWFjdGlvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiA1cHg7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS1lZGl0LFxyXG4ud29ya2Zsb3ctc3RhZ2UtbW92ZS11cCxcclxuLndvcmtmbG93LXN0YWdlLW1vdmUtZG93bixcclxuLndvcmtmbG93LXN0YWdlLWRlbGV0ZSB7XHJcblx0cGFkZGluZzogM3B4IDhweDtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IDEycHg7XHJcblx0Ym9yZGVyOiBub25lO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2UtZWRpdDpob3ZlcixcclxuLndvcmtmbG93LXN0YWdlLW1vdmUtdXA6aG92ZXIsXHJcbi53b3JrZmxvdy1zdGFnZS1tb3ZlLWRvd246aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLWRlbGV0ZTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLXR5cGUtYmFkZ2Uge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRwYWRkaW5nOiAycHggNnB4O1xyXG5cdG1hcmdpbi1sZWZ0OiA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdGZvbnQtc2l6ZTogMTBweDtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS10eXBlLWxpbmVhciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2UtdHlwZS1jeWNsZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFzay1pbi1wcm9ncmVzcy1jb2xvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLXR5cGUtdGVybWluYWwge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhc2stY29tcGxldGVkLWNvbG9yKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBTdWJzdGFnZSBzdHlsZXMgKi9cclxuLndvcmtmbG93LXN1YnN0YWdlcy1saXN0IHtcclxuXHRwYWRkaW5nOiAwIDAgMCB2YXIoLS1zaXplLTQtNik7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxuXHRib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnN1YnN0YWdlLXNldHRpbmdzLWNvbnRhaW5lciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIFN0YWdlIGVkaXQgbW9kYWwgKi9cclxuLnN0YWdlLXR5cGUtc2V0dGluZ3Mge1xyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRwYWRkaW5nOiAxNXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi5zdWJzdGFnZXMtc2VjdGlvbixcclxuLmNhbi1wcm9jZWVkLXRvLXNlY3Rpb24ge1xyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0cGFkZGluZy10b3A6IDE1cHg7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnN1YnN0YWdlcy1jb250YWluZXIsXHJcbi5jYW4tcHJvY2VlZC10by1jb250YWluZXIge1xyXG5cdG1hcmdpbi10b3A6IDE1cHg7XHJcblx0cGFkZGluZzogMTBweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcbn1cclxuXHJcbi5zdWJzdGFnZXMtbGlzdCxcclxuLmNhbi1wcm9jZWVkLWxpc3Qge1xyXG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1hcmdpbjogMDtcclxufVxyXG5cclxuLnN1YnN0YWdlLW5hbWUtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogMTBweDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGZsZXg6IDE7XHJcbn1cclxuXHJcbi5zdWJzdGFnZS1uYW1lLWNvbnRhaW5lciBpbnB1dCB7XHJcblx0cGFkZGluZzogNHB4IDhweDtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi5zdWJzdGFnZS1uZXh0LWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNXB4O1xyXG5cdG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG59XHJcblxyXG4uc3Vic3RhZ2UtcmVtb3ZlLWJ1dHRvbixcclxuLmNhbi1wcm9jZWVkLXJlbW92ZS1idXR0b24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdHBhZGRpbmc6IDJweCA1cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlcjogbm9uZTtcclxufVxyXG5cclxuLnN1YnN0YWdlLXJlbW92ZS1idXR0b246aG92ZXIsXHJcbi5jYW4tcHJvY2VlZC1yZW1vdmUtYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4uYWRkLXN1YnN0YWdlLWJ1dHRvbixcclxuLmFkZC1jYW4tcHJvY2VlZC1idXR0b24ge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRwYWRkaW5nOiA0cHggMTBweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0bWFyZ2luLXRvcDogMTBweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyOiBub25lO1xyXG59XHJcblxyXG4uYWRkLWNhbi1wcm9jZWVkLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDEwcHg7XHJcblx0YWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG59XHJcblxyXG4uYWRkLWNhbi1wcm9jZWVkLXNlbGVjdCB7XHJcblx0ZmxleDogMTtcclxuXHRwYWRkaW5nOiA0cHggOHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5zdGFnZS1idXR0b25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0Z2FwOiAxMHB4O1xyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0cGFkZGluZy10b3A6IDEwcHg7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnN0YWdlLXNhdmUtYnV0dG9uLFxyXG4uc3RhZ2UtY2FuY2VsLWJ1dHRvbiB7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRib3JkZXI6IG5vbmU7XHJcbn1cclxuXHJcbi5zdGFnZS1zYXZlLWJ1dHRvbi5tb2QtY3RhIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5zdGFnZS1jYW5jZWwtYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnN0YWdlLWVycm9yLW1lc3NhZ2Uge1xyXG5cdGNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0bWFyZ2luLXRvcDogMTBweDtcclxuXHRwYWRkaW5nOiA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG59XHJcblxyXG4vKiBXb3JrZmxvdyB0YXNrIGluIGVkaXRvci9wcmV2aWV3IG1vZGUgc3R5bGVzICovXHJcbi50YXNrLXdvcmtmbG93LXRhZyB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdHBhZGRpbmc6IDJweCA1cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdG1hcmdpbi1sZWZ0OiA1cHg7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7XHJcbn1cclxuXHJcbi50YXNrLXdvcmtmbG93LXN0YWdlIHtcclxuXHRtYXJnaW4tbGVmdDogNXB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi50YXNrLXdvcmtmbG93LXN1YnN0YWdlIHtcclxuXHRmb250LXNpemU6IDExcHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4udGFzay13b3JrZmxvdy1oaXN0b3J5IHtcclxuXHRtYXJnaW4tbGVmdDogMjBweDtcclxuXHRmb250LXNpemU6IDEycHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4udGFzay13b3JrZmxvdy10aW1lc3RhbXAge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcclxufVxyXG5cclxuLyogV29ya2Zsb3cgc2V0dGluZ3MgZGlzcGxheSBlbmhhbmNlbWVudHMgKi9cclxuLnNldHRpbmctaXRlbS1jb250cm9sIHNwYW5bY2xhc3NePVwid29ya2Zsb3ctc3RhZ2UtbmFtZS1cIl0ge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRwYWRkaW5nOiAycHggNnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRmb250LXNpemU6IDEycHg7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRtYXJnaW4tcmlnaHQ6IDVweDtcclxufVxyXG5cclxuLnNldHRpbmctaXRlbS1jb250cm9sIC53b3JrZmxvdy1zdGFnZS1uYW1lLWN5Y2xlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YXNrLWluLXByb2dyZXNzLWNvbG9yKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4uc2V0dGluZy1pdGVtLWNvbnRyb2wgLndvcmtmbG93LXN0YWdlLW5hbWUtdGVybWluYWwge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhc2stY29tcGxldGVkLWNvbG9yKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2UtaXRlbSB7XHJcblx0bWFyZ2luLXJpZ2h0OiA0cHg7XHJcbn1cclxuXHJcbi8qIFdvcmtmbG93RGVmaW5pdGlvbk1vZGFsIGhlYWRlciBlbmhhbmNlbWVudHMgKi9cclxuLndvcmtmbG93LXN0YWdlcy1jb250YWluZXIgLndvcmtmbG93LXN0YWdlLWhlYWRlciB7XHJcblx0cGFkZGluZzogOHB4IDEycHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlcy1jb250YWluZXIgLndvcmtmbG93LXN0YWdlLXR5cGUtYmFkZ2Uge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRwYWRkaW5nOiAycHggNnB4O1xyXG5cdG1hcmdpbi1sZWZ0OiA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdGZvbnQtc2l6ZTogMTBweDtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdWJzdGFnZXMtbGlzdCB7XHJcblx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG5cdHBhZGRpbmc6IDAgMCAwIDIwcHg7XHJcblx0bWFyZ2luOiA1cHggMCAxMHB4IDA7XHJcblx0Ym9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi8qIEJldHRlciBidXR0b25zIGluIHdvcmtmbG93IHBhbmVscyAqL1xyXG4ud29ya2Zsb3ctYWRkLXN0YWdlLWJ1dHRvbixcclxuLnN0YWdlLXNhdmUtYnV0dG9uLm1vZC1jdGEsXHJcbi53b3JrZmxvdy1zYXZlLWJ1dHRvbi5tb2QtY3RhIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0cGFkZGluZzogNnB4IDE1cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctYWRkLXN0YWdlLWJ1dHRvbjpob3ZlcixcclxuLnN0YWdlLXNhdmUtYnV0dG9uLm1vZC1jdGE6aG92ZXIsXHJcbi53b3JrZmxvdy1zYXZlLWJ1dHRvbi5tb2QtY3RhOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG5cdGJveC1zaGFkb3c6IDAgM3B4IDZweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLW1vdmUtdXAsXHJcbi53b3JrZmxvdy1zdGFnZS1tb3ZlLWRvd24sXHJcbi53b3JrZmxvdy1zdGFnZS1lZGl0LFxyXG4ud29ya2Zsb3ctc3RhZ2UtZGVsZXRlIHtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmc6IDNweCA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLW1vdmUtdXA6aG92ZXIsXHJcbi53b3JrZmxvdy1zdGFnZS1tb3ZlLWRvd246aG92ZXIsXHJcbi53b3JrZmxvdy1zdGFnZS1lZGl0OmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS1kZWxldGU6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIFN1YnRhc2sgc3R5bGluZyBpbXByb3ZlbWVudHMgKi9cclxuLnN1YnN0YWdlLWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDZweCAwO1xyXG5cdG1hcmdpbi1ib3R0b206IDVweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcbn1cclxuXHJcbi5zdWJzdGFnZS1uYW1lLWNvbnRhaW5lciBpbnB1dCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0cGFkZGluZzogNHB4IDhweDtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0Zm9udC1zaXplOiAxM3B4O1xyXG59XHJcblxyXG4uc3Vic3RhZ2UtbmFtZS1jb250YWluZXIgaW5wdXQ6Zm9jdXMge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4ubm8tc3RhZ2VzLW1lc3NhZ2UsXHJcbi5uby13b3JrZmxvd3MtbWVzc2FnZSxcclxuLm5vLXN1YnN0YWdlcy1tZXNzYWdlLFxyXG4ubm8tY2FuLXByb2NlZWQtbWVzc2FnZSB7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRwYWRkaW5nOiAxNXB4O1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHRtYXJnaW46IDEwcHggMDtcclxufVxyXG5cclxuLyogU1RBUlQ6IFJld2FyZCBTZXR0aW5ncyBTdHlsZXMgKi9cclxuLnJld2FyZHMtbGV2ZWxzLWNvbnRhaW5lcixcclxuLnJld2FyZHMtaXRlbXMtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdHBhZGRpbmc6IDE1cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNXB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi5yZXdhcmRzLWxldmVsLXJvdyAuc2V0dGluZy1pdGVtLWluZm8sXHJcbi5yZXdhcmRzLWl0ZW0tcm93IC5zZXR0aW5nLWl0ZW0taW5mbyB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLnJld2FyZHMtaXRlbS1yb3cuc2V0dGluZy1pdGVtIHtcclxuXHRib3JkZXItdG9wOiAwO1xyXG59XHJcblxyXG4ucmV3YXJkcy1sZXZlbC1yb3cgLnNldHRpbmctaXRlbS1jb250cm9sLFxyXG4ucmV3YXJkcy1pdGVtLXJvdyAuc2V0dGluZy1pdGVtLWNvbnRyb2wge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC13cmFwOiB3cmFwOyAvKiBBbGxvdyB3cmFwcGluZyBvbiBzbWFsbGVyIHNjcmVlbnMgKi9cclxuXHRnYXA6IDEwcHg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLnJld2FyZHMtbGV2ZWwtcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcblx0ZmxleDogMTtcclxuXHRtaW4td2lkdGg6IDEwMHB4OyAvKiBFbnN1cmUgcmVhc29uYWJsZSBtaW5pbXVtIHdpZHRoICovXHJcbn1cclxuXHJcbi5yZXdhcmRzLWl0ZW0tcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCAuaW5wdXQtY29udGFpbmVyIHtcclxuXHQvKiBPYnNpZGlhbiB1c2VzIHRoaXMgY2xhc3MgZm9yIHRleHQvdGV4dGFyZWEgKi9cclxuXHRmbGV4OiAxO1xyXG5cdG1pbi13aWR0aDogMTUwcHg7XHJcbn1cclxuXHJcbi5yZXdhcmRzLWl0ZW0tcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCB0ZXh0YXJlYSB7XHJcblx0d2lkdGg6IDEwMCU7IC8qIE1ha2UgdGV4dGFyZWEgdGFrZSBmdWxsIHdpZHRoIHdpdGhpbiBpdHMgY29udGFpbmVyICovXHJcblx0bWluLWhlaWdodDogNDBweDsgLyogRW5zdXJlIGl0J3MgdGFsbCBlbm91Z2ggZm9yIGEgY291cGxlIGxpbmVzICovXHJcblx0cmVzaXplOiB2ZXJ0aWNhbDtcclxufVxyXG5cclxuLnJld2FyZHMtaXRlbS1yb3cgLnNldHRpbmctaXRlbS1jb250cm9sIC5kcm9wZG93biB7XHJcblx0bWluLXdpZHRoOiAxMjBweDtcclxufVxyXG5cclxuLnJld2FyZHMtbGV2ZWwtcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCBidXR0b24sXHJcbi5yZXdhcmRzLWl0ZW0tcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCBidXR0b24ge1xyXG5cdG1hcmdpbi1sZWZ0OiBhdXRvOyAvKiBQdXNoIGRlbGV0ZSBidXR0b24gdG8gdGhlIHJpZ2h0ICovXHJcbn1cclxuXHJcbi5yZXdhcmRzLWl0ZW0tZGl2aWRlciB7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGhlaWdodDogMXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRtYXJnaW4tdG9wOiAxNXB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbn1cclxuXHJcbi5zZXR0aW5nLWl0ZW0uc29ydC1jcml0ZXJpb24tcm93IC5zZXR0aW5nLWl0ZW0taW5mbyB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLnNldHRpbmctaXRlbS5zb3J0LWNyaXRlcmlvbi1yb3cgc2VsZWN0LmRyb3Bkb3duIHtcclxuXHRmbGV4OiAxO1xyXG59XHJcblxyXG5cclxuLnZpZXctZWRpdC1idXR0b24sXHJcbi52aWV3LWNvcHktYnV0dG9uLFxyXG4udmlldy1vcmRlci1idXR0b24sXHJcbi52aWV3LWRlbGV0ZS1idXR0b24ge1xyXG5cdHBhZGRpbmc6IDRweDtcclxuXHR3aWR0aDogMjRweDtcclxuXHRoZWlnaHQ6IDI0cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdG1hcmdpbi1sZWZ0OiA0cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4udmlldy1jb3B5LWJ1dHRvbiB7XHJcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi52aWV3LWNvcHktYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi52aWV3LWRlbGV0ZS1idXR0b24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLnZpZXctZGVsZXRlLWJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLnZpZXctaWNvbiB7XHJcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XHJcblx0LS1pY29uLXNpemU6IDE2cHg7XHJcbn1cclxuXHJcbi8qIENvcHkgbW9kZSBpbmZvIHN0eWxlcyAqL1xyXG4uY29weS1tb2RlLWluZm8ge1xyXG5cdG1hcmdpbjogMTBweCAwO1xyXG5cdHBhZGRpbmc6IDEycHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcclxuXHRib3JkZXItcmFkaXVzOiA1cHg7XHJcblx0Ym9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4uY29weS1tb2RlLWluZm8gcCB7XHJcblx0bWFyZ2luOiA0cHggMDtcclxufVxyXG5cclxuLyogVGFza3MgUGx1Z2luIENvbXBhdGliaWxpdHkgV2FybmluZyBCYW5uZXIgKi9cclxuLnRhc2tzLWNvbXBhdGliaWxpdHktd2FybmluZyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IGhzbChcclxuXHRcdHZhcigtLWFjY2VudC1oKSxcclxuXHRcdHZhcigtLWFjY2VudC1zKSxcclxuXHRcdHZhcigtLWFjY2VudC1sKSxcclxuXHRcdDAuNVxyXG5cdCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWRcclxuXHRcdGhzbCh2YXIoLS1hY2NlbnQtaCksIHZhcigtLWFjY2VudC1zKSwgdmFyKC0tYWNjZW50LWwpLCAwLjUpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4udGFza3Mtd2FybmluZy1pY29uIHtcclxuXHRmb250LXNpemU6IDIwcHg7XHJcblx0bGluZS1oZWlnaHQ6IDE7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi50YXNrcy13YXJuaW5nLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG59XHJcblxyXG4udGFza3Mtd2FybmluZy10aXRsZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbWVkaXVtKTtcclxufVxyXG5cclxuLnRhc2tzLXdhcm5pbmctdGV4dCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbn1cclxuXHJcbi50YXNrcy13YXJuaW5nLXRleHQgYSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxufVxyXG5cclxuLnRhc2tzLXdhcm5pbmctdGV4dCBhOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZm9ybWF0LWV4YW1wbGVzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdG1hcmdpbjogdmFyKC0tc2l6ZS00LTMpIDA7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZm9ybWF0LWV4YW1wbGVzIHN0cm9uZyB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0xKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1leGFtcGxlcyBzcGFuIHtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS0yLTMpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRtYXJnaW46IHZhcigtLXNpemUtMi0xKSAwO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZm9ybWF0LWV4YW1wbGVzIHNwYW46Zmlyc3Qtb2YtdHlwZSB7XHJcblx0bWFyZ2luLXRvcDogMDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1leGFtcGxlcyBzcGFuOmxhc3Qtb2YtdHlwZSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG5cclxuLyogRW5oYW5jZWQgUHJvamVjdCBDb25maWd1cmF0aW9uIFN0eWxlcyAqL1xyXG4ucHJvamVjdC1wYXRoLW1hcHBpbmdzLWNvbnRhaW5lcixcclxuLnByb2plY3QtbWV0YWRhdGEtbWFwcGluZ3MtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG59XHJcblxyXG4ucHJvamVjdC1wYXRoLW1hcHBpbmctcm93LFxyXG4ucHJvamVjdC1tZXRhZGF0YS1tYXBwaW5nLXJvdyB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdHBhZGRpbmc6IDEwcHg7XHJcbn1cclxuXHJcbi5uby1tYXBwaW5ncy1tZXNzYWdlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAyMHB4O1xyXG59XHJcblxyXG4vKiBUYXNrIFByb2plY3QgRGlzcGxheSBTdHlsZXMgKi9cclxuLnRhc2stcHJvamVjdC10ZyB7XHJcblx0b3BhY2l0eTogMC44O1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWFjY2VudCk7XHJcblx0cGFkZGluZy1sZWZ0OiA0cHg7XHJcbn1cclxuXHJcbi50YXNrLXByb2plY3QtdGc6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcdUQ4M0RcdUREMTdcIjtcclxuXHRtYXJnaW4tcmlnaHQ6IDJweDtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG59XHJcblxyXG4vKiBNZXRhZGF0YSBFZGl0b3IgUHJvamVjdCBTdHlsZXMgKi9cclxuLnByb2plY3QtcmVhZG9ubHkge1xyXG5cdG9wYWNpdHk6IDAuODtcclxufVxyXG5cclxuLnByb2plY3QtcmVhZG9ubHkgaW5wdXQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG59XHJcblxyXG4ucHJvamVjdC1zb3VyY2UtaW5kaWNhdG9yIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRtYXJnaW4tdG9wOiA0cHg7XHJcbn1cclxuXHJcbi8qIERhdGUgZm9ybWF0IGNvbmZpZ3VyYXRpb24gc3R5bGVzICovXHJcbi50YXNrLWdlbml1cy1kYXRlLWZvcm1hdHMtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAxNXB4O1xyXG5cdHBhZGRpbmc6IDE1cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1mb3JtYXRzLWhlYWRlciB7XHJcblx0bWFyZ2luLXRvcDogMDtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdGZvbnQtc2l6ZTogMS4xZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZm9ybWF0LWxpc3Qge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDEwcHg7XHJcblx0bWFyZ2luLXRvcDogMTVweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAxMHB4O1xyXG5cdHBhZGRpbmc6IDhweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1pdGVtOmhvdmVyIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1pbnB1dCB7XHJcblx0ZmxleDogMTtcclxuXHRwYWRkaW5nOiA2cHggMTBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG5cdGZvbnQtc2l6ZTogMC45NWVtO1xyXG5cdHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1mb3JtYXQtaW5wdXQ6Zm9jdXMge1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZm9ybWF0LWlucHV0OjpwbGFjZWhvbGRlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1kZWxldGUtYnRuIHtcclxuXHR3aWR0aDogMjhweDtcclxuXHRoZWlnaHQ6IDI4cHg7XHJcblx0cGFkZGluZzogMDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGZvbnQtc2l6ZTogMjBweDtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1kZWxldGUtYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yLWhvdmVyKTtcclxuXHR0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1hZGQtZm9ybWF0LWJ0biB7XHJcblx0cGFkZGluZzogMTBweCAxNnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcblx0YWxpZ24tc2VsZjogZmxleC1zdGFydDtcclxuXHRtYXJnaW4tdG9wOiA1cHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1hZGQtZm9ybWF0LWJ0bjpob3ZlciB7XHJcblx0Ym94LXNoYWRvdzogMCAycHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtYWRkLWZvcm1hdC1idG46YWN0aXZlIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbn1cclxuXHJcbi8qIERhdGUgZm9ybWF0IGV4YW1wbGVzIHNlY3Rpb24gKi9cclxuLnRhc2stZ2VuaXVzLWRhdGUtZXhhbXBsZXMge1xyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0cGFkZGluZzogMTVweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWV4YW1wbGVzLWhlYWRlciB7XHJcblx0bWFyZ2luLXRvcDogMDtcclxuXHRtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG5cdGZvbnQtc2l6ZTogMWVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWRhdGUtZXhhbXBsZXMtdGFibGUge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWRhdGUtZXhhbXBsZXMtdGFibGUgdGgsXHJcbi50YXNrLWdlbml1cy1kYXRlLWV4YW1wbGVzLXRhYmxlIHRkIHtcclxuXHRwYWRkaW5nOiA4cHggMTJweDtcclxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWRhdGUtZXhhbXBsZXMtdGFibGUgdGgge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZGF0ZS1leGFtcGxlcy10YWJsZSB0ZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZGF0ZS1leGFtcGxlcy10YWJsZSB0cjpudGgtY2hpbGQoZXZlbikgdGQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZGF0ZS1leGFtcGxlcy10YWJsZSB0cjpob3ZlciB0ZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuIiwgIi50Zy1zdGF0dXMtaWNvbiB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cdG1hcmdpbi1yaWdodDogdmFyKC0tc2l6ZS0yLTMpO1xyXG5cdG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS1zaXplLTItMSkpO1xyXG59XHJcblxyXG4udGctaWNvbnMtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4udGctaWNvbnMtY29udGFpbmVyIC50Zy1zdGF0dXMtaWNvbiB7XHJcblx0bWFyZ2luLXJpZ2h0OiAwO1xyXG5cdG1hcmdpbi10b3A6IDA7XHJcbn1cclxuXHJcbi8qIEdsb2JhbCBGaWx0ZXIgQ29udGFpbmVyIFN0eWxlcyAqL1xyXG4uZ2xvYmFsLWZpbHRlci1jb250YWluZXIge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0cGFkZGluZzogMTBweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxufVxyXG5cclxuLyogRmlsZSBUYXNrIGR5bmFtaWMgY29uZmlndXJhdGlvbiBzdHlsZXMgKi9cclxuLnRhc2stZ2VuaXVzLW1ldGFkYXRhLWZpZWxkcy1jb250YWluZXIsXHJcbi50YXNrLWdlbml1cy10YWdzLWNvbnRhaW5lcixcclxuLnRhc2stZ2VuaXVzLXBhdGhzLWNvbnRhaW5lcixcclxuLnRhc2stZ2VuaXVzLWRhdGUtZm9ybWF0cy1jb250YWluZXIge1xyXG5cdG1hcmdpbjogMXJlbSAwO1xyXG5cdHBhZGRpbmc6IDFyZW07XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZpZWxkcy1oZWFkZXIsXHJcbi50YXNrLWdlbml1cy10YWdzLWhlYWRlcixcclxuLnRhc2stZ2VuaXVzLXBhdGhzLWhlYWRlcixcclxuLnRhc2stZ2VuaXVzLWZvcm1hdHMtaGVhZGVyLFxyXG4udGFzay1nZW5pdXMtZXhhbXBsZXMtaGVhZGVyIHtcclxuXHRmb250LXNpemU6IDAuOTVlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdG1hcmdpbi1ib3R0b206IDAuNXJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZmllbGQtbGlzdCxcclxuLnRhc2stZ2VuaXVzLXRhZy1saXN0LFxyXG4udGFzay1nZW5pdXMtcGF0aC1saXN0LFxyXG4udGFzay1nZW5pdXMtZm9ybWF0LWxpc3Qge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZmllbGQtaXRlbSxcclxuLnRhc2stZ2VuaXVzLXRhZy1pdGVtLFxyXG4udGFzay1nZW5pdXMtcGF0aC1pdGVtLFxyXG4udGFzay1nZW5pdXMtZm9ybWF0LWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdHBhZGRpbmc6IDAuNXJlbTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZmllbGQtaXRlbTpob3ZlcixcclxuLnRhc2stZ2VuaXVzLXRhZy1pdGVtOmhvdmVyLFxyXG4udGFzay1nZW5pdXMtcGF0aC1pdGVtOmhvdmVyLFxyXG4udGFzay1nZW5pdXMtZm9ybWF0LWl0ZW06aG92ZXIge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZpZWxkLWlucHV0LFxyXG4udGFzay1nZW5pdXMtdGFnLWlucHV0LFxyXG4udGFzay1nZW5pdXMtcGF0aC1pbnB1dCxcclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1pbnB1dCB7XHJcblx0ZmxleDogMTtcclxuXHRwYWRkaW5nOiAwLjRyZW07XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaW50ZXJmYWNlKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZmllbGQtaW5wdXQ6Zm9jdXMsXHJcbi50YXNrLWdlbml1cy10YWctaW5wdXQ6Zm9jdXMsXHJcbi50YXNrLWdlbml1cy1wYXRoLWlucHV0OmZvY3VzLFxyXG4udGFzay1nZW5pdXMtZm9ybWF0LWlucHV0OmZvY3VzIHtcclxuXHRvdXRsaW5lOiBub25lO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAycHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZpZWxkLWRlbGV0ZS1idG4sXHJcbi50YXNrLWdlbml1cy10YWctZGVsZXRlLWJ0bixcclxuLnRhc2stZ2VuaXVzLXBhdGgtZGVsZXRlLWJ0bixcclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1kZWxldGUtYnRuIHtcclxuXHR3aWR0aDogMjhweDtcclxuXHRoZWlnaHQ6IDI4cHg7XHJcblx0cGFkZGluZzogMDtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtc2l6ZTogMS4yZW07XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycztcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZpZWxkLWRlbGV0ZS1idG46aG92ZXIsXHJcbi50YXNrLWdlbml1cy10YWctZGVsZXRlLWJ0bjpob3ZlcixcclxuLnRhc2stZ2VuaXVzLXBhdGgtZGVsZXRlLWJ0bjpob3ZlcixcclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1kZWxldGUtYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWFkZC1maWVsZC1idG4sXHJcbi50YXNrLWdlbml1cy1hZGQtdGFnLWJ0bixcclxuLnRhc2stZ2VuaXVzLWFkZC1wYXRoLWJ0bixcclxuLnRhc2stZ2VuaXVzLWFkZC1mb3JtYXQtYnRuIHtcclxuXHRwYWRkaW5nOiAwLjVyZW0gMXJlbTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnM7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1hZGQtZmllbGQtYnRuOmhvdmVyLFxyXG4udGFzay1nZW5pdXMtYWRkLXRhZy1idG46aG92ZXIsXHJcbi50YXNrLWdlbml1cy1hZGQtcGF0aC1idG46aG92ZXIsXHJcbi50YXNrLWdlbml1cy1hZGQtZm9ybWF0LWJ0bjpob3ZlciB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBEYXRlIGZvcm1hdCBleGFtcGxlcyB0YWJsZSAqL1xyXG4udGFzay1nZW5pdXMtZGF0ZS1leGFtcGxlcyB7XHJcblx0bWFyZ2luLXRvcDogMXJlbTtcclxuXHRwYWRkaW5nOiAxcmVtO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1kYXRlLWV4YW1wbGVzLXRhYmxlIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1kYXRlLWV4YW1wbGVzLXRhYmxlIHRoIHtcclxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdHBhZGRpbmc6IDAuNXJlbTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZGF0ZS1leGFtcGxlcy10YWJsZSB0ZCB7XHJcblx0cGFkZGluZzogMC40cmVtIDAuNXJlbTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1kYXRlLWV4YW1wbGVzLXRhYmxlIHRyOmxhc3QtY2hpbGQgdGQge1xyXG5cdGJvcmRlci1ib3R0b206IG5vbmU7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1kYXRlLWV4YW1wbGVzLXRhYmxlIHRyOmhvdmVyIHRkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktYWx0KTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWlmcmFtZS1tb2RhbCB7XHJcblx0d2lkdGg6IDkwJTtcclxuXHRtYXgtd2lkdGg6IDE0MDBweDtcclxuXHRtYXgtaGVpZ2h0OiA5MHZoO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1pZnJhbWUtbW9kYWwgLm1vZGFsLXRpdGxlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbn1cclxuXHJcbi50aW1lLXBhcnNpbmctZXhhbXBsZSB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0yKTtcclxuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5nLWl0ZW0tY29udHJvbCBpbnB1dFt0eXBlPVwidGltZVwiXSB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuZmlsZS1zb3VyY2Utc3RyYXRlZ3ktY29udGFpbmVyIHtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmctdG9wOiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuIiwgIi8qIEJldGEgdGVzdCB3YXJuaW5nIGJhbm5lciBzdHlsZXMgKi9cclxuLmJldGEtdGVzdC13YXJuaW5nLWJhbm5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRnYXA6IDEycHg7XHJcblx0cGFkZGluZzogMTZweDtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG59XHJcblxyXG4uYmV0YS13YXJuaW5nLWljb24ge1xyXG5cdGZvbnQtc2l6ZTogMjBweDtcclxuXHRsaW5lLWhlaWdodDogMTtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRtYXJnaW4tdG9wOiAycHg7XHJcbn1cclxuXHJcbi5iZXRhLXdhcm5pbmctY29udGVudCB7XHJcblx0ZmxleDogMTtcclxuXHRtaW4td2lkdGg6IDA7XHJcbn1cclxuXHJcbi5iZXRhLXdhcm5pbmctdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0bWFyZ2luLWJvdHRvbTogOHB4O1xyXG59XHJcblxyXG4uYmV0YS13YXJuaW5nLXRleHQge1xyXG5cdGZvbnQtc2l6ZTogMTNweDtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG4iLCAiLyogU2V0dGluZ3MgU2VhcmNoIENvbXBvbmVudCBTdHlsZXMgKi9cclxuXHJcbi8qIFx1NjQxQ1x1N0QyMlx1OEY5M1x1NTE2NVx1Njg0Nlx1NUJCOVx1NTY2OCAtIFx1NEY3Rlx1NzUyOCBPYnNpZGlhbiBcdTY4MDdcdTUxQzZcdThGOTNcdTUxNjVcdTY4NDZcdTY4MzdcdTVGMEYgKi9cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1pbnB1dC1jb250YWluZXIge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW5wdXQtYmFja2dyb3VuZCk7XHJcblx0Ym9yZGVyOiB2YXIoLS1pbnB1dC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xyXG5cdG1pbi1oZWlnaHQ6IHZhcigtLWlucHV0LWhlaWdodCk7XHJcbn1cclxuXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtaW5wdXQtY29udGFpbmVyOmZvY3VzLXdpdGhpbiB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjIpO1xyXG59XHJcblxyXG4vKiBcdTY0MUNcdTdEMjJcdTU2RkVcdTY4MDcgKi9cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1pY29uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0cGFkZGluZzogMCB2YXIoLS1zaXplLTQtMik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLWljb24gc3ZnIHtcclxuXHR3aWR0aDogdmFyKC0taWNvbi1zKTtcclxuXHRoZWlnaHQ6IHZhcigtLWljb24tcyk7XHJcbn1cclxuXHJcbi8qIFx1NjQxQ1x1N0QyMlx1OEY5M1x1NTE2NVx1Njg0NiAtIFx1OTFDRFx1N0Y2RSBPYnNpZGlhbiBcdTlFRDhcdThCQTRcdTY4MzdcdTVGMEYgKi9cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1pbnB1dCB7XHJcblx0ZmxleDogMTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMikgdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbWVkaXVtKTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG5pbnB1dC50Zy1zZXR0aW5ncy1zZWFyY2gtaW5wdXQge1xyXG5cdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG5cdGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1pbnB1dDo6cGxhY2Vob2xkZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRvcGFjaXR5OiAwLjc7XHJcbn1cclxuXHJcbi8qIFx1NkUwNVx1OTY2NFx1NjMwOVx1OTRBRSAtIFx1NEY3Rlx1NzUyOCBPYnNpZGlhbiBcdTYzMDlcdTk0QUVcdTY4MzdcdTVGMEYgKi9cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1jbGVhciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKTtcclxuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLXNpemUtMi0xKTtcclxuXHRib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLXJhZGl1cyk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xyXG5cdGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHR3aWR0aDogdmFyKC0tY2xpY2thYmxlLWljb24tc2l6ZSk7XHJcblx0aGVpZ2h0OiB2YXIoLS1jbGlja2FibGUtaWNvbi1zaXplKTtcclxufVxyXG5cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1jbGVhcjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3ZlcikgIWltcG9ydGFudDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLWNsZWFyOmFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtY2xlYXIgc3ZnIHtcclxuXHR3aWR0aDogdmFyKC0taWNvbi14cyk7XHJcblx0aGVpZ2h0OiB2YXIoLS1pY29uLXhzKTtcclxufVxyXG5cclxuLyogXHU2NDFDXHU3RDIyXHU3RUQzXHU2NzlDXHU1QkI5XHU1NjY4IC0gXHU0RjdGXHU3NTI4IE9ic2lkaWFuIFx1NUYzOVx1NTFGQVx1ODNEQ1x1NTM1NVx1NjgzN1x1NUYwRiAqL1xyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdHMge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IGNhbGMoMTAwJSArIHZhcigtLXNpemUtMi0xKSk7XHJcblx0bGVmdDogMDtcclxuXHRyaWdodDogMDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sKTtcclxuXHR6LWluZGV4OiB2YXIoLS1sYXllci1wb3BvdmVyKTtcclxuXHRtYXgtaGVpZ2h0OiAzMjBweDtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcclxufVxyXG5cclxuLyogXHU2NDFDXHU3RDIyXHU3RUQzXHU2NzlDXHU5ODc5IC0gXHU0RjdGXHU3NTI4IE9ic2lkaWFuIFx1ODNEQ1x1NTM1NVx1OTg3OVx1NjgzN1x1NUYwRiAqL1xyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKSB2YXIoLS1zaXplLTQtMyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlci1ib3R0b206IHZhcigtLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLWluLW91dDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0Omxhc3QtY2hpbGQge1xyXG5cdGJvcmRlci1ib3R0b206IG5vbmU7XHJcbn1cclxuXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0OmhvdmVyLFxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdC1zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0OmFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUpO1xyXG59XHJcblxyXG4vKiBcdTY0MUNcdTdEMjJcdTdFRDNcdTY3OUNcdTU0MERcdTc5RjAgKi9cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHQtbmFtZSB7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0bGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXRpZ2h0KTtcclxufVxyXG5cclxuLyogXHU2NDFDXHU3RDIyXHU3RUQzXHU2NzlDXHU1MTQzXHU0RkUxXHU2MDZGICovXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0LW1ldGEge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0LWNhdGVnb3J5IHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjAyZW07XHJcbn1cclxuXHJcbi8qIFx1NjQxQ1x1N0QyMlx1N0VEM1x1Njc5Q1x1NjNDRlx1OEZGMCAqL1xyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdC1kZXNjIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbm9ybWFsKTtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi8qIFx1NjVFMFx1N0VEM1x1Njc5Q1x1NzJCNlx1NjAwMSAqL1xyXG4udGctc2V0dGluZ3Mtc2VhcmNoLW5vLXJlc3VsdCB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpIHZhcigtLXNpemUtNC0zKTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxufVxyXG5cclxuLyogXHU4QkJFXHU3RjZFXHU5ODc5XHU5QUQ4XHU0RUFFXHU2NTQ4XHU2NzlDICovXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtaGlnaGxpZ2h0IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSkgIWltcG9ydGFudDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjZzIGVhc2Utb3V0O1xyXG5cdGFuaW1hdGlvbjogdGctc2V0dGluZ3Mtc2VhcmNoLXB1bHNlIDAuNnMgZWFzZS1vdXQ7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgdGctc2V0dGluZ3Mtc2VhcmNoLXB1bHNlIHtcclxuXHQwJSB7XHJcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuXHR9XHJcblx0NTAlIHtcclxuXHRcdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMS4wMSk7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIFx1OTUyRVx1NzZEOFx1NUJGQ1x1ODIyQVx1NjMwN1x1NzkzQVx1NTY2OCAqL1xyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdC1zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3ZlcikgIWltcG9ydGFudDtcclxuXHRvdXRsaW5lOiB2YXIoLS1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0b3V0bGluZS1vZmZzZXQ6IC0xcHg7XHJcbn1cclxuXHJcbi8qIFx1NTRDRFx1NUU5NFx1NUYwRlx1OEJCRVx1OEJBMSAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQudGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdHMge1xyXG5cdFx0bWF4LWhlaWdodDogMjgwcHg7XHJcblx0XHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0fVxyXG5cclxuXHQudGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdCB7XHJcblx0XHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTIpO1xyXG5cdH1cclxuXHJcblx0LnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHQtbmFtZSB7XHJcblx0XHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdH1cclxuXHJcblx0LnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHQtY2F0ZWdvcnkge1xyXG5cdFx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0xKTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIFx1NkVEQVx1NTJBOFx1Njc2MVx1NjgzN1x1NUYwRiAtIFx1NEY3Rlx1NzUyOCBPYnNpZGlhbiBcdTY4MDdcdTUxQzZcdTZFREFcdTUyQThcdTY3NjEgKi9cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHRzIHtcclxuXHRzY3JvbGxiYXItd2lkdGg6IHRoaW47XHJcblx0c2Nyb2xsYmFyLWNvbG9yOiB2YXIoLS1zY3JvbGxiYXItdGh1bWItYmcpIHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdHM6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuXHR3aWR0aDogdmFyKC0tc2Nyb2xsYmFyLXRoaW4td2lkdGgpO1xyXG59XHJcblxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdHM6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHRzOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyLXRodW1iLWJnKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1zY3JvbGxiYXItdGhpbi10aHVtYi1yYWRpdXMpO1xyXG5cdGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cdGJhY2tncm91bmQtY2xpcDogY29udGVudC1ib3g7XHJcbn1cclxuXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0czo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXNjcm9sbGJhci10aHVtYi1iZy1ob3Zlcik7XHJcblx0YmFja2dyb3VuZC1jbGlwOiBjb250ZW50LWJveDtcclxufVxyXG5cclxuLyogXHU0RTBFXHU4QkJFXHU3RjZFXHU2ODA3XHU3QjdFXHU5ODc1XHU1QkI5XHU1NjY4XHU3Njg0XHU5NUY0XHU4REREXHU4QzAzXHU2NTc0ICovXHJcbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtdGFicy1jYXRlZ29yaXplZC1jb250YWluZXIge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0zKTtcclxufVxyXG5cclxuLyogXHU0RkVFXHU1OTBEXHU1M0VGXHU4MEZEXHU3Njg0IHotaW5kZXggXHU5NUVFXHU5ODk4ICovXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0cyB7XHJcblx0ei1pbmRleDogdmFyKC0tbGF5ZXItcG9wb3ZlciwgMjAwKTtcclxufVxyXG5cclxuLyogXHU3ODZFXHU0RkREXHU4RjkzXHU1MTY1XHU2ODQ2XHU4MDVBXHU3MTI2XHU2NUY2XHU3Njg0XHU2ODM3XHU1RjBGXHU2QjYzXHU3ODZFICovXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtaW5wdXQ6Zm9jdXMge1xyXG5cdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG5cdG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcclxuXHRib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIFx1NjQxQ1x1N0QyMlx1NTZGRVx1NjgwN1x1NzY4NFx1NEVBNFx1NEU5Mlx1NzJCNlx1NjAwMSAqL1xyXG4udGctc2V0dGluZ3Mtc2VhcmNoLWljb24ge1xyXG5cdHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLWlucHV0LWNvbnRhaW5lcjpmb2N1cy13aXRoaW4gLnRnLXNldHRpbmdzLXNlYXJjaC1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLyogXHU2RTA1XHU5NjY0XHU2MzA5XHU5NEFFXHU3Njg0XHU1NkZFXHU2ODA3XHU2ODM3XHU1RjBGICovXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtY2xlYXIge1xyXG5cdG9wYWNpdHk6IDAuODtcclxufVxyXG5cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1jbGVhcjpob3ZlciB7XHJcblx0b3BhY2l0eTogMTtcclxufVxyXG4iLCAiLyogU2V0dGluZ3MgTWlncmF0aW9uIFN0eWxpbmcgKi9cclxuXHJcbi5zZXR0aW5nLWl0ZW0taW5mby5tb2Qtd2FybmluZyB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdHBhZGRpbmc6IDE2cHg7XHJcblx0bWFyZ2luOiAxMnB4IDA7XHJcbn1cclxuXHJcbi5zZXR0aW5nLWl0ZW0taW5mby5tb2Qtd2FybmluZyAuc2V0dGluZy1pdGVtLW5hbWUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxufVxyXG5cclxuLnNldHRpbmctaXRlbS1pbmZvLm1vZC13YXJuaW5nIC5zZXR0aW5nLWl0ZW0tZGVzY3JpcHRpb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG59XHJcblxyXG4uc2V0dGluZy1pdGVtLWluZm8ubW9kLXdhcm5pbmcgLnNldHRpbmctaXRlbS1kZXNjcmlwdGlvbiBwIHtcclxuXHRtYXJnaW46IDRweCAwO1xyXG59XHJcblxyXG4uc2V0dGluZy1pdGVtLWluZm8ubW9kLXdhcm5pbmcgLnNldHRpbmctaXRlbS1jb250cm9sIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogOHB4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5zZXR0aW5nLWl0ZW0taW5mby5tb2Qtd2FybmluZyBidXR0b24ubW9kLWN0YSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0cGFkZGluZzogOHB4IDE2cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbi5zZXR0aW5nLWl0ZW0taW5mby5tb2Qtd2FybmluZyBidXR0b24ubW9kLWN0YTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLnNldHRpbmctaXRlbS1pbmZvLm1vZC13YXJuaW5nIGJ1dHRvbi5tb2QtbXV0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdHBhZGRpbmc6IDhweCAxNnB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLnNldHRpbmctaXRlbS1pbmZvLm1vZC13YXJuaW5nIGJ1dHRvbi5tb2QtbXV0ZWQ6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi8qIE1pZ3JhdGlvbiBTdWNjZXNzIEluZGljYXRvciAqL1xyXG4uc2V0dGluZy1pdGVtLWluZm8ubW9kLXN1Y2Nlc3Mge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZWVuLWJnKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdHBhZGRpbmc6IDE2cHg7XHJcblx0bWFyZ2luOiAxMnB4IDA7XHJcbn1cclxuXHJcbi5zZXR0aW5nLWl0ZW0taW5mby5tb2Qtc3VjY2VzcyAuc2V0dGluZy1pdGVtLW5hbWUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuXHRtYXJnaW4tYm90dG9tOiA4cHg7XHJcbn1cclxuXHJcbi8qIEZpbGVTb3VyY2UgSW50ZWdyYXRpb24gTm90aWNlICovXHJcbi5maWxlLXNvdXJjZS1ub3RpY2Uge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0cGFkZGluZzogMTJweDtcclxuXHRtYXJnaW46IDhweCAwO1xyXG59XHJcblxyXG4uZmlsZS1zb3VyY2Utbm90aWNlIC5ub3RpY2UtdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0bWFyZ2luLWJvdHRvbTogNHB4O1xyXG59XHJcblxyXG4uZmlsZS1zb3VyY2Utbm90aWNlIC5ub3RpY2UtZGVzY3JpcHRpb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcbiIsICIvKiBXb3Jrc3BhY2UgU2V0dGluZ3MgU2VsZWN0b3IgU3R5bGVzICovXHJcblxyXG4vKiBNYWluIGNvbnRhaW5lciBmb3IgdGhlIGhlYWRlciBiYXIgKi9cclxuLnRnLXNldHRpbmdzLWhlYWRlci1iYXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDEycHg7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyogQ29udGFpbmVyIGZvciB3b3Jrc3BhY2Ugc2VsZWN0b3IgKi9cclxuLnRnLXdvcmtzcGFjZS1zZWxlY3Rvci1jb250YWluZXIge1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4vKiBXb3Jrc3BhY2Ugc2VsZWN0b3IgYnV0dG9uICovXHJcbi53b3Jrc3BhY2Utc2V0dGluZ3Mtc2VsZWN0b3Ige1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG5cclxuLndvcmtzcGFjZS1zZXR0aW5ncy1zZWxlY3Rvci1idXR0b24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDhweDtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWZvcm0tZmllbGQpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlO1xyXG5cdG1pbi13aWR0aDogMTUwcHg7XHJcblx0aGVpZ2h0OiAzNHB4OyAvKiBNYXRjaCBzZWFyY2ggYmFyIGhlaWdodCAqL1xyXG59XHJcblxyXG4ud29ya3NwYWNlLXNldHRpbmdzLXNlbGVjdG9yLWJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuXHJcbi53b3Jrc3BhY2Utc2V0dGluZ3Mtc2VsZWN0b3ItYnV0dG9uOmFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUtaG92ZXIpO1xyXG59XHJcblxyXG4vKiBXb3Jrc3BhY2UgaWNvbiAqL1xyXG4ud29ya3NwYWNlLXNldHRpbmdzLXNlbGVjdG9yLWJ1dHRvbiAud29ya3NwYWNlLWljb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMjBweDtcclxuXHRoZWlnaHQ6IDIwcHg7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi53b3Jrc3BhY2Utc2V0dGluZ3Mtc2VsZWN0b3ItYnV0dG9uIC53b3Jrc3BhY2UtaWNvbiBzdmcge1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxuXHRmaWxsOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogV29ya3NwYWNlIG5hbWUgKi9cclxuLndvcmtzcGFjZS1zZXR0aW5ncy1zZWxlY3Rvci1idXR0b24gLndvcmtzcGFjZS1uYW1lIHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLyogRHJvcGRvd24gYXJyb3cgaWNvbiAqL1xyXG4ud29ya3NwYWNlLXNldHRpbmdzLXNlbGVjdG9yLWJ1dHRvbiAud29ya3NwYWNlLWRyb3Bkb3duLWljb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMTZweDtcclxuXHRoZWlnaHQ6IDE2cHg7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0bWFyZ2luLWxlZnQ6IGF1dG87XHJcbn1cclxuXHJcbi53b3Jrc3BhY2Utc2V0dGluZ3Mtc2VsZWN0b3ItYnV0dG9uIC53b3Jrc3BhY2UtZHJvcGRvd24taWNvbiBzdmcge1xyXG5cdHdpZHRoOiAxMnB4O1xyXG5cdGhlaWdodDogMTJweDtcclxuXHRmaWxsOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgZWFzZTtcclxufVxyXG5cclxuLndvcmtzcGFjZS1zZXR0aW5ncy1zZWxlY3Rvci1idXR0b246aG92ZXIgLndvcmtzcGFjZS1kcm9wZG93bi1pY29uIHN2ZyB7XHJcblx0ZmlsbDogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4vKiBBZGp1c3Qgc2VhcmNoIGNvbnRhaW5lciB0byB0YWtlIHJlbWFpbmluZyBzcGFjZSAqL1xyXG4udGctc2V0dGluZ3MtaGVhZGVyLWJhciAudGctc2V0dGluZ3Mtc2VhcmNoLWNvbnRhaW5lciB7XHJcblx0ZmxleDogMTtcclxuXHRtYXgtd2lkdGg6IG5vbmU7XHJcbn1cclxuXHJcbi8qIEVuc3VyZSBzZWFyY2ggaW5wdXQgY29udGFpbmVyIGZpbGxzIHdpZHRoICovXHJcbi50Zy1zZXR0aW5ncy1oZWFkZXItYmFyIC50Zy1zZXR0aW5ncy1zZWFyY2gtaW5wdXQtY29udGFpbmVyIHtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyogTWFpbiBjb250YWluZXIgYWRqdXN0bWVudHMgKi9cclxuLnRnLXNldHRpbmdzLW1haW4tY29udGFpbmVyIHtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyogRW5zdXJlIHNlYXJjaCByZXN1bHRzIGFwcGVhciBiZWxvdyB0aGUgaGVhZGVyIGJhciAqL1xyXG4udGctc2V0dGluZ3MtbWFpbi1jb250YWluZXIgLnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHRzIHtcclxuXHRtYXJnaW4tdG9wOiA4cHg7XHJcbn1cclxuXHJcbi8qIE1vYmlsZSByZXNwb25zaXZlIGFkanVzdG1lbnRzICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC50Zy1zZXR0aW5ncy1oZWFkZXItYmFyIHtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0XHRhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuXHRcdGdhcDogOHB4O1xyXG5cdH1cclxuXHJcblx0LndvcmtzcGFjZS1zZXR0aW5ncy1zZWxlY3Rvci1idXR0b24ge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtaW4td2lkdGg6IHVuc2V0O1xyXG5cdH1cclxuXHJcblx0LnRnLXNldHRpbmdzLWhlYWRlci1iYXIgLnRnLXNldHRpbmdzLXNlYXJjaC1jb250YWluZXIge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG59XHJcbiIsICIuY29uZmlybS1tb2RhbC1idXR0b25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTMpO1xyXG59XHJcblxyXG4vKiBMaXN0IENvbmZpZyBNb2RhbCBTdHlsZXMgKi9cclxuLmxpc3QtY29uZmlnLW1vZGFsIHtcclxuXHRtaW4td2lkdGg6IDQwMHB4O1xyXG5cdG1heC13aWR0aDogNjAwcHg7XHJcbn1cclxuXHJcbi5saXN0LWNvbmZpZy1kZXNjcmlwdGlvbiB7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtc21hbGxlcik7XHJcbn1cclxuXHJcbi5saXN0LWNvbmZpZy1jb250YWluZXIge1xyXG5cdG1hcmdpbjogdmFyKC0tc2l6ZS00LTMpIDA7XHJcblx0bWF4LWhlaWdodDogMzAwcHg7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0zKTtcclxufVxyXG5cclxuLmxpc3QtY29uZmlnLWVtcHR5IHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTYpO1xyXG59XHJcblxyXG4ubGlzdC1jb25maWctZW1wdHktdGV4dCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi5saXN0LWNvbmZpZy1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTIpO1xyXG59XHJcblxyXG4ubGlzdC1jb25maWctaXRlbTpsYXN0LWNoaWxkIHtcclxuXHRtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcblxyXG4ubGlzdC1jb25maWctaW5wdXQge1xyXG5cdGZsZXg6IDE7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0zKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcblxyXG4ubGlzdC1jb25maWctaW5wdXQ6Zm9jdXMge1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4ubGlzdC1jb25maWctZGVsZXRlLWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiAyNHB4O1xyXG5cdGhlaWdodDogMjRweDtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4ubGlzdC1jb25maWctZGVsZXRlLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvci1ob3Zlcik7XHJcbn1cclxuXHJcbi5saXN0LWNvbmZpZy1kZWxldGUtaWNvbiB7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG59XHJcbiIsICIvKiBQbGFjZW1lbnQgUHJldmlldyBTdHlsZXMgKi9cclxuXHJcbi5wbGFjZW1lbnQtcHJldmlldyB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAyZnIgMWZyO1xyXG5cdGdhcDogMnB4O1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRoZWlnaHQ6IDE4MHB4O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG59XHJcblxyXG4vKiBTaWRlYmFycyAqL1xyXG4ucGxhY2VtZW50LXNpZGViYXIge1xyXG5cdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHRwYWRkaW5nOiA0cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogMnB4O1xyXG59XHJcblxyXG4ucGxhY2VtZW50LXNpZGViYXItYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdG9wYWNpdHk6IDAuNDtcclxufVxyXG5cclxuLnBsYWNlbWVudC1zaWRlYmFyLWluYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0b3BhY2l0eTogMC4zO1xyXG59XHJcblxyXG4vKiBTaWRlYmFyIGl0ZW1zICovXHJcbi5wbGFjZW1lbnQtc2lkZWJhci1pdGVtIHtcclxuXHRoZWlnaHQ6IDZweDtcclxuXHRib3JkZXItcmFkaXVzOiAxcHg7XHJcbn1cclxuXHJcbi5wbGFjZW1lbnQtc2lkZWJhci1pdGVtLWFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG9wYWNpdHk6IDAuMztcclxufVxyXG5cclxuLnBsYWNlbWVudC1zaWRlYmFyLWl0ZW0taW5hY3RpdmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdG9wYWNpdHk6IDAuMjtcclxufVxyXG5cclxuLyogUmlnaHQgc2lkZWJhciBpdGVtcyAoc21hbGxlcikgKi9cclxuLnBsYWNlbWVudC1zaWRlYmFyLWl0ZW0tc21hbGwge1xyXG5cdGhlaWdodDogNXB4O1xyXG59XHJcblxyXG4vKiBDZW50ZXIgYXJlYSAqL1xyXG4ucGxhY2VtZW50LWNlbnRlciB7XHJcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxufVxyXG5cclxuLnBsYWNlbWVudC1jZW50ZXItYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdG9wYWNpdHk6IDAuNDtcclxufVxyXG5cclxuLyogVGFiIGJhciAqL1xyXG4ucGxhY2VtZW50LXRhYi1iYXIge1xyXG5cdGhlaWdodDogMTZweDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmc6IDJweCA0cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDJweDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LXRhYiB7XHJcblx0d2lkdGg6IDI0cHg7XHJcblx0aGVpZ2h0OiAxMHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRvcGFjaXR5OiAwLjM7XHJcblx0Ym9yZGVyLXJhZGl1czogMXB4O1xyXG59XHJcblxyXG4ucGxhY2VtZW50LXRhYi1hY3RpdmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRvcGFjaXR5OiAwLjU7XHJcbn1cclxuXHJcbi8qIENvbnRlbnQgYXJlYSAqL1xyXG4ucGxhY2VtZW50LWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcblx0cGFkZGluZzogNnB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDRweDtcclxufVxyXG5cclxuLnBsYWNlbWVudC1jb250ZW50LWxpbmUge1xyXG5cdGhlaWdodDogOHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRvcGFjaXR5OiAwLjM7XHJcblx0Ym9yZGVyLXJhZGl1czogMXB4O1xyXG59XHJcbiIsICIvKiBPbmJvYXJkaW5nIENvbXBvbmVudCBQcmV2aWV3cyBTdHlsZXMgKi9cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXc6aGFzKC5jb21wb25lbnQtc2hvd2Nhc2UpIC5vbmJvYXJkaW5nLWNvbnRlbnQge1xyXG5cdG92ZXJmbG93LXk6IGhpZGRlbjtcclxufVxyXG5cclxuLyogQ29tcG9uZW50IHNob3djYXNlIGNvbnRhaW5lciAqL1xyXG4uY29tcG9uZW50LXNob3djYXNlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTYpO1xyXG5cdG1hcmdpbjogdmFyKC0tc2l6ZS00LTQpIDA7XHJcblx0bWluLWhlaWdodDogNDAwcHg7XHJcbn1cclxuXHJcbi5jb21wb25lbnQtc2hvd2Nhc2UtcHJldmlldyB7XHJcblx0ZmxleDogMTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC00KTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5jb21wb25lbnQtc2hvd2Nhc2UtZGVzY3JpcHRpb24ge1xyXG5cdGZsZXg6IDE7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTMpO1xyXG59XHJcblxyXG4uY29tcG9uZW50LXNob3djYXNlLWRlc2NyaXB0aW9uIGgzIHtcclxuXHRtYXJnaW46IDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbGFyZ2UpO1xyXG59XHJcblxyXG4uY29tcG9uZW50LXNob3djYXNlLWRlc2NyaXB0aW9uIHAge1xyXG5cdG1hcmdpbjogMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bGluZS1oZWlnaHQ6IDEuNjtcclxufVxyXG5cclxuLmNvbXBvbmVudC1mZWF0dXJlLWxpc3Qge1xyXG5cdGxpc3Qtc3R5bGU6IG5vbmU7XHJcblx0cGFkZGluZzogMDtcclxuXHRtYXJnaW46IDA7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4uY29tcG9uZW50LWZlYXR1cmUtbGlzdCBsaSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uY29tcG9uZW50LWZlYXR1cmUtbGlzdCBsaTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlx1MjcxM1wiO1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4vKiBDb21wb25lbnQgcHJldmlldyBhZGp1c3RtZW50cyAqL1xyXG4uY29tcG9uZW50LXByZXZpZXcge1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdHVzZXItc2VsZWN0OiBub25lO1xyXG5cdHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG59XHJcblxyXG4vKiBTY2FsZSBkb3duIHByZXZpZXdzIHRvIGZpdCAqL1xyXG4uY29tcG9uZW50LXByZXZpZXctc2lkZWJhciB7XHJcblx0bWF4LXdpZHRoOiAzMDBweDtcclxufVxyXG5cclxuLmNvbXBvbmVudC1wcmV2aWV3LXRvcG5hdiB7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xyXG59XHJcblxyXG4uY29tcG9uZW50LXByZXZpZXctY29udGVudCB7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xyXG59XHJcblxyXG4uY29tcG9uZW50LXByZXZpZXctcG9wb3ZlciB7XHJcblx0bWF4LXdpZHRoOiAzNTBweDtcclxuXHR0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XHJcbn1cclxuXHJcbi8qIERpc2FibGUgaW50ZXJhY3Rpb25zIGluIHByZXZpZXdzICovXHJcbi5jb21wb25lbnQtcHJldmlldyBpbnB1dCxcclxuLmNvbXBvbmVudC1wcmV2aWV3IGJ1dHRvbixcclxuLmNvbXBvbmVudC1wcmV2aWV3IC5jbGlja2FibGUtaWNvbiB7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0Y3Vyc29yOiBkZWZhdWx0O1xyXG59XHJcblxyXG4vKiBDb21wb25lbnQgdGFicyBmb3Igc3dpdGNoaW5nIHZpZXdzICovXHJcbi5jb21wb25lbnQtdGFicyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4uY29tcG9uZW50LXRhYiB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC00KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbi5jb21wb25lbnQtdGFiOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uY29tcG9uZW50LXRhYi5pcy1hY3RpdmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLyogTXVsdGlwbGUgY29tcG9uZW50IHNob3djYXNlICovXHJcbi5jb21wb25lbnRzLWdyaWQge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtOCk7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgYWRqdXN0bWVudHMgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0LmNvbXBvbmVudC1zaG93Y2FzZSB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdH1cclxuXHJcblx0LmNvbXBvbmVudC1zaG93Y2FzZS1wcmV2aWV3IHtcclxuXHRcdG1pbi1oZWlnaHQ6IDMwMHB4O1xyXG5cdH1cclxuXHJcblx0LmNvbXBvbmVudC1wcmV2aWV3IHtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMC43NSk7XHJcblx0fVxyXG59XHJcblxyXG4vKiBGaWxlIGZpbHRlciBwcmV2aWV3IHN0eWxlcyAqL1xyXG4uZmlsZS1maWx0ZXItcHJldmlldyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTQpO1xyXG59XHJcblxyXG4uZmlsZS1maWx0ZXItY29uZmlnIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uZmlsZS1maWx0ZXItc3RhdHMtcHJldmlldyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC00KTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxufVxyXG5cclxuLmZpbHRlci1zdGF0LWl0ZW0ge1xyXG5cdGZsZXg6IDE7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uZmlsdGVyLXN0YXQtdmFsdWUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1sYXJnZXIpO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxuXHRkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLmZpbHRlci1zdGF0LWxhYmVsIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMSk7XHJcbn1cclxuXHJcbi8qIFJlY29tbWVuZGVkIGNvbmZpZ3MgKi9cclxuLnJlY29tbWVuZGVkLWNvbmZpZ3Mge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbi5yZWNvbW1lbmRlZC1jb25maWctaXRlbSB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4ucmVjb21tZW5kZWQtY29uZmlnLWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLnJlY29tbWVuZGVkLWNvbmZpZy1pdGVtIGg0IHtcclxuXHRtYXJnaW46IDAgMCB2YXIoLS1zaXplLTQtMikgMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xyXG59XHJcblxyXG4ucmVjb21tZW5kZWQtY29uZmlnLWl0ZW0gcCB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcblxyXG4uY29tcG9uZW50LXNob3djYXNlLXByZXZpZXcudGctdjItY29udGFpbmVyLmNvbXBvbmVudC1wcmV2aWV3LXNpZGViYXIgLnYyLXNpZGViYXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn0iLCAiLyogRmlsZSBGaWx0ZXIgU2V0dGluZ3MgU3R5bGVzICovXHJcblxyXG4uZmlsZS1maWx0ZXItcnVsZXMtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAxcmVtO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0cGFkZGluZzogMXJlbTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi5maWxlLWZpbHRlci1ydWxlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAxcmVtO1xyXG5cdHBhZGRpbmc6IDAuNzVyZW07XHJcblx0bWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLXJ1bGU6bGFzdC1jaGlsZCB7XHJcblx0bWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLXJ1bGUtdHlwZSxcclxuLmZpbGUtZmlsdGVyLXJ1bGUtcGF0aCxcclxuLmZpbGUtZmlsdGVyLXJ1bGUtc2NvcGUsXHJcbi5maWxlLWZpbHRlci1ydWxlLWVuYWJsZWQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDAuMjVyZW07XHJcbn1cclxuXHJcbi5maWxlLWZpbHRlci1ydWxlLXR5cGUge1xyXG5cdG1pbi13aWR0aDogODBweDtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLXJ1bGUtcGF0aCB7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLXJ1bGUtZW5hYmxlZCB7XHJcblx0bWluLXdpZHRoOiA2MHB4O1xyXG59XHJcblxyXG4uZmlsZS1maWx0ZXItcnVsZSBsYWJlbCB7XHJcblx0Zm9udC1zaXplOiAwLjhyZW07XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi5maWxlLWZpbHRlci1ydWxlIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuXHRwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDAuOXJlbTtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLXJ1bGUgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuXHR3aWR0aDogMTZweDtcclxuXHRoZWlnaHQ6IDE2cHg7XHJcbn1cclxuXHJcbi5maWxlLWZpbHRlci1ydWxlLWRlbGV0ZSB7XHJcblx0cGFkZGluZzogMC4yNXJlbTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1pbi13aWR0aDogMjhweDtcclxuXHRoZWlnaHQ6IDI4cHg7XHJcbn1cclxuXHJcbi5maWxlLWZpbHRlci1hZGQtcnVsZSB7XHJcblx0bWFyZ2luLXRvcDogMXJlbTtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLWFkZC1ydWxlIC5zZXR0aW5nLWl0ZW0ge1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4uZmlsZS1maWx0ZXItYWRkLXJ1bGUgLnNldHRpbmctaXRlbS1jb250cm9sIHtcclxuXHRnYXA6IDAuNXJlbTtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLWFkZC1ydWxlICsgLnNldHRpbmctaXRlbSB7XHJcblx0Ym9yZGVyLXRvcDogbm9uZTtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLXN0YXRzIHtcclxuXHRtYXJnaW4tdG9wOiAxLjVyZW07XHJcblx0cGFkZGluZzogMXJlbTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLXN0YXQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMC4yNXJlbSAwO1xyXG59XHJcblxyXG4uZmlsZS1maWx0ZXItc3RhdDpub3QoOmxhc3QtY2hpbGQpIHtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG1hcmdpbi1ib3R0b206IDAuMjVyZW07XHJcblx0cGFkZGluZy1ib3R0b206IDAuNXJlbTtcclxufVxyXG5cclxuLnN0YXQtbGFiZWwge1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnN0YXQtdmFsdWUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIEVycm9yIHN0YXRlIGZvciBzdGF0aXN0aWNzICovXHJcbi5maWxlLWZpbHRlci1zdGF0LmVycm9yIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcclxuXHRib3JkZXItbGVmdDogM3B4IHNvbGlkIHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4uZmlsZS1maWx0ZXItc3RhdC5lcnJvciAuc3RhdC1sYWJlbCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4vKiBSZWZyZXNoIGJ1dHRvbiBzdHlsaW5nICovXHJcbi5zZXR0aW5nLWl0ZW0gLnNldHRpbmctaXRlbS1jb250cm9sIGJ1dHRvblthcmlhLWxhYmVsKj1cInJlZnJlc2hcIl0ge1xyXG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5zZXR0aW5nLWl0ZW0gLnNldHRpbmctaXRlbS1jb250cm9sIGJ1dHRvblthcmlhLWxhYmVsKj1cInJlZnJlc2hcIl06aG92ZXIge1xyXG5cdHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcclxufVxyXG5cclxuLyogTG9hZGluZyBzdGF0ZSBhbmltYXRpb24gKi9cclxuQGtleWZyYW1lcyByZWZyZXNoLXNwaW4ge1xyXG5cdGZyb20ge1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcblx0fVxyXG5cdHRvIHtcclxuXHRcdHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XHJcblx0fVxyXG59XHJcblxyXG4uc2V0dGluZy1pdGVtIC5zZXR0aW5nLWl0ZW0tY29udHJvbCBidXR0b25bZGlzYWJsZWRdIC5sdWNpZGUtcmVmcmVzaC1jdyB7XHJcblx0YW5pbWF0aW9uOiByZWZyZXNoLXNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xyXG59XHJcblxyXG4vKiBSZXNwb25zaXZlIGRlc2lnbiBmb3Igc21hbGxlciBzY3JlZW5zICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC5maWxlLWZpbHRlci1ydWxlIHtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0XHRhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuXHRcdGdhcDogMC41cmVtO1xyXG5cdH1cclxuXHJcblx0LmZpbGUtZmlsdGVyLXJ1bGUtdHlwZSxcclxuXHQuZmlsZS1maWx0ZXItcnVsZS1wYXRoLFxyXG5cdC5maWxlLWZpbHRlci1ydWxlLWVuYWJsZWQge1xyXG5cdFx0bWluLXdpZHRoOiBhdXRvO1xyXG5cdH1cclxuXHJcblx0LmZpbGUtZmlsdGVyLXJ1bGUtZGVsZXRlIHtcclxuXHRcdGFsaWduLXNlbGY6IGZsZXgtZW5kO1xyXG5cdFx0bWFyZ2luLXRvcDogMC41cmVtO1xyXG5cdH1cclxufVxyXG5cclxuLyogRGFyayB0aGVtZSBhZGp1c3RtZW50cyAqL1xyXG4udGhlbWUtZGFyayAuZmlsZS1maWx0ZXItcnVsZSBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5LWFsdCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC5maWxlLWZpbHRlci1ydWxlIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIEVtcHR5IHN0YXRlIHN0eWxpbmcgKi9cclxuLmZpbGUtZmlsdGVyLXJ1bGVzLWNvbnRhaW5lcjplbXB0eTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIk5vIGZpbHRlciBydWxlcyBjb25maWd1cmVkLiBBZGQgcnVsZXMgYmVsb3cgdG8gc3RhcnQgZmlsdGVyaW5nIGZpbGVzIGFuZCBmb2xkZXJzLlwiO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdHBhZGRpbmc6IDJyZW07XHJcbn1cclxuXHJcbi8qIFByZXNldCB0ZW1wbGF0ZXMgc2VjdGlvbiAqL1xyXG4uZmlsZS1maWx0ZXItcHJlc2V0LWNvbnRhaW5lciB7XHJcblx0bWFyZ2luLXRvcDogMXJlbTtcclxuXHRwYWRkaW5nOiAxcmVtO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4uZmlsZS1maWx0ZXItcHJlc2V0LWNvbnRhaW5lciAuc2V0dGluZy1pdGVtIHtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0cGFkZGluZzogMC41cmVtIDA7XHJcbn1cclxuXHJcbi5maWxlLWZpbHRlci1wcmVzZXQtY29udGFpbmVyIC5zZXR0aW5nLWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLyogUHJlc2V0IGJ1dHRvbiBzdHlsaW5nICovXHJcbi5maWxlLWZpbHRlci1wcmVzZXQtY29udGFpbmVyIGJ1dHRvbiB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5maWxlLWZpbHRlci1wcmVzZXQtY29udGFpbmVyIGJ1dHRvbjpkaXNhYmxlZCB7XHJcblx0b3BhY2l0eTogMC42O1xyXG5cdGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLXByZXNldC1jb250YWluZXIgYnV0dG9uOm5vdCg6ZGlzYWJsZWQpOmhvdmVyIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpO1xyXG59XHJcblxyXG4vKiBTdWNjZXNzIHN0YXRlIGZvciBhcHBsaWVkIHByZXNldHMgKi9cclxuLmZpbGUtZmlsdGVyLXByZXNldC1jb250YWluZXIgYnV0dG9uW2Rpc2FibGVkXSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC5maWxlLWZpbHRlci1wcmVzZXQtY29udGFpbmVyIGJ1dHRvbltkaXNhYmxlZF0ge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWdyZWVuLXJnYik7XHJcblx0b3BhY2l0eTogMC44O1xyXG59XHJcbiIsICIudGFzay1kZXRhaWxzIC5wYW5lbC10b2dnbGUtY29udGFpbmVyIHtcclxuXHRsZWZ0OiAxMHB4O1xyXG59XHJcblxyXG4vKiBEZXRhaWwgUGFuZWwgU3R5bGVzICovXHJcbi50YXNrLWRldGFpbHMge1xyXG5cdHdpZHRoOiAzMDBweDtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG1pbi13aWR0aDogMjUwcHg7XHJcblx0bWF4LXdpZHRoOiA0MDBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0b3JkZXI6IDE7XHJcbn1cclxuXHJcbi8qIERldGFpbHMgcGFuZWwgdmlzaWJpbGl0eSAqL1xyXG4udGFzay1nZW5pdXMtY29udGFpbmVyLmRldGFpbHMtaGlkZGVuIC50YXNrLWRldGFpbHMge1xyXG5cdHdpZHRoOiAwO1xyXG5cdG9wYWNpdHk6IDA7XHJcblx0bWFyZ2luLXJpZ2h0OiAtMzAwcHg7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWNvbnRhaW5lci5kZXRhaWxzLXZpc2libGUgLnRhc2stZGV0YWlscyB7XHJcblx0d2lkdGg6IDM1MHB4O1xyXG5cdG9wYWNpdHk6IDE7XHJcblx0bWFyZ2luLXJpZ2h0OiAwO1xyXG59XHJcblxyXG4vKiBNb2JpbGUgdmlldyAtIHNsaWRlIGZyb20gcmlnaHQgKi9cclxuLmlzLXBob25lIC50YXNrLWRldGFpbHMsXHJcbi5pcy1tb2JpbGUgLnRhc2stZGV0YWlscyB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdHRvcDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdHotaW5kZXg6IDEwO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxufVxyXG5cclxuLmlzLXBob25lIC50YXNrLWdlbml1cy1jb250YWluZXIuZGV0YWlscy1oaWRkZW4gLnRhc2stZGV0YWlscyxcclxuLmlzLW1vYmlsZSAudGFzay1nZW5pdXMtY29udGFpbmVyLmRldGFpbHMtaGlkZGVuIC50YXNrLWRldGFpbHMsXHJcbi5pcy1tb2JpbGUgLnRnLXYyLWNvbnRhaW5lci5kZXRhaWxzLWhpZGRlbiAudGFzay1kZXRhaWxzIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXJnaW4tcmlnaHQ6IDA7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnRhc2stZ2VuaXVzLWNvbnRhaW5lci5kZXRhaWxzLXZpc2libGUgLnRhc2stZGV0YWlscyxcclxuLmlzLW1vYmlsZSAudGFzay1nZW5pdXMtY29udGFpbmVyLmRldGFpbHMtdmlzaWJsZSAudGFzay1kZXRhaWxzLFxyXG4uaXMtbW9iaWxlIC50Zy12Mi1jb250YWluZXIuZGV0YWlscy12aXNpYmxlIC50YXNrLWRldGFpbHMge1xyXG5cdHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1zaXplLTQtMTIpKTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbn1cclxuXHJcbi8qIEFkZCBvdmVybGF5IHdoZW4gZGV0YWlscyBhcmUgdmlzaWJsZSBvbiBtb2JpbGUgKi9cclxuLmlzLXBob25lIC50YXNrLWdlbml1cy1jb250YWluZXIuZGV0YWlscy12aXNpYmxlOjpiZWZvcmUsXHJcbi5pcy1tb2JpbGUgLnRhc2stZ2VuaXVzLWNvbnRhaW5lci5kZXRhaWxzLXZpc2libGU6OmJlZm9yZSxcclxuLmlzLW1vYmlsZSAudGctdjItY29udGFpbmVyLmRldGFpbHMtdmlzaWJsZTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1jb3Zlcik7XHJcblx0b3BhY2l0eTogMC41O1xyXG5cdHotaW5kZXg6IDU7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLmRldGFpbHMtY2xvc2UtYnRuLFxyXG4uaXMtbW9iaWxlIC5kZXRhaWxzLWNsb3NlLWJ0biB7XHJcblx0d2lkdGg6IDI0cHg7XHJcblx0aGVpZ2h0OiAyNHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLmlzLXBob25lIC5kZXRhaWxzLWhlYWRlcixcclxuLmlzLW1vYmlsZSAuZGV0YWlscy1oZWFkZXIge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLmRldGFpbHMtZW1wdHkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRwYWRkaW5nOiAyMHB4O1xyXG59XHJcblxyXG4vKiBEZXRhaWxzIGNvbnRlbnQgKi9cclxuLmRldGFpbHMtaGVhZGVyIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0cGFkZGluZy1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nLXRvcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGZvbnQtc2l6ZTogMS4xZW07XHJcbn1cclxuXHJcbi5kZXRhaWxzLWNvbnRlbnQge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC00KTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nLWJvdHRvbTogbWF4KHZhcigtLXNhZmUtYXJlYS1pbnNldC1ib3R0b20pLCB2YXIoLS1zaXplLTQtOCkpO1xyXG59XHJcblxyXG4uZGV0YWlscy1uYW1lIHtcclxuXHRtYXJnaW46IDAgMCA4cHggMDtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGZvbnQtc2l6ZTogMS4zZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuMztcclxufVxyXG5cclxuLmRldGFpbHMtc3RhdHVzLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLmRldGFpbHMtc3RhdHVzLWxhYmVsIHtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcbn1cclxuXHJcbi5kZXRhaWxzLXN0YXR1cyB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdHBhZGRpbmc6IDRweCA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcblxyXG4uZGV0YWlscy1zdGF0dXMtc2VsZWN0b3Ige1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLm1lbnUtaXRlbS10aXRsZTpoYXMoLnN0YXR1cy1vcHRpb24pIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG5cdGdhcDogNHB4O1xyXG59XHJcblxyXG4ubWVudS1pdGVtOmhhcyguc3RhdHVzLW9wdGlvbi1jaGVja2JveCkgLm1lbnUtaXRlbS1pY29uIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4ubWVudS1pdGVtOmhhcyguc3RhdHVzLW9wdGlvbi1pY29uKSAubWVudS1pdGVtLWljb24ge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5zdGF0dXMtb3B0aW9uLWljb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi5zdGF0dXMtb3B0aW9uLWNoZWNrYm94IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5zdGF0dXMtb3B0aW9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG4uc3RhdHVzLW9wdGlvbi5jdXJyZW50IHtcclxuXHRvdXRsaW5lLW9mZnNldDogMnB4O1xyXG5cdG91dGxpbmU6IDFweCBzb2xpZFxyXG5cdFx0aHNsKHZhcigtLWFjY2VudC1oKSwgdmFyKC0tYWNjZW50LXMpLCB2YXIoLS1hY2NlbnQtbCksIDAuMyk7XHJcblx0b3V0bGluZS1zdHlsZTogZGFzaGVkO1xyXG59XHJcblxyXG4uc3RhdHVzLW9wdGlvbjpub3QoLmN1cnJlbnQpIHtcclxuXHRvcGFjaXR5OiAwLjg7XHJcbn1cclxuXHJcbi5zdGF0dXMtb3B0aW9uOm5vdCguY3VycmVudCk6aG92ZXIge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi5zdGF0dXMtb3B0aW9uIGlucHV0LnRhc2stbGlzdC1pdGVtLWNoZWNrYm94IHtcclxuXHRtYXJnaW4taW5saW5lLWVuZDogMDtcclxufVxyXG5cclxuLmRldGFpbHMtbWV0YWRhdGEge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ubWV0YWRhdGEtZmllbGQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDJweDtcclxufVxyXG5cclxuLm1ldGFkYXRhLWxhYmVsIHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLm1ldGFkYXRhLXZhbHVlIHtcclxuXHR3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG5cdGZvbnQtc2l6ZTogMC45NWVtO1xyXG59XHJcblxyXG4uZGV0YWlscy1hY3Rpb25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cdGdhcDogOHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLmRldGFpbHMtZWRpdC1idG4sXHJcbi5kZXRhaWxzLXRvZ2dsZS1idG4ge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLW5vcm1hbCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcblxyXG4uZGV0YWlscy1lZGl0LWJ0bjpob3ZlcixcclxuLmRldGFpbHMtdG9nZ2xlLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtaG92ZXIpO1xyXG59XHJcblxyXG4uZGV0YWlscy10b2dnbGUtYnRuIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIFRhc2sgZWRpdGluZyBmb3JtIHN0eWxlcyAqL1xyXG4uZGV0YWlscy1lZGl0LWZvcm0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDEycHg7XHJcbn1cclxuXHJcbi5kZXRhaWxzLWZvcm0tZmllbGQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDRweDtcclxufVxyXG5cclxuLmRldGFpbHMtZm9ybS1sYWJlbCB7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLmRldGFpbHMtZm9ybS1pbnB1dCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5kZXRhaWxzLWVkaXQtY29udGVudCB7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLmRldGFpbHMtZm9ybS1pbnB1dCBpbnB1dCxcclxuLmRldGFpbHMtZm9ybS1pbnB1dCBzZWxlY3Qge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHBhZGRpbmc6IDZweCA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG59XHJcblxyXG4uZGF0ZS1pbnB1dCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0cGFkZGluZzogNnB4IDhweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmZpZWxkLWRlc2NyaXB0aW9uIHtcclxuXHRmb250LXNpemU6IDAuN2VtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tdG9wOiAycHg7XHJcbn1cclxuXHJcbi5kZXRhaWxzLWZvcm0tYnV0dG9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0bWFyZ2luLXRvcDogMTZweDtcclxuXHRnYXA6IDhweDtcclxufVxyXG5cclxuLmRldGFpbHMtZm9ybS1idXR0b25zIGJ1dHRvbiB7XHJcblx0ZmxleDogMTtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLmRldGFpbHMtZm9ybS1lcnJvciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0bWFyZ2luLXRvcDogOHB4O1xyXG5cdHBhZGRpbmc6IDhweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcbn1cclxuXHJcbi5kZXRhaWxzLWVkaXQtZmlsZS1idG4ge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLW5vcm1hbCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcblxyXG4uZGV0YWlscy1lZGl0LWZpbGUtYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIFYyIENvbnRhaW5lciBzcGVjaWZpYyBzdHlsZXMgZm9yIG1vYmlsZSAqL1xyXG4uaXMtbW9iaWxlIC50Zy12Mi1jb250YWluZXIgLnRhc2stZGV0YWlscyB7XHJcblx0cG9zaXRpb246IGZpeGVkO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdHRvcDogMDtcclxuXHRib3R0b206IDA7XHJcblx0aGVpZ2h0OiAxMDB2aDtcclxuXHR3aWR0aDogODV2dztcclxuXHRtYXgtd2lkdGg6IDQwMHB4O1xyXG5cdHotaW5kZXg6IDEwMDE7IC8qIEFib3ZlIGRyYXdlciBvdmVybGF5ICovXHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJveC1zaGFkb3c6IC00cHggMCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxufVxyXG5cclxuLmlzLW1vYmlsZSAudGFzay1kZXRhaWxzIC5kZXRhaWxzLWNsb3NlLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUtaG92ZXIpO1xyXG59XHJcblxyXG4uaXMtbW9iaWxlIC5kZXRhaWxzLWNvbnRlbnQge1xyXG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTQtMTIpO1xyXG59XHJcblxyXG4vKiBSZXNwb25zaXZlIGRlc2lnbiBmb3IgbW9iaWxlICovXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0LnRhc2stb21uaWZvY3VzLWNvbnRhaW5lciB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdH1cclxuXHJcblx0LnRhc2stc2lkZWJhciB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG1heC13aWR0aDogMTAwJTtcclxuXHRcdGhlaWdodDogYXV0bztcclxuXHRcdGJvcmRlci1yaWdodDogbm9uZTtcclxuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0fVxyXG5cclxuXHQudGFzay1jb250ZW50IHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0ZmxleDogMTtcclxuXHR9XHJcblxyXG5cdC50YXNrLWRldGFpbHMge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHRib3JkZXItbGVmdDogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIFByb2plY3Qgc291cmNlIGluZGljYXRvciBzdHlsZXMgKi9cclxuLnByb2plY3Qtc291cmNlLWluZGljYXRvciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNHB4O1xyXG5cdG1hcmdpbi10b3A6IDRweDtcclxuXHRwYWRkaW5nOiA0cHggOHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxuXHRsaW5lLWhlaWdodDogMS4yO1xyXG59XHJcblxyXG4ucHJvamVjdC1zb3VyY2UtaW5kaWNhdG9yIC5pbmRpY2F0b3ItaWNvbiB7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLnByb2plY3Qtc291cmNlLWluZGljYXRvciAuaW5kaWNhdG9yLXRleHQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogUmVhZG9ubHkgaW5kaWNhdG9yICovXHJcbi5wcm9qZWN0LXNvdXJjZS1pbmRpY2F0b3IucmVhZG9ubHktaW5kaWNhdG9yIHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcclxufVxyXG5cclxuLnByb2plY3Qtc291cmNlLWluZGljYXRvci5yZWFkb25seS1pbmRpY2F0b3IgLmluZGljYXRvci10ZXh0IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLyogT3ZlcnJpZGUgaW5kaWNhdG9yICovXHJcbi5wcm9qZWN0LXNvdXJjZS1pbmRpY2F0b3Iub3ZlcnJpZGUtaW5kaWNhdG9yIHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjY2VudCk7XHJcbn1cclxuXHJcbi5wcm9qZWN0LXNvdXJjZS1pbmRpY2F0b3Iub3ZlcnJpZGUtaW5kaWNhdG9yIC5pbmRpY2F0b3ItdGV4dCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLyogRmllbGQgZGVzY3JpcHRpb25zICovXHJcbi5maWVsZC1kZXNjcmlwdGlvbi5yZWFkb25seS1kZXNjcmlwdGlvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0bWFyZ2luLXRvcDogNHB4O1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxufVxyXG5cclxuLmZpZWxkLWRlc2NyaXB0aW9uLm92ZXJyaWRlLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0bWFyZ2luLXRvcDogNHB4O1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxufVxyXG5cclxuLyogSW5saW5lIGVkaXRvciBzcGVjaWZpYyBzdHlsZXMgKi9cclxuLnByb2plY3Qtc291cmNlLWluZGljYXRvci5pbmxpbmUtaW5kaWNhdG9yIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAxMDAlO1xyXG5cdGxlZnQ6IDA7XHJcblx0cmlnaHQ6IDA7XHJcblx0ei1pbmRleDogMTA7XHJcblx0bWFyZ2luLXRvcDogMnB4O1xyXG5cdHBhZGRpbmc6IDJweCA2cHg7XHJcblx0Zm9udC1zaXplOiAwLjc1ZW07XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG59XHJcblxyXG4vKiBUYWJsZSBzcGVjaWZpYyBzdHlsZXMgKi9cclxuLnByb2plY3Qtc291cmNlLWluZGljYXRvci50YWJsZS1pbmRpY2F0b3Ige1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDJweDtcclxuXHRyaWdodDogMnB4O1xyXG5cdHBhZGRpbmc6IDFweCAzcHg7XHJcblx0Zm9udC1zaXplOiAwLjdlbTtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0ei1pbmRleDogNTtcclxufVxyXG5cclxuLnByb2plY3Qtc291cmNlLWluZGljYXRvci50YWJsZS1pbmRpY2F0b3IgLmluZGljYXRvci1pY29uIHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1jZWxsLnJlYWRvbmx5LWNlbGwge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3ItaG92ZXIpO1xyXG5cdG9wYWNpdHk6IDAuODtcclxufVxyXG5cclxuLyogUHJvamVjdCBjb250YWluZXIgc3BlY2lmaWMgc3R5bGVzICovXHJcbi5wcm9qZWN0LWNvbnRhaW5lci5wcm9qZWN0LXJlYWRvbmx5IHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5wcm9qZWN0LWNvbnRhaW5lci5wcm9qZWN0LXJlYWRvbmx5IC5wcm9qZWN0LXNvdXJjZS1pbmRpY2F0b3Ige1xyXG5cdG1hcmdpbi10b3A6IDhweDtcclxufVxyXG4iLCAiLyogT25Db21wbGV0aW9uIENvbmZpZ3VyYXRvciBTdHlsZXMgKi9cclxuLm9uY29tcGxldGlvbi1jb25maWd1cmF0b3Ige1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDEycHg7XHJcblx0cGFkZGluZzogMTJweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi1hY3Rpb24tdHlwZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogNnB4O1xyXG59XHJcblxyXG4ub25jb21wbGV0aW9uLWxhYmVsIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi1jb25maWcge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDEwcHg7XHJcblx0bWFyZ2luLXRvcDogOHB4O1xyXG5cdHBhZGRpbmctdG9wOiA4cHg7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi1maWVsZCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogNHB4O1xyXG59XHJcblxyXG4ub25jb21wbGV0aW9uLWRlc2NyaXB0aW9uIHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0bWFyZ2luLXRvcDogMnB4O1xyXG59XHJcblxyXG4vKiBBY3Rpb24gVHlwZSBEcm9wZG93biAqL1xyXG4ub25jb21wbGV0aW9uLWFjdGlvbi10eXBlIC5kcm9wZG93biB7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIElucHV0IEZpZWxkcyAqL1xyXG4ub25jb21wbGV0aW9uLWZpZWxkIC50ZXh0LWlucHV0IHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiA2cHggOHB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ub25jb21wbGV0aW9uLWZpZWxkIC50ZXh0LWlucHV0OmZvY3VzIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0b3V0bGluZTogbm9uZTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAycHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLyogVG9nZ2xlIENvbXBvbmVudCAqL1xyXG4ub25jb21wbGV0aW9uLWZpZWxkIC5jaGVja2JveC1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDhweDtcclxufVxyXG5cclxuLyogU3VnZ2VzdGVyIFN0eWxlcyAqL1xyXG4udGFzay1pZC1zdWdnZXN0aW9uIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi50YXNrLWNvbnRlbnQtcHJldmlldyB7XHJcblx0Zm9udC1zaXplOiAwLjg1ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdG1hcmdpbi10b3A6IDJweDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblx0bWF4LXdpZHRoOiAzMDBweDtcclxufVxyXG5cclxuLmZpbGUtbmFtZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uZmlsZS1wYXRoIHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tdG9wOiAycHg7XHJcbn1cclxuXHJcbi5hY3Rpb24tdHlwZS1zdWdnZXN0aW9uIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi5hY3Rpb24tZGVzY3JpcHRpb24ge1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdG1hcmdpbi10b3A6IDJweDtcclxufVxyXG5cclxuLyogVmFsaWRhdGlvbiBTdGF0ZXMgKi9cclxuLm9uY29tcGxldGlvbi1jb25maWd1cmF0b3IuaW52YWxpZCB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi1jb25maWd1cmF0b3IudmFsaWQge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzKTtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi12YWxpZGF0aW9uLW1lc3NhZ2Uge1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0bWFyZ2luLXRvcDogNHB4O1xyXG5cdHBhZGRpbmc6IDRweCA2cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG59XHJcblxyXG4ub25jb21wbGV0aW9uLXZhbGlkYXRpb24tbWVzc2FnZS5lcnJvciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xyXG59XHJcblxyXG4ub25jb21wbGV0aW9uLXZhbGlkYXRpb24tbWVzc2FnZS5zdWNjZXNzIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzKTtcclxufVxyXG5cclxuLyogSW50ZWdyYXRpb24gd2l0aCBUYXNrIERldGFpbHMgKi9cclxuLnRhc2stZGV0YWlscyAub25jb21wbGV0aW9uLWNvbmZpZ3VyYXRvciB7XHJcblx0bWFyZ2luLXRvcDogOHB4O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4udGFzay1kZXRhaWxzIC5vbmNvbXBsZXRpb24tZmllbGQge1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBEZXNpZ24gKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0Lm9uY29tcGxldGlvbi1jb25maWd1cmF0b3Ige1xyXG5cdFx0cGFkZGluZzogOHB4O1xyXG5cdFx0Z2FwOiA4cHg7XHJcblx0fVxyXG5cclxuXHQub25jb21wbGV0aW9uLWNvbmZpZyB7XHJcblx0XHRnYXA6IDhweDtcclxuXHR9XHJcblxyXG5cdC50YXNrLWNvbnRlbnQtcHJldmlldyB7XHJcblx0XHRtYXgtd2lkdGg6IDIwMHB4O1xyXG5cdH1cclxufVxyXG5cclxuLyogRGFyayBUaGVtZSBBZGp1c3RtZW50cyAqL1xyXG4udGhlbWUtZGFyayAub25jb21wbGV0aW9uLWNvbmZpZ3VyYXRvciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5LWFsdCk7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC5vbmNvbXBsZXRpb24tZmllbGQgLnRleHQtaW5wdXQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxufVxyXG5cclxuLyogSGlnaCBDb250cmFzdCBNb2RlICovXHJcbkBtZWRpYSAocHJlZmVycy1jb250cmFzdDogaGlnaCkge1xyXG5cdC5vbmNvbXBsZXRpb24tY29uZmlndXJhdG9yIHtcclxuXHRcdGJvcmRlci13aWR0aDogMnB4O1xyXG5cdH1cclxuXHJcblx0Lm9uY29tcGxldGlvbi1maWVsZCAudGV4dC1pbnB1dCB7XHJcblx0XHRib3JkZXItd2lkdGg6IDJweDtcclxuXHR9XHJcblxyXG5cdC5vbmNvbXBsZXRpb24tZmllbGQgLnRleHQtaW5wdXQ6Zm9jdXMge1xyXG5cdFx0Ym94LXNoYWRvdzogMCAwIDAgM3B4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0fVxyXG59XHJcblxyXG4vKiBBbmltYXRpb24gZm9yIENvbmZpZ3VyYXRpb24gQ2hhbmdlcyAqL1xyXG4ub25jb21wbGV0aW9uLWNvbmZpZyB7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi5vbmNvbXBsZXRpb24tZmllbGQge1xyXG5cdG9wYWNpdHk6IDE7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIDAuMnMgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi5vbmNvbXBsZXRpb24tZmllbGQuZW50ZXJpbmcge1xyXG5cdG9wYWNpdHk6IDA7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi1maWVsZC5leGl0aW5nIHtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcclxufVxyXG5cclxuLyogT25Db21wbGV0aW9uIE1vZGFsIFN0eWxlcyAqL1xyXG4ub25jb21wbGV0aW9uLW1vZGFsIHtcclxuXHQtLWRpYWxvZy13aWR0aDogNjAwcHg7XHJcblx0LS1kaWFsb2ctbWF4LXdpZHRoOiA5MHZ3O1xyXG5cdC0tZGlhbG9nLW1heC1oZWlnaHQ6IDgwdmg7XHJcbn1cclxuXHJcbi5vbmNvbXBsZXRpb24tbW9kYWwgLm1vZGFsLWNvbnRlbnQge1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0bWF4LWhlaWdodDogdmFyKC0tZGlhbG9nLW1heC1oZWlnaHQpO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi5vbmNvbXBsZXRpb24tbW9kYWwtY29udGVudCB7XHJcblx0cGFkZGluZzogMjBweDtcclxuXHRtYXgtaGVpZ2h0OiA2MHZoO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi5vbmNvbXBsZXRpb24tbW9kYWwtYnV0dG9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdGdhcDogOHB4O1xyXG5cdHBhZGRpbmc6IDE2cHggMjBweDtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi1tb2RhbC1idXR0b25zIGJ1dHRvbiB7XHJcblx0bWluLXdpZHRoOiA4MHB4O1xyXG59XHJcblxyXG4vKiBJbmxpbmUgT25Db21wbGV0aW9uIEJ1dHRvbiBTdHlsZXMgKi9cclxuLmlubGluZS1vbmNvbXBsZXRpb24tYnV0dG9uLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLmlubGluZS1vbmNvbXBsZXRpb24tY29uZmlnLWJ1dHRvbiB7XHJcblx0cGFkZGluZzogNHB4IDhweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LWZhbWlseTogaW5oZXJpdDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTtcclxuXHRtaW4td2lkdGg6IDEwMHB4O1xyXG5cdHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi5pbmxpbmUtb25jb21wbGV0aW9uLWNvbmZpZy1idXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLmlubGluZS1vbmNvbXBsZXRpb24tY29uZmlnLWJ1dHRvbjpmb2N1cyB7XHJcblx0b3V0bGluZTogbm9uZTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi5pbmxpbmUtb25jb21wbGV0aW9uLWNvbmZpZy1idXR0b246YWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZSk7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgwLjk4KTtcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBEZXNpZ24gZm9yIE1vZGFsICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC5vbmNvbXBsZXRpb24tbW9kYWwge1xyXG5cdFx0LS1kaWFsb2ctd2lkdGg6IDk1dnc7XHJcblx0XHQtLWRpYWxvZy1tYXgtaGVpZ2h0OiA4NXZoO1xyXG5cdH1cclxuXHJcblx0Lm9uY29tcGxldGlvbi1tb2RhbC1jb250ZW50IHtcclxuXHRcdHBhZGRpbmc6IDE2cHg7XHJcblx0XHRtYXgtaGVpZ2h0OiA2NXZoO1xyXG5cdH1cclxuXHJcblx0Lm9uY29tcGxldGlvbi1tb2RhbC1idXR0b25zIHtcclxuXHRcdHBhZGRpbmc6IDEycHggMTZweDtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuXHR9XHJcblxyXG5cdC5vbmNvbXBsZXRpb24tbW9kYWwtYnV0dG9ucyBidXR0b24ge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtaW4td2lkdGg6IHVuc2V0O1xyXG5cdH1cclxufVxyXG4iLCAiLyogVW5pdmVyc2FsIFN1Z2dlc3QgU3R5bGVzICovXHJcblxyXG4udW5pdmVyc2FsLXN1Z2dlc3QtaXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzIGVhc2U7XHJcbn1cclxuXHJcbi51bml2ZXJzYWwtc3VnZ2VzdC1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLnVuaXZlcnNhbC1zdWdnZXN0LWl0ZW0uaXMtc2VsZWN0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcclxufVxyXG5cclxuLnVuaXZlcnNhbC1zdWdnZXN0LWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi51bml2ZXJzYWwtc3VnZ2VzdC1pY29uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDIwcHg7XHJcblx0aGVpZ2h0OiAyMHB4O1xyXG5cdG1hcmdpbi1yaWdodDogMTJweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi51bml2ZXJzYWwtc3VnZ2VzdC1jb250ZW50IHtcclxuXHRmbGV4OiAxO1xyXG5cdG1pbi13aWR0aDogMDtcclxufVxyXG5cclxuLnVuaXZlcnNhbC1zdWdnZXN0LWxhYmVsIHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0bWFyZ2luLWJvdHRvbTogMnB4O1xyXG59XHJcblxyXG4udW5pdmVyc2FsLXN1Z2dlc3QtZGVzY3JpcHRpb24ge1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRsaW5lLWhlaWdodDogMS4zO1xyXG59XHJcblxyXG4vKiBTcGVjaWFsIGNoYXJhY3RlciB0cmlnZ2VyIGhpZ2hsaWdodGluZyAqL1xyXG4uY20tZWRpdG9yIC5jbS1saW5lIC51bml2ZXJzYWwtc3VnZ2VzdC10cmlnZ2VyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0cGFkZGluZzogMXB4IDJweDtcclxufVxyXG5cclxuLyogU3VnZ2VzdCBwb3B1cCBjb250YWluZXIgKi9cclxuLnN1Z2dlc3Rpb24tY29udGFpbmVyIC51bml2ZXJzYWwtc3VnZ2VzdC1pdGVtIHtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uc3VnZ2VzdGlvbi1jb250YWluZXIgLnVuaXZlcnNhbC1zdWdnZXN0LWl0ZW06bGFzdC1jaGlsZCB7XHJcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcclxufVxyXG5cclxuLyogRGFyayB0aGVtZSBhZGp1c3RtZW50cyAqL1xyXG4udGhlbWUtZGFyayAudW5pdmVyc2FsLXN1Z2dlc3QtaXRlbTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC51bml2ZXJzYWwtc3VnZ2VzdC1pdGVtLmlzLXNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZS1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIEhpZ2ggY29udHJhc3QgbW9kZSAqL1xyXG5AbWVkaWEgKHByZWZlcnMtY29udHJhc3Q6IGhpZ2gpIHtcclxuXHQudW5pdmVyc2FsLXN1Z2dlc3QtaXRlbSB7XHJcblx0XHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAycHg7XHJcblx0fSBcclxuXHRcclxuXHQudW5pdmVyc2FsLXN1Z2dlc3QtaXRlbTpob3ZlcixcclxuXHQudW5pdmVyc2FsLXN1Z2dlc3QtaXRlbS5pcy1zZWxlY3RlZCB7XHJcblx0XHRib3JkZXItY29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxuXHR9XHJcbn1cclxuIiwgIi8qIFx1NEU2MFx1NjBFRlx1N0YxNlx1OEY5MVx1NUYzOVx1N0E5N1x1NjgzN1x1NUYwRiAqL1xyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIHtcclxuXHRtYXgtd2lkdGg6IDYwMHB4O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQge1xyXG5cdHBhZGRpbmc6IDIwcHg7XHJcbn1cclxuXHJcbi8qIFx1NEU2MFx1NjBFRlx1N0M3Qlx1NTc4Qlx1OTAwOVx1NjJFOVx1NTY2OCAqL1xyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXR5cGUtc2VsZWN0b3Ige1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtdHlwZS1kZXNjcmlwdGlvbiB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXR5cGUtZ3JpZCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xyXG5cdGdhcDogMTBweDtcclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDUwMHB4KSB7XHJcblx0LmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC10eXBlLWdyaWQge1xyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcblx0fVxyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXR5cGUtaXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRwYWRkaW5nOiAxMnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXR5cGUtaXRlbTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtdHlwZS1pdGVtLnNlbGVjdGVkIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC10eXBlLWljb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogNDBweDtcclxuXHRoZWlnaHQ6IDQwcHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXR5cGUtaWNvbiBzdmcge1xyXG5cdHdpZHRoOiAyMHB4O1xyXG5cdGhlaWdodDogMjBweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXR5cGUtdGV4dCB7XHJcblx0ZmxleDogMTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtdHlwZS1uYW1lIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdG1hcmdpbi1ib3R0b206IDRweDtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC10eXBlLWRlc2Mge1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogXHU5MDFBXHU3NTI4XHU4ODY4XHU1MzU1XHU2ODM3XHU1RjBGICovXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtY29tbW9uLWZvcm0sXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtdHlwZS1mb3JtIHtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG59XHJcblxyXG4vKiBcdTU2RkVcdTY4MDdcdTk4ODRcdTg5QzggKi9cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1pY29uLXByZXZpZXcge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMzBweDtcclxuXHRoZWlnaHQ6IDMwcHg7XHJcblx0bWFyZ2luLWxlZnQ6IDEwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtaWNvbi1wcmV2aWV3IHN2ZyB7XHJcblx0d2lkdGg6IDE4cHg7XHJcblx0aGVpZ2h0OiAxOHB4O1xyXG59XHJcblxyXG4vKiBcdTY2MjBcdTVDMDRcdTdGMTZcdThGOTFcdTU2NjggKi9cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1tYXBwaW5nLWNvbnRhaW5lciB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRwYWRkaW5nOiAxMHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0bWFyZ2luLXRvcDogNXB4O1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LW1hcHBpbmctcm93IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0bWFyZ2luLWJvdHRvbTogOHB4O1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LW1hcHBpbmcta2V5IHtcclxuXHR3aWR0aDogODBweDtcclxuXHRtYXJnaW4tcmlnaHQ6IDVweDtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LW1hcHBpbmctYXJyb3cge1xyXG5cdG1hcmdpbjogMCAxMHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1tYXBwaW5nLXZhbHVlIHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtbWFwcGluZy1kZWxldGUge1xyXG5cdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Zm9udC1zaXplOiAxLjJlbTtcclxuXHRwYWRkaW5nOiAwIDhweDtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1hZGQtbWFwcGluZy1idXR0b24ge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IDZweCAxMnB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4vKiBcdTRFOEJcdTRFRjZcdTdGMTZcdThGOTFcdTU2NjggKi9cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1ldmVudHMtY29udGFpbmVyIHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IDEwcHg7XHJcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHRtYXJnaW4tdG9wOiA1cHg7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtZXZlbnQtcm93IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxuXHRnYXA6IDVweDtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1ldmVudC1uYW1lIHtcclxuXHR3aWR0aDogMTIwcHg7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1ldmVudC1kZXRhaWxzIHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtZXZlbnQtcHJvcGVydHkge1xyXG5cdHdpZHRoOiAxMjBweDtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LWV2ZW50LWRlbGV0ZSB7XHJcblx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IDEuMmVtO1xyXG5cdHBhZGRpbmc6IDAgOHB4O1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LWFkZC1ldmVudC1idXR0b24ge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IDZweCAxMnB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4vKiBcdTYzMDlcdTk0QUVcdTVCQjlcdTU2NjggKi9cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1lZGl0LWJ1dHRvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRnYXA6IDEwcHg7XHJcblx0bWFyZ2luLXRvcDogMjBweDtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1jYW5jZWwtYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0cGFkZGluZzogOHB4IDE2cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXNhdmUtYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRwYWRkaW5nOiA4cHggMTZweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi8qIFx1OEY5M1x1NTE2NVx1NUI1N1x1NkJCNSAqL1xyXG4uaGFiaXQtZWRpdC1kaWFsb2cgaW5wdXRbdHlwZT1cInRleHRcIl0sXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyBpbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0cGFkZGluZzogNnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtdHlwZS1pdGVtLnNlbGVjdGVkIC5oYWJpdC10eXBlLWRlc2MsXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtdHlwZS1pdGVtLnNlbGVjdGVkIC5oYWJpdC10eXBlLW5hbWUge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuIiwgIi8qIFx1NEU2MFx1NjBFRlx1NTIxN1x1ODg2OFx1NUJCOVx1NTY2OCAqL1xyXG4uaGFiaXQtbGlzdC1jb250YWluZXIge1xyXG5cdHBhZGRpbmc6IDEycHg7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5oYWJpdC1zZXR0aW5ncy1jb250YWluZXIge1xyXG5cdHBhZGRpbmctdG9wOiAxMnB4O1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi8qIFx1NkRGQlx1NTJBMFx1NjMwOVx1OTRBRSAqL1xyXG4uaGFiaXQtYWRkLWJ1dHRvbi1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG59XHJcblxyXG4uaGFiaXQtYWRkLWJ1dHRvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNnB4O1xyXG5cdHBhZGRpbmc6IDZweCAxMnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG5cclxuLmhhYml0LWFkZC1idXR0b24gc3ZnIHtcclxuXHR3aWR0aDogMTZweDtcclxuXHRoZWlnaHQ6IDE2cHg7XHJcbn1cclxuXHJcbi8qIFx1NEU2MFx1NjBFRlx1NTIxN1x1ODg2OFx1NEUzQVx1N0E3QVx1NzJCNlx1NjAwMSAqL1xyXG4uaGFiaXQtZW1wdHktc3RhdGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1pbi1oZWlnaHQ6IDIwMHB4O1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAyMHB4O1xyXG5cdGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxufVxyXG5cclxuLmhhYml0LWVtcHR5LXN0YXRlIGgyIHtcclxuXHRtYXJnaW46IDAgMCAxMHB4IDA7XHJcblx0Zm9udC1zaXplOiAxLjJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uaGFiaXQtZW1wdHktc3RhdGUgcCB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogXHU0RTYwXHU2MEVGXHU5ODc5XHU1MjE3XHU4ODY4ICovXHJcbi5oYWJpdC1pdGVtcy1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDEwcHg7XHJcbn1cclxuXHJcbi8qIFx1NEU2MFx1NjBFRlx1OTg3OSAqL1xyXG4uaGFiaXQtaXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDEycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGhlaWdodDogNy41cmVtO1xyXG59XHJcblxyXG4uaGFiaXQtaXRlbTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIFx1NEU2MFx1NjBFRlx1NTZGRVx1NjgwNyAqL1xyXG4uaGFiaXQtaXRlbS1pY29uIHtcclxuXHQtLWljb24tc2l6ZTogMjBweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDQ4cHg7XHJcblx0aGVpZ2h0OiA0OHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdG1hcmdpbi1yaWdodDogMTJweDtcclxufVxyXG5cclxuLmhhYml0LWl0ZW0taWNvbiBzdmcge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi8qIFx1NEU2MFx1NjBFRlx1NEZFMVx1NjA2RiAqL1xyXG4uaGFiaXQtaXRlbS1pbmZvIHtcclxuXHRmbGV4OiAxO1xyXG5cdG1pbi13aWR0aDogMDsgLyogXHU5NjMyXHU2QjYyXHU1MTg1XHU1QkI5XHU4RkM3XHU5NTdGXHU2NDkxXHU1RjAwXHU1RTAzXHU1QzQwICovXHJcbn1cclxuXHJcbi5oYWJpdC1pdGVtLW5hbWUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0bWFyZ2luLWJvdHRvbTogNHB4O1xyXG5cdGZvbnQtc2l6ZTogMTZweDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuXHJcbi5oYWJpdC1pdGVtLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuXHRtYXJnaW4tYm90dG9tOiA0cHg7XHJcbn1cclxuXHJcbi5oYWJpdC1pdGVtLXR5cGUge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRmb250LXNpemU6IDExcHg7XHJcblx0cGFkZGluZzogMnB4IDZweDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogXHU0RTYwXHU2MEVGXHU2NENEXHU0RjVDXHU2MzA5XHU5NEFFICovXHJcbi5oYWJpdC1pdGVtLWFjdGlvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiA4cHg7XHJcblx0bWFyZ2luLWxlZnQ6IDEycHg7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWJ1dHRvbixcclxuLmhhYml0LWRlbGV0ZS1idXR0b24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMzJweDtcclxuXHRoZWlnaHQ6IDMycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1idXR0b246aG92ZXIsXHJcbi5oYWJpdC1kZWxldGUtYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtYnV0dG9uIHN2ZyxcclxuLmhhYml0LWRlbGV0ZS1idXR0b24gc3ZnIHtcclxuXHR3aWR0aDogMTZweDtcclxuXHRoZWlnaHQ6IDE2cHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4uaGFiaXQtZGVsZXRlLWJ1dHRvbjpob3ZlciBzdmcge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLyogXHU0RTYwXHU2MEVGXHU1MjIwXHU5NjY0XHU1QkY5XHU4QkREXHU2ODQ2XHU2ODM3XHU1RjBGICovXHJcbi5oYWJpdC1kZWxldGUtbW9kYWwtYnV0dG9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdGdhcDogMTBweDtcclxuXHRtYXJnaW4tdG9wOiAyMHB4O1xyXG59XHJcblxyXG4uaGFiaXQtZGVsZXRlLWJ1dHRvbi1jb25maXJtIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHRjb2xvcjogI2ZmZjtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IDhweCAxNnB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG4iLCAiLyogSUNTIFNldHRpbmdzIFN0eWxlcyAqL1xyXG5cclxuLyogTWFpbiBjb250YWluZXIgKi9cclxuLmljcy1zZXR0aW5ncy1jb250YWluZXIge1xyXG5cdG1heC13aWR0aDogODAwcHg7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbi8qIEhlYWRlciBzZWN0aW9uICovXHJcbi5pY3MtaGVhZGVyLWNvbnRhaW5lciB7XHJcblx0bWFyZ2luLWJvdHRvbTogMnJlbTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmctYm90dG9tOiAxcmVtO1xyXG59XHJcblxyXG4uaWNzLWJhY2stYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5pY3MtYmFjay1idXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG59XHJcblxyXG4uaWNzLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luLXRvcDogMC41cmVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjU7XHJcbn1cclxuXHJcbi8qIEdsb2JhbCBzZXR0aW5ncyAqL1xyXG4uaWNzLWdsb2JhbC1zZXR0aW5ncyB7XHJcblx0bWFyZ2luLWJvdHRvbTogMnJlbTtcclxuXHRwYWRkaW5nOiAxLjVyZW07XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi8qIFNvdXJjZXMgbGlzdCAqL1xyXG4uaWNzLXNvdXJjZXMtbGlzdCB7XHJcblx0bWFyZ2luLXRvcDogMS41cmVtO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZXMtbGlzdCBoMyB7XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1pdGVtIHtcclxuXHRtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG5cdHBhZGRpbmc6IDEuNXJlbTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLmljcy1zb3VyY2UtaXRlbTpob3ZlciB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcclxufVxyXG5cclxuLmljcy1zb3VyY2UtaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdG1hcmdpbi1ib3R0b206IDFyZW07XHJcbn1cclxuXHJcbi5pY3Mtc291cmNlLXRpdGxlIHN0cm9uZyB7XHJcblx0Zm9udC1zaXplOiAxLjFlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1zdGF0dXMge1xyXG5cdHBhZGRpbmc6IDAuM3JlbSAwLjhyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogMTJweDtcclxuXHRmb250LXNpemU6IDAuNzVlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xyXG59XHJcblxyXG4uc3RhdHVzLWVuYWJsZWQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuXHRjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi5zdGF0dXMtZGlzYWJsZWQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXJlZCk7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1kZXRhaWxzIHtcclxuXHRtYXJnaW4tYm90dG9tOiAxLjVyZW07XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG5cclxuLmljcy1zb3VyY2UtZGV0YWlscyBkaXYge1xyXG5cdG1hcmdpbi1ib3R0b206IDAuNHJlbTtcclxufVxyXG5cclxuLyogQWN0aW9uIGJ1dHRvbnMgKi9cclxuLmljcy1zb3VyY2UtYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDFyZW07XHJcbn1cclxuXHJcbi5wcmltYXJ5LWFjdGlvbnMsXHJcbi5zZWNvbmRhcnktYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDAuNXJlbTtcclxufVxyXG5cclxuLmljcy1zb3VyY2UtYWN0aW9ucyBidXR0b24ge1xyXG5cdHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiAwLjg1ZW07XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcblx0bWluLXdpZHRoOiA4MHB4O1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5pY3Mtc291cmNlLWFjdGlvbnMgYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1hY3Rpb25zIGJ1dHRvbi5tb2QtY3RhIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1hY3Rpb25zIGJ1dHRvbi5tb2QtY3RhOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1hY3Rpb25zIGJ1dHRvbi5tb2Qtd2FybmluZyB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItcmVkKTtcclxuXHRjb2xvcjogd2hpdGU7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1hY3Rpb25zIGJ1dHRvbi5tb2Qtd2FybmluZzpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItcmVkKTtcclxuXHRvcGFjaXR5OiAwLjg7XHJcbn1cclxuXHJcbi5pY3Mtc291cmNlLWFjdGlvbnMgYnV0dG9uOmRpc2FibGVkIHtcclxuXHRvcGFjaXR5OiAwLjU7XHJcblx0Y3Vyc29yOiBub3QtYWxsb3dlZDtcclxuXHR0cmFuc2Zvcm06IG5vbmU7XHJcbn1cclxuXHJcbi5pY3Mtc291cmNlLWFjdGlvbnMgYnV0dG9uLnN5bmNpbmcge1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1hY3Rpb25zIGJ1dHRvbi5zdWNjZXNzIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1hY3Rpb25zIGJ1dHRvbi5lcnJvciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItcmVkKTtcclxuXHRjb2xvcjogd2hpdGU7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xyXG59XHJcblxyXG4vKiBBZGQgc291cmNlIGNvbnRhaW5lciAqL1xyXG4uaWNzLWFkZC1zb3VyY2UtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAycmVtO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAycmVtO1xyXG5cdGJvcmRlcjogMnB4IGRhc2hlZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4uaWNzLWFkZC1zb3VyY2UtY29udGFpbmVyOmhvdmVyIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi5pY3MtYWRkLXNvdXJjZS1jb250YWluZXIgYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdHBhZGRpbmc6IDAuOHJlbSAxLjVyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcblx0Zm9udC1zaXplOiAwLjk1ZW07XHJcbn1cclxuXHJcbi5pY3MtYWRkLXNvdXJjZS1jb250YWluZXIgYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcclxufVxyXG5cclxuLyogVGVzdCBjb250YWluZXIgKi9cclxuLmljcy10ZXN0LWNvbnRhaW5lciB7XHJcblx0bWFyZ2luLXRvcDogMXJlbTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMXJlbTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZm9ybS1maWVsZCk7XHJcbn1cclxuXHJcbi5pY3MtdGVzdC1idXR0b24ge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRwYWRkaW5nOiAwLjZyZW0gMS4ycmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi5pY3MtdGVzdC1idXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcblx0b3BhY2l0eTogMC44O1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxufVxyXG5cclxuLyogRW1wdHkgc3RhdGUgKi9cclxuLmljcy1lbXB0eS1zdGF0ZSB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDNyZW0gMnJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4vKiBNb2RhbCBzdHlsZXMgKi9cclxuLmljcy1zb3VyY2UtbW9kYWwgLm1vZGFsLWNvbnRlbnQge1xyXG5cdG1heC13aWR0aDogNjAwcHg7XHJcblx0bWF4LWhlaWdodDogODB2aDtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG59XHJcblxyXG4uYXV0aC1maWVsZCB7XHJcblx0bWFyZ2luLXRvcDogMC41cmVtO1xyXG59XHJcblxyXG4ubW9kYWwtYnV0dG9uLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdG1hcmdpbi10b3A6IDEuNXJlbTtcclxuXHRwYWRkaW5nLXRvcDogMXJlbTtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4ubW9kYWwtYnV0dG9uLWNvbnRhaW5lciBidXR0b24ge1xyXG5cdHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdG1pbi13aWR0aDogODBweDtcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBkZXNpZ24gKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0Lmljcy1zb3VyY2UtaGVhZGVyIHtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRcdGdhcDogMC41cmVtO1xyXG5cdH1cclxuXHJcblx0Lmljcy1zb3VyY2UtYWN0aW9ucyB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdFx0Z2FwOiAwLjVyZW07XHJcblx0fVxyXG5cclxuXHQucHJpbWFyeS1hY3Rpb25zLFxyXG5cdC5zZWNvbmRhcnktYWN0aW9ucyB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHR9XHJcblxyXG5cdC5pY3Mtc291cmNlLWFjdGlvbnMgYnV0dG9uIHtcclxuXHRcdGZsZXg6IDE7XHJcblx0XHRtaW4td2lkdGg6IGF1dG87XHJcblx0fVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcclxuXHQuaWNzLXNvdXJjZS1pdGVtIHtcclxuXHRcdHBhZGRpbmc6IDFyZW07XHJcblx0fVxyXG5cclxuXHQucHJpbWFyeS1hY3Rpb25zLFxyXG5cdC5zZWNvbmRhcnktYWN0aW9ucyB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdH1cclxuXHJcblx0Lmljcy1zb3VyY2UtYWN0aW9ucyBidXR0b24ge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAwLjNyZW07XHJcblx0fVxyXG5cclxuXHQubW9kYWwtYnV0dG9uLWNvbnRhaW5lciB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdH1cclxuXHJcblx0Lm1vZGFsLWJ1dHRvbi1jb250YWluZXIgYnV0dG9uIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxufVxyXG5cclxuLyogVGV4dCBSZXBsYWNlbWVudHMgU3R5bGVzICovXHJcbi50ZXh0LXJlcGxhY2VtZW50cy1saXN0IHtcclxuXHRtYXJnaW46IDFyZW0gMDtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnRzLWVtcHR5IHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMnJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0Ym9yZGVyOiAxcHggZGFzaGVkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtcnVsZSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHRwYWRkaW5nOiAxcmVtO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1ydWxlOmhvdmVyIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdG1hcmdpbi1ib3R0b206IDAuOHJlbTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtaGVhZGVyIHN0cm9uZyB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDFlbTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtc3RhdHVzIHtcclxuXHRwYWRkaW5nOiAwLjJyZW0gMC42cmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcblx0Zm9udC1zaXplOiAwLjdlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1zdGF0dXMuZW5hYmxlZCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtc3RhdHVzLmRpc2FibGVkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1yZWQpO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtZGV0YWlscyB7XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtZGV0YWlscyBkaXYge1xyXG5cdG1hcmdpbi1ib3R0b206IDAuM3JlbTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtcGF0dGVybiB7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWZvcm0tZmllbGQpO1xyXG5cdHBhZGRpbmc6IDAuMnJlbSAwLjRyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRtYXJnaW4tbGVmdDogMC41cmVtO1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1yZXBsYWNlbWVudCB7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWZvcm0tZmllbGQpO1xyXG5cdHBhZGRpbmc6IDAuMnJlbSAwLjRyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRtYXJnaW4tbGVmdDogMC41cmVtO1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1hY3Rpb25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogMC41cmVtO1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtYWN0aW9ucyBidXR0b24ge1xyXG5cdHBhZGRpbmc6IDAuNHJlbSAwLjhyZW07XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1hY3Rpb25zIGJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1hY3Rpb25zIGJ1dHRvbi5tb2QtY3RhIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1hY3Rpb25zIGJ1dHRvbi5tb2Qtd2FybmluZyB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItcmVkKTtcclxuXHRjb2xvcjogd2hpdGU7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1hZGQge1xyXG5cdG1hcmdpbi10b3A6IDFyZW07XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1hZGQgYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdHBhZGRpbmc6IDAuNnJlbSAxLjJyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi50ZXh0LXJlcGxhY2VtZW50LWFkZCBidXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG59XHJcblxyXG4vKiBUZXh0IFJlcGxhY2VtZW50IE1vZGFsIFN0eWxlcyAqL1xyXG4udGV4dC1yZXBsYWNlbWVudC1tb2RhbCAubW9kYWwtY29udGVudCB7XHJcblx0bWF4LXdpZHRoOiA3MDBweDtcclxuXHRtYXgtaGVpZ2h0OiA4NXZoO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi50ZXN0LW91dHB1dCB7XHJcblx0bWFyZ2luLXRvcDogMC41cmVtO1xyXG5cdHBhZGRpbmc6IDAuOHJlbTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWZvcm0tZmllbGQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4udGVzdC1yZXN1bHQge1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbi8qIEV4YW1wbGVzIHNlY3Rpb24gKi9cclxuLnRleHQtcmVwbGFjZW1lbnQtbW9kYWwgdWwge1xyXG5cdG1hcmdpbjogMC41cmVtIDA7XHJcblx0cGFkZGluZy1sZWZ0OiAxLjVyZW07XHJcbn1cclxuXHJcbi50ZXh0LXJlcGxhY2VtZW50LW1vZGFsIGxpIHtcclxuXHRtYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtbW9kYWwgY29kZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1mb3JtLWZpZWxkKTtcclxuXHRwYWRkaW5nOiAwLjFyZW0gMC4zcmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG59XHJcblxyXG4vKiBBbmltYXRpb24gZm9yIHN5bmMgYnV0dG9uICovXHJcbkBrZXlmcmFtZXMgc3BpbiB7XHJcblx0MCUge1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuXHR9XHJcbn1cclxuXHJcbi5pY3Mtc291cmNlLWFjdGlvbnMgYnV0dG9uLnN5bmNpbmc6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0bWFyZ2luLXJpZ2h0OiAwLjNyZW07XHJcblx0YW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcclxufVxyXG5cclxuLmljcy10ZXh0LXJlcGxhY2VtZW50LW1vZGFsLFxyXG4uaWNzLXNvdXJjZS1tb2RhbCB7XHJcblx0bWF4LXdpZHRoOiAxMDAwcHg7XHJcblx0bWF4LWhlaWdodDogOTB2aDtcclxuXHJcblx0cGFkZGluZy1yaWdodDogMDtcclxufVxyXG5cclxuLmljcy10ZXh0LXJlcGxhY2VtZW50LW1vZGFsIC5tb2RhbC1jb250ZW50LFxyXG4uaWNzLXNvdXJjZS1tb2RhbCAubW9kYWwtY29udGVudCB7XHJcblx0cGFkZGluZy1yaWdodDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcbiIsICIvKiBUYXNrIGZpbHRlciBwYW5lbCBzdHlsZXMgKi9cclxuLnRhc2stZmlsdGVyLXBhbmVsIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCkgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTItMik7XHJcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1zaXplLTQtOCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRtYXgtaGVpZ2h0OiAzMDBweDtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG59XHJcblxyXG4udGFzay1maWx0ZXItYWN0aXZlIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItYWNjZW50LTIpO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4udGFzay1maWx0ZXItcGFuZWwgPiAuc2V0dGluZy1pdGVtIHtcclxuXHRib3JkZXItdG9wOiB1bnNldDtcclxufVxyXG5cclxuLnRhc2stZmlsdGVyLWhlYWRlci1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG59XHJcblxyXG4udGFzay1maWx0ZXItdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnRhc2stZmlsdGVyLW9wdGlvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDEwcHg7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1zZWN0aW9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1zZWN0aW9uIGgzIHtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0bWFyZ2luOiA1cHggMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1zZWN0aW9uOmxhc3QtY2hpbGQge1xyXG5cdGJvcmRlci1ib3R0b206IHVuc2V0O1xyXG59XHJcblxyXG4udGFzay1maWx0ZXItb3B0aW9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA2cHg7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1vcHRpb24gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1vcHRpb24gbGFiZWwge1xyXG5cdGZvbnQtc2l6ZTogMTNweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGFzay1maWx0ZXItYnV0dG9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdGdhcDogOHB4O1xyXG5cdG1hcmdpbi10b3A6IDhweDtcclxuXHRwYWRkaW5nLXRvcDogOHB4O1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1hcHBseSxcclxuLnRhc2stZmlsdGVyLWNsb3NlIHtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLnRhc2stZmlsdGVyLWFwcGx5IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1yZXNldCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1jbG9zZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1xdWVyeS1pbnB1dCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWluLXdpZHRoOiAyNTBweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0cGFkZGluZzogOHB4IDEycHg7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1xdWVyeS1pbnB1dDpmb2N1cyB7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0b3V0bGluZTogbm9uZTtcclxufVxyXG5cclxuLnRhc2stZmlsdGVyLXNlY3Rpb24gLnNldHRpbmctaXRlbS1kZXNjcmlwdGlvbiB7XHJcblx0bWFyZ2luLXRvcDogNXB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG59XHJcblxyXG4udGFzay1maWx0ZXItb3B0aW9ucyB7XHJcblx0bWF4LWhlaWdodDogNzB2aDtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdHBhZGRpbmctcmlnaHQ6IDVweDtcclxufVxyXG5cclxuLnRhc2stZmlsdGVyLW9wdGlvbnMge1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0cGFkZGluZy10b3A6IHZhcigtLXNpemUtNC00KTtcclxufVxyXG4iLCAiLmZpbHRlci1ncm91cC1zZXBhcmF0b3Ige1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRtYXJnaW46IHZhcigtLXNpemUtMi0yKSAwOyAvKiBcdTRGN0ZcdTc1MjggT2JzaWRpYW4gXHU3Njg0XHU1QzNBXHU1QkY4XHU1M0Q4XHU5MUNGICovXHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpOyAvKiBcdTRGN0ZcdTc1MjggT2JzaWRpYW4gXHU3Njg0XHU2QjIxXHU4OTgxXHU2NTg3XHU2NzJDXHU5ODlDXHU4MjcyICovXHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpOyAvKiBcdTRGN0ZcdTc1MjggT2JzaWRpYW4gXHU3Njg0XHU1QjU3XHU0RjUzXHU1OTI3XHU1QzBGXHU1M0Q4XHU5MUNGICovXHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAtc2VwYXJhdG9yOjpiZWZvcmUsXHJcbi5maWx0ZXItZ3JvdXAtc2VwYXJhdG9yOjphZnRlciB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRmbGV4LWdyb3c6IDE7XHJcblx0aGVpZ2h0OiAxcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKFxyXG5cdFx0LS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlclxyXG5cdCk7IC8qIFx1NEY3Rlx1NzUyOCBPYnNpZGlhbiBcdTc2ODRcdThGQjlcdTY4NDZcdTk4OUNcdTgyNzIgKi9cclxuXHRtYXJnaW46IDAgdmFyKC0tc2l6ZS0yLTEpOyAvKiBcdTRGN0ZcdTc1MjggT2JzaWRpYW4gXHU3Njg0XHU1QzNBXHU1QkY4XHU1M0Q4XHU5MUNGICovXHJcbn1cclxuXHJcbi5kcmFnLWhhbmRsZSB7XHJcblx0Y3Vyc29yOiBncmFiO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLyogXHU2MzA5XHU5NEFFXHU1NDhDXHU4RjkzXHU1MTY1XHU2ODQ2XHU3Njg0XHU4RjgzXHU1QzBGXHU2NTg3XHU2NzJDXHU1NDhDXHU1MTg1XHU4RkI5XHU4REREICovXHJcbi5jb21wYWN0LWJ0biB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0yKTsgLyogXHU0RjdGXHU3NTI4IE9ic2lkaWFuIFx1NzY4NFx1NUMzQVx1NUJGOFx1NTNEOFx1OTFDRiAqL1xyXG5cdGJveC1zaGFkb3c6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyOiB1bnNldCAhaW1wb3J0YW50O1xyXG5cdC0taWNvbi1zaXplOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cclxuXHQtd2Via2l0LWFwcC1yZWdpb246IG5vLWRyYWc7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1yYWRpdXMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKTtcclxuXHRmb250LXdlaWdodDogdmFyKC0taW5wdXQtZm9udC13ZWlnaHQpO1xyXG5cdGN1cnNvcjogdmFyKC0tY3Vyc29yKTtcclxuXHRmb250LWZhbWlseTogaW5oZXJpdDtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxuXHJcblx0bWluLWhlaWdodDogMzBweDtcclxufVxyXG5cclxuLmNvbXBhY3QtYnRuOmhvdmVyIHtcclxuXHRib3gtc2hhZG93OiBub25lO1xyXG5cdG9wYWNpdHk6IHZhcigtLWljb24tb3BhY2l0eS1ob3Zlcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmNvbXBhY3QtaW5wdXQsXHJcbi5jb21wYWN0LXNlbGVjdCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpOyAvKiBcdTRGN0ZcdTc1MjggT2JzaWRpYW4gXHU3Njg0XHU1QjU3XHU0RjUzXHU1OTI3XHU1QzBGXHU1M0Q4XHU5MUNGICovXHJcblx0aGVpZ2h0OiB2YXIoLS1pbnB1dC1oZWlnaHQpOyAvKiBcdTRGN0ZcdTc1MjggT2JzaWRpYW4gXHU3Njg0XHU4RjkzXHU1MTY1XHU2ODQ2XHU5QUQ4XHU1RUE2XHU1M0Q4XHU5MUNGICovXHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJveC1zaGFkb3c6IG5vbmU7XHJcbn1cclxuXHJcbi5jb21wYWN0LXNlbGVjdDpob3ZlciB7XHJcblx0Ym94LXNoYWRvdzogbm9uZTtcclxufVxyXG5cclxuLmNvbXBhY3QtdGV4dCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpOyAvKiBcdTRGN0ZcdTc1MjggT2JzaWRpYW4gXHU3Njg0XHU1QjU3XHU0RjUzXHU1OTI3XHU1QzBGXHU1M0Q4XHU5MUNGICovXHJcbn1cclxuXHJcbi8qIFx1NjJENlx1NTJBOFx1NjVGNlx1NzY4NFx1NTM2MFx1NEY0RFx1N0IyNiAqL1xyXG4uZHJhZ2dpbmctcGxhY2Vob2xkZXIge1xyXG5cdG9wYWNpdHk6IDAuNTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoXHJcblx0XHQtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXJcclxuXHQpOyAvKiBcdTRGN0ZcdTc1MjggT2JzaWRpYW4gXHU3Njg0XHU2MEFDXHU1MDVDXHU4MENDXHU2NjZGXHU4MjcyICovXHJcbn1cclxuXHJcbi8qIFx1NTk4Mlx1Njc5Q1x1OTcwMFx1ODk4MVx1RkYwQ1x1NEUzQVx1OEZDN1x1NkVFNFx1NTY2OFx1N0VDNFx1NEVGNlx1NzY4NFx1NjgzOVx1NUJCOVx1NTY2OFx1OEJCRVx1N0Y2RVx1NjgzN1x1NUYwRiAqL1xyXG4udGFzay1maWx0ZXItcm9vdC1jb250YWluZXIudGFzay1wb3BvdmVyLWNvbnRlbnQge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKTsgLyogXHU0RjdGXHU3NTI4IE9ic2lkaWFuIFx1NzY4NFx1NUMzQVx1NUJGOFx1NTNEOFx1OTFDRiAqL1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxuXHRtYXgtaGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4udGFzay1maWx0ZXItbWFpbi1wYW5lbCB7XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKTsgLyogXHU0RjdGXHU3NTI4IE9ic2lkaWFuIFx1NzY4NFx1NUMzQVx1NUJGOFx1NTNEOFx1OTFDRiAqL1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTsgLyogXHU0RjdGXHU3NTI4IE9ic2lkaWFuIFx1NzY4NFx1NTcwNlx1ODlEMlx1NTNEOFx1OTFDRiAqL1xyXG59XHJcblxyXG4uZmlsdGVyLW1lbnUge1xyXG5cdHotaW5kZXg6IDUwO1xyXG5cdG1pbi13aWR0aDogNjAwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLyogcm9vdEZpbHRlclNldHVwU2VjdGlvbiBpbiBUUywgY29ycmVzcG9uZHMgdG8gSFRNTCdzICNyb290LWZpbHRlci1jb250YWluZXIgKi9cclxuLnJvb3QtZmlsdGVyLXNldHVwLXNlY3Rpb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDAuNzVyZW07IC8qIHNwYWNlLXktMyBmcm9tIEhUTUwsIFRhaWx3aW5kIHZhcigtLXNwYWNlLTMpICovXHJcbn1cclxuXHJcbi8qIFJvb3QgQ29uZGl0aW9uIFNlY3Rpb24gKGRpdi5mbGV4Lml0ZW1zLWNlbnRlci5zcGFjZS14LTIucC0yLmJnLXNsYXRlLTEwMC5yb3VuZGVkLW1kLmJvcmRlci5ib3JkZXItc2xhdGUtMjAwKSAqL1xyXG4ucm9vdC1jb25kaXRpb24tc2VjdGlvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMC41cmVtOyAvKiBzcGFjZS14LTIgZnJvbSBIVE1MLCBUYWlsd2luZCB2YXIoLS1zcGFjZS0yKSAqL1xyXG5cdHBhZGRpbmc6IDAuNXJlbTsgLyogcC0yIGZyb20gSFRNTCwgVGFpbHdpbmQgdmFyKC0tc3BhY2UtMikgKi9cclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoXHJcblx0XHQtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCxcclxuXHRcdHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpXHJcblx0KTsgLyogYmctc2xhdGUtMTAwICovXHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pOyAvKiByb3VuZGVkLW1kICovXHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpOyAvKiBib3JkZXIgYm9yZGVyLXNsYXRlLTIwMCAqL1xyXG59XHJcblxyXG4ucm9vdC1jb25kaXRpb24tbGFiZWwge1xyXG5cdC8qIGNvbXBhY3QtdGV4dCBhbHJlYWR5IHByb3ZpZGVzIGZvbnQtc2l6ZSAqL1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7IC8qIGZvbnQtbWVkaXVtICovXHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTsgLyogdGV4dC1zbGF0ZS02MDAgKi9cclxufVxyXG5cclxuLnJvb3QtY29uZGl0aW9uLXNlbGVjdCB7XHJcblx0LyogY29tcGFjdC1zZWxlY3QgYWxyZWFkeSBwcm92aWRlcyBiYXNlIHN0eWxpbmcgKi9cclxuXHR3aWR0aDogYXV0bztcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IsIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKSk7IC8qIGJvcmRlciBib3JkZXItc2xhdGUtMzAwICovXHJcblx0LyogYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpOyAvKiBzaGFkb3ctc20gKi8gLyogQ29uc2lkZXIgaWYgbmVlZGVkICovXHJcbn1cclxuXHJcbi5yb290LWNvbmRpdGlvbi1zZWxlY3Q6Zm9jdXMge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAxcHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLnJvb3QtY29uZGl0aW9uLXNwYW4ge1xyXG5cdC8qIGNvbXBhY3QtdGV4dCBhbHJlYWR5IHByb3ZpZGVzIGZvbnQtc2l6ZSAqL1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7IC8qIHRleHQtc2xhdGUtNjAwICovXHJcbn1cclxuXHJcbi8qIEZpbHRlciBHcm91cHMgQ29udGFpbmVyICgjZmlsdGVyLWdyb3Vwcy1jb250YWluZXIpICovXHJcbi5maWx0ZXItZ3JvdXBzLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTMpOyAvKiBzcGFjZS15LTMgZnJvbSBIVE1MICovXHJcblxyXG5cdG1heC1oZWlnaHQ6IDUwdmg7XHJcblx0b3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuXHJcbi8qIEZpbHRlciBHcm91cCAoI2ZpbHRlci1ncm91cC10ZW1wbGF0ZSkgKi9cclxuLmZpbHRlci1ncm91cCB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTMpOyAvKiBwLTMgZnJvbSBIVE1MICovXHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpOyAvKiBib3JkZXIgYm9yZGVyLXNsYXRlLTMwMCAqL1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTsgLyogcm91bmRlZC1tZCAqL1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7IC8qIGJnLXdoaXRlICovXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpOyAvKiBzcGFjZS15LTIgZnJvbSBIVE1MICovXHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAtaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG59XHJcblxyXG4uZmlsdGVyLWdyb3VwLWhlYWRlci1sZWZ0IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAwLjM3NXJlbTsgLyogc3BhY2UteC0xLjUgZnJvbSBIVE1MICovXHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAtaGVhZGVyLWxlZnQgLmRyYWctaGFuZGxlLWNvbnRhaW5lciAuc3ZnLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTsgLyogdGV4dC1zbGF0ZS00MDAgKi9cclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXItbGVmdCAuZHJhZy1oYW5kbGUtY29udGFpbmVyOmhvdmVyIC5zdmctaWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpOyAvKiBob3Zlcjp0ZXh0LXNsYXRlLTUwMCAqL1xyXG59XHJcblxyXG4uZmlsdGVyLWdyb3VwLWhlYWRlci1sZWZ0IC5kcmFnLWhhbmRsZS1jb250YWluZXIge1xyXG5cdHBhZGRpbmctcmlnaHQ6IHZhcigtLXNpemUtMi0xKTtcclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXItbGVmdCA+IC5jb21wYWN0LXRleHQsXHJcbi5maWx0ZXItZ3JvdXAtaGVhZGVyLWxlZnQgPiBzcGFuLmNvbXBhY3QtdGV4dCB7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDsgLyogZm9udC1tZWRpdW0gKi9cclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpOyAvKiB0ZXh0LXNsYXRlLTYwMCAqL1xyXG59XHJcblxyXG4uZmlsdGVyLWdyb3VwLWhlYWRlci1sZWZ0IC5ncm91cC1jb25kaXRpb24tc2VsZWN0LmNvbXBhY3Qtc2VsZWN0IHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IsIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKSk7XHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAtaGVhZGVyLWxlZnQgLmdyb3VwLWNvbmRpdGlvbi1zZWxlY3QuY29tcGFjdC1zZWxlY3Q6Zm9jdXMge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAxcHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXItcmlnaHQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDAuMjVyZW07IC8qIHNwYWNlLXgtMSBmcm9tIEhUTUwgKi9cclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXItcmlnaHQgLmR1cGxpY2F0ZS1ncm91cC1idG4uY29tcGFjdC1pY29uLWJ0bixcclxuLmZpbHRlci1ncm91cC1oZWFkZXItcmlnaHQgLnJlbW92ZS1ncm91cC1idG4uY29tcGFjdC1pY29uLWJ0biB7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpOyAvKiByb3VuZGVkLW1kIGZyb20gVGFpbHdpbmQgKi9cclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXItcmlnaHQgLmR1cGxpY2F0ZS1ncm91cC1idG4uY29tcGFjdC1pY29uLWJ0biAuc3ZnLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTsgLyogdGV4dC1zbGF0ZS01MDAgKi9cclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXItcmlnaHRcclxuLmR1cGxpY2F0ZS1ncm91cC1idG4uY29tcGFjdC1pY29uLWJ0bjpob3ZlclxyXG4uc3ZnLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpOyAvKiBob3Zlcjp0ZXh0LWluZGlnby02MDAgKi9cclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXItcmlnaHQgLmR1cGxpY2F0ZS1ncm91cC1idG4uY29tcGFjdC1pY29uLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAtaGVhZGVyLXJpZ2h0IC5yZW1vdmUtZ3JvdXAtYnRuLmNvbXBhY3QtaWNvbi1idG4gLnN2Zy1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7IC8qIHRleHQtc2xhdGUtNTAwICovXHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAtaGVhZGVyLXJpZ2h0IC5yZW1vdmUtZ3JvdXAtYnRuLmNvbXBhY3QtaWNvbi1idG46aG92ZXIgLnN2Zy1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7IC8qIGhvdmVyOnRleHQtcmVkLTYwMCAqL1xyXG59XHJcblxyXG4uZmlsdGVyLWdyb3VwLWhlYWRlci1yaWdodCAucmVtb3ZlLWdyb3VwLWJ0bi5jb21wYWN0LWljb24tYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoXHJcblx0XHQtLWJhY2tncm91bmQtZXJyb3ItaG92ZXIsXHJcblx0XHR2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yLWhvdmVyKVxyXG5cdCk7XHJcbn1cclxuXHJcbi8qIEZpbHRlcnMgTGlzdCAoLmZpbHRlcnMtbGlzdCkgKi9cclxuLmZpbHRlcnMtbGlzdCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpOyAvKiBzcGFjZS15LTEuNSBmcm9tIEhUTUwgKi9cclxuXHRwYWRkaW5nLWxlZnQ6IDFyZW07IC8qIHBsLTQgZnJvbSBIVE1MICovXHJcblx0Ym9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7IC8qIGJvcmRlci1sLTIgYm9yZGVyLXNsYXRlLTIwMCAqL1xyXG5cdG1hcmdpbi1sZWZ0OiB2YXIoLS1zaXplLTQtMik7IC8qIG1sLTEuNSBmcm9tIEhUTUwgKi9cclxufVxyXG5cclxuLmZpbHRlcnMtbGlzdDplbXB0eSB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLyogR3JvdXAgRm9vdGVyICguZ3JvdXAtZm9vdGVyKSAqL1xyXG4uZ3JvdXAtZm9vdGVyIHtcclxuXHQvKiBIVE1MOiA8ZGl2IGNsYXNzPVwicGwtNCBtdC0xLjVcIj4gY29udGFpbmluZyBidXR0b24gKi9cclxuXHQvKiBUUyBjcmVhdGVzIC5ncm91cC1mb290ZXIsIHRoZW4gYWRkcyBCdXR0b25Db21wb25lbnQgdG8gaXQuICovXHJcblx0cGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgLyogQ29ycmVzcG9uZHMgdG8gcGwtMS41IGVmZmVjdGl2ZWx5IGlmIGl0ZW1zIGluc2lkZSAuZmlsdGVycy1saXN0IGhhdmUgbWFyZ2luL3BhZGRpbmcgKi9cclxuXHRtYXJnaW4tdG9wOiAwLjM3NXJlbTsgLyogbXQtMS41ICovXHJcbn1cclxuXHJcbi5hZGQtZmlsdGVyLWJ0bi1pY29uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIEZpbHRlciBJdGVtICgjZmlsdGVyLWl0ZW0tdGVtcGxhdGUpICovXHJcbi5maWx0ZXItaXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHQvKiBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7ICovXHJcblx0LyogYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pOyAqL1xyXG5cdHBhZGRpbmctdG9wOiAwO1xyXG5cdHBhZGRpbmctYm90dG9tOiAwO1xyXG59XHJcblxyXG4uZmlsdGVyLWl0ZW0gLmZpbHRlci1jb25qdW5jdGlvbiB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpOyAvKiB0ZXh0LTJ4cyAqL1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7IC8qIGZvbnQtc2VtaWJvbGQgKi9cclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7IC8qIHRleHQtc2xhdGUtNDAwICovXHJcblx0YWxpZ24tc2VsZjogY2VudGVyO1xyXG59XHJcblxyXG4uZmlsdGVyLWl0ZW0gLmZpbHRlci1wcm9wZXJ0eS1zZWxlY3QuY29tcGFjdC1zZWxlY3Qge1xyXG5cdGZsZXgtYmFzaXM6IDMwJTsgLyogdy0xLzMgKi9cclxuXHRmbGV4LWdyb3c6IDA7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0taW5wdXQtYm9yZGVyLWNvbG9yLCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcikpO1xyXG5cdC8qIGJvcmRlcjogdW5zZXQgIWltcG9ydGFudDsgKi9cclxuXHRib3gtc2hhZG93OiBub25lO1xyXG59XHJcblxyXG4uZmlsdGVyLWl0ZW0gLmZpbHRlci1wcm9wZXJ0eS1zZWxlY3QuY29tcGFjdC1zZWxlY3Q6Zm9jdXMge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAxcHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLmZpbHRlci1pdGVtIC5maWx0ZXItY29uZGl0aW9uLXNlbGVjdC5jb21wYWN0LXNlbGVjdCB7XHJcblx0d2lkdGg6IGF1dG87IC8qIHctYXV0byAqL1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlucHV0LWJvcmRlci1jb2xvciwgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpKTtcclxuXHQvKiBib3JkZXI6IHVuc2V0ICFpbXBvcnRhbnQ7ICovXHJcblx0Ym94LXNoYWRvdzogbm9uZTtcclxufVxyXG5cclxuLmZpbHRlci1pdGVtIC5maWx0ZXItY29uZGl0aW9uLXNlbGVjdC5jb21wYWN0LXNlbGVjdDpmb2N1cyB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDFweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4uZmlsdGVyLWl0ZW0gLmZpbHRlci12YWx1ZS1pbnB1dC5jb21wYWN0LWlucHV0IHtcclxuXHRmbGV4LWdyb3c6IDE7IC8qIGZsZXgtZ3JvdyAqL1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlucHV0LWJvcmRlci1jb2xvciwgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpKTtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmZpbHRlci1pdGVtIC5maWx0ZXItdmFsdWUtaW5wdXQuY29tcGFjdC1pbnB1dDpmb2N1cyB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDFweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4uZmlsdGVyLWl0ZW0gLnJlbW92ZS1maWx0ZXItYnRuLmNvbXBhY3QtaWNvbi1idG4gLnN2Zy1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7IC8qIHRleHQtc2xhdGUtNTAwICovXHJcbn1cclxuXHJcbi5maWx0ZXItaXRlbSAucmVtb3ZlLWZpbHRlci1idG4uY29tcGFjdC1pY29uLWJ0bjpob3ZlciAuc3ZnLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTsgLyogaG92ZXI6dGV4dC1yZWQtNjAwICovXHJcbn1cclxuXHJcbi5maWx0ZXItaXRlbSAucmVtb3ZlLWZpbHRlci1idG4uY29tcGFjdC1pY29uLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKFxyXG5cdFx0LS1iYWNrZ3JvdW5kLWVycm9yLWhvdmVyLFxyXG5cdFx0dmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvci1ob3ZlcilcclxuXHQpO1xyXG59XHJcblxyXG4vKiBBZGQgRmlsdGVyIEdyb3VwIEJ1dHRvbiBTZWN0aW9uICovXHJcbi5hZGQtZ3JvdXAtc2VjdGlvbiB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0xKTtcclxuXHRtYXJnaW4tbGVmdDogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG59XHJcblxyXG4uYWRkLWZpbHRlci1ncm91cC1idG4taWNvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4vKiBGaWx0ZXIgQ29uZmlndXJhdGlvbiBTZWN0aW9uICovXHJcbi5maWx0ZXItY29uZmlnLXNlY3Rpb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0LyogbWFyZ2luLXRvcDogdmFyKC0tc2l6ZS0yLTEpOyAqL1xyXG5cdC8qIG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0xKTsgKi9cclxuXHQvKiBtYXJnaW4tbGVmdDogdmFyKC0tc2l6ZS0yLTEpOyAqL1xyXG5cdC8qIHBhZGRpbmctdG9wOiB2YXIoLS1zaXplLTItMik7ICovXHJcblx0LyogYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTsgKi9cclxufVxyXG5cclxuLnNhdmUtZmlsdGVyLWNvbmZpZy1idG4sXHJcbi5sb2FkLWZpbHRlci1jb25maWctYnRuIHtcclxuXHRmbGV4OiAxO1xyXG59XHJcblxyXG4uc2F2ZS1maWx0ZXItY29uZmlnLWJ0bi1pY29uLFxyXG4ubG9hZC1maWx0ZXItY29uZmlnLWJ0bi1pY29uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5zYXZlLWZpbHRlci1jb25maWctYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5sb2FkLWZpbHRlci1jb25maWctYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLyogRmlsdGVyIENvbmZpZyBNb2RhbCBTdHlsZXMgKi9cclxuLmZpbHRlci1jb25maWctZGV0YWlscyB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWwpO1xyXG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuXHRcdDEzNWRlZyxcclxuXHRcdHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KSAwJSxcclxuXHRcdHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpIDEwMCVcclxuXHQpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLmZpbHRlci1jb25maWctZGV0YWlsczpob3ZlciB7XHJcblx0Ym94LXNoYWRvdzogMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxufVxyXG5cclxuLmZpbHRlci1jb25maWctZGV0YWlscyBoMyB7XHJcblx0bWFyZ2luOiAwIDAgdmFyKC0tc2l6ZS00LTIpIDA7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxufVxyXG5cclxuLmZpbHRlci1jb25maWctZGV0YWlscyBwIHtcclxuXHRtYXJnaW46IHZhcigtLXNpemUtMi0yKSAwO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmZpbHRlci1jb25maWctbWV0YSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW46IHZhcigtLXNpemUtMi0xKSAwO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTItMik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1mb3JtLWZpZWxkKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Ym9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4uZmlsdGVyLWNvbmZpZy1zdW1tYXJ5IHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIDAgMCAwO1xyXG5cdGJvcmRlci10b3A6IDJweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5maWx0ZXItY29uZmlnLXN1bW1hcnkgaDQge1xyXG5cdG1hcmdpbjogMCAwIHZhcigtLXNpemUtMi0zKSAwO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0xKTtcclxufVxyXG5cclxuLmZpbHRlci1jb25maWctc3VtbWFyeSBwIHtcclxuXHRtYXJnaW46IHZhcigtLXNpemUtMi0xKSAwO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0yKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktYWx0KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcbn1cclxuXHJcbi5maWx0ZXItY29uZmlnLWJ1dHRvbnMge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4uZmlsdGVyLWNvbmZpZy1uYW1lLWhpZ2hsaWdodCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0cGFkZGluZzogMC4xMjVyZW0gMC4yNXJlbTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLyogQWR2YW5jZWQgZmlsdGVyIGNvbnRhaW5lciBzdHlsZXMgZm9yIFZpZXdDb25maWdNb2RhbCAqL1xyXG4uYWR2YW5jZWQtZmlsdGVyLWNvbnRhaW5lciB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxufVxyXG5cclxuLmFkdmFuY2VkLWZpbHRlci1jb250YWluZXIgLnRhc2stZmlsdGVyLXJvb3QtY29udGFpbmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0cGFkZGluZzogMDtcclxufVxyXG5cclxuLmFkdmFuY2VkLWZpbHRlci1jb250YWluZXIgLnRhc2stZmlsdGVyLW1haW4tcGFuZWwge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4vKiBTbWFsbGVyIHN0eWxpbmcgZm9yIGZpbHRlcnMgaW4gbW9kYWwgKi9cclxuLnRhc2stZ2VuaXVzLXZpZXctY29uZmlnLW1vZGFsIC5hZHZhbmNlZC1maWx0ZXItY29udGFpbmVyIC5maWx0ZXItZ3JvdXAge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3LWNvbmZpZy1tb2RhbCAuYWR2YW5jZWQtZmlsdGVyLWNvbnRhaW5lciAuZmlsdGVyLWl0ZW0ge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKTtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXctY29uZmlnLW1vZGFsIC5hZHZhbmNlZC1maWx0ZXItY29udGFpbmVyIC5jb21wYWN0LWJ0biB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0yKTtcclxuXHRtaW4taGVpZ2h0OiAyNnB4O1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldy1jb25maWctbW9kYWwgLmFkdmFuY2VkLWZpbHRlci1jb250YWluZXIgLmNvbXBhY3Qtc2VsZWN0LFxyXG4udGFzay1nZW5pdXMtdmlldy1jb25maWctbW9kYWwgLmFkdmFuY2VkLWZpbHRlci1jb250YWluZXIgLmNvbXBhY3QtaW5wdXQge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRoZWlnaHQ6IDI4cHg7XHJcbn1cclxuIiwgIi8qIFZpZXcgU2V0dGluZ3MgVGFiIFN0eWxlcyAqL1xyXG5cclxuLyogVmlldyBtYW5hZ2VtZW50IGxpc3QgY29udGFpbmVyICovXHJcbi52aWV3LW1hbmFnZW1lbnQtbGlzdCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogMjBweDtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbi8qIFNlY3Rpb24gY29udGFpbmVycyAqL1xyXG4udmlldy1zZWN0aW9uLWNvbnRhaW5lciB7XHJcblx0bWluLWhlaWdodDogMTAwcHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRwYWRkaW5nOiAxMHB4O1xyXG59XHJcblxyXG4vKiBTZWN0aW9uIGhlYWRlcnMgKi9cclxuLnZpZXctc2VjdGlvbi1oZWFkZXIge1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbn1cclxuXHJcbi52aWV3LXNlY3Rpb24taGVhZGVyIGg0IHtcclxuXHRtYXJnaW46IDA7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4udmlldy1zZWN0aW9uLWl0ZW1zLFxyXG4uc29ydGFibGUtdmlld3Mge1xyXG5cdG1pbi1oZWlnaHQ6IDYwcHg7XHJcblx0Ym9yZGVyOiAxcHggZGFzaGVkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0cGFkZGluZzogOHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi5zb3J0YWJsZS12aWV3czplbXB0eTo6YWZ0ZXIge1xyXG5cdGNvbnRlbnQ6IGF0dHIoZGF0YS1lbXB0eS10ZXh0KTtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdHBhZGRpbmc6IDIwcHg7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4uc29ydGFibGUtdmlld3NbZGF0YS1yZWdpb249XCJ0b3BcIl06ZW1wdHk6OmFmdGVyIHtcclxuXHRjb250ZW50OiBcIkRyYWcgdmlld3MgaGVyZSBmb3IgdGhlIHRvcCBzZWN0aW9uXCI7XHJcbn1cclxuXHJcbi5zb3J0YWJsZS12aWV3c1tkYXRhLXJlZ2lvbj1cImJvdHRvbVwiXTplbXB0eTo6YWZ0ZXIge1xyXG5cdGNvbnRlbnQ6IFwiRHJhZyB2aWV3cyBoZXJlIGZvciB0aGUgYm90dG9tIHNlY3Rpb25cIjtcclxufVxyXG5cclxuLyogVmlldyBpdGVtIHN0eWxlcyAqL1xyXG4udmlldy1pdGVtLFxyXG4uc29ydGFibGUtdmlldy1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogOHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDRweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGN1cnNvcjogbW92ZTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udmlldy1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIERyYWcgaGFuZGxlIHN0eWxlcyAqL1xyXG4udmlldy1kcmFnLWhhbmRsZSB7XHJcblx0Y3Vyc29yOiBncmFiO1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG5cdG9wYWNpdHk6IDAuNTtcclxufVxyXG5cclxuLnZpZXctZHJhZy1oYW5kbGU6YWN0aXZlIHtcclxuXHRjdXJzb3I6IGdyYWJiaW5nICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIFZpZXcgaXRlbSBpY29uICovXHJcbi52aWV3LWl0ZW0taWNvbiB7XHJcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XHJcbn1cclxuXHJcbi8qIFZpZXcgaXRlbSBpbmZvICovXHJcbi52aWV3LWl0ZW0taW5mbyB7XHJcblx0ZmxleDogMTtcclxuXHRtYXJnaW4tcmlnaHQ6IDhweDtcclxufVxyXG5cclxuLnZpZXctaXRlbS1uYW1lIHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4udmlldy1pdGVtLXR5cGUge1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi8qIFZpZXcgaXRlbSBhY3Rpb25zICovXHJcbi52aWV3LWl0ZW0tYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDRweDtcclxufVxyXG5cclxuLnZpZXctYWN0aW9uLWJ1dHRvbiB7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRwYWRkaW5nOiA0cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi52aWV3LWFjdGlvbi1idXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi52aWV3LWFjdGlvbi1kZWxldGU6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5zb3J0YWJsZS1naG9zdCB7XHJcblx0b3BhY2l0eTogMC40O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5zb3J0YWJsZS1kcmFnIHtcclxuXHRvcGFjaXR5OiAwO1xyXG59XHJcblxyXG4uc29ydGFibGUtY2hvc2VuIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKSAhaW1wb3J0YW50O1xyXG59XHJcbiIsICIvKiBNQ1AgSW50ZWdyYXRpb24gU2V0dGluZ3MgU3R5bGVzICovXHJcblxyXG4vKiBTdGF0dXMgQ29udGFpbmVyICovXHJcbi5tY3Atc3RhdHVzLWNvbnRhaW5lciB7XHJcbiAgICBwYWRkaW5nOiAxNnB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjRweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLm1jcC1zdGF0dXMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBnYXA6IDEwcHg7XHJcbn1cclxuXHJcbi5tY3Atc3RhdHVzLWluZGljYXRvciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMTBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBmb250LXNpemU6IDEuMDVlbTtcclxufVxyXG5cclxuLm1jcC1zdGF0dXMtaW5kaWNhdG9yLnJ1bm5pbmcgLnN0YXR1cy1kb3Qge1xyXG4gICAgY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItc3VjY2Vzcyk7XHJcbiAgICBmb250LXNpemU6IDEuMmVtO1xyXG4gICAgYW5pbWF0aW9uOiBwdWxzZSAycyBpbmZpbml0ZTtcclxufVxyXG5cclxuLm1jcC1zdGF0dXMtaW5kaWNhdG9yLnN0b3BwZWQgLnN0YXR1cy1kb3Qge1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG4gICAgZm9udC1zaXplOiAxLjJlbTtcclxufVxyXG5cclxuLm1jcC1zdGF0dXMtZGV0YWlscyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZ2FwOiAyNHB4O1xyXG4gICAgZm9udC1zaXplOiAwLjllbTtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuICAgIHBhZGRpbmctbGVmdDogMzBweDtcclxufVxyXG5cclxuLyogQ2xpZW50IENvbmZpZ3VyYXRpb24gKi9cclxuLm1jcC1jb25maWctY29udGFpbmVyIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcbi5tY3AtY2xpZW50LXNlY3Rpb24ge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ubWNwLWNsaWVudC1oZWFkZXIge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgcGFkZGluZzogMTJweCAxNnB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMTBweDtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzO1xyXG59XHJcblxyXG4ubWNwLWNsaWVudC1oZWFkZXI6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIEFycm93IGljb24gZm9yIGNvbGxhcHNpYmxlIHNlY3Rpb25zICovXHJcbi5tY3AtYXJyb3cge1xyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnM7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgaGVpZ2h0OiAxNnB4O1xyXG59XHJcblxyXG4ubWNwLWFycm93IHN2ZyB7XHJcbiAgICB3aWR0aDogMTRweDtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIHN0cm9rZS13aWR0aDogMjtcclxufVxyXG5cclxuLm1jcC1hcnJvdy5leHBhbmRlZCB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbn1cclxuXHJcbi5tY3AtY2xpZW50LW5hbWUge1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5tY3AtY2xpZW50LWNvbnRlbnQge1xyXG4gICAgcGFkZGluZzogMTZweCAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5tY3AtY2xpZW50LWNvbnRlbnQuZXhwYW5kZWQge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5tY3AtY29uZmlnLWJsb2NrIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5tY3AtY29uZmlnLWNvZGUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZzogMTZweCA2MHB4IDE2cHggMTZweCAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29kZS1iYWNrZ3JvdW5kKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBmb250LXNpemU6IDAuODVlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICBvdmVyZmxvdzogYXV0bztcclxuICAgIG1heC1oZWlnaHQ6IDMwMHB4O1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuICAgIHNjcm9sbGJhci13aWR0aDogdGhpbjtcclxuICAgIHNjcm9sbGJhci1jb2xvcjogdmFyKC0tc2Nyb2xsYmFyLXRodW1iLWJnKSB2YXIoLS1zY3JvbGxiYXItYmcpO1xyXG59XHJcblxyXG4ubWNwLWNvbmZpZy1jb2RlIGNvZGUge1xyXG4gICAgY29sb3I6IHZhcigtLWNvZGUtbm9ybWFsKTtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XHJcbiAgICB3aGl0ZS1zcGFjZTogcHJlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5tY3AtY29uZmlnLWNvZGU6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgIHdpZHRoOiA4cHg7XHJcbiAgICBoZWlnaHQ6IDhweDtcclxufVxyXG5cclxuLm1jcC1jb25maWctY29kZTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyLWJnKTtcclxufVxyXG5cclxuLm1jcC1jb25maWctY29kZTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyLXRodW1iLWJnKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxufVxyXG5cclxuLm1jcC1jb25maWctY29kZTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyLWFjdGl2ZS10aHVtYi1iZyk7XHJcbn1cclxuXHJcbi8qIENvcHkgQnV0dG9ucyAqL1xyXG4ubWNwLWNvcHktYnRuIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xyXG4gICAgdG9wOiAxMnB4O1xyXG4gICAgcmlnaHQ6IDEycHg7XHJcbiAgICBwYWRkaW5nOiA2cHggMTJweDtcclxuICAgIGZvbnQtc2l6ZTogMC44ZW07XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzO1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIHotaW5kZXg6IDEwO1xyXG59XHJcblxyXG4ubWNwLWNvcHktYnRuOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcbiAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xyXG59XHJcblxyXG4ubWNwLWNvcHktYnRuLmNvcGllZCB7XHJcbiAgICBhbmltYXRpb246IGNvcHlTdWNjZXNzIDAuM3MgZWFzZTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItc3VjY2VzcykgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogQXV0aGVudGljYXRpb24gTWV0aG9kcyBMaXN0ICovXHJcbi5tY3AtYXV0aC1tZXRob2RzIHtcclxuICAgIG1hcmdpbjogMTVweCAwO1xyXG4gICAgcGFkZGluZzogMTVweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLm1jcC1hdXRoLWxpc3Qge1xyXG4gICAgbWFyZ2luOiAxMHB4IDAgMCAyMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuODtcclxufVxyXG5cclxuLm1jcC1hdXRoLWxpc3QgbGkge1xyXG4gICAgbWFyZ2luOiA4cHggMDtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5tY3AtYXV0aC1saXN0IGNvZGUge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29kZS1iYWNrZ3JvdW5kKTtcclxuICAgIHBhZGRpbmc6IDJweCA2cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICBmb250LXNpemU6IDAuOWVtO1xyXG4gICAgY29sb3I6IHZhcigtLWNvZGUtbm9ybWFsKTtcclxufVxyXG5cclxuLyogVG9rZW4gSW5wdXQgKi9cclxuLm1jcC10b2tlbi1pbnB1dCB7XHJcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlO1xyXG4gICAgd2lkdGg6IDMwMHB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG59XHJcblxyXG4vKiBBUEkgRG9jdW1lbnRhdGlvbiAqL1xyXG4ubWNwLWRvY3MtY29udGFpbmVyIHtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbn1cclxuXHJcbi5tY3AtZG9jcy1zZWN0aW9uIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcbi5tY3AtZG9jcy1zdWJ0aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDFlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLyogRW5kcG9pbnQgQm94ICovXHJcbi5tY3AtZW5kcG9pbnQtYm94IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiAxMnB4O1xyXG4gICAgcGFkZGluZzogMTJweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5tY3AtZW5kcG9pbnQtY29udGVudCB7XHJcbiAgICBmbGV4OiAxO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDhweDtcclxufVxyXG5cclxuLm1jcC1lbmRwb2ludC1sYWJlbCB7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4ubWNwLWVuZHBvaW50LXVybCB7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG4gICAgcGFkZGluZzogNnB4IDEwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxuICAgIHVzZXItc2VsZWN0OiB0ZXh0O1xyXG59XHJcblxyXG4ubWNwLWNvcHktZW5kcG9pbnQtYnRuIHtcclxuICAgIHBhZGRpbmc6IDZweCAxMnB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtbm9ybWFsKTtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnM7XHJcbn1cclxuXHJcbi5tY3AtY29weS1lbmRwb2ludC1idG46aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtaG92ZXIpO1xyXG59XHJcblxyXG4ubWNwLWNvcHktZW5kcG9pbnQtYnRuLmNvcGllZCB7XHJcbiAgICBhbmltYXRpb246IGNvcHlTdWNjZXNzIDAuM3MgZWFzZTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItc3VjY2VzcykgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogVG9vbHMgR3JpZCAqL1xyXG4ubWNwLXRvb2xzLWdyaWQge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDI4MHB4LCAxZnIpKTtcclxuICAgIGdhcDogMTZweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XHJcbn1cclxuXHJcbi5tY3AtdG9vbC1jYXJkIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmc6IDE2cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSkgMCUsIHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSkgMTAwJSk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5tY3AtdG9vbC1jYXJkOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDNweDtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KSAwJSwgdmFyKC0tdGV4dC1hY2NlbnQpIDEwMCUpO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcclxufVxyXG5cclxuLm1jcC10b29sLWNhcmQ6aG92ZXIge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpO1xyXG4gICAgYm94LXNoYWRvdzogMCA4cHggMjRweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4ubWNwLXRvb2wtY2FyZDpob3Zlcjo6YmVmb3JlIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xyXG59XHJcblxyXG4ubWNwLXRvb2wtaGVhZGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiA4cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG4ubWNwLXRvb2wtaWNvbiB7XHJcbiAgICB3aWR0aDogMjBweDtcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuICAgIG9wYWNpdHk6IDAuOTtcclxufVxyXG5cclxuLm1jcC10b29sLWljb24gc3ZnIHtcclxuICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgc3Ryb2tlLXdpZHRoOiAyO1xyXG59XHJcblxyXG4ubWNwLXRvb2wtbmFtZSB7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG4gICAgZm9udC1zaXplOiAwLjg1ZW07XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm94KTtcclxuICAgIHBhZGRpbmc6IDRweCA4cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XHJcbn1cclxuXHJcbi5tY3AtdG9vbC1kZXNjIHtcclxuICAgIGZvbnQtc2l6ZTogMC44NWVtO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgIHBhZGRpbmctbGVmdDogMjhweDtcclxufVxyXG5cclxuLyogRXhhbXBsZSBDb250YWluZXIgKi9cclxuLm1jcC1leGFtcGxlLWNvbnRhaW5lciB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XHJcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xyXG59XHJcblxyXG4vKiBFeGFtcGxlIFRhYnMgKi9cclxuLm1jcC1leGFtcGxlLXRhYnMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGdhcDogMDtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KSAwJSwgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3gpIDEwMCUpO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi5tY3AtZXhhbXBsZS10YWIge1xyXG4gICAgZmxleDogMTtcclxuICAgIHBhZGRpbmc6IDE0cHggMjBweDtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcclxuICAgIGZvbnQtc2l6ZTogMC45ZW07XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubWNwLWV4YW1wbGUtdGFiOjphZnRlciB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSBzY2FsZVgoMCk7XHJcbiAgICB3aWR0aDogODAlO1xyXG4gICAgaGVpZ2h0OiAzcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDNweCAzcHggMCAwO1xyXG59XHJcblxyXG4ubWNwLWV4YW1wbGUtdGFiOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuMDUpO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLm1jcC1leGFtcGxlLXRhYi5hY3RpdmUge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4xKTtcclxuICAgIGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuLm1jcC1leGFtcGxlLXRhYi5hY3RpdmU6OmFmdGVyIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSBzY2FsZVgoMSk7XHJcbn1cclxuXHJcbi8qIEV4YW1wbGUgQ29kZSAqL1xyXG4ubWNwLWV4YW1wbGUtY29kZS1jb250YWluZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29kZS1iYWNrZ3JvdW5kKTtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5tY3AtZXhhbXBsZS1ibG9jayB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYW5pbWF0aW9uOiBmYWRlSW4gMC4zcyBlYXNlO1xyXG59XHJcblxyXG4ubWNwLWV4YW1wbGUtYmxvY2suYWN0aXZlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tY3AtZXhhbXBsZS1jb2RlIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDI0cHggODBweCAyNHB4IDI0cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1jb2RlLWJhY2tncm91bmQpIDAlLCByZ2JhKHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1yZ2IpLCAwLjUpIDEwMCUpO1xyXG4gICAgZm9udC1zaXplOiAwLjg1ZW07XHJcbiAgICBsaW5lLWhlaWdodDogMS43O1xyXG4gICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLm1jcC1leGFtcGxlLWNvZGU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGhlaWdodDogMXB4O1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCB0cmFuc3BhcmVudCwgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpLCB0cmFuc3BhcmVudCk7XHJcbn1cclxuXHJcbi5tY3AtZXhhbXBsZS1jb2RlIGNvZGUge1xyXG4gICAgY29sb3I6IHZhcigtLWNvZGUtbm9ybWFsKTtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XHJcbiAgICB3aGl0ZS1zcGFjZTogcHJlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB0ZXh0LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XHJcbn1cclxuXHJcbi5tY3AtZXhhbXBsZS1jb3B5LWJ0biB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDIwcHg7XHJcbiAgICByaWdodDogMjBweDtcclxuICAgIHBhZGRpbmc6IDhweCAxNnB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBmb250LXNpemU6IDAuODVlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG4gICAgei1pbmRleDogMTA7XHJcbiAgICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4zKTtcclxufVxyXG5cclxuLm1jcC1leGFtcGxlLWNvcHktYnRuOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcbiAgICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuNCk7XHJcbn1cclxuXHJcbi5tY3AtZXhhbXBsZS1jb3B5LWJ0bjphY3RpdmUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgYm94LXNoYWRvdzogMCAxcHggNHB4IHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuMyk7XHJcbn1cclxuXHJcbi5tY3AtZXhhbXBsZS1jb3B5LWJ0bi5jb3BpZWQge1xyXG4gICAgYW5pbWF0aW9uOiBjb3B5U3VjY2VzcyAwLjRzIGVhc2U7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLXN1Y2Nlc3MpICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1zdWNjZXNzLXJnYiksIDAuMyk7XHJcbn1cclxuXHJcbi8qIEFuaW1hdGlvbnMgKi9cclxuQGtleWZyYW1lcyBjb3B5U3VjY2VzcyB7XHJcbiAgICAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cclxuICAgIDUwJSB7IHRyYW5zZm9ybTogc2NhbGUoMS4xKTsgfVxyXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBwdWxzZSB7XHJcbiAgICAwJSB7IG9wYWNpdHk6IDE7IH1cclxuICAgIDUwJSB7IG9wYWNpdHk6IDAuNjsgfVxyXG4gICAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cclxufVxyXG5cclxuLyogU21vb3RoIHRyYW5zaXRpb25zIGZvciBhbGwgaW50ZXJhY3RpdmUgZWxlbWVudHMgKi9cclxuLm1jcC1jbGllbnQtaGVhZGVyLFxyXG4ubWNwLWV4YW1wbGUtdGFiLFxyXG4ubWNwLXRvb2wtY2FyZCxcclxuYnV0dG9uIHtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi8qIENvZGUgc3ludGF4IGNvbG9ycyBmb3IgYmV0dGVyIHJlYWRhYmlsaXR5ICovXHJcbi5tY3AtY29uZmlnLWNvZGUgLmpzb24ta2V5IHtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi5tY3AtY29uZmlnLWNvZGUgLmpzb24tc3RyaW5nIHtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXN1Y2Nlc3MpO1xyXG59XHJcblxyXG4ubWNwLWNvbmZpZy1jb2RlIC5qc29uLW51bWJlciB7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nKTtcclxufVxyXG5cclxuLm1jcC1jb25maWctY29kZSAuanNvbi1ib29sZWFuIHtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBhZGp1c3RtZW50cyAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgIC5tY3AtdG9vbHMtZ3JpZCB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5tY3Atc3RhdHVzLWRldGFpbHMge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgZ2FwOiA4cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tY3AtZXhhbXBsZS1zdWJ0aXRsZSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLyogQ3Vyc29yIE9uZS1DbGljayBJbnN0YWxsIFNlY3Rpb24gKi9cclxuLm1jcC1jdXJzb3ItaW5zdGFsbC1zZWN0aW9uIHtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG59XHJcblxyXG4ubWNwLWN1cnNvci1pbnN0YWxsLWNvbnRhaW5lciB7XHJcblx0bWFyZ2luLXRvcDogMTJweDtcclxufVxyXG5cclxuLm1jcC1jdXJzb3ItaW5zdGFsbC1kZXNjIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luLWJvdHRvbTogMTJweDtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcbn1cclxuXHJcbi5tY3AtY3Vyc29yLWluc3RhbGwtbGluayB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdG1hcmdpbi1ib3R0b206IDE2cHg7XHJcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLm1jcC1jdXJzb3ItaW5zdGFsbC1saW5rOmhvdmVyIHtcclxuXHR0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xyXG59XHJcblxyXG4ubWNwLWN1cnNvci1hZGRpdGlvbmFsLWJ1dHRvbnMge1xyXG5cdG1hcmdpbi10b3A6IDEycHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDEwcHg7XHJcbn1cclxuXHJcblxyXG4ubWNwLWN1cnNvci1jb3B5LWRlZXBsaW5rLWJ0biB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtbm9ybWFsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRwYWRkaW5nOiA4cHggMTZweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4ubWNwLWN1cnNvci1jb3B5LWRlZXBsaW5rLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtaG92ZXIpO1xyXG59XHJcblxyXG4ubWNwLWN1cnNvci1jb3B5LWRlZXBsaW5rLWJ0bi5jb3BpZWQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLXN1Y2Nlc3MpO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLm1jcC1jdXJzb3ItZGVidWctY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAyMHB4O1xyXG59XHJcblxyXG4ubWNwLWN1cnNvci1kZWJ1Zy10b2dnbGUge1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLm1jcC1jdXJzb3ItZGVidWctdG9nZ2xlOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ubWNwLWN1cnNvci1kZWJ1Zy1jb250ZW50IHtcclxuXHRtYXJnaW4tdG9wOiAxMnB4O1xyXG5cdHBhZGRpbmc6IDEycHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG59XHJcblxyXG4ubWNwLWN1cnNvci1kZWJ1Zy1sYWJlbCB7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tYm90dG9tOiA4cHg7XHJcblx0bWFyZ2luLXRvcDogMTJweDtcclxufVxyXG5cclxuLm1jcC1jdXJzb3ItZGVidWctbGFiZWw6Zmlyc3QtY2hpbGQge1xyXG5cdG1hcmdpbi10b3A6IDA7XHJcbn1cclxuXHJcbi5tY3AtY3Vyc29yLWRlYnVnLWNvZGUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvZGUtYmFja2dyb3VuZCk7XHJcblx0cGFkZGluZzogOHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRmb250LXNpemU6IDEycHg7XHJcblx0b3ZlcmZsb3cteDogYXV0bztcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5tY3AtY3Vyc29yLWRlYnVnLWNvZGUgY29kZSB7XHJcblx0Y29sb3I6IHZhcigtLWNvZGUtbm9ybWFsKTtcclxuXHR3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbn1cclxuXHJcbi5tY3Atc2VjdGlvbi1zZXBhcmF0b3Ige1xyXG5cdG1hcmdpbjogMjRweCAwO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59IiwgIi8qIFdvcmtmbG93IERlY29yYXRvciBTdHlsZXMgKi9cclxuLmNtLXdvcmtmbG93LXN0YWdlLWluZGljYXRvciB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdG1hcmdpbi1sZWZ0OiA0cHg7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRvcGFjaXR5OiAwLjc7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XHJcblx0dXNlci1zZWxlY3Q6IG5vbmU7XHJcblxyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuLmNtLXdvcmtmbG93LXN0YWdlLWluZGljYXRvciBzcGFuIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4uY20td29ya2Zsb3ctc3RhZ2UtaW5kaWNhdG9yOmhvdmVyIHtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4vKiBEaWZmZXJlbnQgY29sb3JzIGZvciBkaWZmZXJlbnQgc3RhZ2UgdHlwZXMgKi9cclxuLmNtLXdvcmtmbG93LXN0YWdlLWluZGljYXRvcltkYXRhLXN0YWdlLXR5cGU9XCJsaW5lYXJcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi5jbS13b3JrZmxvdy1zdGFnZS1pbmRpY2F0b3JbZGF0YS1zdGFnZS10eXBlPVwiY3ljbGVcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLWluLXByb2dyZXNzLWNvbG9yKTtcclxufVxyXG5cclxuLmNtLXdvcmtmbG93LXN0YWdlLWluZGljYXRvcltkYXRhLXN0YWdlLXR5cGU9XCJ0ZXJtaW5hbFwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stY29tcGxldGVkLWNvbG9yKTtcclxufVxyXG5cclxuLyogRGFyayB0aGVtZSBhZGp1c3RtZW50cyAqL1xyXG4udGhlbWUtZGFyayAuY20td29ya2Zsb3ctc3RhZ2UtaW5kaWNhdG9yW2RhdGEtc3RhZ2UtdHlwZT1cImxpbmVhclwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLnRoZW1lLWRhcmsgLmNtLXdvcmtmbG93LXN0YWdlLWluZGljYXRvcltkYXRhLXN0YWdlLXR5cGU9XCJjeWNsZVwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2staW4tcHJvZ3Jlc3MtY29sb3IpO1xyXG59XHJcblxyXG4udGhlbWUtZGFyayAuY20td29ya2Zsb3ctc3RhZ2UtaW5kaWNhdG9yW2RhdGEtc3RhZ2UtdHlwZT1cInRlcm1pbmFsXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1jb21wbGV0ZWQtY29sb3IpO1xyXG59XHJcbiIsICIvKiBEYXRlIFBpY2tlciBDb21wb25lbnQgU3R5bGVzICovXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1pbi13aWR0aDogNTAwcHg7XHJcblx0bWF4LXdpZHRoOiA2MDBweDtcclxufVxyXG5cclxuLmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5kYXRlLXBpY2tlci1tYWluLXBhbmVsIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0zKTtcclxufVxyXG5cclxuLmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5kYXRlLXBpY2tlci1sZWZ0LXBhbmVsIHtcclxuXHRmbGV4OiAxO1xyXG5cdG1pbi13aWR0aDogMjAwcHg7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmRhdGUtcGlja2VyLXJpZ2h0LXBhbmVsIHtcclxuXHRmbGV4OiAxO1xyXG5cdG1pbi13aWR0aDogMjUwcHg7XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAuZGF0ZS1waWNrZXItc2VjdGlvbi10aXRsZSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtYm9sZCk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi8qIFF1aWNrIE9wdGlvbnMgU3R5bGVzICovXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAucXVpY2stb3B0aW9ucy1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0xKTtcclxuXHRtYXgtaGVpZ2h0OiAxOTVweDtcclxuXHRvdmVyZmxvdzogYXV0bztcclxuXHRvdmVyZmxvdy14OiBoaWRkZW47XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAucXVpY2stb3B0aW9uLWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpIHZhcigtLXNpemUtNC0yKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAucXVpY2stb3B0aW9uLWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLnF1aWNrLW9wdGlvbi1pdGVtLnNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAucXVpY2stb3B0aW9uLWl0ZW0uY2xlYXItb3B0aW9uIHtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtMi0yKTtcclxuXHRwYWRkaW5nLXRvcDogdmFyKC0tc2l6ZS0yLTMpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5xdWljay1vcHRpb24taXRlbS5jbGVhci1vcHRpb246aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvci1ob3Zlcik7XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAucXVpY2stb3B0aW9uLWxhYmVsIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LW1lZGl1bSk7XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAucXVpY2stb3B0aW9uLWRhdGUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxufVxyXG5cclxuLmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5xdWljay1vcHRpb24taXRlbS5zZWxlY3RlZCAucXVpY2stb3B0aW9uLWRhdGUge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIENhbGVuZGFyIFN0eWxlcyAqL1xyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZzogMCB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAuY2FsZW5kYXItbmF2LWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiAzMnB4O1xyXG5cdGhlaWdodDogMzJweDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLW5hdi1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLW1vbnRoLXllYXIge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWJvbGQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAuY2FsZW5kYXItZ3JpZCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg3LCAxZnIpO1xyXG5cdGdhcDogMXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5jYWxlbmRhci1kYXktaGVhZGVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtYm9sZCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWRheSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMik7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xyXG5cdG1pbi1oZWlnaHQ6IDMycHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWRheTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAuY2FsZW5kYXItZGF5Lm90aGVyLW1vbnRoIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWRheS50b2RheSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWJvbGQpO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWRheS5zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWJvbGQpO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWRheS50b2RheS5zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBQb3BvdmVyIFN0eWxlcyAqL1xyXG4uZGF0ZS1waWNrZXItcG9wb3Zlci50Zy1tZW51IHtcclxuXHR6LWluZGV4OiAyMDtcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sKTtcclxuXHRtYXgtaGVpZ2h0OiA4MHZoO1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcG9wb3Zlci50Zy1tZW51IC5kYXRlLXBpY2tlci1wb3BvdmVyLWNvbnRlbnQge1xyXG5cdHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi8qIE1vYmlsZSBSZXNwb25zaXZlICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAuZGF0ZS1waWNrZXItbWFpbi1wYW5lbCB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdFx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0fVxyXG5cclxuXHQuZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmRhdGUtcGlja2VyLWxlZnQtcGFuZWwge1xyXG5cdFx0Ym9yZGVyLXJpZ2h0OiBub25lO1xyXG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRcdHBhZGRpbmctcmlnaHQ6IDA7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdH1cclxuXHJcblx0LmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIHtcclxuXHRcdG1pbi13aWR0aDogMzAwcHg7XHJcblx0XHRtYXgtd2lkdGg6IDQwMHB4O1xyXG5cdH1cclxuXHJcblx0LmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5jYWxlbmRhci1kYXkge1xyXG5cdFx0bWluLWhlaWdodDogNDBweDtcclxuXHRcdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xyXG5cdH1cclxufVxyXG5cclxuLyogV2lkZ2V0IEVycm9yIFN0eWxlcyAqL1xyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmRhdGUtcGlja2VyLXdpZGdldC1lcnJvciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTItMik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxufVxyXG4iLCAiLyogUXVpY2sgQ2FwdHVyZSBFbmhhbmNlZCBTdHlsZXMgLSB3aXRoIHNoYWRjbiB0aGVtZSAqL1xyXG5cclxuLyogc2hhZGNuLWluc3BpcmVkIHRoZW1lIGNvbG9ycyBpbnRlZ3JhdGVkIHdpdGggVGFzayBHZW5pdXMgKi9cclxuOnJvb3Qge1xyXG5cdC8qIFRhYiBjb21wb25lbnQgY29sb3JzICovXHJcblx0LS10Zy10YWItYmFja2dyb3VuZDogMCAwJSAxMDAlO1xyXG5cdC0tdGctdGFiLWZvcmVncm91bmQ6IDI0MCAxMCUgMy45JTtcclxuXHQtLXRnLXRhYi1tdXRlZDogMjQwIDQuOCUgOTUuOSU7XHJcblx0LS10Zy10YWItbXV0ZWQtZm9yZWdyb3VuZDogMjQwIDMuOCUgNDYuMSU7XHJcblx0LS10Zy10YWItYm9yZGVyOiAyNDAgNS45JSA5MCU7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIHtcclxuXHQtLXRnLXRhYi1iYWNrZ3JvdW5kOiAyNDAgMTAlIDMuOSU7XHJcblx0LS10Zy10YWItZm9yZWdyb3VuZDogMCAwJSA5OCU7XHJcblx0LS10Zy10YWItbXV0ZWQ6IDI0MCAzLjclIDE1LjklO1xyXG5cdC0tdGctdGFiLW11dGVkLWZvcmVncm91bmQ6IDI0MCA1JSA2NC45JTtcclxuXHQtLXRnLXRhYi1ib3JkZXI6IDI0MCAzLjclIDE1LjklO1xyXG59XHJcblxyXG4vKiBRdWljayBDYXB0dXJlIEhlYWRlciAtIHNoYWRjbiBzdHlsZSAqL1xyXG4ucXVpY2stY2FwdHVyZS1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMTJweCAxNnB4O1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBoc2wodmFyKC0tdGctdGFiLWJvcmRlcikpO1xyXG5cdGJhY2tncm91bmQ6IGhzbCh2YXIoLS10Zy10YWItYmFja2dyb3VuZCkpO1xyXG59XHJcblxyXG4vKiBRdWljayBDYXB0dXJlIFRhYnMgLSBzaGFkY24gc3R5bGUgKi9cclxuLnF1aWNrLWNhcHR1cmUtdGFicyB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0cGFkZGluZzogNHB4O1xyXG5cdGJhY2tncm91bmQ6IGhzbCh2YXIoLS10Zy10YWItbXV0ZWQpKTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0Z2FwOiAycHg7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLXRhYiB7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XHJcblx0Y29sb3I6IGhzbCh2YXIoLS10Zy10YWItbXV0ZWQtZm9yZWdyb3VuZCkpO1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLXRhYjpob3Zlcjpub3QoLmFjdGl2ZSkge1xyXG5cdGNvbG9yOiBoc2wodmFyKC0tdGctdGFiLWZvcmVncm91bmQpKTtcclxufVxyXG5cclxuLnF1aWNrLWNhcHR1cmUtdGFiLmFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZDogaHNsKHZhcigtLXRnLXRhYi1iYWNrZ3JvdW5kKSk7XHJcblx0Y29sb3I6IGhzbCh2YXIoLS10Zy10YWItZm9yZWdyb3VuZCkpO1xyXG5cdGJveC1zaGFkb3c6IDAgMXB4IDNweCAwIHJnYigwIDAgMCAvIDAuMSksIDAgMXB4IDJweCAtMXB4IHJnYigwIDAgMCAvIDAuMSk7XHJcbn1cclxuXHJcbi8qIFF1aWNrIENhcHR1cmUgVGFiIEJ1dHRvbiBJY29uIGFuZCBUZXh0IC0gc2hhZGNuIHN0eWxlICovXHJcbi5xdWljay1jYXB0dXJlLXRhYi1pY29uIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDZweDtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxufVxyXG5cclxuLnF1aWNrLWNhcHR1cmUtdGFiLWljb24gc3ZnIHtcclxuXHR3aWR0aDogMTRweDtcclxuXHRoZWlnaHQ6IDE0cHg7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLXRhYi10ZXh0IHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG59XHJcblxyXG4vKiBRdWljayBDYXB0dXJlIENsZWFyIEJ1dHRvbiAtIHNoYWRjbiBzdHlsZSAqL1xyXG4ucXVpY2stY2FwdHVyZS1jbGVhciB7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgaHNsKHZhcigtLXRnLXRhYi1ib3JkZXIpKTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjE1cyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG5cdGNvbG9yOiBoc2wodmFyKC0tdGctdGFiLW11dGVkLWZvcmVncm91bmQpKTtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLnF1aWNrLWNhcHR1cmUtY2xlYXI6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IGhzbCh2YXIoLS10Zy10YWItbXV0ZWQpKTtcclxuXHRjb2xvcjogaHNsKHZhcigtLXRnLXRhYi1mb3JlZ3JvdW5kKSk7XHJcblx0Ym9yZGVyLWNvbG9yOiBoc2wodmFyKC0tdGctdGFiLW11dGVkLWZvcmVncm91bmQpKTtcclxufVxyXG5cclxuLyogUXVpY2sgQ2FwdHVyZSBDb250ZW50ICovXHJcbi5xdWljay1jYXB0dXJlLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcbn1cclxuXHJcbi8qIFF1aWNrIENhcHR1cmUgRm9vdGVyICovXHJcbi5xdWljay1jYXB0dXJlLWZvb3RlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnF1aWNrLWNhcHR1cmUtZm9vdGVyLWxlZnQsXHJcbi5xdWljay1jYXB0dXJlLWZvb3Rlci1yaWdodCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxufVxyXG5cclxuLnF1aWNrLWNhcHR1cmUtY29udGludWUge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKSB2YXIoLS1zaXplLTQtMyk7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLWNvbnRpbnVlOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLyogRmlsZSBOYW1lIElucHV0IENvbXBvbmVudCAqL1xyXG4uZmlsZS1uYW1lLWlucHV0LWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxufVxyXG5cclxuLmZpbGUtbmFtZS1sYWJlbCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLmZpbGUtbmFtZS1pbnB1dCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uZmlsZS1uYW1lLWlucHV0OmZvY3VzIHtcclxuXHRvdXRsaW5lOiBub25lO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAycHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLmZpbGUtbmFtZS10ZW1wbGF0ZXMge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLnRlbXBsYXRlcy1sYWJlbCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4udGVtcGxhdGUtYnV0dG9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi50ZW1wbGF0ZS1idXR0b24ge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTItMyk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnRlbXBsYXRlLWJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIE1vZGUtc3BlY2lmaWMgYWRqdXN0bWVudHMgKi9cclxuLnF1aWNrLWNhcHR1cmUtbW9kYWwucXVpY2stY2FwdHVyZS1jaGVja2JveCB7XHJcblx0d2lkdGg6IDgwMHB4O1xyXG5cdG1heC13aWR0aDogOTB2dztcclxuXHRoZWlnaHQ6IDYwMHB4O1xyXG5cdG1heC1oZWlnaHQ6IDgwdmg7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLW1vZGFsLnF1aWNrLWNhcHR1cmUtZmlsZSB7XHJcblx0d2lkdGg6IDcwMHB4O1xyXG5cdG1heC13aWR0aDogOTB2dztcclxuXHRoZWlnaHQ6IDUwMHB4O1xyXG5cdG1heC1oZWlnaHQ6IDcwdmg7XHJcbn1cclxuXHJcbi8qIFF1aWNrIENhcHR1cmUgUGFuZWwgKi9cclxuLnF1aWNrLWNhcHR1cmUtcGFuZWwge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4vKiBRdWljayBDYXB0dXJlIEFjdGlvbnMgKi9cclxuLnF1aWNrLWNhcHR1cmUtYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0xKTtcclxuXHRtYXJnaW4tbGVmdDogYXV0bztcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1hY3Rpb25zIC5xdWljay1hY3Rpb24tYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1hY3Rpb25zIC5xdWljay1hY3Rpb24tYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1hY3Rpb25zIC5xdWljay1hY3Rpb24tYnV0dG9uLmFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBNaW5pbWFsIFF1aWNrIENhcHR1cmUgTW9kYWwgKi9cclxuLnF1aWNrLWNhcHR1cmUtbW9kYWwubWluaW1hbCB7XHJcblx0bWF4LXdpZHRoOiA2MDBweDtcclxuXHRtaW4td2lkdGg6IDUwMHB4O1xyXG5cdG1heC1oZWlnaHQ6IDMwMHB4O1xyXG59XHJcblxyXG4vKiBNaW5pbWFsIFF1aWNrIENhcHR1cmUgVGFyZ2V0IERpc3BsYXkgKi9cclxuLnF1aWNrLWNhcHR1cmUtbWluaW1hbC10YXJnZXQtY29udGFpbmVyIHtcclxuXHRwYWRkaW5nOiA4cHggMTJweDtcclxuXHRiYWNrZ3JvdW5kOiBoc2wodmFyKC0tdGctdGFiLW11dGVkKSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDEycHg7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLW1pbmltYWwtdGFyZ2V0IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA4cHg7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS10YXJnZXQtbGFiZWwge1xyXG5cdGNvbG9yOiBoc2wodmFyKC0tdGctdGFiLW11dGVkLWZvcmVncm91bmQpKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS10YXJnZXQtdmFsdWUge1xyXG5cdGNvbG9yOiBoc2wodmFyKC0tdGctdGFiLWZvcmVncm91bmQpKTtcclxuXHRmbGV4OiAxO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1taW5pbWFsLWZpbGUtaW5wdXQge1xyXG5cdGZsZXg6IDE7XHJcblx0cGFkZGluZzogNHB4IDhweDtcclxuXHRiYWNrZ3JvdW5kOiBoc2wodmFyKC0tdGctdGFiLWJhY2tncm91bmQpKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCBoc2wodmFyKC0tdGctdGFiLWJvcmRlcikpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0Y29sb3I6IGhzbCh2YXIoLS10Zy10YWItZm9yZWdyb3VuZCkpO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1taW5pbWFsLWZpbGUtaW5wdXQ6Zm9jdXMge1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4vKiBSZW1vdmVkIG1pbmltYWwgbW9kZSBzdHlsZXMgYXMgbWluaW1hbCBVSSBtb2RlIG5vIGxvbmdlciBleGlzdHMgKi9cclxuXHJcbi5xdWljay1hY3Rpb25zLWxlZnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi5xdWljay1hY3Rpb25zLXJpZ2h0IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4ucXVpY2stYWN0aW9uLWJ1dHRvbi5hY3RpdmUge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi5xdWljay1hY3Rpb24tc2F2ZSB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtNC0yKTtcclxuXHRtaW4td2lkdGg6IDgwcHg7XHJcblx0aGVpZ2h0OiAzMnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxufVxyXG5cclxuLnF1aWNrLWNhcHR1cmUtdGFnLWlucHV0IHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0Ym90dG9tOiA2MHB4O1xyXG5cdGxlZnQ6IDUwJTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcblx0d2lkdGg6IDMwMHB4O1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdGV4dC1zaXplKTtcclxuXHR6LWluZGV4OiAxMDAwO1xyXG59XHJcblxyXG4vKiBNaW5pbWFsIFF1aWNrIENhcHR1cmUgU3VnZ2VzdCAqL1xyXG4ubWluaW1hbC1xdWljay1jYXB0dXJlLXN1Z2dlc3Rpb24ge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTQtMik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcclxuXHRtaW4taGVpZ2h0OiA0MHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLm1pbmltYWwtcXVpY2stY2FwdHVyZS1zdWdnZXN0aW9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLm1pbmltYWwtcXVpY2stY2FwdHVyZS1zdWdnZXN0aW9uLmlzLXNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5taW5pbWFsLXF1aWNrLWNhcHR1cmUtc3VnZ2VzdGlvbi5pcy1zZWxlY3RlZCAuc3VnZ2VzdGlvbi1sYWJlbCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLm1pbmltYWwtcXVpY2stY2FwdHVyZS1zdWdnZXN0aW9uLmlzLXNlbGVjdGVkIC5zdWdnZXN0aW9uLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdG9wYWNpdHk6IDAuODtcclxufVxyXG5cclxuLnN1Z2dlc3Rpb24taWNvbiB7XHJcblx0Zm9udC1zaXplOiAxNnB4O1xyXG5cdG1pbi13aWR0aDogMjBweDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5zdWdnZXN0aW9uLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcbn1cclxuXHJcbi5zdWdnZXN0aW9uLWxhYmVsIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdGV4dC1zaXplKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5zdWdnZXN0aW9uLWRlc2NyaXB0aW9uIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tdG9wOiAycHg7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLWhlYWRlci1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGZsZXgtd3JhcDogbm93cmFwO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS10aXRsZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS10YXJnZXQge1xyXG5cdGZsZXg6IDE7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXRleHQtc2l6ZSk7XHJcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuXHRtaW4td2lkdGg6IDEwMHB4O1xyXG5cdG1heC13aWR0aDogNTAwcHg7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cdHBhZGRpbmc6IDJweCA0cHg7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLXRhcmdldDpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLXRhcmdldDpmb2N1cyB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0b3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0b3V0bGluZS1vZmZzZXQ6IC0xcHg7XHJcblx0b3ZlcmZsb3c6IHZpc2libGU7XHJcblx0dGV4dC1vdmVyZmxvdzogaW5pdGlhbDtcclxufVxyXG5cclxuLnF1aWNrLWNhcHR1cmUtaGludCB7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tYm90dG9tOiA4cHg7XHJcblx0bWFyZ2luLXRvcDogLTRweDtcclxuXHR0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG5cclxuLnF1aWNrLWNhcHR1cmUtZWRpdG9yIHtcclxuXHRtaW4taGVpZ2h0OiAyMDBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1maWxlLXN1Z2dlc3Qge1xyXG5cdG1heC13aWR0aDogNTAwcHg7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLWJ1dHRvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRnYXA6IDhweDtcclxufVxyXG5cclxuLnF1aWNrLWNhcHR1cmUtc3VibWl0LFxyXG4ucXVpY2stY2FwdHVyZS1jYW5jZWwge1xyXG5cdHBhZGRpbmc6IDZweCAxMnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLXN1Ym1pdCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1jYW5jZWwge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1tb2RhbCAubW9kYWwtdGl0bGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdGdhcDogMTBweDtcclxuXHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuLnF1aWNrLWNhcHR1cmUtbW9kYWwtZWRpdG9yIHtcclxuXHRtaW4taGVpZ2h0OiAxNTBweDtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG59XHJcbi5xdWljay1jYXB0dXJlLW1vZGFsLWJ1dHRvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRnYXA6IDEwcHg7XHJcbn1cclxuXHJcbi8qIEZ1bGwtZmVhdHVyZWQgbW9kYWwgc3R5bGVzICovXHJcbi5xdWljay1jYXB0dXJlLW1vZGFsLmZ1bGwge1xyXG5cdHdpZHRoOiA4MHZ3O1xyXG5cdG1heC13aWR0aDogOTAwcHg7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLWxheW91dCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0Z2FwOiAxNnB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDE2cHg7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLWNvbmZpZy1wYW5lbCB7XHJcblx0ZmxleDogMTtcclxuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0cGFkZGluZy1yaWdodDogMTZweDtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdG1heC13aWR0aDogNDAlO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1lZGl0b3ItcGFuZWwge1xyXG5cdGZsZXg6IDEuNTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLXNlY3Rpb24tdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbWVkaXVtKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS10YXJnZXQtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1tb2RhbC5mdWxsIC5xdWljay1jYXB0dXJlLW1vZGFsLWVkaXRvciB7XHJcblx0bWluLWhlaWdodDogMjAwcHg7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0cGFkZGluZzogOHB4O1xyXG5cdG1hcmdpbi10b3A6IDhweDtcclxufVxyXG5cclxuLyogTW9iaWxlIG9wdGltaXphdGlvbiAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQucXVpY2stY2FwdHVyZS1tb2RhbC5mdWxsIHtcclxuXHRcdHdpZHRoOiA5NXZ3O1xyXG5cdH1cclxuXHJcblx0LnF1aWNrLWNhcHR1cmUtbGF5b3V0IHtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0fVxyXG5cclxuXHQucXVpY2stY2FwdHVyZS1jb25maWctcGFuZWwge1xyXG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdFx0Ym9yZGVyLXJpZ2h0OiBub25lO1xyXG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRcdHBhZGRpbmctcmlnaHQ6IDA7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogMTZweDtcclxuXHRcdG1hcmdpbi1ib3R0b206IDE2cHg7XHJcblx0XHRtYXgtaGVpZ2h0OiA0MCU7XHJcblx0fVxyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1jb25maWctcGFuZWwgLmRldGFpbHMtc3RhdHVzLXNlbGVjdG9yIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1jb25maWctcGFuZWwgLnF1aWNrLWNhcHR1cmUtc3RhdHVzLXNlbGVjdG9yIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxufVxyXG4iLCAiLyogVGFzayBsaXN0ICovXHJcbi50YXNrLWxpc3Qge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4udGFzay1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdHBhZGRpbmc6IDhweCAxNnB4O1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTMpO1xyXG59XHJcblxyXG4udGFzay1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xyXG59XHJcblxyXG4udGFzay1jaGlsZHJlbi1jb250YWluZXIgLnRhc2staXRlbTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4udGFzay1pdGVtLnNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xyXG59XHJcblxyXG4udGFzay1pdGVtLnRhc2stY29tcGxldGVkIC50YXNrLWl0ZW0tY29udGVudCB7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4udGFzay1pdGVtIC5tYXJrZG93bi1ibG9jay5tYXJrZG93bi1yZW5kZXJlciA+IHA6b25seS1jaGlsZCB7XHJcblx0cGFkZGluZzogMDtcclxuXHRtYXJnaW46IDA7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG59XHJcblxyXG4udGFzay1jaGVja2JveCB7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLnRhc2staXRlbS50YXNrLWNvbXBsZXRlZCAudGFzay1jaGVja2JveCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLnRhc2staXRlbS1jb250ZW50IHtcclxuXHRmbGV4OiAxO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnRhc2staXRlbS1jb250YWluZXIge1xyXG5cdGZsZXg6IDE7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG59XHJcblxyXG4vKiBEeW5hbWljIGNvbnRlbnQtbWV0YWRhdGEgY29udGFpbmVyICovXHJcbi50YXNrLWNvbnRlbnQtbWV0YWRhdGEtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4vKiBTaW5nbGUgbGluZSBjb250ZW50IGxheW91dCAtIGhvcml6b250YWwgKi9cclxuLnRhc2stY29udGVudC1tZXRhZGF0YS1jb250YWluZXIuc2luZ2xlLWxpbmUtY29udGVudCB7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4udGFzay1jb250ZW50LW1ldGFkYXRhLWNvbnRhaW5lci5zaW5nbGUtbGluZS1jb250ZW50IC50YXNrLWl0ZW0tY29udGVudCB7XHJcblx0ZmxleDogMTtcclxuXHRtaW4td2lkdGg6IDA7IC8qIEFsbG93IGNvbnRlbnQgdG8gc2hyaW5rICovXHJcbn1cclxuXHJcbi50YXNrLWNvbnRlbnQtbWV0YWRhdGEtY29udGFpbmVyLnNpbmdsZS1saW5lLWNvbnRlbnQgLnRhc2staXRlbS1tZXRhZGF0YSB7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0bWFyZ2luLXRvcDogMDtcclxufVxyXG5cclxuLyogTXVsdGktbGluZSBjb250ZW50IGxheW91dCAtIHZlcnRpY2FsICovXHJcbi50YXNrLWNvbnRlbnQtbWV0YWRhdGEtY29udGFpbmVyLm11bHRpLWxpbmUtY29udGVudCB7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxufVxyXG5cclxuLnRhc2stY29udGVudC1tZXRhZGF0YS1jb250YWluZXIubXVsdGktbGluZS1jb250ZW50IC50YXNrLWl0ZW0tY29udGVudCB7XHJcblx0Lyogd2lkdGg6IDEwMCU7ICovXHJcbn1cclxuXHJcbi50YXNrLWNvbnRlbnQtbWV0YWRhdGEtY29udGFpbmVyLm11bHRpLWxpbmUtY29udGVudCAudGFzay1pdGVtLW1ldGFkYXRhIHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi50YXNrLWl0ZW0tbWV0YWRhdGEge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi50YXNrLWl0ZW0tbWV0YWRhdGE6ZW1wdHkge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi50YXNrLWRhdGUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUtaG92ZXIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTItMyk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdG9wYWNpdHk6IDAuODtcclxufVxyXG5cclxuLnRhc2staXRlbTpob3ZlciAudGFzay1kYXRlIHtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4udGFzay1kYXRlOjpiZWZvcmUge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLXNpemUtMi0yKTtcclxuXHRmb250LXNpemU6IHh4LXNtYWxsO1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxufVxyXG5cclxuLnRnLWthbmJhbi12aWV3IC50YXNrLWRhdGU6OmJlZm9yZSB7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG59XHJcblxyXG4udGFzay1kYXRlLnRhc2stZHVlLWRhdGU6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcdUQ4M0RcdURDQzVcIjtcclxufVxyXG5cclxuLnRhc2stZGF0ZS50YXNrLW92ZXJkdWUge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4udGFzay1kYXRlLnRhc2stZHVlLXRvZGF5IHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1kb2luZy1jb2xvcik7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuLnRhc2stZGF0ZS50YXNrLWR1ZS1zb29uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4udGFzay1kYXRlLnRhc2stc3RhcnQtZGF0ZTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlx1RDgzRFx1REVFQlwiO1xyXG59XHJcblxyXG4udGFzay1kYXRlLnRhc2stY3JlYXRlZC1kYXRlOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXHUyNzk1XCI7XHJcbn1cclxuXHJcbi50YXNrLWRhdGUudGFzay1zY2hlZHVsZWQtZGF0ZTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlx1MjNGM1wiO1xyXG59XHJcblxyXG4udGFzay1kYXRlLnRhc2stZG9uZS1kYXRlOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXHUyNzA1XCI7XHJcbn1cclxuXHJcbi50YXNrLWRhdGUudGFzay1jYW5jZWxsZWQtZGF0ZTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlx1Mjc0Q1wiO1xyXG59XHJcblxyXG4udGFzay1kYXRlLnRhc2stcmVjdXJyZW5jZTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlx1RDgzRFx1REQwMVwiO1xyXG59XHJcblxyXG4udGFzay1kYXRlLnRhc2stb24tY29tcGxldGlvbjo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlx1RDgzQ1x1REZDMVwiO1xyXG59XHJcblxyXG4udGFzay1wcm9qZWN0IHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0zKTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG9wYWNpdHk6IDAuNTtcclxufVxyXG5cclxuLnRhc2stcHJvamVjdDpoYXMoaW5wdXQpIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZS1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnRhc2staXRlbTpob3ZlciAudGFzay1wcm9qZWN0IHtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4udGFzay1wcm9qZWN0OjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXHVEODNEXHVEREMyXHVGRTBGXCI7XHJcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblxyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcbn1cclxuXHJcbi50YXNrLXByb2plY3Q6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4udGFzay1wcmlvcml0eSB7XHJcblx0bWFyZ2luLWxlZnQ6IDhweDtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuLnRhc2stcHJpb3JpdHkucHJpb3JpdHktNSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuLnRhc2stcHJpb3JpdHkucHJpb3JpdHktNCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtd2FybmluZyk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG4udGFzay1wcmlvcml0eS5wcmlvcml0eS0zIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcbi50YXNrLXByaW9yaXR5LnByaW9yaXR5LTIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmcpO1xyXG59XHJcbi50YXNrLXByaW9yaXR5LnByaW9yaXR5LTEge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIE5ldyBmaWVsZCBzdHlsZXMgKi9cclxuLnRhc2stb25jb21wbGV0aW9uIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDJweCA2cHg7XHJcblx0bWFyZ2luLWxlZnQ6IDRweDtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLnRhc2stb25jb21wbGV0aW9uOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGFzay1kZXBlbmRzb24ge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMnB4IDZweDtcclxuXHRtYXJnaW4tbGVmdDogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4udGFzay1kZXBlbmRzb246aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3ItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLnRhc2staWQge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMnB4IDZweDtcclxuXHRtYXJnaW4tbGVmdDogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi50YXNrLWlkOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjY2VudC1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLyogVGFzayB0YWcgc3R5bGVzICovXHJcbi50YXNrLXRhZ3MtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxufVxyXG5cclxuLnRhc2stdGFncy1jb250YWluZXI6ZW1wdHkge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi50YXNrLXRhZyB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS0yLTMpO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3BhY2l0eTogMC43NTtcclxufVxyXG5cclxuLnRhc2staXRlbTpob3ZlciAudGFzay10YWcge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi50YXNrLWl0ZW0tY29udGVudCBwOmhhcyhpbWcpIGltZyB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0d2lkdGg6IG1pbig1MCUsIDIwMHB4KTtcclxufVxyXG4iLCAiLyogSW5saW5lIEVkaXRvciBTdHlsZXMgLSBPcHRpbWl6ZWQgZm9yIFBlcmZvcm1hbmNlIGFuZCBVWCAqL1xyXG4uaW5saW5lLWVkaXRvciB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyogQ29udGVudCBFZGl0b3IgLSBNb3JlIGlubGluZSBhcHBlYXJhbmNlICovXHJcbi5pbmxpbmUtY29udGVudC1lZGl0b3Ige1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1pbi1oZWlnaHQ6IDE4cHg7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDA7XHJcblx0cGFkZGluZzogMnB4IDRweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG5cdGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuXHRsaW5lLWhlaWdodDogaW5oZXJpdDtcclxuXHRyZXNpemU6IG5vbmU7XHJcblx0b3V0bGluZTogbm9uZTtcclxuXHR0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlO1xyXG59XHJcblxyXG4uaW5saW5lLWNvbnRlbnQtZWRpdG9yOmZvY3VzIHtcclxuXHRib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMXB4IDAgMCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4vKiBFbWJlZGRlZCBFZGl0b3IgU3R5bGVzIC0gTW9yZSBzZWFtbGVzcyAqL1xyXG4uaW5saW5lLWVtYmVkZGVkLWVkaXRvci1jb250YWluZXIge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1pbi1oZWlnaHQ6IDE4cHg7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJvcmRlci1yYWRpdXM6IDA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi5pbmxpbmUtZW1iZWRkZWQtZWRpdG9yIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtaW4taGVpZ2h0OiAxOHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4uaW5saW5lLWVtYmVkZGVkLWVkaXRvciAuY20tZWRpdG9yIHtcclxuXHRib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuXHRvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaW5saW5lLWVtYmVkZGVkLWVkaXRvciAuY20tZm9jdXNlZCB7XHJcblx0b3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3ZlcikgIWltcG9ydGFudDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktYWx0KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaW5saW5lLWVtYmVkZGVkLWVkaXRvciAuY20tY29udGVudCB7XHJcblx0cGFkZGluZzogMnB4IDRweDtcclxuXHRtaW4taGVpZ2h0OiAxOHB4O1xyXG5cdGZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG5cdGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuXHRsaW5lLWhlaWdodDogaW5oZXJpdDtcclxufVxyXG5cclxuLmlubGluZS1lbWJlZGRlZC1lZGl0b3IgLmNtLWxpbmUge1xyXG5cdHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi8qIE1ldGFkYXRhIEVkaXRvciBDb250YWluZXIgLSBNb3JlIGNvbXBhY3QgYW5kIGlubGluZSAqL1xyXG4uaW5saW5lLW1ldGFkYXRhLWVkaXRvciB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDRweDtcclxuXHRwYWRkaW5nOiAycHggNnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcblx0bWluLXdpZHRoOiAxMjBweDtcclxuXHRtYXgtd2lkdGg6IDMwMHB4O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR6LWluZGV4OiAxMDA7XHJcbn1cclxuXHJcbi5pbmxpbmUtbWV0YWRhdGEtZWRpdG9yIGlucHV0IHtcclxuXHRib3JkZXI6IHVuc2V0O1xyXG5cdG91dGxpbmU6IHVuc2V0O1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0aGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG59XHJcblxyXG4uaW5saW5lLW1ldGFkYXRhLWVkaXRvciBpbnB1dDpmb2N1cyB7XHJcblx0b3V0bGluZTogdW5zZXQ7XHJcblx0cGFkZGluZzogMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLmlubGluZS1tZXRhZGF0YS1lZGl0b3I6aGFzKGlucHV0KSB7XHJcblx0b3V0bGluZTogdW5zZXQ7XHJcblx0Ym9yZGVyOiAwO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0Ym9yZGVyLXJhZGl1czogdW5zZXQ7XHJcbn1cclxuXHJcbi8qIE1ldGFkYXRhIElucHV0IEZpZWxkcyAtIE1vcmUgY29tcGFjdCAqL1xyXG4uaW5saW5lLXByb2plY3QtaW5wdXQsXHJcbi5pbmxpbmUtdGFncy1pbnB1dCxcclxuLmlubGluZS1jb250ZXh0LWlucHV0LFxyXG4uaW5saW5lLWRhdGUtaW5wdXQsXHJcbi5pbmxpbmUtcmVjdXJyZW5jZS1pbnB1dCB7XHJcblx0ZmxleDogMTtcclxuXHRwYWRkaW5nOiAycHggNHB4O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LWZhbWlseTogaW5oZXJpdDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0bWluLXdpZHRoOiA4MHB4O1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTtcclxufVxyXG5cclxuLmlubGluZS1wcm9qZWN0LWlucHV0OmZvY3VzLFxyXG4uaW5saW5lLXRhZ3MtaW5wdXQ6Zm9jdXMsXHJcbi5pbmxpbmUtY29udGV4dC1pbnB1dDpmb2N1cyxcclxuLmlubGluZS1kYXRlLWlucHV0OmZvY3VzLFxyXG4uaW5saW5lLXJlY3VycmVuY2UtaW5wdXQ6Zm9jdXMge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi5pbmxpbmUtcHJpb3JpdHktc2VsZWN0IHtcclxuXHRwYWRkaW5nOiAycHggNHB4O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LWZhbWlseTogaW5oZXJpdDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdG1pbi13aWR0aDogODBweDtcclxufVxyXG5cclxuLmlubGluZS1wcmlvcml0eS1zZWxlY3Q6Zm9jdXMge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIEFkZCBNZXRhZGF0YSBCdXR0b24gLSBNb3JlIHN1YnRsZSAqL1xyXG4uYWRkLW1ldGFkYXRhLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRtYXJnaW4tbGVmdDogNHB4O1xyXG59XHJcblxyXG4udGFzay1saXN0IC50YXNrLWl0ZW06bm90KC50cmVlLXRhc2staXRlbSk6aG92ZXIgLmFkZC1tZXRhZGF0YS1idG4ge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi50cmVlLXRhc2staXRlbSAudGFzay1pdGVtLWNvbnRhaW5lcjpob3ZlciAuYWRkLW1ldGFkYXRhLWJ0biB7XHJcblx0b3BhY2l0eTogMTtcclxufVxyXG5cclxuLmFkZC1tZXRhZGF0YS1idG4ge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDIycHg7XHJcblx0aGVpZ2h0OiAyMnB4O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7XHJcblx0LS1pY29uLXNpemU6IDEwcHg7XHJcblx0b3BhY2l0eTogMDtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1hcmdpbjogMDtcclxufVxyXG5cclxuLmFkZC1tZXRhZGF0YS1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0b3BhY2l0eTogMTtcclxufVxyXG5cclxuLmFkZC1tZXRhZGF0YS1idG46YWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZSk7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcclxufVxyXG5cclxuLmFkZC1tZXRhZGF0YS1idG4gc3ZnIHtcclxuXHR3aWR0aDogMTBweDtcclxuXHRoZWlnaHQ6IDEwcHg7XHJcbn1cclxuXHJcbi8qIFNtb290aCB0cmFuc2l0aW9ucyBmb3IgYmV0dGVyIHBlcmZvcm1hbmNlICovXHJcbi5pbmxpbmUtZWRpdG9yICoge1xyXG5cdHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UsXHJcblx0XHRib3gtc2hhZG93IDAuMTVzIGVhc2U7XHJcbn1cclxuXHJcbi8qIEZvY3VzIHN0YXRlcyBmb3IgYmV0dGVyIGFjY2Vzc2liaWxpdHkgKi9cclxuLmlubGluZS1lZGl0b3IgaW5wdXQ6Zm9jdXMsXHJcbi5pbmxpbmUtZWRpdG9yIHRleHRhcmVhOmZvY3VzLFxyXG4uaW5saW5lLWVkaXRvciBzZWxlY3Q6Zm9jdXMge1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcbn1cclxuXHJcbi8qIEVkaXRhYmxlIE1ldGFkYXRhIEl0ZW1zIC0gTW9yZSBzdWJ0bGUgaG92ZXIgZWZmZWN0cyAqL1xyXG4udGFzay1pdGVtLW1ldGFkYXRhIC50YXNrLWRhdGUsXHJcbi50YXNrLWl0ZW0tbWV0YWRhdGEgLnRhc2stcHJvamVjdCxcclxuLnRhc2staXRlbS1tZXRhZGF0YSAudGFzay10YWcge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UsIHRyYW5zZm9ybSAwLjE1cyBlYXNlO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLnRhc2staXRlbS1tZXRhZGF0YSAudGFzay1kYXRlOmhvdmVyLFxyXG4udGFzay1pdGVtLW1ldGFkYXRhIC50YXNrLXByb2plY3Q6aG92ZXIsXHJcbi50YXNrLWl0ZW0tbWV0YWRhdGEgLnRhc2stdGFnOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHR0cmFuc2Zvcm06IG5vbmU7XHJcbn1cclxuXHJcbi8qIFJlbW92ZSB0b29sdGlwIG9uIGhvdmVyIGZvciBiZXR0ZXIgcGVyZm9ybWFuY2UgKi9cclxuLnRhc2staXRlbS1tZXRhZGF0YSAudGFzay1kYXRlOmhvdmVyOjphZnRlcixcclxuLnRhc2staXRlbS1tZXRhZGF0YSAudGFzay1wcm9qZWN0OmhvdmVyOjphZnRlcixcclxuLnRhc2staXRlbS1tZXRhZGF0YSAudGFzay10YWc6aG92ZXI6OmFmdGVyIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiBDb250ZW50IEVkaXRhYmxlIEhvdmVyIC0gTW9yZSBzdWJ0bGUgKi9cclxuLnRhc2staXRlbS1jb250ZW50IHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlO1xyXG59XHJcblxyXG4vKiBBbmltYXRpb24gZm9yIHNtb290aCB0cmFuc2l0aW9ucyAtIE9wdGltaXplZCAqL1xyXG4uaW5saW5lLW1ldGFkYXRhLWVkaXRvciB7XHJcblx0YW5pbWF0aW9uOiBmYWRlSW5TY2FsZSAwLjE1cyBlYXNlLW91dDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW5TY2FsZSB7XHJcblx0ZnJvbSB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcblx0fVxyXG59XHJcblxyXG4vKiBQcmV2ZW50IGxheW91dCBzaGlmdCBkdXJpbmcgZWRpdGluZyAqL1xyXG4uaW5saW5lLWVkaXRvci1wbGFjZWhvbGRlciB7XHJcblx0bWluLWhlaWdodDogMWVtO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBhZGp1c3RtZW50cyAtIFNpbXBsaWZpZWQgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0LmlubGluZS1wcm9qZWN0LWlucHV0LFxyXG5cdC5pbmxpbmUtdGFncy1pbnB1dCxcclxuXHQuaW5saW5lLWNvbnRleHQtaW5wdXQsXHJcblx0LmlubGluZS1yZWN1cnJlbmNlLWlucHV0IHtcclxuXHRcdG1pbi13aWR0aDogMTAwcHg7XHJcblx0XHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0fVxyXG5cclxuXHQuaW5saW5lLW1ldGFkYXRhLWVkaXRvciB7XHJcblx0XHRtYXgtd2lkdGg6IDI1MHB4O1xyXG5cdH1cclxufVxyXG5cclxuLyogSGlnaCBjb250cmFzdCBtb2RlIHN1cHBvcnQgKi9cclxuQG1lZGlhIChwcmVmZXJzLWNvbnRyYXN0OiBoaWdoKSB7XHJcblx0LmlubGluZS1jb250ZW50LWVkaXRvcixcclxuXHQuaW5saW5lLWVtYmVkZGVkLWVkaXRvciAuY20tZWRpdG9yIHtcclxuXHRcdGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcclxuXHR9XHJcblxyXG5cdC5pbmxpbmUtbWV0YWRhdGEtZWRpdG9yIHtcclxuXHRcdGJvcmRlci13aWR0aDogMnB4O1xyXG5cdH1cclxufVxyXG5cclxuLyogUmVkdWNlZCBtb3Rpb24gc3VwcG9ydCAqL1xyXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xyXG5cdC5pbmxpbmUtZWRpdG9yICosXHJcblx0LnRhc2staXRlbS1tZXRhZGF0YSAudGFzay1kYXRlLFxyXG5cdC50YXNrLWl0ZW0tbWV0YWRhdGEgLnRhc2stcHJvamVjdCxcclxuXHQudGFzay1pdGVtLW1ldGFkYXRhIC50YXNrLXRhZyxcclxuXHQudGFzay1pdGVtLWNvbnRlbnQsXHJcblx0LmFkZC1tZXRhZGF0YS1idG4ge1xyXG5cdFx0dHJhbnNpdGlvbjogbm9uZTtcclxuXHR9XHJcblxyXG5cdC5pbmxpbmUtbWV0YWRhdGEtZWRpdG9yIHtcclxuXHRcdGFuaW1hdGlvbjogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIE5ldyBmaWVsZCBpbnB1dCBzdHlsZXMgKi9cclxuLmlubGluZS1kZXBlbmRzb24taW5wdXQsXHJcbi5pbmxpbmUtaWQtaW5wdXQge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1pbi13aWR0aDogMjAwcHg7XHJcblx0cGFkZGluZzogNHB4IDhweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LWZhbWlseTogaW5oZXJpdDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0dHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UsIGJveC1zaGFkb3cgMC4xNXMgZWFzZTtcclxufVxyXG5cclxuLmlubGluZS1kZXBlbmRzb24taW5wdXQ6Zm9jdXMsXHJcbi5pbmxpbmUtaWQtaW5wdXQ6Zm9jdXMge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAycHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLmlubGluZS1kZXBlbmRzb24taW5wdXQ6OnBsYWNlaG9sZGVyLFxyXG4uaW5saW5lLWlkLWlucHV0OjpwbGFjZWhvbGRlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG59XHJcbiIsICIvKiBUcmVlIFZpZXcgc3R5bGVzICovXHJcblxyXG4vKiBUcmVlIGl0ZW0gY29udGFpbmVyICovXHJcbi50cmVlLXRhc2staXRlbSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRwYWRkaW5nOiA4cHggMTZweDtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnRhc2stY2hpbGRyZW4tY29udGFpbmVyIC50YXNrLWl0ZW0udHJlZS10YXNrLWl0ZW0ge1xyXG5cdGJvcmRlci1ib3R0b206IHVuc2V0O1xyXG5cdHBhZGRpbmctdG9wOiB2YXIoLS1zaXplLTItMik7XHJcblx0cGFkZGluZy1ib3R0b206IHZhcigtLXNpemUtMi0yKTtcclxuXHRnYXA6IDA7XHJcbn1cclxuXHJcbi50YXNrLWl0ZW0udHJlZS10YXNrLWl0ZW0ge1xyXG5cdGdhcDogMDtcclxufVxyXG5cclxuLnRyZWUtdGFzay1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xyXG59XHJcblxyXG4udHJlZS10YXNrLWl0ZW0uc2VsZWN0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlKTtcclxufVxyXG5cclxuLnRyZWUtdGFzay1pdGVtLmNvbXBsZXRlZCB7XHJcblx0b3BhY2l0eTogMC43O1xyXG59XHJcblxyXG4vKiBUYXNrIGNvbnRlbnQgcm93IChjb250YWlucyB0aGUgbWFpbiB0YXNrIGNvbnRlbnQpICovXHJcbi50cmVlLXRhc2staXRlbSA+IGRpdjpmaXJzdC1vZi10eXBlIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdGdhcDogNnB4O1xyXG59XHJcblxyXG4vKiBJbmRlbnRhdGlvbiBmb3IgaGllcmFyY2h5ICovXHJcbi50YXNrLWluZGVudCB7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi50YXNrLWl0ZW0udHJlZS10YXNrLWl0ZW0gLnRhc2stZXhwYW5kLXRvZ2dsZSB7XHJcblx0cGFkZGluZy10b3A6IHZhcigtLXNpemUtMi0yKTtcclxufVxyXG5cclxuLnRhc2staXRlbSAudGFzay1jaGVja2JveCB7XHJcblx0cGFkZGluZy10b3A6IHZhcigtLXNpemUtMi0yKTtcclxufVxyXG5cclxuLyogRXhwYW5kL2NvbGxhcHNlIHRvZ2dsZSAqL1xyXG4udGFzay1leHBhbmQtdG9nZ2xlIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi50YXNrLWV4cGFuZC10b2dnbGU6aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi8qIFRhc2sgY2hlY2tib3ggKi9cclxuLnRhc2staXRlbS50cmVlLXRhc2staXRlbSAudGFzay1jaGVja2JveCB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR3aWR0aDogMTZweDtcclxuXHRoZWlnaHQ6IDE2cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4udGFzay1pdGVtLnRyZWUtdGFzay1pdGVtIC50YXNrLWNoZWNrYm94OmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG59XHJcblxyXG4udGFzay1pdGVtLnRyZWUtdGFzay1pdGVtIC50YXNrLWNoZWNrYm94LmNoZWNrZWQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIFRhc2sgY29udGVudCAqL1xyXG4udGFzay1jb250ZW50IHtcclxuXHRmbGV4LWdyb3c6IDE7XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG5cclxuLnRyZWUtdGFzay1pdGVtLmNvbXBsZXRlZCAudGFzay1jb250ZW50IHtcclxuXHR0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi8qIER5bmFtaWMgY29udGVudC1tZXRhZGF0YSBjb250YWluZXIgZm9yIHRyZWUgdmlldyAqL1xyXG4udHJlZS10YXNrLWl0ZW0gLnRhc2stY29udGVudC1tZXRhZGF0YS1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi8qIFNpbmdsZSBsaW5lIGNvbnRlbnQgbGF5b3V0IC0gaG9yaXpvbnRhbCAqL1xyXG4udHJlZS10YXNrLWl0ZW0gLnRhc2stY29udGVudC1tZXRhZGF0YS1jb250YWluZXIuc2luZ2xlLWxpbmUtY29udGVudCB7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4udHJlZS10YXNrLWl0ZW0gLnRhc2stY29udGVudC1tZXRhZGF0YS1jb250YWluZXIuc2luZ2xlLWxpbmUtY29udGVudCAudGFzay1pdGVtLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcblx0bWluLXdpZHRoOiAwOyAvKiBBbGxvdyBjb250ZW50IHRvIHNocmluayAqL1xyXG59XHJcblxyXG4udHJlZS10YXNrLWl0ZW0gLnRhc2stY29udGVudC1tZXRhZGF0YS1jb250YWluZXIuc2luZ2xlLWxpbmUtY29udGVudCAudGFzay1tZXRhZGF0YSB7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0bWFyZ2luLXRvcDogMDtcclxufVxyXG5cclxuLyogTXVsdGktbGluZSBjb250ZW50IGxheW91dCAtIHZlcnRpY2FsICovXHJcbi50cmVlLXRhc2staXRlbSAudGFzay1jb250ZW50LW1ldGFkYXRhLWNvbnRhaW5lci5tdWx0aS1saW5lLWNvbnRlbnQge1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbn1cclxuXHJcbi50cmVlLXRhc2staXRlbSAudGFzay1jb250ZW50LW1ldGFkYXRhLWNvbnRhaW5lci5tdWx0aS1saW5lLWNvbnRlbnQgLnRhc2staXRlbS1jb250ZW50IHtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnRyZWUtdGFzay1pdGVtIC50YXNrLWNvbnRlbnQtbWV0YWRhdGEtY29udGFpbmVyLm11bHRpLWxpbmUtY29udGVudCAudGFzay1tZXRhZGF0YSB7XHJcblx0bWFyZ2luLXRvcDogNHB4O1xyXG59XHJcblxyXG4vKiBUYXNrIG1ldGFkYXRhICovXHJcbi50YXNrLW1ldGFkYXRhIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogOHB4O1xyXG5cdG1hcmdpbi10b3A6IDRweDtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi50YXNrLW1ldGFkYXRhOmVtcHR5IHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4udGFzay1kdWUtZGF0ZS5vdmVyZHVlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi50YXNrLWl0ZW0udHJlZS10YXNrLWl0ZW0gLnRhc2stcHJvamVjdCB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdHBhZGRpbmc6IDFweCA2cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG59XHJcblxyXG4udGFzay1wcmlvcml0eS5wcmlvcml0eS0zIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcbn1cclxuXHJcbi50YXNrLXByaW9yaXR5LnByaW9yaXR5LTIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmcpO1xyXG59XHJcblxyXG4udGFzay1wcmlvcml0eS5wcmlvcml0eS0xIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBOZXcgZmllbGQgc3R5bGVzIGZvciB0cmVlIHZpZXcgKi9cclxuLnRyZWUtdGFzay1pdGVtIC50YXNrLW9uY29tcGxldGlvbiB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAycHggNnB4O1xyXG5cdG1hcmdpbi1sZWZ0OiA0cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4udHJlZS10YXNrLWl0ZW0gLnRhc2stb25jb21wbGV0aW9uOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udHJlZS10YXNrLWl0ZW0gLnRhc2stZGVwZW5kc29uIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDJweCA2cHg7XHJcblx0bWFyZ2luLWxlZnQ6IDRweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLnRyZWUtdGFzay1pdGVtIC50YXNrLWRlcGVuZHNvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4udHJlZS10YXNrLWl0ZW0gLnRhc2staWQge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMnB4IDZweDtcclxuXHRtYXJnaW4tbGVmdDogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi50cmVlLXRhc2staXRlbSAudGFzay1pZDpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY2NlbnQtaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIENoaWxkcmVuIGNvbnRhaW5lciAqL1xyXG4udGFzay1jaGlsZHJlbi1jb250YWluZXIge1xyXG5cdC8qIG1hcmdpbi1sZWZ0OiAyMHB4OyAqL1xyXG5cdG1hcmdpbi10b3A6IDRweDtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyogVmlldyB0b2dnbGUgYnV0dG9uICovXHJcbi52aWV3LXRvZ2dsZS1idG4ge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDI0cHg7XHJcblx0aGVpZ2h0OiAyNHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcbn1cclxuXHJcbi52aWV3LXRvZ2dsZS1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50YXNrLWNoaWxkcmVuLWNvbnRhaW5lcjplbXB0eSB7XHJcblx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbiIsICIvKiBGb3JlY2FzdCBDb21wb25lbnQgU3R5bGVzICovXHJcbi5mb3JlY2FzdC1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRmbGV4OiAxO1xyXG59XHJcblxyXG4uZm9yZWNhc3QtaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDE1cHg7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLmZvcmVjYXN0LXRpdGxlLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4uZm9yZWNhc3QtdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiAxLjJlbTtcclxufVxyXG5cclxuLmZvcmVjYXN0LWNvdW50IHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tdG9wOiA0cHg7XHJcbn1cclxuXHJcbi5mb3JlY2FzdC1hY3Rpb25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5mb3JlY2FzdC1zZXR0aW5ncyB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdG9wYWNpdHk6IDAuNztcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcclxuXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4uZm9yZWNhc3Qtc2V0dGluZ3M6aG92ZXIge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi5mb3JlY2FzdC1mb2N1cy1iYXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0cGFkZGluZzogMTBweCAxNXB4O1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Z2FwOiAxMHB4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5mb2N1cy1pbnB1dCB7XHJcblx0ZmxleDogMTtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi51bmZvY3VzLWJ1dHRvbiB7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyOiBub25lO1xyXG59XHJcblxyXG4udW5mb2N1cy1idXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIE1haW4gY29udGVudCBsYXlvdXQgd2l0aCB0d28gY29sdW1ucyAqL1xyXG4uZm9yZWNhc3QtY29udGVudCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5mb3JlY2FzdC1sZWZ0LWNvbHVtbiB7XHJcblx0d2lkdGg6IDM2MHB4O1xyXG5cdG1pbi13aWR0aDogMzYwcHg7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7XHJcbn1cclxuXHJcbi5mb3JlY2FzdC1yaWdodC1jb2x1bW4ge1xyXG5cdGZsZXg6IDE7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi5mb3JlY2FzdC10YXNrLWxpc3Qge1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi5mb3JlY2FzdC1jYWxlbmRhci1zZWN0aW9uIHtcclxuXHRwYWRkaW5nOiAxMHB4IDA7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi8qIFN0YXRzIEJhciAqL1xyXG4uZm9yZWNhc3Qtc3RhdHMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcbi5zdGF0LWl0ZW0ge1xyXG5cdGZsZXg6IDE7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMTBweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uc3RhdC1pdGVtOjphZnRlciB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0Ym90dG9tOiAwO1xyXG5cdGxlZnQ6IDEwJTtcclxuXHR3aWR0aDogODAlO1xyXG5cdGhlaWdodDogM3B4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4uc3RhdC1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLnN0YXQtaXRlbS5hY3RpdmU6OmFmdGVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGFuaW1hdGlvbjogY29sb3ItcHVsc2UgMS41cyBpbmZpbml0ZSBhbHRlcm5hdGU7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgY29sb3ItcHVsc2Uge1xyXG5cdDAlIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudC0xKSAhaW1wb3J0YW50O1xyXG5cdFx0b3BhY2l0eTogMC43O1xyXG5cdH1cclxuXHQxMDAlIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudC0yKSAhaW1wb3J0YW50O1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcbn1cclxuXHJcbi5zdGF0LWl0ZW0udGctcGFzdC1kdWU6OmFmdGVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHRvcGFjaXR5OiAwLjc7XHJcbn1cclxuXHJcbi5zdGF0LWl0ZW0udGctdG9kYXk6OmFmdGVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdG9wYWNpdHk6IDAuNztcclxufVxyXG5cclxuLnN0YXQtaXRlbS50Zy1mdXR1cmU6OmFmdGVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0b3BhY2l0eTogMC43O1xyXG59XHJcblxyXG4uc3RhdC1jb3VudCB7XHJcblx0Zm9udC1zaXplOiAxLjVlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4uc3RhdC1pdGVtLnRnLXBhc3QtZHVlIC5zdGF0LWNvdW50IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcbn1cclxuXHJcbi5zdGF0LWxhYmVsIHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogRHVlIFNvb24gU2VjdGlvbiAqL1xyXG4uZm9yZWNhc3QtZHVlLXNvb24tc2VjdGlvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XHJcbn1cclxuXHJcbi5kdWUtc29vbi1oZWFkZXIge1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRwYWRkaW5nOiA1cHggMTVweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xyXG59XHJcblxyXG4uZHVlLXNvb24taXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0cGFkZGluZzogOHB4IDE1cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5kdWUtc29vbi1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXItbGVmdC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLmR1ZS1zb29uLWRhdGUge1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi5kdWUtc29vbi1jb3VudCB7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0cGFkZGluZzogMnB4IDZweDtcclxuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLmR1ZS1zb29uLWVtcHR5IHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMTVweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi5kYXRlLXNlY3Rpb24taGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogOHB4IDE1cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcclxufVxyXG5cclxuLmRhdGUtc2VjdGlvbi1oZWFkZXIgLnNlY3Rpb24tdG9nZ2xlIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDhweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5kYXRlLXNlY3Rpb24taGVhZGVyIC5zZWN0aW9uLXRpdGxlIHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbi5kYXRlLXNlY3Rpb24taGVhZGVyIC5zZWN0aW9uLWNvdW50IHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogMTBweDtcclxuXHRoZWlnaHQ6IHZhcigtLXNpemUtNC01KTtcclxuXHR3aWR0aDogdmFyKC0tc2l6ZS00LTUpO1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIE92ZXJkdWUgc2VjdGlvbiBzdHlsaW5nICovXHJcbi50YXNrLWRhdGUtc2VjdGlvbi5vdmVyZHVlIC5kYXRlLXNlY3Rpb24taGVhZGVyIHtcclxuXHRib3JkZXItbGVmdDogM3B4IHNvbGlkIHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4udGFzay1kYXRlLXNlY3Rpb24ub3ZlcmR1ZSAuc2VjdGlvbi10aXRsZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4udGFzay1kYXRlLXNlY3Rpb24ub3ZlcmR1ZSAuc2VjdGlvbi1jb3VudCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG4uc2VjdGlvbi10YXNrcyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4uZm9yZWNhc3QtZW1wdHktc3RhdGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0aGVpZ2h0OiAxMDBweDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbi5mb3JlY2FzdC1zaWRlYmFyLXRvZ2dsZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG59XHJcblxyXG4uaXMtcGhvbmVcclxuXHQuZm9yZWNhc3QtaGVhZGVyOmhhcyguZm9yZWNhc3Qtc2lkZWJhci10b2dnbGUpXHJcblx0LmZvcmVjYXN0LXRpdGxlLWNvbnRhaW5lciB7XHJcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1zaXplLTQtMTApO1xyXG59XHJcblxyXG4vKiBGb3JlY2FzdCBWaWV3IC0gTW9iaWxlICovXHJcbi5pcy1waG9uZSAuZm9yZWNhc3QtY29udGFpbmVyIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmlzLXBob25lIC5mb3JlY2FzdC1sZWZ0LWNvbHVtbiB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IDA7XHJcblx0dG9wOiAwO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR6LWluZGV4OiAxMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLWluLW91dDtcclxuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAuZm9yZWNhc3QtbGVmdC1jb2x1bW4uaXMtdmlzaWJsZSB7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLmZvcmVjYXN0LXNpZGViYXItdG9nZ2xlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAuZm9yZWNhc3Qtc2lkZWJhci1jbG9zZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMTBweDtcclxuXHRyaWdodDogMTBweDtcclxuXHR6LWluZGV4OiAxNTtcclxuXHR3aWR0aDogMjhweDtcclxuXHRoZWlnaHQ6IDI4cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbn1cclxuXHJcbi8qIEFkZCBvdmVybGF5IHdoZW4gbGVmdCBjb2x1bW4gaXMgdmlzaWJsZSBvbiBtb2JpbGUgKi9cclxuLmlzLXBob25lIC50YXNrLWdlbml1cy1jb250YWluZXI6aGFzKC5mb3JlY2FzdC1sZWZ0LWNvbHVtbi5pcy12aXNpYmxlKTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1jb3Zlcik7XHJcblx0b3BhY2l0eTogMC41O1xyXG5cdHotaW5kZXg6IDU7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xyXG59XHJcbiIsICIvKiBDYWxlbmRhciBDb21wb25lbnQgU3R5bGVzICovXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0cGFkZGluZy1ib3R0b206IDEwcHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDhweCAxNXB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci10aXRsZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogNXB4O1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAubWluaS1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLW1vbnRoIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDVweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci15ZWFyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItbmF2IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA4cHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItbmF2LWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiAyNHB4O1xyXG5cdGhlaWdodDogMjRweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdG9wYWNpdHk6IDAuNztcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1uYXYtYnRuOmhvdmVyIHtcclxuXHRvcGFjaXR5OiAxO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci10b2RheS1idG4ge1xyXG5cdHBhZGRpbmc6IDJweCA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAubWluaS1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXRvZGF5LWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAubWluaS1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWdyaWQge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTtcclxuXHRnYXA6IDFweDtcclxuXHRwYWRkaW5nOiAwIDEwcHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWhlYWRlciB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdHBhZGRpbmc6IDNweCAwO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0bWFyZ2luLWJvdHRvbTogM3B4O1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlld1xyXG5cdC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lclxyXG5cdC5jYWxlbmRhci1kYXktaGVhZGVyLmNhbGVuZGFyLXdlZWtlbmQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIEFkanVzdCBncmlkIGxheW91dCB3aGVuIHdlZWtlbmRzIGFyZSBoaWRkZW4gaW4gbWluaSBjYWxlbmRhciAqL1xyXG4udGFzay1nZW5pdXMtdmlldyAubWluaS1jYWxlbmRhci1jb250YWluZXIuaGlkZS13ZWVrZW5kcyAuY2FsZW5kYXItZ3JpZCB7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTsgLyogNSBjb2x1bW5zIGluc3RlYWQgb2YgNyB3aGVuIHdlZWtlbmRzIGhpZGRlbiAqL1xyXG59XHJcblxyXG4vKiBOb3RlOiBXZWVrZW5kIGVsZW1lbnRzIGFyZSBub3QgY3JlYXRlZCB3aGVuIGhpZGVXZWVrZW5kcyBpcyBlbmFibGVkLFxyXG4gICBzbyBubyBoaWRpbmcgcnVsZXMgYXJlIG5lZWRlZC4gVGhlIGdyaWQgbGF5b3V0IGFkanVzdG1lbnRzIGFib3ZlIGFyZSBzdWZmaWNpZW50LiAqL1xyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXkge1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRwYWRkaW5nOiAxcHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcblx0aGVpZ2h0OiBhdXRvO1xyXG5cdG1pbi1oZWlnaHQ6IHZhcigtLXNpemUtNC0xMik7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5OmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXkuc2VsZWN0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXkudG9kYXkge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXkucGFzdC1kdWUge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXkub3RoZXItbW9udGgge1xyXG5cdG9wYWNpdHk6IDAuNTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktbnVtYmVyIHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdHBhZGRpbmc6IDFweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktY291bnQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRmb250LXNpemU6IDAuN2VtO1xyXG5cdHBhZGRpbmc6IDFweCA0cHg7XHJcblx0bWFyZ2luOiAxcHggYXV0byAwO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHR3aWR0aDogZml0LWNvbnRlbnQ7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWNvdW50Lmhhcy1wcmlvcml0eSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxNDAwcHgpIHtcclxuXHQudGFzay1nZW5pdXMtY29udGFpbmVyOmhhcygudGFzay1kZXRhaWxzLnZpc2libGUpXHJcblx0XHQubWluaS1jYWxlbmRhci1jb250YWluZXJcclxuXHRcdC5mb3JlY2FzdC1sZWZ0LWNvbHVtbiB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxufVxyXG4iLCAiLyogVGFncyBWaWV3IFN0eWxlcyAqL1xyXG4udGFncy1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRmbGV4OiAxO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldzpoYXMoLnRhc2stZGV0YWlscy52aXNpYmxlKSAudGFncy1sZWZ0LWNvbHVtbiB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLnRhZ3MtY29udGVudCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLm11bHRpLXNlbGVjdC1tb2RlIC50YWdzLW11bHRpLXNlbGVjdC1idG4ge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG59XHJcblxyXG4udGFncy1sZWZ0LWNvbHVtbiB7XHJcblx0d2lkdGg6IG1heCgxMjBweCwgMzAlKTtcclxuXHRtaW4td2lkdGg6IG1pbigxMjBweCwgMzAlKTtcclxuXHRtYXgtd2lkdGg6IDQwMHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnRhZ3MtcmlnaHQtY29sdW1uIHtcclxuXHRmbGV4OiAxO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4udGFncy1zaWRlYmFyLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtMTApO1xyXG59XHJcblxyXG4udGFncy1zaWRlYmFyLXRpdGxlIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG5cclxuLnRhZ3MtbXVsdGktc2VsZWN0LWJ0biB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4udGFncy1tdWx0aS1zZWxlY3QtYnRuOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGFncy1zaWRlYmFyLWxpc3Qge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0xKTtcclxufVxyXG5cclxuLnRhZy1saXN0LWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiA0cHggMTJweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxufVxyXG5cclxuLnRhZy1saXN0LWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGFnLWxpc3QtaXRlbS5zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUpO1xyXG59XHJcblxyXG4udGFnLWluZGVudCB7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi50YWctaWNvbiB7XHJcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTItMik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0LS1pY29uLXNpemU6IHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLnRhZy1uYW1lIHtcclxuXHRmbGV4OiAxO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLnRhZy1jb3VudCB7XHJcblx0bWFyZ2luLWxlZnQ6IDhweDtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogMTBweDtcclxuXHRwYWRkaW5nOiAxcHggNnB4O1xyXG59XHJcblxyXG4udGFnLWNoaWxkcmVuIHtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnRhZ3MtdGFzay1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC00KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGhlaWdodDogdmFyKC0tc2l6ZS00LTEwKTtcclxufVxyXG5cclxuLnRhZ3MtdGFzay10aXRsZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRmb250LXNpemU6IDE2cHg7XHJcbn1cclxuXHJcbi50YWdzLXRhc2stY291bnQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnRhZ3MtdGFzay1saXN0IHtcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi50YWdzLWVtcHR5LXN0YXRlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0cGFkZGluZzogMTZweDtcclxufVxyXG5cclxuLnRhZy1zZWN0aW9uLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDhweCAxNXB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7XHJcbn1cclxuXHJcbi50YWctc2VjdGlvbi1oZWFkZXIgLnNlY3Rpb24tdG9nZ2xlIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDhweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi50YWctc2VjdGlvbi1oZWFkZXIgLnNlY3Rpb24tdGl0bGUge1xyXG5cdGZsZXg6IDE7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLnRhZy1zZWN0aW9uLWhlYWRlciAuc2VjdGlvbi1jb3VudCB7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmc6IDJweCA2cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogMTBweDtcclxuXHRoZWlnaHQ6IHZhcigtLXNpemUtNC01KTtcclxuXHR3aWR0aDogdmFyKC0tc2l6ZS00LTUpO1xyXG59XHJcblxyXG4vKiBUYWdzIFZpZXcgLSBNb2JpbGUgKi9cclxuLmlzLXBob25lIC50YWdzLWNvbnRhaW5lciB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5pcy1waG9uZSAudGFncy1sZWZ0LWNvbHVtbiB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IDA7XHJcblx0dG9wOiAwO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR6LWluZGV4OiAxMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLWluLW91dDtcclxuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAudGFncy1sZWZ0LWNvbHVtbi5pcy12aXNpYmxlIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAudGFncy1zaWRlYmFyLXRvZ2dsZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnRhZ3Mtc2lkZWJhci1jbG9zZSB7XHJcblx0LS1pY29uLXNpemU6IHZhcigtLXNpemUtNC00KTtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cmlnaHQ6IDEwcHg7XHJcblx0ei1pbmRleDogMTU7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4vKiBBZGQgb3ZlcmxheSB3aGVuIGxlZnQgY29sdW1uIGlzIHZpc2libGUgb24gbW9iaWxlICovXHJcbi5pcy1waG9uZSAudGFncy1jb250YWluZXI6aGFzKC50YWdzLWxlZnQtY29sdW1uLmlzLXZpc2libGUpOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWNvdmVyKTtcclxuXHRvcGFjaXR5OiAwLjU7XHJcblx0ei1pbmRleDogNTtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAudGFncy1zaWRlYmFyLWhlYWRlcjpoYXMoLnRhZ3Mtc2lkZWJhci1jbG9zZSkge1xyXG5cdHBhZGRpbmctcmlnaHQ6IHZhcigtLXNpemUtNC0xMik7XHJcbn1cclxuIiwgIi8qIFByb2plY3RzIFZpZXcgU3R5bGVzICovXHJcbi5wcm9qZWN0cy1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnByb2plY3RzLWNvbnRlbnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5wcm9qZWN0cy1sZWZ0LWNvbHVtbiB7XHJcblx0d2lkdGg6IG1heCgxMjBweCwgMzAlKTtcclxuXHRtaW4td2lkdGg6IG1pbigxMjBweCwgMzAlKTtcclxuXHRtYXgtd2lkdGg6IDMwMHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLmlzLXBob25lIC5wcm9qZWN0cy1sZWZ0LWNvbHVtbiB7XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ucHJvamVjdHMtcmlnaHQtY29sdW1uIHtcclxuXHRmbGV4OiAxO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ucHJvamVjdHMtc2lkZWJhci1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC00KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGhlaWdodDogdmFyKC0tc2l6ZS00LTEwKTtcclxufVxyXG5cclxuLnByb2plY3RzLXNpZGViYXItdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG59XHJcblxyXG4ucHJvamVjdHMtc2lkZWJhci1oZWFkZXItYnRuLWdyb3VwIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5tdWx0aS1zZWxlY3QtbW9kZSAucHJvamVjdHMtbXVsdGktc2VsZWN0LWJ0biB7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcbn1cclxuXHJcbi5wcm9qZWN0cy10cmVlLXRvZ2dsZS1idG4ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLnByb2plY3RzLW11bHRpLXNlbGVjdC1idG4ge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLnByb2plY3RzLW11bHRpLXNlbGVjdC1idG46aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5wcm9qZWN0cy1zaWRlYmFyLWxpc3Qge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ucHJvamVjdC1saXN0LWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLnByb2plY3QtbGlzdC1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLnByb2plY3QtbGlzdC1pdGVtLnNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi5wcm9qZWN0LWljb24ge1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4ucHJvamVjdC1uYW1lIHtcclxuXHRmbGV4OiAxO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLnByb2plY3QtY291bnQge1xyXG5cdG1hcmdpbi1sZWZ0OiA4cHg7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcblx0cGFkZGluZzogMXB4IDZweDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLCBjb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi8qIFByb2dyZXNzIGNvdW50IHN0eWxpbmcgd2hlbiBzaG93aW5nIGNvbXBsZXRlZC90b3RhbCAqL1xyXG4ucHJvamVjdC1jb3VudC5wYXJ0aWFsbHktY29tcGxldGVkIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzKTtcclxufVxyXG5cclxuLnByb2plY3QtY291bnQuYWxsLWNvbXBsZXRlZCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4ucHJvamVjdC1jb3VudC5oYXMtcHJvZ3Jlc3Mge1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxufVxyXG5cclxuLyogU2VsZWN0ZWQgc3RhdGUgb3ZlcnJpZGVzICovXHJcbi5wcm9qZWN0LWxpc3QtaXRlbS5zZWxlY3RlZCAucHJvamVjdC1jb3VudCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLnByb2plY3QtbGlzdC1pdGVtLnNlbGVjdGVkIC5wcm9qZWN0LWNvdW50LmFsbC1jb21wbGV0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcclxufVxyXG5cclxuLnByb2plY3RzLXRhc2staGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKSB2YXIoLS1zaXplLTQtNCk7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRtaW4taGVpZ2h0OiB2YXIoLS1zaXplLTQtMTApO1xyXG59XHJcblxyXG4ucHJvamVjdHMtaGVhZGVyLW1haW4tY29udGVudCB7XHJcblx0ZmxleDogMTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5wcm9qZWN0cy1oZWFkZXItdG9wLXJvdyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5wcm9qZWN0cy1oZWFkZXItdG9wLXJpZ2h0IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi8qIFByb2dyZXNzIGJhciBzdHlsZXMgZm9yIFByb2plY3RzIHZpZXcgKi9cclxuLnByb2plY3RzLWhlYWRlci1wcm9ncmVzcyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogNnB4O1xyXG5cdG1hcmdpbi10b3A6IDRweDtcclxufVxyXG5cclxuLyogQWRqdXN0IHRoZSBleGlzdGluZyBwcm9ncmVzcyBiYXIgc3R5bGVzIHdoZW4gdXNlZCBpbiBwcm9qZWN0cyB2aWV3ICovXHJcbi5wcm9qZWN0cy1oZWFkZXItcHJvZ3Jlc3MgLmNtLXRhc2stcHJvZ3Jlc3MtYmFyIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogOHB4O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ucHJvamVjdHMtaGVhZGVyLXByb2dyZXNzIC5wcm9ncmVzcy1iYXItaW5saW5lLWJhY2tncm91bmQge1xyXG5cdGZsZXg6IDE7XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ucHJvamVjdHMtaGVhZGVyLXByb2dyZXNzIC5wcm9ncmVzcy1zdGF0dXMge1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5wcm9qZWN0cy10YXNrLXRpdGxlIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGZvbnQtc2l6ZTogMTZweDtcclxufVxyXG5cclxuLnByb2plY3RzLXRhc2stY291bnQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnByb2plY3RzLXRhc2stbGlzdCB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG59XHJcblxyXG4ucHJvamVjdHMtZW1wdHktc3RhdGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRwYWRkaW5nOiAxNnB4O1xyXG59XHJcblxyXG4vKiBQcm9qZWN0cyBWaWV3IC0gTW9iaWxlICovXHJcbi5pcy1waG9uZSAucHJvamVjdHMtbGVmdC1jb2x1bW4ge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiAwO1xyXG5cdHRvcDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0ei1pbmRleDogMTA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XHJcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnByb2plY3RzLWxlZnQtY29sdW1uLmlzLXZpc2libGUge1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxufVxyXG5cclxuLmlzLXBob25lIC5wcm9qZWN0cy1zaWRlYmFyLXRvZ2dsZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnByb2plY3RzLXNpZGViYXItY2xvc2Uge1xyXG5cdC0taWNvbi1zaXplOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHJpZ2h0OiAxMHB4O1xyXG5cdHotaW5kZXg6IDE1O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLyogQWRkIG92ZXJsYXkgd2hlbiBsZWZ0IGNvbHVtbiBpcyB2aXNpYmxlIG9uIG1vYmlsZSAqL1xyXG4uaXMtcGhvbmUgLnByb2plY3RzLWNvbnRhaW5lcjpoYXMoLnByb2plY3RzLWxlZnQtY29sdW1uLmlzLXZpc2libGUpOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWNvdmVyKTtcclxuXHRvcGFjaXR5OiAwLjU7XHJcblx0ei1pbmRleDogNTtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi8qIEFkZCBwb3NpdGlvbiByZWxhdGl2ZSB0byBjb250YWluZXIgZm9yIGFic29sdXRlIHBvc2l0aW9uaW5nIGNvbnRleHQgKi9cclxuLmlzLXBob25lIC5wcm9qZWN0cy1jb250YWluZXIge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnByb2plY3RzLXNpZGViYXItaGVhZGVyOmhhcygucHJvamVjdHMtc2lkZWJhci1jbG9zZSkge1xyXG5cdHBhZGRpbmctcmlnaHQ6IHZhcigtLXNpemUtNC0xMik7XHJcbn1cclxuXHJcbi8qIFByb2plY3QgaW5mbyBwb3BvdmVyIHN0eWxpbmcgKi9cclxuLnRnLXByb2plY3QtcG9wb3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpO1xyXG5cdHBhZGRpbmc6IDEwcHggMTJweDtcclxuXHRtYXgtd2lkdGg6IDUyMHB4O1xyXG5cdG1heC1oZWlnaHQ6IDYwdmg7XHJcblx0b3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuXHJcbi50Zy1wcm9qZWN0LXByb3BzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiA2cHg7XHJcbn1cclxuXHJcbi8qIEVhY2ggcm93OiBrZXkgb24gdGhlIGxlZnQsIHZhbHVlIG9uIHRoZSByaWdodCAqL1xyXG4udGctcHJvamVjdC1wcm9wcyA+IGRpdiB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCg5MHB4LCAxNjBweCkgMWZyO1xyXG5cdGFsaWduLWl0ZW1zOiBzdGFydDtcclxuXHRjb2x1bW4tZ2FwOiAxMHB4O1xyXG5cdHBhZGRpbmc6IDJweCAwO1xyXG59XHJcblxyXG4vKiBLZXkgY2VsbCAqL1xyXG4udGctcHJvamVjdC1wcm9wcyA+IGRpdiA+IGRpdjpmaXJzdC1jaGlsZCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRsaW5lLWhlaWdodDogMS4zO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLyogVmFsdWUgY2VsbCAqL1xyXG4udGctcHJvamVjdC1wcm9wcyA+IGRpdiA+IGRpdjpsYXN0LWNoaWxkIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcblx0d2hpdGUtc3BhY2U6IHByZS13cmFwO1xyXG5cdHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbn1cclxuXHJcbi8qIEluZm8gYnV0dG9uIHBvbGlzaCAqL1xyXG4ucHJvamVjdHMtcHJvcHMtYnRuIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiB2YXIoLS1pY29uLXNpemUsIDI0cHgpO1xyXG5cdGhlaWdodDogdmFyKC0taWNvbi1zaXplLCAyNHB4KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxufVxyXG4ucHJvamVjdHMtcHJvcHMtYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcbiIsICIvKipcclxuICogUHJvamVjdCBUcmVlIFZpZXcgU3R5bGVzXHJcbiAqL1xyXG5cclxuOnJvb3Qge1xyXG5cdC8qIERlZmF1bHQgdHJlZSBpbmRlbnRhdGlvbiBzaXplIHBlciBsZXZlbCAqL1xyXG5cdC0tdHJlZS1pbmRlbnQtc2l6ZTogMS41cmVtO1xyXG5cdC8qIEd1aWRlIGxpbmUgY29sb3IgKi9cclxuXHQtLXRyZWUtZ3VpZGUtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLyogQ29udGFpbmVyICovXHJcbi5wcm9qZWN0LXRyZWUtY29udGFpbmVyIHtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0b3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuXHJcbi5wcm9qZWN0LXRyZWUge1xyXG5cdHBhZGRpbmc6IDAuNXJlbSAwO1xyXG59XHJcblxyXG4vKiBUcmVlIEl0ZW0gQmFzZSAqL1xyXG4ucHJvamVjdC10cmVlLWl0ZW0ge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxuXHQtLXRyZWUtbGV2ZWw6IDA7IC8qIERlZmF1bHQgbGV2ZWwsIHdpbGwgYmUgb3ZlcnJpZGRlbiBieSBpbmxpbmUgc3R5bGUgKi9cclxufVxyXG5cclxuLnByb2plY3QtdHJlZS1pdGVtLWNvbnRlbnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiA4cHg7XHJcblx0cGFkZGluZy1sZWZ0OiBjYWxjKGNhbGModmFyKC0tdHJlZS1sZXZlbCkgLSAxKSAqIHZhcigtLXRyZWUtaW5kZW50LXNpemUpKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS1jb250ZW50OmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLyogU2VsZWN0ZWQgU3RhdGUgKi9cclxuLnByb2plY3QtdHJlZS1pdGVtLmlzLXNlbGVjdGVkID4gLnByb2plY3QtdHJlZS1pdGVtLWNvbnRlbnQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcclxufVxyXG5cclxuLyogVG9nZ2xlIEJ1dHRvbiAqL1xyXG4ucHJvamVjdC10cmVlLWl0ZW0tdG9nZ2xlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDEuNXJlbTtcclxuXHRoZWlnaHQ6IDEuNXJlbTtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBlYXNlO1xyXG59XHJcblxyXG4ucHJvamVjdC10cmVlLWl0ZW0tdG9nZ2xlOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ucHJvamVjdC10cmVlLWl0ZW0tdG9nZ2xlIHN2ZyB7XHJcblx0d2lkdGg6IDAuODc1cmVtO1xyXG5cdGhlaWdodDogMC44NzVyZW07XHJcbn1cclxuXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS10b2dnbGUtc3BhY2VyIHtcclxuXHR3aWR0aDogMS41cmVtO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4vKiBJY29uICovXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS1pY29uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDEuMjVyZW07XHJcblx0aGVpZ2h0OiAxLjI1cmVtO1xyXG5cdG1hcmdpbi1yaWdodDogMC41cmVtO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogQ29udGVudCBXcmFwcGVyICovXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS1jb250ZW50LXdyYXBwZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0ZmxleDogMTtcclxuXHRtaW4td2lkdGg6IDA7XHJcblx0Z2FwOiAwLjVyZW07XHJcbn1cclxuXHJcbi8qIFByb2plY3QgTmFtZSAqL1xyXG4ucHJvamVjdC10cmVlLWl0ZW0tbmFtZSB7XHJcblx0ZmxleDogMTtcclxuXHRtaW4td2lkdGg6IDA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4vKiBUYXNrIENvdW50cyAqL1xyXG4ucHJvamVjdC10cmVlLWl0ZW0tY291bnRzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAwLjI1cmVtO1xyXG59XHJcblxyXG4ucHJvamVjdC10cmVlLWl0ZW0tY291bnQtZGlyZWN0LFxyXG4ucHJvamVjdC10cmVlLWl0ZW0tY291bnQtdG90YWwge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0bWluLXdpZHRoOiAxLjI1cmVtO1xyXG5cdGhlaWdodDogMS4yNXJlbTtcclxuXHRwYWRkaW5nOiAwIDAuMjVyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4ucHJvamVjdC10cmVlLWl0ZW0tY291bnQtZGlyZWN0IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLCBjb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS1jb3VudC10b3RhbCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLCBjb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi8qIFByb2dyZXNzIGNvdW50IHN0eWxpbmcgZm9yIHRyZWUgdmlldyAqL1xyXG4ucHJvamVjdC10cmVlLWl0ZW0tY291bnQtZGlyZWN0LnBhcnRpYWxseS1jb21wbGV0ZWQsXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS1jb3VudC10b3RhbC5wYXJ0aWFsbHktY29tcGxldGVkIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzKTtcclxufVxyXG5cclxuLnByb2plY3QtdHJlZS1pdGVtLWNvdW50LWRpcmVjdC5hbGwtY29tcGxldGVkLFxyXG4ucHJvamVjdC10cmVlLWl0ZW0tY291bnQtdG90YWwuYWxsLWNvbXBsZXRlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtc3VjY2Vzcyk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4vKiBTZWxlY3RlZCBzdGF0ZSBmb3IgY291bnQgYmFkZ2VzIGluIHRyZWUgKi9cclxuLnByb2plY3QtdHJlZS1pdGVtLmlzLXNlbGVjdGVkIC5wcm9qZWN0LXRyZWUtaXRlbS1jb3VudC1kaXJlY3QuYWxsLWNvbXBsZXRlZCxcclxuLnByb2plY3QtdHJlZS1pdGVtLmlzLXNlbGVjdGVkIC5wcm9qZWN0LXRyZWUtaXRlbS1jb3VudC10b3RhbC5hbGwtY29tcGxldGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1zdWNjZXNzKTtcclxuXHRvcGFjaXR5OiAwLjk7XHJcbn1cclxuXHJcbi8qIENoaWxkcmVuIENvbnRhaW5lciAqL1xyXG4ucHJvamVjdC10cmVlLWNoaWxkcmVuIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi8qIFRyZWUgZ3VpZGUgbGluZXMgKG9wdGlvbmFsKSAqL1xyXG4ucHJvamVjdC10cmVlLWl0ZW1bZGF0YS1sZXZlbF06bm90KFtkYXRhLWxldmVsPVwiMFwiXSkgPiAucHJvamVjdC10cmVlLWl0ZW0tY29udGVudDo6YmVmb3JlIHtcclxuXHRjb250ZW50OiAnJztcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogY2FsYygwLjVyZW0gKyAodmFyKC0tdHJlZS1sZXZlbCkgLSAxKSAqIHZhcigtLXRyZWUtaW5kZW50LXNpemUpICsgMC43NXJlbSk7XHJcblx0dG9wOiAwO1xyXG5cdGJvdHRvbTogMDtcclxuXHR3aWR0aDogMXB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRyZWUtZ3VpZGUtY29sb3IpO1xyXG5cdG9wYWNpdHk6IDAuMztcclxufVxyXG5cclxuLnByb2plY3QtdHJlZS1pdGVtLWNoaWxkcmVuIHtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4ucHJvamVjdC10cmVlLWl0ZW0tY2hpbGRyZW46bm90KC5pcy1leHBhbmRlZCkge1xyXG5cdG1heC1oZWlnaHQ6IDA7XHJcbn1cclxuXHJcbi8qIEVtcHR5IFN0YXRlICovXHJcbi5wcm9qZWN0LXRyZWUtZW1wdHkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAycmVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcblxyXG4vKiBWaWV3IFRvZ2dsZSBCdXR0b24gKi9cclxuLnByb2plY3RzLXZpZXctdG9nZ2xlLWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiAxLjc1cmVtO1xyXG5cdGhlaWdodDogMS43NXJlbTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTtcclxufVxyXG5cclxuLnByb2plY3RzLXZpZXctdG9nZ2xlLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnByb2plY3RzLXZpZXctdG9nZ2xlLWJ0biBzdmcge1xyXG5cdHdpZHRoOiAxcmVtO1xyXG5cdGhlaWdodDogMXJlbTtcclxufVxyXG5cclxuLyogTXVsdGktc2VsZWN0IE1vZGUgSW5kaWNhdG9yICovXHJcbi5wcm9qZWN0LXRyZWUtY29udGFpbmVyLm11bHRpLXNlbGVjdC1tb2RlIC5wcm9qZWN0LXRyZWUtaXRlbS1jb250ZW50IHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5wcm9qZWN0LXRyZWUtY29udGFpbmVyLm11bHRpLXNlbGVjdC1tb2RlIC5wcm9qZWN0LXRyZWUtaXRlbS1jb250ZW50OjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6ICcnO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiAwLjI1cmVtO1xyXG5cdHRvcDogNTAlO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuXHR3aWR0aDogMC44NzVyZW07XHJcblx0aGVpZ2h0OiAwLjg3NXJlbTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG59XHJcblxyXG4ucHJvamVjdC10cmVlLWNvbnRhaW5lci5tdWx0aS1zZWxlY3QtbW9kZSAucHJvamVjdC10cmVlLWl0ZW0uaXMtc2VsZWN0ZWQgLnByb2plY3QtdHJlZS1pdGVtLWNvbnRlbnQ6OmJlZm9yZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi5wcm9qZWN0LXRyZWUtY29udGFpbmVyLm11bHRpLXNlbGVjdC1tb2RlIC5wcm9qZWN0LXRyZWUtaXRlbS5pcy1zZWxlY3RlZCAucHJvamVjdC10cmVlLWl0ZW0tY29udGVudDo6YWZ0ZXIge1xyXG5cdGNvbnRlbnQ6ICdcdTI3MTMnO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiAwLjI1cmVtO1xyXG5cdHRvcDogNTAlO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuXHR3aWR0aDogMC44NzVyZW07XHJcblx0aGVpZ2h0OiAwLjg3NXJlbTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRmb250LXNpemU6IDAuNjI1cmVtO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4vKiBEYXJrIFRoZW1lIEFkanVzdG1lbnRzICovXHJcbi50aGVtZS1kYXJrIC5wcm9qZWN0LXRyZWUtaXRlbS1jb3VudC1kaXJlY3Qge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcclxufVxyXG5cclxuLnRoZW1lLWRhcmsgLnByb2plY3QtdHJlZS1pdGVtLWNvdW50LXRvdGFsIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0LnByb2plY3QtdHJlZS1pdGVtLWNvbnRlbnQge1xyXG5cdFx0cGFkZGluZzogMC4zNzVyZW0gMC41cmVtO1xyXG5cdH1cclxufVxyXG5cclxuLyogQW5pbWF0aW9uIGZvciB0cmVlIGV4cGFuc2lvbiAqL1xyXG5Aa2V5ZnJhbWVzIHNsaWRlRG93biB7XHJcblx0ZnJvbSB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjVyZW0pO1xyXG5cdH1cclxuXHR0byB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG5cdH1cclxufVxyXG5cclxuLnByb2plY3QtdHJlZS1pdGVtLWNoaWxkcmVuID4gLnByb2plY3QtdHJlZS1pdGVtIHtcclxuXHRhbmltYXRpb246IHNsaWRlRG93biAwLjE1cyBlYXNlO1xyXG59XHJcbiIsICIvKiBQcm9qZWN0cyBWaWV3IFN0eWxlcyAqL1xyXG4ucmV2aWV3LWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ucmV2aWV3LWNvbnRlbnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5yZXZpZXctbGVmdC1jb2x1bW4ge1xyXG5cdHdpZHRoOiAyNTBweDtcclxuXHRtaW4td2lkdGg6IDIwMHB4O1xyXG5cdG1heC13aWR0aDogMzAwcHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnJldmlldy1sZWZ0LWNvbHVtbiB7XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ucmV2aWV3LXJpZ2h0LWNvbHVtbiB7XHJcblx0ZmxleDogMTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnJldmlldy1zaWRlYmFyLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtMTApO1xyXG59XHJcblxyXG4ucmV2aWV3LXNpZGViYXItdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG59XHJcblxyXG4ucmV2aWV3LW11bHRpLXNlbGVjdC1idG4ge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLnJldmlldy1tdWx0aS1zZWxlY3QtYnRuOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ucmV2aWV3LXNpZGViYXItbGlzdCB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLyogUHJvamVjdCBncm91cCBoZWFkZXJzICovXHJcbi5yZXZpZXctcHJvamVjdHMtZ3JvdXAtaGVhZGVyIHtcclxuXHRmb250LXNpemU6IDEwcHg7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRwYWRkaW5nOiA0cHggOHB4IDRweDtcclxuXHRtYXJnaW4tdG9wOiAxMnB4O1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjVweDtcclxufVxyXG5cclxuLnJldmlldy1wcm9qZWN0cy1ncm91cC1oZWFkZXI6Zmlyc3QtY2hpbGQge1xyXG5cdG1hcmdpbi10b3A6IDRweDtcclxufVxyXG5cclxuLyogUHJvamVjdCBpdGVtcyBpbiB0aGUgc2lkZWJhciAqL1xyXG4ucmV2aWV3LXByb2plY3QtaXRlbSB7XHJcblx0LS1pY29uLXNpemU6IHZhcigtLXNpemUtNC00KTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogNHB4IDhweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdG1hcmdpbi1ib3R0b206IDJweDtcclxufVxyXG5cclxuLnJldmlldy1wcm9qZWN0LWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4ucmV2aWV3LXByb2plY3QtaXRlbS5zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUpO1xyXG59XHJcblxyXG4vKiBQcm9qZWN0cyB3aXRoIHJldmlldyBzZXR0aW5ncyAqL1xyXG4ucmV2aWV3LXByb2plY3QtaXRlbS5oYXMtcmV2aWV3LXNldHRpbmdzIC5yZXZpZXctcHJvamVjdC1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG59XHJcblxyXG4ucmV2aWV3LXByb2plY3QtaXRlbS5oYXMtcmV2aWV3LXNldHRpbmdzIC5yZXZpZXctcHJvamVjdC1uYW1lIHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4vKiBQcm9qZWN0cyB3aXRob3V0IHJldmlldyBzZXR0aW5ncyAqL1xyXG4ucmV2aWV3LXByb2plY3QtaXRlbTpub3QoLmhhcy1yZXZpZXctc2V0dGluZ3MpIC5yZXZpZXctcHJvamVjdC1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi5yZXZpZXctcHJvamVjdC1pY29uIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDhweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5yZXZpZXctcHJvamVjdC1uYW1lIHtcclxuXHRmbGV4OiAxO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLnJldmlldy10YXNrLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC00KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnJldmlldy10YXNrLWhlYWRlciB7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxufVxyXG5cclxuLnJldmlldy1oZWFkZXItY29udGVudCBoMyB7XHJcblx0bWFyZ2luOiAwIDAgOHB4IDA7XHJcblx0cGFkZGluZzogMDtcclxufVxyXG5cclxuLnJldmlldy1pbmZvIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi5yZXZpZXctc2VwYXJhdG9yIHtcclxuXHRtYXJnaW46IDAgOHB4O1xyXG59XHJcblxyXG4ucmV2aWV3LWZyZXF1ZW5jeSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLnJldmlldy1mcmVxdWVuY3k6aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbn1cclxuXHJcbi5yZXZpZXctbGFzdC1kYXRlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ucmV2aWV3LW5vLXNldHRpbmdzIHtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbi8qIEZpbHRlciBpbmZvcm1hdGlvbiAqL1xyXG4ucmV2aWV3LWZpbHRlci1pbmZvIHtcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdHBhZGRpbmc6IDZweCAxMHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC1zaXplOiAwLjg1ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG59XHJcblxyXG4ucmV2aWV3LWZpbHRlci10b2dnbGUge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdG1hcmdpbi1sZWZ0OiA1cHg7XHJcbn1cclxuXHJcbi5yZXZpZXctZmlsdGVyLXRvZ2dsZTpob3ZlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLnJldmlldy10YXNrLWxpc3Qge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5yZXZpZXctZW1wdHktc3RhdGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRwYWRkaW5nOiAxNnB4O1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLyogUmV2aWV3IGJ1dHRvbnMgKi9cclxuLnJldmlldy1idXR0b24tY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAxMnB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG59XHJcblxyXG4ucmV2aWV3LWNvbXBsZXRlLWJ0bixcclxuLnJldmlldy1jb25maWd1cmUtYnRuIHtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxufVxyXG5cclxuLnJldmlldy1jb21wbGV0ZS1idG4ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi5yZXZpZXctY29tcGxldGUtYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG59XHJcblxyXG4ucmV2aWV3LWNvbmZpZ3VyZS1idG4ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnJldmlldy1jb25maWd1cmUtYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ucmV2aWV3LWVkaXQtYnRuIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQtaG92ZXIpO1xyXG5cdG1hcmdpbi1sZWZ0OiA4cHg7XHJcbn1cclxuXHJcbi5yZXZpZXctZWRpdC1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIFJldmlldyBDb25maWd1cmUgTW9kYWwgKi9cclxuLnJldmlldy1tb2RhbC10aXRsZSB7XHJcblx0bWFyZ2luLXRvcDogMDtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdGZvbnQtc2l6ZTogMS41ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG4ucmV2aWV3LW1vZGFsLWZvcm0ge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5yZXZpZXctbW9kYWwtZmllbGQge1xyXG5cdG1hcmdpbi1ib3R0b206IDE2cHg7XHJcbn1cclxuXHJcbi5yZXZpZXctbW9kYWwtbGFiZWwge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0bWFyZ2luLWJvdHRvbTogNHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5yZXZpZXctbW9kYWwtZGVzY3JpcHRpb24ge1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxufVxyXG5cclxuLnJldmlldy1tb2RhbC1zZWxlY3Qge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG5cclxuLnJldmlldy1tb2RhbC1jdXN0b20tZnJlcXVlbmN5IHtcclxuXHRtYXJnaW4tdG9wOiA4cHg7XHJcbn1cclxuXHJcbi5yZXZpZXctbW9kYWwtaW5wdXQge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHBhZGRpbmc6IDhweDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcbn1cclxuXHJcbi5yZXZpZXctbW9kYWwtbGFzdC1yZXZpZXdlZCB7XHJcblx0cGFkZGluZzogOHB4O1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcbn1cclxuXHJcbi5yZXZpZXctbW9kYWwtYnV0dG9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdG1hcmdpbi10b3A6IDI0cHg7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRwYWRkaW5nLXRvcDogMTZweDtcclxufVxyXG5cclxuLnJldmlldy1tb2RhbC1idXR0b24ge1xyXG5cdHBhZGRpbmc6IDhweCAxNnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnJldmlldy1tb2RhbC1idXR0b24tY2FuY2VsIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG59XHJcblxyXG4ucmV2aWV3LW1vZGFsLWJ1dHRvbi1jYW5jZWw6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5yZXZpZXctbW9kYWwtYnV0dG9uLXNhdmUge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLnJldmlldy1tb2RhbC1idXR0b24tc2F2ZTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLyogUmV2aWV3IFZpZXcgLSBNb2JpbGUgKi9cclxuLmlzLXBob25lIC5yZXZpZXctY29udGFpbmVyIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmlzLXBob25lIC5yZXZpZXctbGVmdC1jb2x1bW4ge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiAwO1xyXG5cdHRvcDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0ei1pbmRleDogMTA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XHJcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnJldmlldy1sZWZ0LWNvbHVtbi5pcy12aXNpYmxlIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAucmV2aWV3LXNpZGViYXItdG9nZ2xlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAucmV2aWV3LXNpZGViYXItY2xvc2Uge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IHZhcigtLXNpemUtMi0yKTtcclxuXHRyaWdodDogMTBweDtcclxuXHR6LWluZGV4OiAxNTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIEFkZCBvdmVybGF5IHdoZW4gbGVmdCBjb2x1bW4gaXMgdmlzaWJsZSBvbiBtb2JpbGUgKi9cclxuLmlzLXBob25lIC5yZXZpZXctY29udGFpbmVyOmhhcygucmV2aWV3LWxlZnQtY29sdW1uLmlzLXZpc2libGUpOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWNvdmVyKTtcclxuXHRvcGFjaXR5OiAwLjU7XHJcblx0ei1pbmRleDogNTtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbn1cclxuIiwgIi50YXNrLXNpZGViYXIuY29sbGFwc2VkIHtcclxuXHR3aWR0aDogNDhweDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ucGFuZWwtdG9nZ2xlLWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0b3BhY2l0eTogMC42O1xyXG5cclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnBhbmVsLXRvZ2dsZS1idG46aG92ZXIge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi50YXNrLXNpZGViYXIuY29sbGFwc2VkIC5zaWRlYmFyLW5hdiB7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLyogU2lkZWJhciBOYXZpZ2F0aW9uICovXHJcbi5zaWRlYmFyLW5hdiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdHBhZGRpbmc6IDIwcHggMCAxMHB4IDA7XHJcblx0Z2FwOiA1cHg7XHJcbn1cclxuXHJcbi5zaWRlYmFyLW5hdi1zcGFjZXIge1xyXG5cdGhlaWdodDogMXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRtYXJnaW46IDhweCAxNXB4O1xyXG5cdG9wYWNpdHk6IDAuNztcclxuXHRtYXJnaW4tdG9wOiBhdXRvO1xyXG59XHJcblxyXG4uc2lkZWJhci1uYXYtaXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDhweCAxNXB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0bWFyZ2luOiAwIDVweDtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnNpZGViYXItbmF2LWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlKTtcclxufVxyXG5cclxuLnNpZGViYXItbmF2LWl0ZW0uaXMtYWN0aXZlIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3ZlcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHQtLWljb24tY29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5uYXYtaXRlbS1pY29uIHtcclxuXHQtLWljb24tc2l6ZTogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm5hdi1pdGVtLWxhYmVsIHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLm5hdi1pdGVtLWxhYmVsLmhpZGRlbiB7XHJcblx0b3BhY2l0eTogMDtcclxuXHR3aWR0aDogMDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdG1hcmdpbjogMDtcclxufVxyXG5cclxuLnRhc2stc2lkZWJhci5jb2xsYXBzZWQgLnNpZGViYXItbmF2LWl0ZW0ge1xyXG5cdHBhZGRpbmc6IDhweCAxMHB4O1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiB2YXIoLS1zaXplLTQtOSk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblxyXG5cdHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZS1pbi1vdXQsIGZsZXgtc2hyaW5rIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi50YXNrLXNpZGViYXIuY29sbGFwc2VkIC5uYXYtaXRlbS1pY29uIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDA7XHJcbn1cclxuXHJcbi8qIENvbnRlbnQgU3R5bGVzICovXHJcbi50YXNrLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0bWluLXdpZHRoOiAwO1xyXG5cdHRyYW5zaXRpb246IG1hcmdpbiAwLjNzIGVhc2U7XHJcbn1cclxuXHJcbi50YXNrLXNpZGViYXIuY29sbGFwc2VkIC50YXNrLWNvbnRlbnQge1xyXG5cdG1hcmdpbi1sZWZ0OiAtMjAwcHg7XHJcblxyXG5cdHRyYW5zaXRpb246IG1hcmdpbiAwLjNzIGVhc2U7XHJcbn1cclxuXHJcbi8qIFByb2plY3QgVHJlZSAqL1xyXG4udGFzay1nZW5pdXMtdmlldyAucHJvamVjdC10cmVlIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMikgMDtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLnRyZWUtcm9vdCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAudGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogNnB4IDhweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdG1hcmdpbjogMCA1cHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLnRyZWUtaXRlbS5zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLWljb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMjBweDtcclxuXHRoZWlnaHQ6IDIwcHg7XHJcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLW5hbWUge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLWNvdW50IHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tbGVmdDogNXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdHBhZGRpbmc6IDFweCA2cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogMTBweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLnRyZWUtaXRlbS10b2dnbGUsXHJcbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW0taW5kZW50IHtcclxuXHR3aWR0aDogMjBweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0bWFyZ2luLXJpZ2h0OiA1cHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW0tdG9nZ2xlIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi8qIENvbnRlbnQgSGVhZGVyICovXHJcbi5jb250ZW50LWhlYWRlciB7XHJcblx0cGFkZGluZzogMTVweDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLnRhc2stY291bnQge1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdG1hcmdpbi1yaWdodDogMTBweDtcclxufVxyXG5cclxuLmZvY3VzLWZpbHRlciB7XHJcblx0bWFyZ2luLWxlZnQ6IDEwcHg7XHJcbn1cclxuXHJcbi8qIFRhc2tWaWV3IC0gT21uaUZvY3VzIFN0eWxlICovXHJcblxyXG4ud29ya3NwYWNlLWxlYWYtY29udGVudCAudGFzay1nZW5pdXMtdmlldyB7XHJcblx0cGFkZGluZzogMDtcclxufVxyXG5cclxuLyogTWFpbiBjb250YWluZXIgbGF5b3V0ICovXHJcbi50YXNrLWdlbml1cy1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vKiBMZWZ0IHNpZGViYXIgKi9cclxuLnRhc2stc2lkZWJhciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHJcblx0d2lkdGg6IDI0MHB4O1xyXG5cdHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZS1pbi1vdXQ7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4vKiBNYWluIGNvbnRlbnQgYXJlYSAqL1xyXG4udGFzay1jb250ZW50IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0ZmxleDogMTtcclxuXHRtaW4td2lkdGg6IDMwMHB4O1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vKiBOYXZpZ2F0aW9uIHNpZGViYXIgKi9cclxuLnRhc2stc2lkZWJhciAuc2lkZWJhci1uYXYge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRwYWRkaW5nOiA4cHggMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi8qIFByb2plY3QgdHJlZSAqL1xyXG4ucHJvamVjdC10cmVlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0cGFkZGluZzogOHB4IDA7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxufVxyXG5cclxuLnRyZWUtcm9vdCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogNHB4IDEycHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRtYXJnaW46IDJweCA4cHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLnRyZWUtaXRlbS5zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW0tdG9nZ2xlIHtcclxuXHR3aWR0aDogMTZweDtcclxuXHRoZWlnaHQ6IDE2cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1hcmdpbi1yaWdodDogNHB4O1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLWluZGVudCB7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG5cdG1hcmdpbi1yaWdodDogNHB4O1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLWljb24ge1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLW5hbWUge1xyXG5cdGZsZXg6IDE7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLWNvdW50IHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xyXG5cdHBhZGRpbmc6IDJweCA2cHg7XHJcblx0bWluLXdpZHRoOiAxNnB4O1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLnRyZWUtaXRlbS5leHBhbmRlZCA+IC50cmVlLWl0ZW0tY2hpbGRyZW4ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW0tY2hpbGRyZW4ge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRtYXJnaW4tbGVmdDogMTZweDtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyogQ29udGVudCBoZWFkZXIgKi9cclxuLnRhc2stZ2VuaXVzLXZpZXcgLmNvbnRlbnQtaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMTBweCAxNnB4O1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0bWluLWhlaWdodDogNTBweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLmNvbnRlbnQtdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogMS4yZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRtYXJnaW4tcmlnaHQ6IDEycHg7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQudGFzay1nZW5pdXMtdmlldyAuY29udGVudC10aXRsZSB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0LnRhc2stZ2VuaXVzLXZpZXcgLnRhc2stY291bnQge1xyXG5cdFx0ZmxleDogMTtcclxuXHR9XHJcblxyXG5cdC50YXNrLWdlbml1cy12aWV3IC5mb2N1cy1maWx0ZXIge1xyXG5cdFx0ZmxleDogMTtcclxuXHR9XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5jb250ZW50LWZpbHRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdG1hcmdpbi1yaWdodDogMTJweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLmZpbHRlci1pbnB1dCB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRwYWRkaW5nOiA0cHggOHB4O1xyXG5cdHdpZHRoOiAyMDBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAuZm9jdXMtYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1ub3JtYWwpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0cGFkZGluZzogNHB4IDEwcHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5mb2N1cy1idXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLmZvY3VzLWJ1dHRvbi5mb2N1c2VkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5tb2Qtcm9vdCAudGFzay1nZW5pdXMtYWN0aW9uLWJ0biB7XHJcblx0LS1pY29uLXNpemU6IDE2cHg7XHJcbn1cclxuXHJcbi5tb2QtbGVmdC1zcGxpdCAudGFzay1nZW5pdXMtYWN0aW9uLWJ0biB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLm1vZC1sZWZ0LXNwbGl0XHJcblx0LndvcmtzcGFjZS10YWItaGVhZGVyLXN0YXR1cy1jb250YWluZXI6aGFzKC50YXNrLWdlbml1cy1hY3Rpb24tYnRuKSB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLm1vZC1yaWdodC1zcGxpdFxyXG5cdC53b3Jrc3BhY2UtdGFiLWhlYWRlci1zdGF0dXMtY29udGFpbmVyOmhhcygudGFzay1nZW5pdXMtYWN0aW9uLWJ0bikge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC50YXNrLWVtcHR5LXN0YXRlLFxyXG4udGFzay1nZW5pdXMtdjItdmlldyAudGFzay1lbXB0eS1zdGF0ZSB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGZsZXg6IDE7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4ubW9kLXJvb3QgLnRhc2stZ2VuaXVzLXRhYi1oZWFkZXIge1xyXG5cdGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5AY29udGFpbmVyIChtYXgtd2lkdGg6IDEyMHB4KSB7XHJcblx0Lm1vZC1yb290IC50YXNrLWdlbml1cy1hY3Rpb24tYnRuIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG59XHJcblxyXG4udGFzay1zaWRlYmFyLmNvbGxhcHNlZCAuc2lkZWJhci1uYXYge1xyXG5cdG1heC13aWR0aDogNDVweDtcclxufVxyXG5cclxuLyogV29ya2Zsb3cgUXVpY2sgTW9kYWwgU3R5bGVzICovXHJcbi5xdWljay13b3JrZmxvdy1tb2RhbCB7XHJcblx0bWF4LXdpZHRoOiA2MDBweDtcclxuXHRtaW4taGVpZ2h0OiA0MDBweDtcclxufVxyXG5cclxuLndvcmtmbG93LXRlbXBsYXRlLXNlY3Rpb24ge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0cGFkZGluZzogMTVweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG59XHJcblxyXG4udGVtcGxhdGUtZGVzY3JpcHRpb24ge1xyXG5cdG1hcmdpbi10b3A6IDEwcHg7XHJcbn1cclxuXHJcbi50ZW1wbGF0ZS1kZXNjLXRleHQge1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctZm9ybS1zZWN0aW9uIHtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2VzLXByZXZpZXcge1xyXG5cdG1hcmdpbi10b3A6IDE1cHg7XHJcbn1cclxuXHJcbi5zdGFnZXMtcHJldmlldy1saXN0IHtcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG59XHJcblxyXG4uc3RhZ2UtcHJldmlldy1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdHBhZGRpbmc6IDhweCAxMnB4O1xyXG5cdG1hcmdpbjogNHB4IDA7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5zdGFnZS1pbmZvIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA4cHg7XHJcbn1cclxuXHJcbi5zdGFnZS1uYW1lIHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4uc3RhZ2UtdHlwZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi5zdGFnZS1hY3Rpb25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogNHB4O1xyXG59XHJcblxyXG4ubm8tc3RhZ2VzLW1lc3NhZ2Uge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdHBhZGRpbmc6IDIwcHg7XHJcblx0Ym9yZGVyOiAycHggZGFzaGVkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcblx0bWFyZ2luLXRvcDogMTBweDtcclxufVxyXG5cclxuLndvcmtmbG93LW1vZGFsLWJ1dHRvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRnYXA6IDEwcHg7XHJcblx0bWFyZ2luLXRvcDogMjBweDtcclxuXHRwYWRkaW5nLXRvcDogMTVweDtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4vKiBXb3JrZmxvdyBQcm9ncmVzcyBJbmRpY2F0b3IgU3R5bGVzICovXHJcbi53b3JrZmxvdy1wcm9ncmVzcy1pbmRpY2F0b3Ige1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG5cdHBhZGRpbmc6IDE1cHg7XHJcblx0bWFyZ2luOiAxMHB4IDA7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1wcm9ncmVzcy1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxufVxyXG5cclxuLndvcmtmbG93LW5hbWUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiAxLjFlbTtcclxufVxyXG5cclxuLndvcmtmbG93LXByb2dyZXNzLXRleHQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMTBweDtcclxuXHRtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG59XHJcblxyXG4ud29ya2Zsb3ctcHJvZ3Jlc3MtYmFyIHtcclxuXHRmbGV4OiAxO1xyXG5cdGhlaWdodDogOHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLndvcmtmbG93LXByb2dyZXNzLWZpbGwge1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZTtcclxufVxyXG5cclxuLndvcmtmbG93LXByb2dyZXNzLXBlcmNlbnRhZ2Uge1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRtaW4td2lkdGg6IDM1cHg7XHJcblx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS1saXN0IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiA4cHg7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdGdhcDogMTJweDtcclxuXHRwYWRkaW5nOiAxMHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLWl0ZW0uY29tcGxldGVkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLXN1Y2Nlc3MpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2UtaXRlbS5jdXJyZW50IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjY2VudCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLWl0ZW0ucGVuZGluZyB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRvcGFjaXR5OiAwLjc7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS1pY29uIHtcclxuXHR3aWR0aDogMjBweDtcclxuXHRoZWlnaHQ6IDIwcHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1hcmdpbi10b3A6IDJweDtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLWljb24uY29tcGxldGVkLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LXN1Y2Nlc3MpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2UtaWNvbi5jdXJyZW50LWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2UtaWNvbi5wZW5kaW5nLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS1uYW1lIHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdG1hcmdpbi1ib3R0b206IDJweDtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLXR5cGUge1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2UtbnVtYmVyIHtcclxuXHR3aWR0aDogMjRweDtcclxuXHRoZWlnaHQ6IDI0cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdG1hcmdpbi10b3A6IDJweDtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLWl0ZW0uY29tcGxldGVkIC53b3JrZmxvdy1zdGFnZS1udW1iZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtc3VjY2Vzcyk7XHJcblx0Y29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS1pdGVtLmN1cnJlbnQgLndvcmtmbG93LXN0YWdlLW51bWJlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3Vic3RhZ2UtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiA4cHg7XHJcblx0cGFkZGluZy1sZWZ0OiAxNnB4O1xyXG5cdGJvcmRlci1sZWZ0OiAycHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3Vic3RhZ2UtaXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogOHB4O1xyXG5cdHBhZGRpbmc6IDRweCAwO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3Vic3RhZ2UtaWNvbiB7XHJcblx0d2lkdGg6IDEycHg7XHJcblx0aGVpZ2h0OiAxMnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLndvcmtmbG93LXN1YnN0YWdlLW5hbWUge1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcbiIsICIvKiBzdHlsZXMvY2FsZW5kYXIvY2FsZW5kYXIuY3NzICovXHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIge1xyXG5cdGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0aGVpZ2h0OiAxMDAlOyAvKiBPciBhZGp1c3QgYXMgbmVlZGVkICovXHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRmbGV4LWdyb3c6IDE7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0zKSB2YXIoLS1zaXplLTQtNCk7IC8qIFVzZSBPYnNpZGlhbiB2YXJpYWJsZXMgKi9cclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGZsZXgtc2hyaW5rOiAwOyAvKiBQcmV2ZW50IGhlYWRlciBmcm9tIHNocmlua2luZyAqL1xyXG5cdG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItaGVhZGVyIGJ1dHRvbiB7XHJcblx0bWFyZ2luOiAwIHZhcigtLXNpemUtNC0xKTtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1uYXYsXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItdmlldy1zd2l0Y2hlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1uYXYgYnV0dG9uIHtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblxyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItdmlldy1zd2l0Y2hlciBidXR0b24ge1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXZpZXctc3dpdGNoZXIgYnV0dG9uOm5vdCguaXMtYWN0aXZlKSxcclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1uYXYgYnV0dG9uOm5vdCguaXMtYWN0aXZlKSB7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXhzKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItY3VycmVudC1kYXRlIHtcclxuXHRmb250LXdlaWdodDogdmFyKC0tZm9udC1zZW1pYm9sZCk7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLWxhcmdlKTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0ZmxleC1ncm93OiAxOyAvKiBBbGxvdyBpdCB0byB0YWtlIHNwYWNlICovXHJcblxyXG5cdG1heC13aWR0aDogbWF4KDEyMHB4LCA0MCUpO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci12aWV3LXN3aXRjaGVyIGJ1dHRvbi5pcy1hY3RpdmUge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItdmlldy1jb250YWluZXIge1xyXG5cdGZsZXgtZ3JvdzogMTsgLyogQWxsb3cgdmlldyB0byB0YWtlIHJlbWFpbmluZyBzcGFjZSAqL1xyXG5cdG92ZXJmbG93LXk6IGF1dG87IC8qIEVuYWJsZSBzY3JvbGxpbmcgaWYgY29udGVudCBvdmVyZmxvd3MgKi9cclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlOyAvKiBOZWVkZWQgZm9yIGFic29sdXRlIHBvc2l0aW9uaW5nIG9mIGV2ZW50cyAqL1xyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbi8qIEJhc2ljIFZpZXcgU3R5bGVzIChQbGFjZWhvbGRlcnMpICovXHJcbi8qIC0tLSBNb250aCBWaWV3IFNwZWNpZmljIFN0eWxlcyAtLS0gKi9cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci13ZWVrZGF5LWhlYWRlciB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg3LCAxZnIpO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMSkgMDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG1hcmdpbi1ib3R0b206IC0xcHg7IC8qIE92ZXJsYXAgd2l0aCBncmlkIGdhcCAqL1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsgLyogU2xpZ2h0IGRpc3RpbmN0aW9uICovXHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItd2Vla2RheSB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTEpO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXZpZXctY29udGFpbmVyLnZpZXctbW9udGgge1xyXG5cdHBhZGRpbmc6IDA7IC8qIFJlbW92ZSBwYWRkaW5nIGlmIGdyaWQgcHJvdmlkZXMgaXQgdmlhIGdhcCAqL1xyXG5cdC8qIFN0eWxlcyBtb3ZlZCB0byAuY2FsZW5kYXItbW9udGgtZ3JpZCAqL1xyXG59XHJcblxyXG4vKiBBZGQgdGhlIGdyaWQgc3R5bGVzIGRpcmVjdGx5IHRvIHRoZSBncmlkIGNvbnRhaW5lciBlbGVtZW50ICovXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItbW9udGgtZ3JpZCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg3LCAxZnIpO1xyXG5cdGdyaWQtYXV0by1yb3dzOiBtaW5tYXgoMTAwcHgsIGF1dG8pOyAvKiBHaXZlIHJvd3MgYSBtaW5pbXVtIGhlaWdodCAqL1xyXG5cdGdhcDogMXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTsgLyogR3JpZCBsaW5lcyAqL1xyXG5cclxuXHRoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWNlbGwge1xyXG5cdC8qIEV4YW1wbGUgc3R5bGUgZm9yIGEgZGF5IGNlbGwgaW4gbW9udGggdmlldyAqL1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdC8qIG1pbi1oZWlnaHQ6IDgwcHg7IC0gTGV0IGdyaWQtYXV0by1yb3dzIGhhbmRsZSBoZWlnaHQgKi9cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ZGlzcGxheTogZmxleDsgLyogVXNlIGZsZXhib3ggZm9yIGxheW91dCBpbnNpZGUgdGhlIGNlbGwgKi9cclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvKiBTdGFjayBkYXkgbnVtYmVyIGFuZCBldmVudHMgKi9cclxuXHRtaW4td2lkdGg6IDA7IC8qIFByZXZlbnQgY29udGVudCBmcm9tIGV4cGFuZGluZyB0aGUgY2VsbCB3aWR0aCBpbiB0aGUgZ3JpZCAqL1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWRheS1jZWxsOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiBoc2woXHJcblx0XHR2YXIoLS1jb2xvci1hY2NlbnQtaCksXHJcblx0XHR2YXIoLS1jb2xvci1hY2NlbnQtcyksXHJcblx0XHR2YXIoLS1jb2xvci1hY2NlbnQtbCksXHJcblx0XHQwLjhcclxuXHQpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWNlbGwuaXMtdG9kYXkge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCkgIWltcG9ydGFudDtcclxuXHRib3JkZXI6IDFweCBzb2xpZFxyXG5cdFx0aHNsKHZhcigtLWFjY2VudC1oKSwgdmFyKC0tYWNjZW50LXMpLCB2YXIoLS1hY2NlbnQtbCksIDAuNSk7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWNlbGwuaXMtdG9kYXkgLmNhbGVuZGFyLWRheS1udW1iZXIge1xyXG5cdGNvbG9yOiBoc2wodmFyKC0tYWNjZW50LWgpLCB2YXIoLS1hY2NlbnQtcyksIHZhcigtLWFjY2VudC1sKSwgMSk7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWhlYWRlciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMSk7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWNlbGw6bm90KC5pcy10b2RheSkge1xyXG5cdG9wYWNpdHk6IDAuNztcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktY2VsbC5pcy1vdGhlci1tb250aCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdG9wYWNpdHk6IDAuNztcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktY2VsbC5pcy13ZWVrZW5kIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoXHJcblx0XHQtLWJhY2tncm91bmQtc2Vjb25kYXJ5XHJcblx0KTsgLyogU2xpZ2h0bHkgZGlmZmVyZW50IGJhY2tncm91bmQgZm9yIHdlZWtlbmRzICovXHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LW51bWJlciB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdGZsZXgtc2hyaW5rOiAwOyAvKiBQcmV2ZW50IG51bWJlciBmcm9tIHNocmlua2luZyAqL1xyXG5cdGFsaWduLXNlbGY6IGZsZXgtZW5kOyAvKiBQb3NpdGlvbiB0byB0aGUgdG9wIHJpZ2h0ICovXHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZXZlbnRzLWNvbnRhaW5lciB7XHJcblx0ZmxleC1ncm93OiAxOyAvKiBBbGxvdyBldmVudHMgY29udGFpbmVyIHRvIGZpbGwgc3BhY2UgKi9cclxuXHRvdmVyZmxvdzogaGlkZGVuOyAvKiBIaWRlIGV2ZW50cyB0aGF0IG92ZXJmbG93IHRoZSBjZWxsIGhlaWdodCAqL1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1ldmVudCB7XHJcblx0LyogRXhhbXBsZSBzdHlsZSBmb3IgYW4gZXZlbnQgKi9cclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IDJweCA0cHg7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdG1hcmdpbi1ib3R0b206IDJweDtcclxuXHRtYXJnaW4tYm90dG9tOiAzcHg7IC8qIEluY3JlYXNlIHNwYWNpbmcgc2xpZ2h0bHkgKi9cclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGRpc3BsYXk6IGJsb2NrOyAvKiBFbnN1cmUgaXQgdGFrZXMgZnVsbCB3aWR0aCBhdmFpbGFibGUgKi9cclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1ldmVudDpoYXMoLnRhc2stbGlzdC1pdGVtLWNoZWNrYm94KSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lclxyXG5cdC5jYWxlbmRhci1ldmVudDpoYXMoLnRhc2stbGlzdC1pdGVtLWNoZWNrYm94KS5jYWxlbmRhci1ldmVudC13ZWVrLWFsbGRheSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyXHJcblx0LmNhbGVuZGFyLWV2ZW50OmhhcygudGFzay1saXN0LWl0ZW0tY2hlY2tib3gpLmNhbGVuZGFyLWV2ZW50LW1vbnRoIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1ldmVudDpob3ZlciB7XHJcblx0b3BhY2l0eTogMC44O1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50LmlzLWNvbXBsZXRlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKFxyXG5cdFx0LS1iYWNrZ3JvdW5kLW1vZGlmaWVyLXN1Y2Nlc3MtaG92ZXJcclxuXHQpOyAvKiBPciB1c2UgZ3JleS9zdHJpa2V0aHJvdWdoICovXHJcblx0dGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XHJcblx0b3BhY2l0eTogMC43O1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50LmlzLW11bHRpLWRheSB7XHJcblx0LyogQmFzaWMgc3R5bGUgZm9yIG11bHRpLWRheSwgbW9yZSBhZHZhbmNlZCBjb3VsZCByZW1vdmUgcm91bmRlZCBjb3JuZXJzICovXHJcbn1cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1ldmVudC5pcy1tdWx0aS1kYXkuaXMtc3RhcnQge1xyXG5cdC8qIE9wdGlvbmFsOiBzdHlsZSB0aGUgc3RhcnQgc2VnbWVudCBkaWZmZXJlbnRseSAqL1xyXG5cdC8qIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOyAqL1xyXG5cdC8qIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwOyAqL1xyXG59XHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZXZlbnQuaXMtbXVsdGktZGF5LmlzLWVuZCB7XHJcblx0LyogT3B0aW9uYWw6IHN0eWxlIHRoZSBlbmQgc2VnbWVudCBkaWZmZXJlbnRseSAqL1xyXG5cdC8qIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7ICovXHJcblx0LyogYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDsgKi9cclxufVxyXG5cclxuLyogQWRkIG1vcmUgc3BlY2lmaWMgc3R5bGVzIGZvciB3ZWVrLCBkYXksIGFnZW5kYSB2aWV3cyBhcyB0aGV5IGFyZSBpbXBsZW1lbnRlZCAqL1xyXG5cclxuLyogU3R5bGUgZm9yIG1vbnRoIHZpZXcgZXZlbnRzIHRvIGhhbmRsZSBvdmVyZmxvdyAqL1xyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50LmNhbGVuZGFyLWV2ZW50LW1vbnRoIHtcclxuXHQvKiBJbmhlcml0cyBiYXNlIC5jYWxlbmRhci1ldmVudCBzdHlsZXMgKi9cclxuXHQvKiBBZGQgb3ZlcmZsb3cgaGFuZGxpbmcgc2ltaWxhciB0byB3ZWVrLWFsbGRheSAqL1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRkaXNwbGF5OiBibG9jazsgLyogRW5zdXJlIGJsb2NrIGRpc3BsYXkgKi9cclxuXHR3aWR0aDogMTAwJTsgLyogRXhwbGljaXRseSBzZXQgd2lkdGggKi9cclxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiBJbmNsdWRlIHBhZGRpbmcvYm9yZGVyIGluIHdpZHRoICovXHJcbn1cclxuXHJcbi8qIC0tLSBEYXkgVmlldyBTcGVjaWZpYyBTdHlsZXMgLS0tICovXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItdmlldy1jb250YWluZXIudmlldy1kYXkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRwYWRkaW5nOiAwOyAvKiBSZW1vdmUgcGFkZGluZywgbWFuYWdlIGludGVybmFsbHkgKi9cclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci10aW1lbGluZS1zZWN0aW9uIHtcclxuXHRmbGV4LWdyb3c6IDE7XHJcblx0LyogcG9zaXRpb246IHJlbGF0aXZlOyAvKiBObyBsb25nZXIgbmVlZGVkIGZvciBhYnNvbHV0ZSBldmVudCBwb3NpdGlvbmluZyAqL1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7IC8qIEFkZCBib3JkZXIgdGhhdCB3YXMgb24gYWxsZGF5ICovXHJcblx0b3ZlcmZsb3cteTogYXV0bzsgLyogQWxsb3cgdGltZWxpbmUgdG8gc2Nyb2xsICovXHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXRpbWVsaW5lLWV2ZW50cy1jb250YWluZXIge1xyXG5cdC8qIFJlbW92ZSBhYnNvbHV0ZSBwb3NpdGlvbmluZyAqL1xyXG5cdC8qIHBvc2l0aW9uOiBhYnNvbHV0ZTsgKi9cclxuXHQvKiB0b3A6IDA7ICovXHJcblx0LyogbGVmdDogMDsgKi9cclxuXHQvKiByaWdodDogMDsgKi9cclxuXHQvKiBib3R0b206IDA7ICovXHJcblx0Lyogei1pbmRleDogMjsgKi9cclxuXHQvKiBSZW1vdmUgY2FsY3VsYXRlZCBoZWlnaHQgKi9cclxuXHQvKiBoZWlnaHQ6IGNhbGMoMjQgKiA0MHB4KTsgKi9cclxuXHJcblx0LyogQWRkIGZsZXggbGF5b3V0IGZvciB2ZXJ0aWNhbCBzdGFja2luZyAqL1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTsgLyogQWRkIHNwYWNpbmcgYmV0d2VlbiBldmVudHMgKi9cclxufVxyXG5cclxuLyogU3R5bGUgYWRqdXN0bWVudHMgZm9yIGV2ZW50cyBwcmV2aW91c2x5IHRpbWVkICovXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZXZlbnQtdGltZWQge1xyXG5cdC8qIFJlbW92ZSBhYnNvbHV0ZSBwb3NpdGlvbmluZyAqL1xyXG5cdC8qIHBvc2l0aW9uOiBhYnNvbHV0ZTsgKi9cclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0LyogQWRkIG1hcmdpbiBmb3Igc3BhY2luZyBpbiB0aGUgbmV3IGZsb3cgbGF5b3V0ICovXHJcblx0LyogVXNpbmcgZ2FwIG9uIHBhcmVudCBjb250YWluZXIgbm93ICovXHJcblx0LyogbWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpOyAqL1xyXG5cdHdpZHRoOiAxMDAlOyAvKiBFbnN1cmUgaXQgdGFrZXMgZnVsbCB3aWR0aCAqL1xyXG59XHJcblxyXG4vKiBLZWVwIGludGVybmFsIHN0eWxlcyAqL1xyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50LXRpbWUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHRwYWRkaW5nOiAxcHggM3B4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTsgLyogU2xpZ2h0IGJhY2tncm91bmQgZm9yIHRpbWUgKi9cclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1ldmVudC10aXRsZSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRwYWRkaW5nOiAycHggM3B4O1xyXG5cdGZsZXgtZ3JvdzogMTtcclxuXHQvKiBBbGxvdyB0ZXh0IHdyYXBwaW5nIHdpdGhpbiB0aGUgZXZlbnQgYm94ICovXHJcblx0d2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuXHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcblxyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0cGFkZGluZzogMnB4IDNweDtcclxuXHRmbGV4LWdyb3c6IDE7XHJcblx0d2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuXHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4vKiAtLS0gV2VlayBWaWV3IFNwZWNpZmljIFN0eWxlcyAtLS0gKi9cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci12aWV3LWNvbnRhaW5lci52aWV3LXdlZWsge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXdlZWstaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdC8qIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNTBweCByZXBlYXQoNywgMWZyKTsgKi8gLyogR3V0dGVyICsgNyBkYXlzIC0+IFJlbW92ZSBndXR0ZXIgKi9cclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg3LCAxZnIpOyAvKiBKdXN0IDcgZGF5cyAqL1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbWVkaXVtKTtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1oZWFkZXItY2VsbCB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTEpIDA7XHJcblx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1oZWFkZXItY2VsbDpmaXJzdC1jaGlsZCB7XHJcblx0Ym9yZGVyLWxlZnQ6IG5vbmU7XHJcbn1cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1oZWFkZXItY2VsbC5pcy10b2RheSAuY2FsZW5kYXItZGF5LW51bWJlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0d2lkdGg6IDEuNWVtO1xyXG5cdGhlaWdodDogMS41ZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNWVtO1xyXG5cdG1hcmdpbjogYXV0bztcclxuXHJcblx0bWFyZ2luOiBhdXRvO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXdlZWtkYXkge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LW51bWJlciB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcbn1cclxuXHJcbi8qIFVwZGF0ZWQgV2VlayBHcmlkIFNlY3Rpb24gKHdhcyAtYWxsZGF5LXNlY3Rpb24pICovXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItd2Vlay1ncmlkLXNlY3Rpb24ge1xyXG5cdC8qIFJlbmFtZWQgY2xhc3MgKi9cclxuXHRmbGV4LWdyb3c6IDE7IC8qIEFsbG93IHRoaXMgc2VjdGlvbiB0byBmaWxsIGF2YWlsYWJsZSB2ZXJ0aWNhbCBzcGFjZSAqL1xyXG5cdGRpc3BsYXk6IGZsZXg7IC8qIFVzZSBmbGV4IHRvIGVuc3VyZSBncmlkIGZpbGxzIGhlaWdodCAqL1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0b3ZlcmZsb3cteTogYXV0bzsgLyogQWRkIHNjcm9sbCBpZiBjb250ZW50IG92ZXJmbG93cyAqL1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7IC8qIE1hdGNoIG9sZCBzdHlsZSAqL1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXdlZWstZ3JpZCB7XHJcblx0LyogUmVuYW1lZCBjbGFzcyAqL1xyXG5cdGZsZXgtZ3JvdzogMTsgLyogQWxsb3cgZ3JpZCB0byBleHBhbmQgKi9cclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDcsIDFmcik7XHJcblx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnI7IC8qIE1ha2UgZ3JpZCBmaWxsIHRoZSBzZWN0aW9uIGhlaWdodCAqL1xyXG5cdGdhcDogMXB4OyAvKiBBZGQgZ2FwIGZvciBib3JkZXJzICovXHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpOyAvKiBHcmlkIGxpbmVzICovXHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTsgLyogQWRkIHRvcCBib3JkZXIgKi9cclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktY29sdW1uIHtcclxuXHQvKiBSZW5hbWVkIGNsYXNzICovXHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMSk7XHJcblx0LyogbWluLWhlaWdodDogNWVtOyAqLyAvKiBSZW1vdmUgZml4ZWQgbWluLWhlaWdodCwgbGV0IGNvbnRlbnQgZGljdGF0ZSAqL1xyXG5cdGJvcmRlci1sZWZ0OiBub25lOyAvKiBSZW1vdmUgcmVkdW5kYW50IGxlZnQgYm9yZGVyLCBnYXAgaGFuZGxlcyBsaW5lcyAqL1xyXG5cdGRpc3BsYXk6IGZsZXg7IC8qIFVzZSBmbGV4IGZvciB2ZXJ0aWNhbCBsYXlvdXQgKi9cclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTEpOyAvKiBTcGFjZSBiZXR3ZWVuIGV2ZW50cyAqL1xyXG5cdG92ZXJmbG93OiBoaWRkZW47IC8qIFByZXZlbnQgY29udGVudCBmcm9tIGV4cGFuZGluZyB0aGUgY29sdW1uICovXHJcblx0bWluLXdpZHRoOiAwOyAvKiBIZWxwIGdyaWQgaXRlbSBzaHJpbmsgcHJvcGVybHkgKi9cclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktY29sdW1uOmZpcnN0LWNoaWxkIHtcclxuXHQvKiBObyBzcGVjaWZpYyBmaXJzdC1jaGlsZCBib3JkZXIgbmVlZGVkIG5vdyAqL1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWRheS1jb2x1bW4uaXMtd2Vla2VuZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4vKiBBZGp1c3QgZ3JpZCBsYXlvdXRzIHdoZW4gd2Vla2VuZHMgYXJlIGhpZGRlbiAqL1xyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXZpZXctY29udGFpbmVyLmhpZGUtd2Vla2VuZHMgLmNhbGVuZGFyLXdlZWtkYXktaGVhZGVyIHtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpICFpbXBvcnRhbnQ7IC8qIDUgY29sdW1ucyBpbnN0ZWFkIG9mIDcgd2hlbiB3ZWVrZW5kcyBoaWRkZW4gKi9cclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci12aWV3LWNvbnRhaW5lci5oaWRlLXdlZWtlbmRzIC5jYWxlbmRhci1tb250aC1ncmlkIHtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpICFpbXBvcnRhbnQ7IC8qIDUgY29sdW1ucyBpbnN0ZWFkIG9mIDcgd2hlbiB3ZWVrZW5kcyBoaWRkZW4gKi9cclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci12aWV3LWNvbnRhaW5lci5oaWRlLXdlZWtlbmRzIC5jYWxlbmRhci13ZWVrLWhlYWRlciB7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKSAhaW1wb3J0YW50OyAvKiA1IGNvbHVtbnMgaW5zdGVhZCBvZiA3IHdoZW4gd2Vla2VuZHMgaGlkZGVuICovXHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItdmlldy1jb250YWluZXIuaGlkZS13ZWVrZW5kcyAuY2FsZW5kYXItd2Vlay1ncmlkIHtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpICFpbXBvcnRhbnQ7IC8qIDUgY29sdW1ucyBpbnN0ZWFkIG9mIDcgd2hlbiB3ZWVrZW5kcyBoaWRkZW4gKi9cclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci12aWV3LWNvbnRhaW5lci5oaWRlLXdlZWtlbmRzIC5taW5pLW1vbnRoLWdyaWQge1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDUsIDFmcikgIWltcG9ydGFudDsgLyogNSBjb2x1bW5zIGluc3RlYWQgb2YgNyB3aGVuIHdlZWtlbmRzIGhpZGRlbiAqL1xyXG59XHJcblxyXG4vKiBOb3RlOiBXZWVrZW5kIGVsZW1lbnRzIGFyZSBub3QgY3JlYXRlZCB3aGVuIGhpZGVXZWVrZW5kcyBpcyBlbmFibGVkLFxyXG4gICBzbyBubyBoaWRpbmcgcnVsZXMgYXJlIG5lZWRlZC4gVGhlIGdyaWQgbGF5b3V0IGFkanVzdG1lbnRzIGFib3ZlIGFyZSBzdWZmaWNpZW50LiAqL1xyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktZXZlbnRzLWNvbnRhaW5lciB7XHJcblx0LyogUmVuYW1lZCBjbGFzcyAqL1xyXG5cdC8qIFRoaXMgY29udGFpbmVyIG1pZ2h0IG5vdCBiZSBzdHJpY3RseSBuZWNlc3NhcnkgaWYgLmNhbGVuZGFyLWRheS1jb2x1bW4gdXNlcyBmbGV4ICovXHJcblx0LyogU3R5bGVzIGFyZSBhcHBsaWVkIGRpcmVjdGx5IHRvIC5jYWxlbmRhci1kYXktY29sdW1uIG5vdyAqL1xyXG5cdGZsZXgtZ3JvdzogMTsgLyogQWxsb3cgY29udGFpbmVyIHRvIGdyb3cgKi9cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiAzcHg7IC8qIFNwYWNlIGJldHdlZW4gZXZlbnRzICovXHJcbn1cclxuXHJcbi8qIEVuc3VyZSBldmVudHMgdGFrZSBmdWxsIHdpZHRoIGFuZCBkb24ndCBoYXZlIGhvcml6b250YWwgZGlzcGxheSBwcm9wZXJ0aWVzICovXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZXZlbnQuY2FsZW5kYXItZXZlbnQtd2Vlay1hbGxkYXkge1xyXG5cdGRpc3BsYXk6IGJsb2NrOyAvKiBFbnN1cmUgYmxvY2sgZGlzcGxheSBmb3IgdmVydGljYWwgc3RhY2tpbmcgKi9cclxuXHR3aWR0aDogMTAwJTsgLyogVGFrZSBmdWxsIHdpZHRoIG9mIHRoZSBjb2x1bW4gKi9cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7IC8qIFJlc2V0IHBvc2l0aW9uIGlmIGl0IHdhcyBhYnNvbHV0ZSAqL1xyXG5cdGxlZnQ6IGF1dG87XHJcblx0dG9wOiBhdXRvO1xyXG5cdGhlaWdodDogYXV0bzsgLyogTGV0IGNvbnRlbnQgZGV0ZXJtaW5lIGhlaWdodCAqL1xyXG5cdG1hcmdpbi1ib3R0b206IDNweDsgLyogQ29uc2lzdGVudCBzcGFjaW5nICovXHJcblx0b3ZlcmZsb3c6IGhpZGRlbjsgLyogUHJldmVudCBpbnRlcm5hbCBjb250ZW50IGZyb20gb3ZlcmZsb3dpbmcgKi9cclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgLyogQWRkIGVsbGlwc2lzIGZvciBvdmVyZmxvdyAqL1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7IC8qIEVuc3VyZSBlbGxpcHNpcyB3b3JrcyAqL1xyXG59XHJcblxyXG4vKiBSZW1vdmUgc3R5bGVzIGZvciB0aGUgb2xkIHRpbWVsaW5lIHNlY3Rpb24gKi9cclxuLypcclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci13ZWVrLXRpbWVsaW5lLXNlY3Rpb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcbi8vIC4uLiBleGlzdGluZyBjb2RlIC4uLlxyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcclxufVxyXG4qL1xyXG5cclxuLyogLS0tIFllYXIgVmlldyBTcGVjaWZpYyBTdHlsZXMgLS0tICovXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItdmlldy1jb250YWluZXIudmlldy15ZWFyIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXIteWVhci1ncmlkIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KFxyXG5cdFx0YXV0by1maXQsXHJcblx0XHRtaW5tYXgoMjAwcHgsIDFmcilcclxuXHQpOyAvKiBSZXNwb25zaXZlIGNvbHVtbnMgKi9cclxuXHRnYXA6IHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1taW5pLW1vbnRoIHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRvdmVyZmxvdzogaGlkZGVuOyAvKiBDbGlwIGNvbnRlbnQgKi9cclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5taW5pLW1vbnRoLWhlYWRlciB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXNlbWlib2xkKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLm1pbmktbW9udGgtYm9keSB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLm1pbmktbW9udGgtZ3JpZCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg3LCAxZnIpO1xyXG5cdGdhcDogMnB4OyAvKiBTbWFsbCBnYXAgYmV0d2VlbiBkYXlzICovXHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLm1pbmktd2Vla2RheS1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGNvbnRlbnRzOyAvKiBMZXQgY2hpbGRyZW4gcGFydGljaXBhdGUgaW4gdGhlIGdyaWQgKi9cclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAubWluaS13ZWVrZGF5IHtcclxuXHRwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2l6ZS00LTEpO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLm1pbmktZGF5LWNlbGwge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0cGFkZGluZzogMXB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRsaW5lLWhlaWdodDogMS41ZW07IC8qIEFkanVzdCBmb3IgY2VudGVyaW5nICovXHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAubWluaS1kYXktY2VsbC5pcy1vdGhlci1tb250aCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdG9wYWNpdHk6IDAuNjtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5taW5pLWRheS1jZWxsLmlzLXRvZGF5IHtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAubWluaS1kYXktY2VsbC5oYXMtZXZlbnRzIHtcclxuXHQvKiBJbmRpY2F0ZSBldmVudHMgLSBlLmcuLCBib2xkIG9yIGJhY2tncm91bmQgZG90ICovXHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0LyogT3IgYWRkIGEgYmFja2dyb3VuZCBkb3Q6ICovXHJcblx0LyogcG9zaXRpb246IHJlbGF0aXZlOyAqL1xyXG59XHJcbi8qIC5taW5pLWRheS1jZWxsLmhhcy1ldmVudHM6OmFmdGVyIHtcclxuXHRjb250ZW50OiAnJztcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0Ym90dG9tOiAycHg7XHJcblx0bGVmdDogNTAlO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuXHR3aWR0aDogNHB4O1xyXG5cdGhlaWdodDogNHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn0gKi9cclxuXHJcbi5hZ2VuZGEtZGF5LXNlY3Rpb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmctdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZy1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5hZ2VuZGEtZGF5LWRhdGUtY29sdW1uIHtcclxuXHR3aWR0aDogMjAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLmFnZW5kYS1kYXktZXZlbnRzLWNvbHVtbiB7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIGlucHV0LnRhc2stbGlzdC1pdGVtLWNoZWNrYm94IHtcclxuXHRzY2FsZTogMC45O1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXZpZXctc3dpdGNoZXItc2VsZWN0b3Ige1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIC0tLSBEcmFnIGFuZCBEcm9wIFN0eWxlcyAtLS0gKi9cclxuLmNhbGVuZGFyLWV2ZW50LWdob3N0IHtcclxuXHQvKiBTdHlsZSBmb3IgdGhlIHBsYWNlaG9sZGVyIHdoZW4gZHJhZ2dpbmcgKi9cclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyOiAycHggZGFzaGVkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKSAhaW1wb3J0YW50O1xyXG5cdG9wYWNpdHk6IDAuNSAhaW1wb3J0YW50O1xyXG5cdGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmNhbGVuZGFyLWV2ZW50LWRyYWdnaW5nIHtcclxuXHQvKiBTdHlsZSBmb3IgdGhlIGVsZW1lbnQgYmVpbmcgZHJhZ2dlZCAqL1xyXG5cdG9wYWNpdHk6IDAuOSAhaW1wb3J0YW50O1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sKSAhaW1wb3J0YW50O1xyXG5cdHRyYW5zZm9ybTogcm90YXRlKDJkZWcpICFpbXBvcnRhbnQ7XHJcblx0ei1pbmRleDogMTAwMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBNYWtlIGNhbGVuZGFyIGV2ZW50cyBkcmFnZ2FibGUgKi9cclxuLmNhbGVuZGFyLWV2ZW50cy1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50IHtcclxuXHRjdXJzb3I6IGdyYWI7XHJcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5jYWxlbmRhci1ldmVudHMtY29udGFpbmVyIC5jYWxlbmRhci1ldmVudDpob3ZlciB7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcclxufVxyXG5cclxuLmNhbGVuZGFyLWV2ZW50cy1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50OmFjdGl2ZSB7XHJcblx0Y3Vyc29yOiBncmFiYmluZztcclxufVxyXG5cclxuLyogU29ydGFibGUgY29udGFpbmVyIHN0eWxlcyAqL1xyXG4uY2FsZW5kYXItZXZlbnRzLWNvbnRhaW5lcixcclxuLmNhbGVuZGFyLWRheS1ldmVudHMtY29udGFpbmVyIHtcclxuXHRtaW4taGVpZ2h0OiAyMHB4OyAvKiBFbnN1cmUgdGhlcmUncyBhbHdheXMgYSBkcm9wIHpvbmUgKi9cclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbkBjb250YWluZXIgKG1heC13aWR0aDogNjAwcHgpIHtcclxuXHQuZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXZpZXctc3dpdGNoZXIgYnV0dG9uIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG5cclxuXHQuY2FsZW5kYXItbmF2IC5wcmV2LWJ1dHRvbiB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0LmNhbGVuZGFyLW5hdiAubmV4dC1idXR0b24ge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblxyXG5cdC5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItdmlldy1zd2l0Y2hlci1zZWxlY3RvciB7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHR9XHJcbn1cclxuIiwgIi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZXZlbnQtdGl0bGUtY29udGFpbmVyIHAge1xyXG5cdHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwO1xyXG5cdHBhZGRpbmctaW5saW5lLWVuZDogMDtcclxuXHRtYXJnaW4tYmxvY2stc3RhcnQ6IDA7XHJcblx0bWFyZ2luLWJsb2NrLWVuZDogMDtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1ldmVudC10aXRsZS1jb250YWluZXIge1xyXG5cdC8qIEhhbmRsZSB0ZXh0IG92ZXJmbG93IHdpdGggZWxsaXBzaXMgKi9cclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50LXRpdGxlIHAge1xyXG5cdG1hcmdpbi1ibG9jay1zdGFydDogMDtcclxuXHRtYXJnaW4tYmxvY2stZW5kOiAwO1xyXG59XHJcbiIsICIvKiBDYWxlbmRhciBCYWRnZSBTdHlsZXMgKi9cclxuLmNhbGVuZGFyLWJhZGdlcy1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRnYXA6IDRweDtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHR6LWluZGV4OiAxMDtcclxufVxyXG5cclxuLmNhbGVuZGFyLWJhZGdlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmb250LXNpemU6IDEwcHg7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHJcblx0bWF4LXdpZHRoOiA4MHB4O1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLyogRW5zdXJlIGJhZGdlcyBhcmUgcG9zaXRpb25lZCByZWxhdGl2ZSB0byB0aGUgZGF5IGNlbGwgKi9cclxuLmNhbGVuZGFyLWRheS1jZWxsIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuIiwgIi50Zy1rYW5iYW4tdmlldyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuOyAvKiBQcmV2ZW50IHZpZXcgaXRzZWxmIGZyb20gc2Nyb2xsaW5nICovXHJcbn1cclxuXHJcbi50Zy1rYW5iYW4tZmlsdGVycyB7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRmbGV4LXNocmluazogMDsgLyogRG9uJ3Qgc2hyaW5rIGZpbHRlciBiYXIgKi9cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuXHRnYXA6IDhweDtcclxuXHRwYWRkaW5nOiA4cHg7XHJcblx0cGFkZGluZy1ib3R0b206IDA7XHJcblx0cGFkZGluZy10b3A6IDA7XHJcbn1cclxuXHJcbi50Zy1rYW5iYW4tY29udHJvbHMtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAxMnB4O1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxufVxyXG5cclxuLnRnLWthbmJhbi1zb3J0LWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNHB4O1xyXG59XHJcblxyXG4udGcta2FuYmFuLXNvcnQtYnV0dG9uIHtcclxuXHRwYWRkaW5nOiA0cHggOHB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA0cHg7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxufVxyXG5cclxuLnRnLWthbmJhbi1zb3J0LWJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuXHJcbi50Zy1rYW5iYW4tdG9nZ2xlLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNHB4O1xyXG59XHJcblxyXG4udGcta2FuYmFuLXRvZ2dsZS1sYWJlbCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNnB4O1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi50Zy1rYW5iYW4tdG9nZ2xlLWNoZWNrYm94IHtcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi50Zy1rYW5iYW4tZmlsdGVyLWlucHV0IHtcclxuXHRmbGV4LWdyb3c6IDE7XHJcblx0cGFkZGluZzogNnB4IDEwcHg7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0bWFyZ2luLXJpZ2h0OiAxMHB4OyAvKiBPcHRpb25hbDogc3BhY2UgaWYgb3RoZXIgY29udHJvbHMgYXJlIGFkZGVkICovXHJcbn1cclxuXHJcbi50Zy1rYW5iYW4tZmlsdGVyLWlucHV0OmZvY3VzIHtcclxuXHRvdXRsaW5lOiBub25lO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAxcHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLnRnLWthbmJhbi1jb2x1bW4tY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZ3JvdzogMTsgLyogVGFrZSByZW1haW5pbmcgaGVpZ2h0ICovXHJcblx0b3ZlcmZsb3cteDogYXV0bzsgLyogQWxsb3cgaG9yaXpvbnRhbCBzY3JvbGxpbmcgZm9yIGNvbHVtbnMgKi9cclxuXHRvdmVyZmxvdy15OiBoaWRkZW47IC8qIFByZXZlbnQgdmVydGljYWwgc2Nyb2xsaW5nIGhlcmUgKi9cclxuXHRwYWRkaW5nOiAxMHB4O1xyXG5cdGdhcDogMTBweDsgLyogU3BhY2UgYmV0d2VlbiBjb2x1bW5zICovXHJcblx0aGVpZ2h0OiAxMDAlOyAvKiBOZWVkZWQgZm9yIGNoaWxkcmVuIGhlaWdodCAqL1xyXG5cclxuXHQvKiBNb2JpbGUgc2Nyb2xsaW5nIGltcHJvdmVtZW50cyAqL1xyXG5cdC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgLyogU21vb3RoIGhvcml6b250YWwgc2Nyb2xsaW5nIG9uIGlPUyAqL1xyXG5cdC8qIENvbmRpdGlvbmFsIG92ZXJzY3JvbGwgYmVoYXZpb3IgLSBwcmV2ZW50IGJvdW5jZSBvbiBkZXNrdG9wLCBhbGxvdyBvbiBtb2JpbGUgZm9yIGRyYWcgKi9cclxuXHRvdmVyc2Nyb2xsLWJlaGF2aW9yLXg6IGF1dG87IC8qIEFsbG93IGRlZmF1bHQgYmVoYXZpb3IgZm9yIG1vYmlsZSBkcmFnIGNvbXBhdGliaWxpdHkgKi9cclxuXHRzY3JvbGwtc25hcC10eXBlOiB4IHByb3hpbWl0eTsgLyogS2VlcCBzbmFwIGZvciBtb2JpbGUgVVggKi9cclxuXHRzY3JvbGwtYmVoYXZpb3I6IHNtb290aDsgLyogU21vb3RoIHNjcm9sbGluZyAqL1xyXG59XHJcblxyXG4vKiBEZXNrdG9wLXNwZWNpZmljOiBQcmV2ZW50IHNjcm9sbCBib3VuY2UgKi9cclxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xyXG5cdC50Zy1rYW5iYW4tY29sdW1uLWNvbnRhaW5lciB7XHJcblx0XHRvdmVyc2Nyb2xsLWJlaGF2aW9yLXg6IG5vbmU7IC8qIFByZXZlbnQgYm91bmNlIG9uIGRlc2t0b3AgKi9cclxuXHRcdHNjcm9sbC1zbmFwLXR5cGU6IG5vbmU7IC8qIERpc2FibGUgc25hcCBvbiBkZXNrdG9wICovXHJcblx0fVxyXG59XHJcblxyXG4udGcta2FuYmFuLWNvbHVtbiB7XHJcblx0ZmxleDogMCAwIDI4MHB4OyAvKiBGaXhlZCB3aWR0aCBmb3IgY29sdW1ucywgbm8gc2hyaW5raW5nL2dyb3dpbmcgKi9cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRoZWlnaHQ6IDEwMCU7IC8qIEZpbGwgY29udGFpbmVyIGhlaWdodCAqL1xyXG5cdG1heC1oZWlnaHQ6IDEwMCU7IC8qIFByZXZlbnQgZXhjZWVkaW5nIGNvbnRhaW5lciAqL1xyXG5cdG92ZXJmbG93OiBoaWRkZW47IC8qIEhpZGUgb3ZlcmZsb3cgd2l0aGluIHRoZSBjb2x1bW4gKi9cclxuXHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cclxuXHQvKiBNb2JpbGUgc2Nyb2xsIHNuYXAgZm9yIGJldHRlciBVWCAqL1xyXG5cdHNjcm9sbC1zbmFwLWFsaWduOiBzdGFydDtcclxufVxyXG5cclxuLyogRGVza3RvcC1zcGVjaWZpYzogRGlzYWJsZSBzY3JvbGwgc25hcCAqL1xyXG5AbWVkaWEgKGhvdmVyOiBob3ZlcikgYW5kIChwb2ludGVyOiBmaW5lKSB7XHJcblx0LnRnLWthbmJhbi1jb2x1bW4ge1xyXG5cdFx0c2Nyb2xsLXNuYXAtYWxpZ246IG5vbmU7XHJcblx0fVxyXG59XHJcblxyXG4udGcta2FuYmFuLWNvbHVtbi1oZWFkZXIge1xyXG5cdHBhZGRpbmc6IDhweCAxMnB4O1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW1uKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0ZmxleC1zaHJpbms6IDA7IC8qIFByZXZlbnQgaGVhZGVyIGZyb20gc2hyaW5raW5nICovXHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi50Zy1rYW5iYW4tY29sdW1uLWNvbnRlbnQge1xyXG5cdGZsZXgtZ3JvdzogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdHBhZGRpbmc6IDhweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiA4cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcclxuXHQvKiBwYWRkaW5nLXJpZ2h0OiAwOyAqL1xyXG5cdC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxuXHRvdmVyc2Nyb2xsLWJlaGF2aW9yOiBjb250YWluOyAvKiBLZWVwIGNvbnRhaW4gZm9yIG1vYmlsZSBkcmFnIGNvbXBhdGliaWxpdHkgKi9cclxuXHRzY3JvbGwtYmVoYXZpb3I6IHNtb290aDsgLyogU21vb3RoIHNjcm9sbGluZyAqL1xyXG59XHJcblxyXG4vKiBEZXNrdG9wLXNwZWNpZmljOiBQcmV2ZW50IHZlcnRpY2FsIHNjcm9sbCBib3VuY2UgKi9cclxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xyXG5cdC50Zy1rYW5iYW4tY29sdW1uLWNvbnRlbnQge1xyXG5cdFx0b3ZlcnNjcm9sbC1iZWhhdmlvcjogbm9uZTsgLyogUHJldmVudCBib3VuY2Ugb24gZGVza3RvcCAqL1xyXG5cdH1cclxufVxyXG4vKiAtLS0gQ2FyZCBTdHlsaW5nIC0tLSAqL1xyXG4udGcta2FuYmFuLWNhcmQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IDEwcHggMTJweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjdXJzb3I6IGdyYWI7XHJcblx0dHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XHJcblxyXG5cdC8qIEVuc3VyZSBjYXJkIGZpdHMgd2l0aGluIGNvbHVtbiBhbmQgaGFuZGxlcyBjb250ZW50ICovXHJcblx0bWF4LXdpZHRoOiAxMDAlOyAvKiBQcmV2ZW50IGNhcmQgZnJvbSBleGNlZWRpbmcgcGFyZW50IHdpZHRoICovXHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDsgLyogSW5jbHVkZSBwYWRkaW5nL2JvcmRlciBpbiB3aWR0aCAqL1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7IC8qIEFsbG93IHRleHQgd3JhcHBpbmcgKi9cclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuXHJcblx0LyogTW9iaWxlIHRvdWNoIGltcHJvdmVtZW50cyAqL1xyXG5cdHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uOyAvKiBPcHRpbWl6ZSBmb3IgdG91Y2ggaW50ZXJhY3Rpb25zICovXHJcblx0dXNlci1zZWxlY3Q6IG5vbmU7IC8qIFByZXZlbnQgdGV4dCBzZWxlY3Rpb24gZHVyaW5nIGRyYWcgKi9cclxuXHQtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG5cdC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0LW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNhcmQgLnRnLWthbmJhbi1jYXJkLWNvbnRlbnQge1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNhcmQ6aG92ZXIge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1tKTtcclxufVxyXG5cclxuLnRnLWthbmJhbi1jYXJkLnRhc2stY29tcGxldGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0b3BhY2l0eTogMC43O1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNhcmQudGFzay1jb21wbGV0ZWQgLnRnLWthbmJhbi1jYXJkLWNvbnRlbnQge1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnRnLWthbmJhbi1jYXJkLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRtYXJnaW4tYm90dG9tOiA2cHg7XHJcbn1cclxuXHJcbi50Zy1rYW5iYW4tY2FyZC1jb250ZW50IHA6bGFzdC1jaGlsZCB7XHJcblx0bWFyZ2luLWJvdHRvbTogMDsgLyogQXZvaWQgZXh0cmEgc3BhY2UgZnJvbSBwYXJhZ3JhcGggKi9cclxuXHRtYXJnaW4tYmxvY2stZW5kOiAwO1xyXG5cdG1hcmdpbi1ibG9jay1zdGFydDogMDtcclxufVxyXG5cclxuLnRnLWthbmJhbi1jYXJkLW1ldGFkYXRhIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxuXHRnYXA6IDRweCA4cHg7IC8qIFJvdyBhbmQgY29sdW1uIGdhcCAqL1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNhcmQtbWV0YWRhdGEgLnRhc2stZGF0ZSxcclxuLnRnLWthbmJhbi1jYXJkLW1ldGFkYXRhIC50YXNrLXRhZ3MtY29udGFpbmVyLFxyXG4udGcta2FuYmFuLWNhcmQtbWV0YWRhdGEgLnRhc2stcHJpb3JpdHkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDRweDtcclxuXHRwYWRkaW5nOiAycHggNXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblxyXG5cdG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDA7XHJcblx0bWFyZ2luLWlubGluZS1lbmQ6IDA7XHJcblx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0bWFyZ2luLXJpZ2h0OiAwO1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNhcmQtbWV0YWRhdGEgLnRhc2stdGFnIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoXHJcblx0XHQtLWJhY2tncm91bmQtbW9kaWZpZXItYWNjZW50LWhvdmVyXHJcblx0KTsgLyogT3IgdXNlIHRhZyBjb2xvciAqL1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0cGFkZGluZzogMXB4IDRweDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC1zaXplOiBjYWxjKHZhcigtLWZvbnQtdWktc21hbGwpICogMC45KTtcclxufVxyXG5cclxuLnRnLWthbmJhbi1jYXJkLW1ldGFkYXRhIC50YXNrLWR1ZS1kYXRlLnRhc2stb3ZlcmR1ZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtZXJyb3IpO1xyXG59XHJcbi50Zy1rYW5iYW4tY2FyZC1tZXRhZGF0YSAudGFzay1kdWUtZGF0ZS50YXNrLWR1ZS10b2RheSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtd2FybmluZyk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC13YXJuaW5nKTtcclxufVxyXG5cclxuLyogUHJpb3JpdHkgaW5kaWNhdG9ycyAoc2ltcGxlIGV4YW1wbGUpICovXHJcbi50Zy1rYW5iYW4tY2FyZC1tZXRhZGF0YSAudGFzay1wcmlvcml0eS5wcmlvcml0eS0xIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG59XHJcbi50Zy1rYW5iYW4tY2FyZC1tZXRhZGF0YSAudGFzay1wcmlvcml0eS5wcmlvcml0eS0yIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nKTtcclxufVxyXG4udGcta2FuYmFuLWNhcmQtbWV0YWRhdGEgLnRhc2stcHJpb3JpdHkucHJpb3JpdHktMyB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcbi8qIEFkZCBtb3JlIHByaW9yaXR5IHN0eWxlcyBpZiBuZWVkZWQgKi9cclxuXHJcbi8qIC0tLSBEcmFnIGFuZCBEcm9wIFN0eWxpbmcgLS0tICovXHJcbi50Zy1rYW5iYW4tY2FyZC1kcmFnZ2luZyB7XHJcblx0LyogU3R5bGUgZm9yIHRoZSBjbG9uZSBiZWluZyBkcmFnZ2VkICovXHJcblx0Lyogb3BhY2l0eTogMC44OyAqLyAvKiBSZW1vdmVkIG9wYWNpdHkgKi9cclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbCk7IC8qIE1vcmUgcHJvbWluZW50IHNoYWRvdyAqL1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNhcmQtZ2hvc3Qge1xyXG5cdC8qIFN0eWxlIGZvciB0aGUgb3JpZ2luYWwgY2FyZCB3aGVuIGEgY2xvbmUgaXMgZHJhZ2dlZCAqL1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7XHJcblx0Ym9yZGVyOiAxcHggZGFzaGVkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3gtc2hhZG93OiBub25lO1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNvbHVtbi1jb250ZW50LnRnLWthbmJhbi1kcm9wLXRhcmdldC1hY3RpdmUge1xyXG5cdC8qIFN0eWxlIGZvciBwb3RlbnRpYWwgZHJvcCB6b25lcyB3aGVuIGRyYWdnaW5nIHN0YXJ0cyAqL1xyXG5cdC8qIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpOyAqL1xyXG5cdG91dGxpbmU6IDJweCBkYXNoZWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY2NlbnQtaG92ZXIpO1xyXG5cdG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNvbHVtbi1jb250ZW50LnRnLWthbmJhbi1kcm9wLXRhcmdldC1ob3ZlciB7XHJcblx0LyogU3R5bGUgZm9yIHRoZSBzcGVjaWZpYyBkcm9wIHpvbmUgYmVpbmcgaG92ZXJlZCBvdmVyICovXHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4vKiBTdHlsZXMgZm9yIEthbmJhbiBkcm9wIGluZGljYXRvcnMgKi9cclxuLnRnLWthbmJhbi1jYXJkLS1kcm9wLWluZGljYXRvci1iZWZvcmUge1xyXG5cdG1hcmdpbi10b3A6IDEwcHg7IC8qIEluY3JlYXNlZCBtYXJnaW4gKi9cclxuXHRib3JkZXItdG9wOiAycHggZGFzaGVkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7IC8qIEluZGljYXRvciAqL1xyXG5cdC8qIHBhZGRpbmctdG9wOiAyMHB4OyAqLyAvKiBSZW1vdmVkIHBhZGRpbmcgKi9cclxuXHR0cmFuc2l0aW9uOiBtYXJnaW4tdG9wIDAuMXMgZWFzZS1vdXQsIGJvcmRlci10b3AgMC4xcyBlYXNlLW91dDsgLyogVXBkYXRlZCB0cmFuc2l0aW9uICovXHJcbn1cclxuXHJcbi50Zy1rYW5iYW4tY2FyZC0tZHJvcC1pbmRpY2F0b3ItYWZ0ZXIge1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7IC8qIEluY3JlYXNlZCBtYXJnaW4gKi9cclxuXHRib3JkZXItYm90dG9tOiAycHggZGFzaGVkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7IC8qIEluZGljYXRvciAqL1xyXG5cdC8qIHBhZGRpbmctYm90dG9tOiAyMHB4OyAqLyAvKiBSZW1vdmVkIHBhZGRpbmcgKi9cclxuXHR0cmFuc2l0aW9uOiBtYXJnaW4tYm90dG9tIDAuMXMgZWFzZS1vdXQsIGJvcmRlci1ib3R0b20gMC4xcyBlYXNlLW91dDsgLyogVXBkYXRlZCB0cmFuc2l0aW9uICovXHJcbn1cclxuXHJcbi8qIE9wdGlvbmFsOiBTdHlsZSBmb3IgZHJvcHBpbmcgaW50byBhbiBlbXB0eSBjb2x1bW4gKi9cclxuLnRnLWthbmJhbi1jb2x1bW4tY29udGVudC0tZHJvcC1pbmRpY2F0b3ItZW1wdHkge1xyXG5cdGJvcmRlcjogMnB4IGRhc2hlZCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdG1pbi1oZWlnaHQ6IDUwcHg7IC8qIEVuc3VyZSBlbXB0eSBjb2x1bW4gaGFzIHNvbWUgaGVpZ2h0IGZvciB0aGUgYm9yZGVyICovXHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDsgLyogSW5jbHVkZSBib3JkZXIgaW4gaGVpZ2h0IGNhbGN1bGF0aW9uICovXHJcblx0bWFyZ2luLXRvcDogNXB4OyAvKiBBZGQgc29tZSBzcGFjZSAqL1xyXG5cdG1hcmdpbi1ib3R0b206IDVweDsgLyogQWRkIHNvbWUgc3BhY2UgKi9cclxufVxyXG5cclxuLyogRW5zdXJlIHRyYW5zaXRpb25zIGFyZSBzbW9vdGggd2hlbiBjbGFzc2VzIGFyZSByZW1vdmVkICovXHJcbi50Zy1rYW5iYW4tY2FyZCB7XHJcblx0LyogRW5zdXJlIGV4aXN0aW5nIHRyYW5zaXRpb25zIGRvbid0IGNvbmZsaWN0LCBvciBhZGQgYmFzZSB0cmFuc2l0aW9uICovXHJcblx0dHJhbnNpdGlvbjogbWFyZ2luIDAuMXMgZWFzZS1vdXQsIHBhZGRpbmcgMC4xcyBlYXNlLW91dCxcclxuXHRcdGJvcmRlciAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4ycyBlYXNlLW91dCxcclxuXHRcdGJveC1zaGFkb3cgMC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UtaW4tb3V0OyAvKiBNZXJnZWQgdHJhbnNpdGlvbnMgKi9cclxufVxyXG5cclxuLmRyb3AtdGFyZ2V0LWFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxMjgsIDAsIDAuMik7IC8qIFx1NTM0QVx1OTAwRlx1NjYwRVx1N0VGRlx1ODI3Mlx1ODBDQ1x1NjY2RiAqL1xyXG5cdG91dGxpbmU6IDJweCBkYXNoZWQgZ3JlZW47IC8qIFx1N0VGRlx1ODI3Mlx1ODY1QVx1N0VCRlx1OEZCOVx1Njg0NiAqL1xyXG5cdC8qIFx1NEY2MFx1NTNFRlx1ODBGRFx1OEZEOFx1OTcwMFx1ODk4MVx1OEMwM1x1NjU3NCBwYWRkaW5nIFx1NjIxNiBtYXJnaW4gXHU2NzY1ICdcdTY1M0VcdTU5MjcnIFx1ODlDNlx1ODlDOVx1NTMzQVx1NTdERiAqL1xyXG5cdC8qIHBhZGRpbmctdG9wOiAyMHB4OyAqL1xyXG5cdC8qIHBhZGRpbmctYm90dG9tOiAyMHB4OyAqL1xyXG59XHJcblxyXG4vKiBBZGQgQ2FyZCBCdXR0b24gKi9cclxuLnRnLWthbmJhbi1hZGQtY2FyZC1jb250YWluZXIge1xyXG5cdHBhZGRpbmc6IDhweDtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGZsZXgtc2hyaW5rOiAwOyAvKiBQcmV2ZW50IGNvbnRhaW5lciBmcm9tIHNocmlua2luZyAqL1xyXG59XHJcblxyXG4vKiBTdHlsZXMgZm9yIHRoZSBBZGQgQ2FyZCBidXR0b24gaW4gYm9hcmQgdmlldyAqL1xyXG4udGFzay1nZW5pdXMtYWRkLWNhcmQtY29udGFpbmVyIHtcclxuXHRwYWRkaW5nOiA4cHg7XHJcblx0bWFyZ2luLXRvcDogYXV0bzsgLyogUHVzaCB0byB0aGUgYm90dG9tIGlmIHRoZSBjb2x1bW4gdXNlcyBmbGV4ICovXHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4udGcta2FuYmFuLWFkZC1jYXJkLWJ1dHRvbiB7XHJcblx0LS1pY29uLXNpemU6IDE2cHg7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiBNYWtlIGl0IGxlc3MgcHJvbWluZW50ICovXHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLWluLW91dCwgY29sb3IgMC4ycyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLnRnLWthbmJhbi1hZGQtY2FyZC1idXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi8qIENvbHVtbiBEcmFnICYgRHJvcCBTdHlsaW5nICovXHJcbi50Zy1rYW5iYW4tY29sdW1uLWRyYWdnaW5nIHtcclxuXHQvKiBTdHlsZSBmb3IgdGhlIGNvbHVtbiBiZWluZyBkcmFnZ2VkICovXHJcblx0dHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XHJcblx0b3BhY2l0eTogMC44O1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy14bCk7XHJcblx0ei1pbmRleDogMTAwMDtcclxufVxyXG5cclxuLnRnLWthbmJhbi1jb2x1bW4tZ2hvc3Qge1xyXG5cdC8qIFN0eWxlIGZvciB0aGUgZ2hvc3QgcGxhY2Vob2xkZXIgd2hlbiBkcmFnZ2luZyBjb2x1bW5zICovXHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlcjogMnB4IGRhc2hlZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjY2VudCk7XHJcblx0b3BhY2l0eTogMC41O1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNvbHVtbi1oZWFkZXIge1xyXG5cdC8qIE1ha2UgY29sdW1uIGhlYWRlcnMgZHJhZ2dhYmxlICovXHJcblx0Y3Vyc29yOiBncmFiO1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNvbHVtbi1oZWFkZXI6YWN0aXZlIHtcclxuXHRjdXJzb3I6IGdyYWJiaW5nO1xyXG59XHJcbiIsICIvKiBGaWx0ZXIgQ29tcG9uZW50IFN0eWxlcyAqL1xyXG4uZmlsdGVyLWNvbXBvbmVudCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0bWluLWhlaWdodDogNDhweDtcclxuXHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLyogRmlsdGVyIFBpbGxzIENvbnRhaW5lciAqL1xyXG4uZmlsdGVyLXBpbGxzLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLyogRmlsdGVyIENvbnRyb2xzICovXHJcbi5maWx0ZXItY29udHJvbHMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tbGVmdDogYXV0bztcclxufVxyXG5cclxuLyogRmlsdGVyIFBpbGxzICovXHJcbi5maWx0ZXItcGlsbCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdHBhZGRpbmc6IDVweCA4cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGFuaW1hdGlvbjogZmlsdGVyLXBpbGwtYXBwZWFyIDIwMG1zIGVhc2Utb3V0O1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tZHVyYXRpb24tZmFzdCksXHJcblx0XHR0cmFuc2Zvcm0gdmFyKC0tZHVyYXRpb24tZmFzdCk7XHJcbn1cclxuXHJcbi5maWx0ZXItcGlsbC1yZW1vdmUgLmNsaWNrYWJsZS1pY29uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcclxufVxyXG5cclxuLmZpbHRlci1waWxsOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXRlcnRpYXJ5KTtcclxufVxyXG5cclxuLmZpbHRlci1waWxsLWNhdGVnb3J5IHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLmZpbHRlci1waWxsLXZhbHVlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uZmlsdGVyLXBpbGwtcmVtb3ZlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0cGFkZGluZzogMDtcclxuXHRtYXJnaW4tbGVmdDogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tZHVyYXRpb24tZmFzdCksXHJcblx0XHRjb2xvciB2YXIoLS1kdXJhdGlvbi1mYXN0KTtcclxufVxyXG5cclxuLmZpbHRlci1waWxsLXJlbW92ZTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmZpbHRlci1waWxsLXJlbW92ZS1pY29uIHtcclxuXHRmb250LXNpemU6IDE2cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4vKiBGaWx0ZXIgQnV0dG9ucyAqL1xyXG4uZmlsdGVyLWFkZC1idXR0b24sXHJcbi5maWx0ZXItY2xlYXItYWxsLWJ1dHRvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDZweCAxMHB4O1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uZmlsdGVyLWFkZC1idXR0b24ge1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLmZpbHRlci1hZGQtaWNvbiB7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtYm9sZCk7XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLyogRmlsdGVyIERyb3Bkb3duICovXHJcbi5maWx0ZXItZHJvcGRvd24ge1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHR3aWR0aDogMjIwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LWwpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHR6LWluZGV4OiB2YXIoLS1sYXllci1wb3BvdmVyKTtcclxuXHRtYXgtaGVpZ2h0OiA0MDBweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0b3BhY2l0eTogMDtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS1kdXJhdGlvbi1ub3JtYWwpLCB0cmFuc2Zvcm0gdmFyKC0tZHVyYXRpb24tbm9ybWFsKTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLXZpc2libGUge1xyXG5cdG9wYWNpdHk6IDE7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLWhlYWRlciB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5maWx0ZXItZHJvcGRvd24tc2VhcmNoIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLXNlYXJjaDpmb2N1cyB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1mb2N1cy1yaW5nLWNvbG9yKTtcclxufVxyXG5cclxuLmZpbHRlci1kcm9wZG93bi1saXN0IHtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdG1heC1oZWlnaHQ6IDM1MHB4O1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS1kdXJhdGlvbi1mYXN0KTtcclxufVxyXG5cclxuLmZpbHRlci1kcm9wZG93bi1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi5maWx0ZXItZHJvcGRvd24taXRlbS1sYWJlbCB7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLmZpbHRlci1kcm9wZG93bi1pdGVtLWFycm93IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0Zm9udC1zaXplOiAxOHB4O1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLWl0ZW0tYXJyb3cuYmFjayB7XHJcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLmZpbHRlci1kcm9wZG93bi1iYWNrIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi5maWx0ZXItZHJvcGRvd24tc2VwYXJhdG9yIHtcclxuXHRoZWlnaHQ6IDFweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kaXZpZGVyLWNvbG9yKTtcclxuXHRtYXJnaW46IHZhcigtLXNpemUtNC0xKSAwO1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLWVtcHR5IHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLXZhbHVlLWl0ZW0ge1xyXG5cdHBhZGRpbmctbGVmdDogdmFyKC0tc2l6ZS00LTQpO1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLWNhdGVnb3J5IHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLmZpbHRlci1kcm9wZG93bi12YWx1ZS1wcmV2aWV3IHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMSkgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLWR1cmF0aW9uLWZhc3QpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmZpbHRlci1kcm9wZG93bi12YWx1ZS1wcmV2aWV3OmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi8qIEFuaW1hdGlvbnMgKi9cclxuQGtleWZyYW1lcyBmaWx0ZXItcGlsbC1hcHBlYXIge1xyXG5cdGZyb20ge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMC45KTtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcblx0fVxyXG59XHJcblxyXG4uZmlsdGVyLXBpbGwtcmVtb3Zpbmcge1xyXG5cdG9wYWNpdHk6IDA7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgZWFzZS1vdXQsIHRyYW5zZm9ybSAxNTBtcyBlYXNlLW91dDtcclxufVxyXG4iLCAiLmdhbnR0LWNoYXJ0LWNvbnRhaW5lciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblxyXG5cdC0tZ2FudHQtaGVhZGVyLWhlaWdodDogNTBweDtcclxuXHQtLWdhbnR0LXJvdy1oZWlnaHQ6IDQwcHg7XHJcblx0LS1nYW50dC1iYXItaGVpZ2h0OiAyMHB4O1xyXG5cdC0tZ2FudHQtYmFyLXJhZGl1czogM3B4O1xyXG5cclxuXHQtLWdhbnR0LWJnLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0LS1nYW50dC1ncmlkLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0LS1nYW50dC1yb3ctY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHQtLWdhbnR0LWJhci1jb2xvcjogdmFyKC0tY29sb3ItYmx1ZSk7XHJcblx0LS1nYW50dC1taWxlc3RvbmUtY29sb3I6IHZhcigtLWNvbG9yLXB1cnBsZSk7XHJcblx0LS1nYW50dC1wcm9ncmVzcy1jb2xvcjogdmFyKC0tY29sb3ItYmx1ZSk7XHJcblx0LS1nYW50dC10b2RheS1jb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KTtcclxufVxyXG5cclxuLmdhbnR0LXN2ZyB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaW50ZXJmYWNlKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdHVzZXItc2VsZWN0OiBub25lO1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLWJnIHtcclxuXHRmaWxsOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdHN0cm9rZTogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHN0cm9rZS13aWR0aDogMXB4O1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLXRleHQge1xyXG5cdGZpbGw6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbi5nYW50dC1ncmlkLWJnIHtcclxuXHRmaWxsOiB0cmFuc3BhcmVudDtcclxuXHRzdHJva2U6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRzdHJva2Utd2lkdGg6IDA7XHJcbn1cclxuXHJcbi5nYW50dC1ncmlkLWxpbmUtdmVydGljYWwge1xyXG5cdHN0cm9rZTogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHN0cm9rZS13aWR0aDogMXB4O1xyXG5cdHN0cm9rZS1kYXNoYXJyYXk6IDIsIDI7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWl0ZW0ge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stYmFyIHtcclxuXHRmaWxsOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdHN0cm9rZTogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxuXHRzdHJva2Utd2lkdGg6IDFweDtcclxuXHR0cmFuc2l0aW9uOiBmaWxsIDAuMXMgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWl0ZW06aG92ZXIgLmdhbnR0LXRhc2stYmFyIHtcclxuXHRmaWxsOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4uZ2FudHQtdGFzay1taWxlc3RvbmUge1xyXG5cdGZpbGw6IHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcblx0c3Ryb2tlOiB2YXIoLS1jb2xvci1vcmFuZ2UtYm9yZGVyKTtcclxuXHRzdHJva2Utd2lkdGg6IDFweDtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stbGFiZWwge1xyXG5cdGZpbGw6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRmb250LXNpemU6IGNhbGModmFyKC0tZm9udC11aS1zbWFsbCkgKiAwLjkpO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdHdoaXRlLXNwYWNlOiBwcmU7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWJhci5zdGF0dXMtY29tcGxldGVkIHtcclxuXHRmaWxsOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0c3Ryb2tlOiB2YXIoLS1jb2xvci1ncmVlbi1ib3JkZXIpO1xyXG59XHJcblxyXG4uZ2FudHQtdGFzay1iYXIucHJpb3JpdHktaGlnaCB7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBHYW50dCBDaGFydCBTdHlsZXNcclxuICovXHJcblxyXG4uZ2FudHQtaGVhZGVyIHtcclxuXHRwb3NpdGlvbjogc3RpY2t5O1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdHotaW5kZXg6IDEwO1xyXG5cdGhlaWdodDogdmFyKC0tZ2FudHQtaGVhZGVyLWhlaWdodCk7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWdhbnR0LWdyaWQtY29sb3IpO1xyXG5cdHVzZXItc2VsZWN0OiBub25lO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdhbnR0LWJnLWNvbG9yKTtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLXJvdyB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGhlaWdodDogNTAlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLXJvdy5wcmltYXJ5IHtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tZ2FudHQtZ3JpZC1jb2xvcik7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuLmdhbnR0LWhlYWRlci1jZWxsIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tZ2FudHQtZ3JpZC1jb2xvcik7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nYW50dC1iZy1jb2xvcik7XHJcblx0cG9pbnRlci1ldmVudHM6IGF1dG87XHJcbn1cclxuXHJcbi5nYW50dC1ib2R5IHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGF1dG87XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdHBhZGRpbmctdG9wOiB2YXIoLS1nYW50dC1oZWFkZXItaGVpZ2h0KTtcclxuXHRtYXJnaW4tdG9wOiBjYWxjKHZhcigtLWdhbnR0LWhlYWRlci1oZWlnaHQpICogLTEpO1xyXG59XHJcblxyXG4uZ2FudHQtZ3JpZCB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogdmFyKC0tZ2FudHQtaGVhZGVyLWhlaWdodCk7XHJcblx0bGVmdDogMDtcclxuXHRoZWlnaHQ6IGNhbGMoMTAwJSAtIHZhcigtLWdhbnR0LWhlYWRlci1oZWlnaHQpKTtcclxuXHRtaW4td2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5nYW50dC1ncmlkLWNvbHVtbiB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tZ2FudHQtZ3JpZC1jb2xvcik7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxuLmdhbnR0LWdyaWQtY29sdW1uLnRvZGF5IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nYW50dC10b2RheS1jb2xvcik7XHJcbn1cclxuXHJcbi5nYW50dC1ncmlkLXJvdyB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IDA7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWdhbnR0LWdyaWQtY29sb3IpO1xyXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2FudHQtcm93LWNvbG9yKTtcclxufVxyXG5cclxuLmdhbnR0LWdyaWQtcm93Om50aC1jaGlsZChvZGQpIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nYW50dC1iZy1jb2xvcik7XHJcbn1cclxuXHJcbi5nYW50dC1iYXJzIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiB2YXIoLS1nYW50dC1oZWFkZXItaGVpZ2h0KTtcclxuXHRsZWZ0OiAwO1xyXG5cdGhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0tZ2FudHQtaGVhZGVyLWhlaWdodCkpO1xyXG5cdG1pbi13aWR0aDogMTAwJTtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stY29udGFpbmVyIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRwb2ludGVyLWV2ZW50czogYXV0bztcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMXMgZWFzZTtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stY29udGFpbmVyOmhvdmVyIHtcclxuXHR6LWluZGV4OiAxMDtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWJhci5taWxlc3RvbmUge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdhbnR0LW1pbGVzdG9uZS1jb2xvcik7XHJcblx0d2lkdGg6IDE1cHggIWltcG9ydGFudDtcclxuXHRoZWlnaHQ6IDE1cHggIWltcG9ydGFudDtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0dHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG5cdHRvcDogNTAlO1xyXG5cdG1hcmdpbi10b3A6IC03LjVweDtcclxuXHRsZWZ0OiA1MCU7XHJcblx0bWFyZ2luLWxlZnQ6IC03LjVweDtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stcHJvZ3Jlc3Mge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2FudHQtcHJvZ3Jlc3MtY29sb3IpO1xyXG5cdG9wYWNpdHk6IDAuNztcclxufVxyXG5cclxuLmdhbnR0LXRhc2stbGFiZWwge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiBjYWxjKDEwMCUgKyA4cHgpO1xyXG5cdHRvcDogMDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGxpbmUtaGVpZ2h0OiB2YXIoLS1nYW50dC1iYXItaGVpZ2h0KTtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stY29udGFpbmVyLnJpZ2h0LWFsaWduZWQgLmdhbnR0LXRhc2stbGFiZWwge1xyXG5cdGxlZnQ6IGF1dG87XHJcblx0cmlnaHQ6IGNhbGMoMTAwJSArIDhweCk7XHJcblx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA2ODBweCkge1xyXG5cdC5nYW50dC1oZWFkZXItY2VsbCB7XHJcblx0XHRmb250LXNpemU6IDEwcHg7XHJcblx0fVxyXG5cclxuXHQuZ2FudHQtdGFzay1sYWJlbCB7XHJcblx0XHRmb250LXNpemU6IDEwcHg7XHJcblx0fVxyXG59XHJcblxyXG4uZ2FudHQtY2hhcnQtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLWNvbnRhaW5lciB7XHJcblx0aGVpZ2h0OiA0MHB4O1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLXN2ZyB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5nYW50dC1oZWFkZXItdGljay1tYWpvcixcclxuLmdhbnR0LWhlYWRlci10aWNrLW1pbm9yLFxyXG4uZ2FudHQtaGVhZGVyLXRpY2stZGF5LFxyXG4uZ2FudHQtaGVhZGVyLXRvZGF5LW1hcmtlciB7XHJcblx0c3Ryb2tlOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0c3Ryb2tlLXdpZHRoOiAxO1xyXG59XHJcbi5nYW50dC1oZWFkZXItdGljay1tYWpvciB7XHJcblx0c3Ryb2tlLXdpZHRoOiAxLjU7XHJcbn1cclxuLmdhbnR0LWhlYWRlci10b2RheS1tYXJrZXIge1xyXG5cdHN0cm9rZTogdmFyKC0tY29sb3Itb3JhbmdlKTtcclxuXHRzdHJva2Utd2lkdGg6IDEuNTtcclxuXHRzdHJva2UtZGFzaGFycmF5OiA0LCAyO1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLWxhYmVsLW1ham9yLFxyXG4uZ2FudHQtaGVhZGVyLWxhYmVsLW1pbm9yLFxyXG4uZ2FudHQtaGVhZGVyLWxhYmVsLWRheSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRmaWxsOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG4uZ2FudHQtaGVhZGVyLWxhYmVsLW1ham9yIHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGZpbGw6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmdhbnR0LXNjcm9sbC1jb250YWluZXIge1xyXG5cdGZsZXgtZ3JvdzogMTtcclxuXHRvdmVyZmxvdzogYXV0bztcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5nYW50dC1jb250ZW50LXdyYXBwZXIge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG59XHJcblxyXG4uZ2FudHQtZ3JpZC1saW5lLW1ham9yLFxyXG4uZ2FudHQtZ3JpZC1saW5lLW1pbm9yIHtcclxuXHRzdHJva2U6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxuXHRzdHJva2Utd2lkdGg6IDAuNTtcclxufVxyXG4uZ2FudHQtZ3JpZC1saW5lLW1ham9yIHtcclxuXHRzdHJva2Utd2lkdGg6IDE7XHJcbn1cclxuLmdhbnR0LWdyaWQtbGluZS1ob3Jpem9udGFsIHtcclxuXHRzdHJva2U6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRzdHJva2Utd2lkdGg6IDE7XHJcbn1cclxuXHJcbi5nYW50dC1ncmlkLXRvZGF5LW1hcmtlciB7XHJcblx0c3Ryb2tlOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG5cdHN0cm9rZS13aWR0aDogMTtcclxuXHRzdHJva2UtZGFzaGFycmF5OiA0LCAyO1xyXG59XHJcblxyXG4uZ2FudHQtdGFzay1pdGVtIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWJhciB7XHJcblx0ZmlsbDogdmFyKC0tY29sb3ItYmx1ZSk7XHJcblx0c3Ryb2tlOiB2YXIoLS1jb2xvci1ibHVlLWhvdmVyKTtcclxuXHRzdHJva2Utd2lkdGg6IDAuNTtcclxuXHR0cmFuc2l0aW9uOiBmaWxsIDAuMXMgZWFzZTtcclxufVxyXG4uZ2FudHQtdGFzay1pdGVtOmhvdmVyIC5nYW50dC10YXNrLWJhciB7XHJcblx0ZmlsbDogdmFyKC0tY29sb3ItYWNjZW50KTtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stbWlsZXN0b25lIHtcclxuXHRmaWxsOiB2YXIoLS1jb2xvci1wdXJwbGUpO1xyXG5cdHN0cm9rZTogdmFyKC0tY29sb3ItcHVycGxlKTtcclxuXHRzdHJva2Utd2lkdGg6IDE7XHJcblx0dHJhbnNpdGlvbjogZmlsbCAwLjFzIGVhc2U7XHJcbn1cclxuLmdhbnR0LXRhc2staXRlbTpob3ZlciAuZ2FudHQtdGFzay1taWxlc3RvbmUge1xyXG5cdGZpbGw6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWl0ZW0uc3RhdHVzLWRvbmUgLmdhbnR0LXRhc2stYmFyLFxyXG4uZ2FudHQtdGFzay1pdGVtLnN0YXR1cy1kb25lIC5nYW50dC10YXNrLW1pbGVzdG9uZSB7XHJcblx0ZmlsbDogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cdHN0cm9rZTogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cdG9wYWNpdHk6IDAuNztcclxufVxyXG4uZ2FudHQtdGFzay1pdGVtLnN0YXR1cy1jYW5jZWxsZWQgLmdhbnR0LXRhc2stYmFyLFxyXG4uZ2FudHQtdGFzay1pdGVtLnN0YXR1cy1jYW5jZWxsZWQgLmdhbnR0LXRhc2stbWlsZXN0b25lIHtcclxuXHRmaWxsOiB2YXIoLS1jb2xvci1yZWQpO1xyXG5cdHN0cm9rZTogdmFyKC0tY29sb3ItcmVkKTtcclxuXHRvcGFjaXR5OiAwLjY7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XHJcbn1cclxuLmdhbnR0LXRhc2staXRlbS5zdGF0dXMtaW5wcm9ncmVzcyAuZ2FudHQtdGFzay1iYXIge1xyXG59XHJcblxyXG4uZ2FudHQtdGFzay1sYWJlbC1mbyB7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stbGFiZWwtbWFya2Rvd24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjM7XHJcblx0cGFkZGluZzogMCAycHg7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4uZ2FudHQtdGFzay1sYWJlbC1tYXJrZG93biBwIHtcclxuXHRtYXJnaW46IDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmdhbnR0LW1pbGVzdG9uZS1sYWJlbC1jb250YWluZXIgcCB7XHJcblx0bWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xyXG5cdG1hcmdpbi1ibG9jay1lbmQ6IDA7XHJcblx0bWFyZ2luLWlubGluZS1zdGFydDogMDtcclxuXHRtYXJnaW4taW5saW5lLWVuZDogMDtcclxuXHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0bGluZS1oZWlnaHQ6IDEuMztcclxuXHRwYWRkaW5nOiAwIDJweDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWl0ZW0uc3RhdHVzLWRvbmUgLmdhbnR0LXRhc2stbGFiZWwtbWFya2Rvd24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuLmdhbnR0LXRhc2staXRlbS5zdGF0dXMtY2FuY2VsbGVkIC5nYW50dC10YXNrLWxhYmVsLW1hcmtkb3duIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xyXG59XHJcblxyXG4uZ2FudHQtbWlsZXN0b25lLWxhYmVsIHtcclxuXHRmaWxsOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5nYW50dC1maWx0ZXItYXJlYSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblxyXG5cdHdpZHRoOiAxMDAlO1xyXG5cclxuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtMi0yKTtcclxuXHRwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblxyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi5nYW50dC1maWx0ZXItYXJlYSAuZmlsdGVyLWNvbXBvbmVudCB7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLmdhbnR0LW9mZnNjcmVlbi1pbmRpY2F0b3Ige1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IGNhbGMoNTAlICsgMjBweCk7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG5cdHdpZHRoOiA4cHg7XHJcblx0aGVpZ2h0OiA4cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjgsIDEyOCwgMTI4LCAwLjYpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHR6LWluZGV4OiAxMDtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRkaXNwbGF5OiBub25lO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dDtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4uZ2FudHQtb2Zmc2NyZWVuLWluZGljYXRvcltzdHlsZSo9XCJkaXNwbGF5OiBub25lXCJdIHtcclxuXHRvcGFjaXR5OiAwO1xyXG59XHJcblxyXG4uZ2FudHQtb2Zmc2NyZWVuLWluZGljYXRvci1sZWZ0IHtcclxuXHRsZWZ0OiA1cHg7XHJcbn1cclxuXHJcbi5nYW50dC1vZmZzY3JlZW4taW5kaWNhdG9yLXJpZ2h0IHtcclxuXHRyaWdodDogNXB4O1xyXG59XHJcblxyXG4uZ2FudHQtaW5kaWNhdG9yLWNvbnRhaW5lciB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRib3R0b206IDA7XHJcblx0d2lkdGg6IHZhcigtLXNpemUtNC0zKTtcclxuXHR6LWluZGV4OiAxMDtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uZ2FudHQtaW5kaWNhdG9yLWNvbnRhaW5lci1sZWZ0IHtcclxuXHRsZWZ0OiAwO1xyXG59XHJcblxyXG4uZ2FudHQtaW5kaWNhdG9yLWNvbnRhaW5lci1yaWdodCB7XHJcblx0cmlnaHQ6IDA7XHJcbn1cclxuXHJcbi5nYW50dC1zaW5nbGUtaW5kaWNhdG9yIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdHdpZHRoOiB2YXIoLS1zaXplLTQtMik7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG5cdGN1cnNvcjogZGVmYXVsdDtcclxufVxyXG5cclxuLmdhbnR0LXNpbmdsZS1pbmRpY2F0b3I6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLmdhbnR0LWNoYXJ0LWNvbnRhaW5lciAuZ2FudHQtaW5kaWNhdG9yLWNvbnRhaW5lciB7XHJcblx0dG9wOiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQsIDQwcHgpICsgdmFyKC0tZmlsdGVyLWhlaWdodCwgMHB4KSk7XHJcblx0Ym90dG9tOiAxNXB4O1xyXG59XHJcblxyXG4uZ2FudHQtY2hhcnQtY29udGFpbmVyIC5nYW50dC1pbmRpY2F0b3ItY29udGFpbmVyLXJpZ2h0IHtcclxuXHRyaWdodDogMTVweDtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stbGFiZWwgcCB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGxpbmUtaGVpZ2h0OiB2YXIoLS1nYW50dC1iYXItaGVpZ2h0KTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuIiwgIi8qIHRhc2stcHJvcGVydHkgVmlldyBTdHlsZXMgKi9cclxuLnRhc2stcHJvcGVydHktY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LWNvbnRlbnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LWxlZnQtY29sdW1uIHtcclxuXHR3aWR0aDogbWF4KDEyMHB4LCAzMCUpO1xyXG5cdG1pbi13aWR0aDogbWluKDEyMHB4LCAzMCUpO1xyXG5cdG1heC13aWR0aDogMzAwcHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnRhc2stcHJvcGVydHktbGVmdC1jb2x1bW4ge1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktcmlnaHQtY29sdW1uIHtcclxuXHRmbGV4OiAxO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4udGFzay1wcm9wZXJ0eS1zaWRlYmFyLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtMTApO1xyXG59XHJcblxyXG4udGFzay1wcm9wZXJ0eS1zaWRlYmFyLXRpdGxlIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG5cclxuLm11bHRpLXNlbGVjdC1tb2RlIC50YXNrLXByb3BlcnR5LW11bHRpLXNlbGVjdC1idG4ge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG59XHJcblxyXG4udGFzay1wcm9wZXJ0eS1tdWx0aS1zZWxlY3QtYnRuIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LW11bHRpLXNlbGVjdC1idG46aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LXNpZGViYXItbGlzdCB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktbGlzdC1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogNHB4IDEycHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktbGlzdC1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktbGlzdC1pdGVtLnNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZSk7XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LWljb24ge1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4udGFzay1wcm9wZXJ0eS1uYW1lIHtcclxuXHRmbGV4OiAxO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktY291bnQge1xyXG5cdG1hcmdpbi1sZWZ0OiA4cHg7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcblx0cGFkZGluZzogMXB4IDZweDtcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktdGFzay1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC00KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGhlaWdodDogdmFyKC0tc2l6ZS00LTEwKTtcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktdGFzay10aXRsZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRmb250LXNpemU6IDE2cHg7XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LXRhc2stY291bnQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktdGFzay1saXN0IHtcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LWVtcHR5LXN0YXRlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0cGFkZGluZzogMTZweDtcclxufVxyXG5cclxuLyogdGFzay1wcm9wZXJ0eSBWaWV3IC0gTW9iaWxlICovXHJcbi5pcy1waG9uZSAudGFzay1wcm9wZXJ0eS1sZWZ0LWNvbHVtbiB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IDA7XHJcblx0dG9wOiAwO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR6LWluZGV4OiAxMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLWluLW91dDtcclxuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAudGFzay1wcm9wZXJ0eS1sZWZ0LWNvbHVtbi5pcy12aXNpYmxlIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAudGFzay1wcm9wZXJ0eS1zaWRlYmFyLXRvZ2dsZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnRhc2stcHJvcGVydHktc2lkZWJhci1jbG9zZSB7XHJcblx0LS1pY29uLXNpemU6IHZhcigtLXNpemUtNC00KTtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cmlnaHQ6IDEwcHg7XHJcblx0ei1pbmRleDogMTU7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4vKiBBZGQgb3ZlcmxheSB3aGVuIGxlZnQgY29sdW1uIGlzIHZpc2libGUgb24gbW9iaWxlICovXHJcbi5pcy1waG9uZVxyXG5cdC50YXNrLXByb3BlcnR5LWNvbnRhaW5lcjpoYXMoXHJcblx0XHQudGFzay1wcm9wZXJ0eS1sZWZ0LWNvbHVtbi5pcy12aXNpYmxlXHJcblx0KTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1jb3Zlcik7XHJcblx0b3BhY2l0eTogMC41O1xyXG5cdHotaW5kZXg6IDU7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4vKiBBZGQgcG9zaXRpb24gcmVsYXRpdmUgdG8gY29udGFpbmVyIGZvciBhYnNvbHV0ZSBwb3NpdGlvbmluZyBjb250ZXh0ICovXHJcbi5pcy1waG9uZSAudGFzay1wcm9wZXJ0eS1jb250YWluZXIge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnRhc2stcHJvcGVydHktc2lkZWJhci1oZWFkZXI6aGFzKC50YXNrLXByb3BlcnR5LXNpZGViYXItY2xvc2UpIHtcclxuXHRwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zaXplLTQtMTIpO1xyXG59XHJcbiIsICIvKiBUYXNrIFRhYmxlIFZpZXcgU3R5bGVzICovXHJcbi50YWJsZS12aWV3LWFkYXB0ZXIge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDA7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG59XHJcblxyXG4udGFzay10YWJsZSB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxuXHR0YWJsZS1sYXlvdXQ6IGZpeGVkO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0ZmxleDogMTtcclxuXHRtaW4taGVpZ2h0OiAwO1xyXG5cdC8qIEVuc3VyZSB0YWJsZSB0YWtlcyBmdWxsIHdpZHRoIGV2ZW4gd2l0aCBtYW55IGNvbHVtbnMgKi9cclxuXHRtaW4td2lkdGg6IG1heC1jb250ZW50O1xyXG59XHJcblxyXG4vKiBUYWJsZSB3cmFwcGVyIGZvciBzY3JvbGxpbmcgKi9cclxuLnRhc2stdGFibGUtd3JhcHBlciB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdzogYXV0bztcclxuXHRtaW4taGVpZ2h0OiAwO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHQvKiBFbmFibGUgYm90aCBob3Jpem9udGFsIGFuZCB2ZXJ0aWNhbCBzY3JvbGxpbmcgKi9cclxuXHRvdmVyZmxvdy14OiBhdXRvO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0LyogU21vb3RoIHNjcm9sbGluZyAqL1xyXG5cdHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xyXG59XHJcblxyXG4vKiBIZWFkZXIgU3R5bGVzICovXHJcbi50YXNrLXRhYmxlLWhlYWRlciB7XHJcblx0cG9zaXRpb246IHN0aWNreTtcclxuXHR0b3A6IDA7XHJcblx0ei1pbmRleDogMTA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0LyogRW5zdXJlIGhlYWRlciBkb2Vzbid0IGJyZWFrIHdoZW4gc2Nyb2xsaW5nIGhvcml6b250YWxseSAqL1xyXG5cdG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWhlYWRlci1yb3cge1xyXG5cdGhlaWdodDogNDBweDtcclxufVxyXG5cclxuLnRhc2stdGFibGUtaGVhZGVyLWNlbGwge1xyXG5cdHBhZGRpbmc6IDhweCAxMnB4O1xyXG5cdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0LyogUHJldmVudCBoZWFkZXIgY2VsbHMgZnJvbSBzaHJpbmtpbmcgdG9vIG11Y2ggKi9cclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1oZWFkZXItY2VsbDpsYXN0LWNoaWxkIHtcclxuXHRib3JkZXItcmlnaHQ6IG5vbmU7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWhlYWRlci1jZWxsLnNvcnRhYmxlIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWhlYWRlci1jZWxsLnNvcnRhYmxlOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtaGVhZGVyLWNvbnRlbnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0Z2FwOiA0cHg7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWhlYWRlci10aXRsZSB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXNvcnQtaWNvbiB7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdG9wYWNpdHk6IDAuNTtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxufVxyXG5cclxuLnRhc2stdGFibGUtc29ydC1pY29uLmFzYyxcclxuLnRhc2stdGFibGUtc29ydC1pY29uLmRlc2Mge1xyXG5cdG9wYWNpdHk6IDE7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtcmVzaXplLWhhbmRsZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRyaWdodDogMDtcclxuXHR3aWR0aDogNHB4O1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRjdXJzb3I6IGNvbC1yZXNpemU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1yZXNpemUtaGFuZGxlOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIEJvZHkgU3R5bGVzICovXHJcbi50YXNrLXRhYmxlLWJvZHkge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXJvdyB7XHJcblx0aGVpZ2h0OiA0MHB4O1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1yb3c6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1yb3cuc2VsZWN0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtcm93Om50aC1jaGlsZChldmVuKSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtcm93Om50aC1jaGlsZChldmVuKTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXJvdzpudGgtY2hpbGQoZXZlbikuc2VsZWN0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtY2VsbCB7XHJcblx0cGFkZGluZzogOHB4IDEycHg7XHJcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWNlbGw6bGFzdC1jaGlsZCB7XHJcblx0Ym9yZGVyLXJpZ2h0OiBub25lO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1jZWxsLmVkaXRpbmcge1xyXG5cdHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi8qIFRyZWUgVmlldyBTdHlsZXMgKi9cclxuLnRhc2stdGFibGUtdHJlZS1pbmRlbnQge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA0cHg7IFxyXG59XHJcblxyXG4udGFzay10YWJsZS1jZWxsOmhhcygudGFzay10YWJsZS1leHBhbmQtYnRuKSB7XHJcblx0cGFkZGluZy1sZWZ0OiAwO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1yb3cudGFzay10YWJsZS1zdWJ0YXNrIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWV4cGFuZC1idG4ge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxuXHR3aWR0aDogMjBweDtcclxuXHRoZWlnaHQ6IDIwcHg7XHJcblx0cGFkZGluZzogMDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xyXG5cdGZvbnQtc2l6ZTogMTBweDtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWV4cGFuZC1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1yb3ctbGV2ZWwtMSAudGFzay10YWJsZS1jZWxsOmZpcnN0LWNoaWxkIHtcclxuXHRwYWRkaW5nLWxlZnQ6IDMycHg7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXJvdy1sZXZlbC0yIC50YXNrLXRhYmxlLWNlbGw6Zmlyc3QtY2hpbGQge1xyXG5cdHBhZGRpbmctbGVmdDogNTJweDtcclxufVxyXG5cclxuLnRhc2stdGFibGUtcm93LWxldmVsLTMgLnRhc2stdGFibGUtY2VsbDpmaXJzdC1jaGlsZCB7XHJcblx0cGFkZGluZy1sZWZ0OiA3MnB4O1xyXG59XHJcblxyXG4udGFzay10YWJsZS1yb3ctbGV2ZWwtNCAudGFzay10YWJsZS1jZWxsOmZpcnN0LWNoaWxkIHtcclxuXHRwYWRkaW5nLWxlZnQ6IDkycHg7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXJvdy1sZXZlbC01IC50YXNrLXRhYmxlLWNlbGw6Zmlyc3QtY2hpbGQge1xyXG5cdHBhZGRpbmctbGVmdDogMTEycHg7XHJcbn1cclxuXHJcbi8qIENlbGwgVHlwZSBTdHlsZXMgKi9cclxuLnRhc2stdGFibGUtdGV4dCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtbnVtYmVyIHtcclxuXHR0ZXh0LWFsaWduOiByaWdodDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcztcclxufVxyXG5cclxuLyogU3RhdHVzIENlbGwgKi9cclxuLnRhc2stdGFibGUtc3RhdHVzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA2cHg7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXN0YXR1cy1pY29uIHtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxufVxyXG5cclxuLnRhc2stdGFibGUtc3RhdHVzLXRleHQge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLnRhc2stdGFibGUtc3RhdHVzLmNvbXBsZXRlZCAudGFzay10YWJsZS1zdGF0dXMtaWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtc3VjY2Vzcyk7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXN0YXR1cy5pbi1wcm9ncmVzcyAudGFzay10YWJsZS1zdGF0dXMtaWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtd2FybmluZyk7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXN0YXR1cy5hYmFuZG9uZWQgLnRhc2stdGFibGUtc3RhdHVzLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtc3RhdHVzLnBsYW5uZWQgLnRhc2stdGFibGUtc3RhdHVzLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtc3RhdHVzLm5vdC1zdGFydGVkIC50YXNrLXRhYmxlLXN0YXR1cy1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcbn1cclxuXHJcbi8qIFByaW9yaXR5IENlbGwgKi9cclxuLnRhc2stdGFibGUtcHJpb3JpdHkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDZweDtcclxufVxyXG5cclxuLnRhc2stdGFibGUtcHJpb3JpdHkuY2xpY2thYmxlLXByaW9yaXR5IHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0cGFkZGluZzogNHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXByaW9yaXR5LmNsaWNrYWJsZS1wcmlvcml0eTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXByaW9yaXR5LWljb24ge1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG59XHJcblxyXG4udGFzay10YWJsZS1wcmlvcml0eS1pY29uLmhpZ2gge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtcHJpb3JpdHktaWNvbi5tZWRpdW0ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmcpO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1wcmlvcml0eS1pY29uLmxvdyB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1wcmlvcml0eS10ZXh0IHtcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXByaW9yaXR5LWVtcHR5IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4vKiBEYXRlIENlbGwgKi9cclxuLnRhc2stdGFibGUtZGF0ZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogMnB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XHJcblx0cGFkZGluZzogNHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxufVxyXG5cclxuLnRhc2stdGFibGUtZGF0ZTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWRhdGUtdGV4dCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1kYXRlLXJlbGF0aXZlIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLnRhc2stdGFibGUtZGF0ZS1yZWxhdGl2ZS50b2RheSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtc3VjY2Vzcyk7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWRhdGUtcmVsYXRpdmUudG9tb3Jyb3cge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWRhdGUtcmVsYXRpdmUueWVzdGVyZGF5IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWRhdGUtcmVsYXRpdmUub3ZlcmR1ZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1kYXRlLXJlbGF0aXZlLnVwY29taW5nIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtZGF0ZS1lbXB0eSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxufVxyXG5cclxuLyogVGFncyBDZWxsICovXHJcbi50YXNrLXRhYmxlLXRhZ3Mge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdGdhcDogNHB4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXRhZy1jaGlwIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxuXHRwYWRkaW5nOiAycHggNnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4udGFzay10YWJsZS10YWdzLWVtcHR5IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4vKiBJbmxpbmUgRWRpdGluZyBJbnB1dHMgKi9cclxuLnRhc2stdGFibGUtdGV4dC1pbnB1dCxcclxuLnRhc2stdGFibGUtdGFncy1pbnB1dCB7XHJcblx0Ym9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XHJcblx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuXHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcblx0Zm9udDogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnRhc2stdGFibGUtdGV4dC1pbnB1dDpmb2N1cyxcclxuLnRhc2stdGFibGUtdGFncy1pbnB1dDpmb2N1cyB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1mb3JtLWZpZWxkKSAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweCAhaW1wb3J0YW50O1xyXG5cdHBhZGRpbmc6IDJweCA0cHggIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogVGFzayBDb3VudCBJY29uICovXHJcbi50YXNrLWNvdW50LWljb24ge1xyXG5cdGZvbnQtc2l6ZTogMTZweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG59XHJcblxyXG4udGFzay10YWJsZS1lbXB0eS1yb3cge1xyXG5cdGhlaWdodDogODBweDtcclxufVxyXG5cclxuLnRhc2stdGFibGUtZW1wdHktY2VsbCB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuLyogTG9hZGluZyBTdGF0ZSAqL1xyXG4udGFzay10YWJsZS1sb2FkaW5nIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiA1MCU7XHJcblx0bGVmdDogNTAlO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG5cdHBhZGRpbmc6IDIwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdHotaW5kZXg6IDEwMDtcclxufVxyXG5cclxuLyogUmVzaXplIFN0YXRlICovXHJcbi50YXNrLXRhYmxlLnJlc2l6aW5nIHtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxufVxyXG5cclxuLnRhc2stdGFibGUucmVzaXppbmcgKiB7XHJcblx0Y3Vyc29yOiBjb2wtcmVzaXplICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIFZpcnR1YWwgc2Nyb2xsaW5nIHN0eWxlcyAqL1xyXG4udmlydHVhbC1zY3JvbGwtc3BhY2VyIHtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHR2aXNpYmlsaXR5OiBoaWRkZW47XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgRGVzaWduICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC50YXNrLXRhYmxlLWNvbnRhaW5lciB7XHJcblx0XHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0fVxyXG5cclxuXHQudGFzay10YWJsZS13cmFwcGVyIHtcclxuXHRcdG92ZXJmbG93LXg6IGF1dG87XHJcblx0fVxyXG5cclxuXHQudGFzay10YWJsZSB7XHJcblx0XHRtaW4td2lkdGg6IDgwMHB4OyAvKiBFbnN1cmUgdGFibGUgZG9lc24ndCBnZXQgdG9vIG5hcnJvdyAqL1xyXG5cdH1cclxuXHJcblx0LnRhc2stdGFibGUtaGVhZGVyLWNlbGwsXHJcblx0LnRhc2stdGFibGUtY2VsbCB7XHJcblx0XHRwYWRkaW5nOiA2cHggOHB4O1xyXG5cdH1cclxuXHJcblx0LnRhc2stdGFibGUtcm93IHtcclxuXHRcdGhlaWdodDogMzZweDtcclxuXHR9XHJcblxyXG5cdC50YXNrLXRhYmxlLWhlYWRlci1yb3cge1xyXG5cdFx0aGVpZ2h0OiAzNnB4O1xyXG5cdH1cclxufVxyXG5cclxuLyogRGFyayBNb2RlIEFkanVzdG1lbnRzICovXHJcbi50aGVtZS1kYXJrIC50YXNrLXRhYmxlLWNvbnRhaW5lciB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC50YXNrLXRhYmxlLXJvdzpudGgtY2hpbGQoZXZlbikge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpO1xyXG59XHJcblxyXG4vKiBIaWdoIENvbnRyYXN0IE1vZGUgKi9cclxuQG1lZGlhIChwcmVmZXJzLWNvbnRyYXN0OiBoaWdoKSB7XHJcblx0LnRhc2stdGFibGUtY29udGFpbmVyIHtcclxuXHRcdGJvcmRlci13aWR0aDogMnB4O1xyXG5cdH1cclxuXHJcblx0LnRhc2stdGFibGUtaGVhZGVyLWNlbGwsXHJcblx0LnRhc2stdGFibGUtY2VsbCB7XHJcblx0XHRib3JkZXItd2lkdGg6IDFweDtcclxuXHR9XHJcblxyXG5cdC50YXNrLXRhYmxlLXJvdyB7XHJcblx0XHRib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XHJcblx0fVxyXG59XHJcblxyXG4vKiBQcmludCBTdHlsZXMgKi9cclxuQG1lZGlhIHByaW50IHtcclxuXHQudGFzay10YWJsZS1jb250YWluZXIge1xyXG5cdFx0Ym9yZGVyOiBub25lO1xyXG5cdFx0b3ZlcmZsb3c6IHZpc2libGU7XHJcblx0XHRoZWlnaHQ6IGF1dG87XHJcblx0fVxyXG5cclxuXHQudGFzay10YWJsZS1oZWFkZXIge1xyXG5cdFx0cG9zaXRpb246IHN0YXRpYztcclxuXHR9XHJcblxyXG5cdC50YXNrLXRhYmxlLXJlc2l6ZS1oYW5kbGUge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblxyXG5cdC50YXNrLXRhYmxlLWV4cGFuZC1idG4ge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIFZpcnR1YWwgc2Nyb2xsaW5nIHN0eWxlcyAqL1xyXG4udmlydHVhbC1zY3JvbGwtc3BhY2VyLXRvcCB7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi52aXJ0dWFsLXNjcm9sbC1zcGFjZXItdG9wIHRkIHtcclxuXHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogQ29udGV4dCBtZW51IHN0eWxlcyAqL1xyXG4udGFzay10YWJsZS1jb250ZXh0LW1lbnUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxuXHR6LWluZGV4OiAxMDAwO1xyXG5cdG1pbi13aWR0aDogMTIwcHg7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWNvbnRleHQtbWVudS1pdGVtIHtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzIGVhc2U7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWNvbnRleHQtbWVudS1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLyogRGF0ZSBpbnB1dCBpbXByb3ZlbWVudHMgKi9cclxuLnRhc2stdGFibGUtZGF0ZS1pbnB1dCB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRwYWRkaW5nOiA0cHggOHB4O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1kYXRlLWlucHV0OmhvdmVyIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtZGF0ZS1pbnB1dDpmb2N1cyB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcbn1cclxuXHJcbi8qIEF1dG9jb21wbGV0ZSBpbnB1dCBpbXByb3ZlbWVudHMgKi9cclxuLnRhc2stdGFibGUtcHJvamVjdC1pbnB1dCxcclxuLnRhc2stdGFibGUtY29udGV4dC1pbnB1dCxcclxuLnRhc2stdGFibGUtdGFncy1pbnB1dCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdHBhZGRpbmc6IDRweCA4cHg7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXByb2plY3QtaW5wdXQ6Zm9jdXMsXHJcbi50YXNrLXRhYmxlLWNvbnRleHQtaW5wdXQ6Zm9jdXMsXHJcbi50YXNrLXRhYmxlLXRhZ3MtaW5wdXQ6Zm9jdXMge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4vKiBSb3cgc2VsZWN0aW9uIGltcHJvdmVtZW50cyAqL1xyXG4udGFzay10YWJsZS1yb3cuc2VsZWN0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1yb3c6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXItd2Vhayk7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgaW1wcm92ZW1lbnRzICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC50YXNrLXRhYmxlIHtcclxuXHRcdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0fVxyXG5cclxuXHR0aFtkYXRhLWNvbHVtbi1pZD1cInJvd051bWJlclwiXSB7XHJcblx0XHRtYXgtd2lkdGg6IDQwcHggIWltcG9ydGFudDtcclxuXHRcdG1pbi13aWR0aDogNDBweCAhaW1wb3J0YW50O1xyXG5cdFx0d2lkdGg6IDQwcHggIWltcG9ydGFudDtcclxuXHR9XHJcblxyXG5cdC50YXNrLXRhYmxlLXRyZWUtY29udGFpbmVyIHtcclxuXHRcdGdhcDogMCAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHJcblx0LnRhc2stdGFibGUtZXhwYW5kLWJ0biB7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcclxuXHR9XHJcblxyXG5cdHRkW2RhdGEtY29sdW1uLWlkPVwicm93TnVtYmVyXCJdIHtcclxuXHRcdG1heC13aWR0aDogNDBweCAhaW1wb3J0YW50O1xyXG5cdFx0bWluLXdpZHRoOiA0MHB4ICFpbXBvcnRhbnQ7XHJcblx0XHR3aWR0aDogNDBweCAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHJcblx0LnRhc2stdGFibGUtaGVhZGVyLWNlbGwsXHJcblx0LnRhc2stdGFibGUtY2VsbCB7XHJcblx0XHRwYWRkaW5nOiA2cHggNHB4O1xyXG5cdH1cclxufVxyXG5cclxuLyogVGFzayBUYWJsZSBIZWFkZXIgQmFyIFN0eWxlcyAqL1xyXG4udGFzay10YWJsZS1oZWFkZXItYmFyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDZweCA4cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4IDZweCAwIDA7XHJcblx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRtaW4taGVpZ2h0OiA0MHB4O1xyXG59XHJcblxyXG4udGFibGUtaGVhZGVyLWxlZnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDEycHg7XHJcbn1cclxuXHJcbi50YWJsZS1oZWFkZXItcmlnaHQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDhweDtcclxufVxyXG5cclxuLyogVGFzayBDb3VudCBEaXNwbGF5ICovXHJcbi50YXNrLWNvdW50LWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogOHB4O1xyXG5cdHBhZGRpbmc6IDZweCAxMnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnRhc2stY291bnQtdGV4dCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi8qIENvbnRyb2wgQnV0dG9ucyAqL1xyXG4udGFibGUtY29udHJvbHMtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA4cHg7XHJcbn1cclxuXHJcbi50YWJsZS1jb250cm9sLWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNnB4O1xyXG5cdHBhZGRpbmc6IDhweCAxMnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcblxyXG5cdGJveC1zaGFkb3c6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi50YWJsZS1jb250cm9sLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi50YWJsZS1jb250cm9sLWJ0bjphY3RpdmUge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlKTtcclxufVxyXG5cclxuLnRyZWUtbW9kZS1idG4uYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLnRyZWUtbW9kZS1pY29uLFxyXG4ucmVmcmVzaC1pY29uLFxyXG4uY29sdW1uLWljb24ge1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi50cmVlLW1vZGUtdGV4dCxcclxuLnJlZnJlc2gtdGV4dCxcclxuLmNvbHVtbi10ZXh0IHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4uZHJvcGRvd24tYXJyb3cge1xyXG5cdGZvbnQtc2l6ZTogMTBweDtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xyXG59XHJcblxyXG4vKiBDb2x1bW4gRHJvcGRvd24gKi9cclxuLmNvbHVtbi1kcm9wZG93biB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uY29sdW1uLWRyb3Bkb3duLW1lbnUge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDEwMCU7XHJcblx0cmlnaHQ6IDA7XHJcblx0bWFyZ2luLXRvcDogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbCk7XHJcblx0ei1pbmRleDogMTAwMDtcclxuXHRtaW4td2lkdGg6IDIwMHB4O1xyXG5cdG1heC1oZWlnaHQ6IDMwMHB4O1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi5jb2x1bW4tdG9nZ2xlLWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDhweDtcclxuXHRwYWRkaW5nOiA4cHggMTJweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5jb2x1bW4tdG9nZ2xlLWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4uY29sdW1uLXRvZ2dsZS1jaGVja2JveCB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmNvbHVtbi10b2dnbGUtbGFiZWwge1xyXG5cdGZsZXg6IDE7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgRGVzaWduIGZvciBIZWFkZXIgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0LnRhc2stdGFibGUtaGVhZGVyLWJhciB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdFx0Z2FwOiAxMnB4O1xyXG5cdFx0YWxpZ24taXRlbXM6IHN0cmV0Y2g7XHJcblx0fVxyXG5cclxuXHQudGFibGUtaGVhZGVyLWxlZnQge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblxyXG5cdC50YWJsZS1oZWFkZXItbGVmdCxcclxuXHQudGFibGUtaGVhZGVyLXJpZ2h0IHtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdH1cclxuXHJcblx0LnRhYmxlLWNvbnRyb2xzLWNvbnRhaW5lciB7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHR9XHJcblxyXG5cdC50YWJsZS1jb250cm9sLWJ0biB7XHJcblx0XHRmbGV4OiAxO1xyXG5cdFx0bWluLXdpZHRoOiAxMDBweDtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdH1cclxuXHJcblx0LmNvbHVtbi1kcm9wZG93bi1tZW51IHtcclxuXHRcdHJpZ2h0OiBhdXRvO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxufVxyXG5cclxuLyogRGFyayBNb2RlIEFkanVzdG1lbnRzIGZvciBIZWFkZXIgKi9cclxuLnRoZW1lLWRhcmsgLnRhc2stdGFibGUtaGVhZGVyLWJhciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcclxufVxyXG5cclxuLnRoZW1lLWRhcmsgLmNvbHVtbi1kcm9wZG93bi1tZW51IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktYWx0KTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxufVxyXG5cclxuLyogQ3VzdG9tIEF1dG8tU3VnZ2VzdCBEcm9wZG93biAqL1xyXG4uY3VzdG9tLXN1Z2dlc3QtZHJvcGRvd24ge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbCk7XHJcblx0ei1pbmRleDogMTAwMDtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bWF4LWhlaWdodDogMjAwcHg7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRtaW4td2lkdGg6IDE1MHB4O1xyXG59XHJcblxyXG4uY3VzdG9tLXN1Z2dlc3QtZHJvcGRvd24gLnN1Z2dlc3Rpb24taXRlbSB7XHJcblx0cGFkZGluZzogOHB4IDEycHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmN1c3RvbS1zdWdnZXN0LWRyb3Bkb3duIC5zdWdnZXN0aW9uLWl0ZW06bGFzdC1jaGlsZCB7XHJcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcclxufVxyXG5cclxuLmN1c3RvbS1zdWdnZXN0LWRyb3Bkb3duIC5zdWdnZXN0aW9uLWl0ZW06aG92ZXIsXHJcbi5jdXN0b20tc3VnZ2VzdC1kcm9wZG93biAuc3VnZ2VzdGlvbi1pdGVtLnNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLmN1c3RvbS1zdWdnZXN0LWRyb3Bkb3duIC5zdWdnZXN0aW9uLWl0ZW0uc2VsZWN0ZWQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIEVuaGFuY2VkIFRyZWUgVmlldyBTdHlsZXMgKi9cclxuLnRhc2stdGFibGUtc3VidGFzayB7XHJcblx0Ym9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXBhcmVudCAudGFzay10YWJsZS1jZWxsOmZpcnN0LWNoaWxkIHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1zdWJ0YXNrLWNlbGwge1xyXG5cdGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItZm9jdXMpO1xyXG59XHJcblxyXG4udGFzay10YWJsZS10cmVlLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNnB4O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4udGFzay10YWJsZS10cmVlLXN0cnVjdHVyZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMnB4O1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4udGFzay10YWJsZS10cmVlLWxpbmUge1xyXG5cdGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcclxuXHRsaW5lLWhlaWdodDogMTtcclxuXHR3aWR0aDogMTZweDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXRyZWUtY29ubmVjdG9yIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXRyZWUtdmVydGljYWwge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtc3VidGFzay1pbmRpY2F0b3Ige1xyXG5cdGZvbnQtc2l6ZTogMTBweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdG1hcmdpbi1yaWdodDogNnB4O1xyXG5cdG1hcmdpbi1sZWZ0OiA0cHg7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXRvcC1sZXZlbC1leHBhbmQge1xyXG5cdG1hcmdpbi1yaWdodDogNnB4O1xyXG59XHJcblxyXG4udGFzay10YWJsZS1jb250ZW50LXdyYXBwZXIge1xyXG5cdGZsZXg6IDE7XHJcblx0bWluLXdpZHRoOiAwO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1jaGlsZC1pbmRpY2F0b3Ige1xyXG5cdGZvbnQtc2l6ZTogMTBweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luLWxlZnQ6IDZweDtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLyogRW5oYW5jZWQgU3RhdHVzIENlbGwgKi9cclxuLnRhc2stdGFibGUtc3RhdHVzLmNsaWNrYWJsZS1zdGF0dXMge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRwYWRkaW5nOiA0cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycztcclxufVxyXG5cclxuLnRhc2stdGFibGUtc3RhdHVzLmNsaWNrYWJsZS1zdGF0dXM6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4vKiBFbmhhbmNlZCBQcmlvcml0eSBJY29ucyAqL1xyXG4udGFzay10YWJsZS1wcmlvcml0eS1pY29uLmhpZ2hlc3Qge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHRmaWx0ZXI6IGJyaWdodG5lc3MoMS4yKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtcHJpb3JpdHktaWNvbi5sb3dlc3Qge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcclxufVxyXG5cclxuLyogVHJlZSBleHBhbmQgYnV0dG9uIGltcHJvdmVtZW50cyAqL1xyXG4udGFzay10YWJsZS1leHBhbmQtYnRuLmNsaWNrYWJsZS1pY29uIHtcclxuXHRvcGFjaXR5OiAwLjc7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWV4cGFuZC1idG4uY2xpY2thYmxlLWljb246aG92ZXIge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi8qIE92ZXJyaWRlIGV4aXN0aW5nIHRyZWUgaW5kZW50YXRpb24gdG8gdXNlIG5ldyBzeXN0ZW0gKi9cclxuLnRhc2stdGFibGUtcm93LWxldmVsLTEgLnRhc2stdGFibGUtY2VsbDpmaXJzdC1jaGlsZCxcclxuLnRhc2stdGFibGUtcm93LWxldmVsLTIgLnRhc2stdGFibGUtY2VsbDpmaXJzdC1jaGlsZCxcclxuLnRhc2stdGFibGUtcm93LWxldmVsLTMgLnRhc2stdGFibGUtY2VsbDpmaXJzdC1jaGlsZCxcclxuLnRhc2stdGFibGUtcm93LWxldmVsLTQgLnRhc2stdGFibGUtY2VsbDpmaXJzdC1jaGlsZCxcclxuLnRhc2stdGFibGUtcm93LWxldmVsLTUgLnRhc2stdGFibGUtY2VsbDpmaXJzdC1jaGlsZCB7XHJcblx0cGFkZGluZy1sZWZ0OiAxMnB4OyAvKiBSZXNldCB0byBub3JtYWwgcGFkZGluZywgbGV0IHRyZWUgc3RydWN0dXJlIGhhbmRsZSBpbmRlbnRhdGlvbiAqL1xyXG59XHJcbiIsICIvKiBUYXNrIEdlbml1cyAtIFF1YWRyYW50IFZpZXcgU3R5bGVzICovXHJcblxyXG4vKiBNYWluIFF1YWRyYW50IENvbnRhaW5lciAqL1xyXG4udGctcXVhZHJhbnQtY29tcG9uZW50LWNvbnRhaW5lciB7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIEhlYWRlciBTZWN0aW9uICovXHJcbi50Zy1xdWFkcmFudC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpIHZhcigtLXNpemUtNC00KTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXNlbWlib2xkKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbjogMDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNvbnRyb2xzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMyk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1zb3J0LXNlbGVjdCB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpIHZhcigtLXNpemUtMi0zKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtc29ydC1zZWxlY3Q6aG92ZXIge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtc29ydC1zZWxlY3Q6Zm9jdXMge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtdG9nZ2xlLWVtcHR5IHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMik7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuXHR3aWR0aDogMjhweDtcclxuXHRoZWlnaHQ6IDI4cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtdG9nZ2xlLWVtcHR5OmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4vKiBGaWx0ZXIgU2VjdGlvbiAqL1xyXG4udGctcXVhZHJhbnQtZmlsdGVyLWNvbnRhaW5lciB7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLyogUXVhZHJhbnQgR3JpZCAqL1xyXG4udGctcXVhZHJhbnQtZ3JpZCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XHJcblx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnIgMWZyO1xyXG5cdGdhcDogMXB4O1xyXG5cdGZsZXg6IDE7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi8qIEluZGl2aWR1YWwgUXVhZHJhbnQgQ29sdW1ucyAqL1xyXG4udGctcXVhZHJhbnQtY29sdW1uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRtaW4taGVpZ2h0OiAwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY29sdW1uLS1oaWRkZW4ge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIFF1YWRyYW50IEhlYWRlcnMgKi9cclxuLnRnLXF1YWRyYW50LWNvbHVtbiAudGctcXVhZHJhbnQtaGVhZGVyIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtaW4taGVpZ2h0OiB2YXIoLS1zaXplLTQtMTIpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtdGl0bGUtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtcHJpb3JpdHkge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdG9wYWNpdHk6IDAuODtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNvbHVtbiAudGctcXVhZHJhbnQtdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtc2VtaWJvbGQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtZGVzY3JpcHRpb24ge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjM7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb3VudCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0yKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtbWVkaXVtKTtcclxufVxyXG5cclxuLyogUXVhZHJhbnQgQ29udGVudCBBcmVhcyAqL1xyXG4udGctcXVhZHJhbnQtY29sdW1uLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMyk7XHJcblx0bWluLWhlaWdodDogMTAwcHg7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG5cdHdpZHRoOiA4cHg7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY29sdW1uLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY29sdW1uLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tY29udGVudC0tZHJvcC1hY3RpdmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlcjogMnB4IGRhc2hlZCB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxufVxyXG5cclxuLyogUXVhZHJhbnQgU3BlY2lmaWMgU3R5bGluZyAtIFN1YnRsZSBhY2NlbnQgYmFycyAqL1xyXG4ucXVhZHJhbnQtdXJnZW50LWltcG9ydGFudCAudGctcXVhZHJhbnQtaGVhZGVyOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdGhlaWdodDogM3B4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdG9wYWNpdHk6IDAuNjtcclxufVxyXG5cclxuLnF1YWRyYW50LW5vdC11cmdlbnQtaW1wb3J0YW50IC50Zy1xdWFkcmFudC1oZWFkZXI6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0cmlnaHQ6IDA7XHJcblx0aGVpZ2h0OiAzcHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItYWNjZW50KTtcclxuXHRvcGFjaXR5OiAwLjY7XHJcbn1cclxuXHJcbi5xdWFkcmFudC11cmdlbnQtbm90LWltcG9ydGFudCAudGctcXVhZHJhbnQtaGVhZGVyOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdGhlaWdodDogM3B4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtd2FybmluZyk7XHJcblx0b3BhY2l0eTogMC42O1xyXG59XHJcblxyXG4ucXVhZHJhbnQtbm90LXVyZ2VudC1ub3QtaW1wb3J0YW50IC50Zy1xdWFkcmFudC1oZWFkZXI6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0cmlnaHQ6IDA7XHJcblx0aGVpZ2h0OiAzcHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0b3BhY2l0eTogMC40O1xyXG59XHJcblxyXG4vKiBUYXNrIENhcmRzICovXHJcbi50Zy1xdWFkcmFudC1jYXJkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZDpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQ6YWN0aXZlIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkOmxhc3QtY2hpbGQge1xyXG5cdG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi8qIENhcmQgSGVhZGVyICovXHJcbi50Zy1xdWFkcmFudC1jYXJkLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1jaGVja2JveCB7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0bWFyZ2luLXRvcDogMnB4O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1hY3Rpb25zIHtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZDpob3ZlciAudGctcXVhZHJhbnQtY2FyZC1hY3Rpb25zIHtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1tb3JlLWJ0biB7XHJcblx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcblx0d2lkdGg6IDI0cHg7XHJcblx0aGVpZ2h0OiAyNHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtbW9yZS1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi8qIENhcmQgQ29udGVudCAqL1xyXG4udGctcXVhZHJhbnQtY2FyZC1jb250ZW50IHtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLXRpdGxlIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcblx0d29yZC13cmFwOiBicmVhay13b3JkO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLXByaW9yaXR5IHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdG1hcmdpbi1sZWZ0OiB2YXIoLS1zaXplLTItMSk7XHJcblx0b3BhY2l0eTogMC44O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC10YWdzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0xKTtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLXRhZyB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtbWVkaXVtKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC10YWc6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC10YWctLXVyZ2VudCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC10YWctLWltcG9ydGFudCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBDYXJkIE1ldGFkYXRhICovXHJcbi50Zy1xdWFkcmFudC1jYXJkLW1ldGFkYXRhIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLWR1ZS1kYXRlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMSk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTItMik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LW1lZGl1bSk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLWR1ZS1kYXRlLWljb24ge1xyXG5cdHdpZHRoOiAxMnB4O1xyXG5cdGhlaWdodDogMTJweDtcclxuXHRvcGFjaXR5OiAwLjc7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLWR1ZS1kYXRlLS11cmdlbnQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmcpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1kdWUtZGF0ZS0tb3ZlcmR1ZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1maWxlLWluZm8ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0b3BhY2l0eTogMC43O1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZDpob3ZlciAudGctcXVhZHJhbnQtY2FyZC1maWxlLWluZm8ge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLWZpbGUtaWNvbiB7XHJcblx0d2lkdGg6IDEycHg7XHJcblx0aGVpZ2h0OiAxMnB4O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1maWxlLW5hbWUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRtYXgtd2lkdGg6IDEyMHB4O1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtbGluZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRvcGFjaXR5OiAwLjY7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtbWVkaXVtKTtcclxufVxyXG5cclxuLyogUHJpb3JpdHkgQ2xhc3NlcyAtIFN1YnRsZSBsZWZ0IGJvcmRlciAqL1xyXG4udGctcXVhZHJhbnQtY2FyZC0tcHJpb3JpdHktaGlnaGVzdCB7XHJcblx0Ym9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtLXByaW9yaXR5LWhpZ2gge1xyXG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tdGV4dC13YXJuaW5nKTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtLXByaW9yaXR5LW1lZGl1bSB7XHJcblx0Ym9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC0tcHJpb3JpdHktbG93IHtcclxuXHRib3JkZXItbGVmdDogM3B4IHNvbGlkIHZhcigtLXRleHQtc3VjY2Vzcyk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLS1wcmlvcml0eS1sb3dlc3Qge1xyXG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi8qIERyYWcgYW5kIERyb3AgU3RhdGVzICovXHJcbi50Zy1xdWFkcmFudC1jYXJkLS1naG9zdCB7XHJcblx0b3BhY2l0eTogMC40O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tY29sb3ItYWNjZW50KTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtLWRyYWdnaW5nIHtcclxuXHQvKiBTdHlsZSBmb3IgdGhlIGNsb25lIGJlaW5nIGRyYWdnZWQgLSBmb2xsb3dpbmcga2FuYmFuIHBhdHRlcm4gKi9cclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbCk7IC8qIE1vcmUgcHJvbWluZW50IHNoYWRvdyAqL1xyXG59XHJcblxyXG4vKiBSZW1vdmUgb2xkIGRyYWcgY2xhc3NlcyB0aGF0IGFyZSBubyBsb25nZXIgdXNlZCAqL1xyXG4udGctcXVhZHJhbnQtY2FyZC0tY2hvc2VuIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC0tZHJhZyB7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LWwpO1xyXG5cdHotaW5kZXg6IDEwMDA7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBFbXB0eSBTdGF0ZSAqL1xyXG4udGctcXVhZHJhbnQtZW1wdHktc3RhdGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGhlaWdodDogMTIwcHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0b3BhY2l0eTogMC44O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtZW1wdHktaWNvbiB7XHJcblx0d2lkdGg6IDMycHg7XHJcblx0aGVpZ2h0OiAzMnB4O1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0zKTtcclxuXHRvcGFjaXR5OiAwLjU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtZW1wdHktbWVzc2FnZSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LW1lZGl1bSk7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgRGVzaWduICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC50Zy1xdWFkcmFudC1ncmlkIHtcclxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoNCwgMWZyKTtcclxuXHR9XHJcblxyXG5cdC50Zy1xdWFkcmFudC1oZWFkZXIge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTMpIHZhcigtLXNpemUtNC0yKTtcclxuXHR9XHJcblxyXG5cdC50Zy1xdWFkcmFudC1jb2x1bW4gLnRnLXF1YWRyYW50LWhlYWRlciB7XHJcblx0XHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMykgdmFyKC0tc2l6ZS00LTIpO1xyXG5cdH1cclxuXHJcblx0LnRnLXF1YWRyYW50LWNhcmQge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTMpO1xyXG5cdH1cclxuXHJcblx0LnRnLXF1YWRyYW50LWNhcmQtdGl0bGUge1xyXG5cdFx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdH1cclxuXHJcblx0LnRnLXF1YWRyYW50LWNvbnRyb2xzIHtcclxuXHRcdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdH1cclxufVxyXG5cclxuLyogRm9jdXMgc3RhdGVzIGZvciBhY2Nlc3NpYmlsaXR5ICovXHJcbi50Zy1xdWFkcmFudC1jYXJkOmZvY3VzIHtcclxuXHRvdXRsaW5lOiAycHggc29saWQgdmFyKC0tY29sb3ItYWNjZW50KTtcclxuXHRvdXRsaW5lLW9mZnNldDogMnB4O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1tb3JlLWJ0bjpmb2N1cyB7XHJcblx0b3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWFjY2VudCk7XHJcblx0b3V0bGluZS1vZmZzZXQ6IDJweDtcclxufVxyXG5cclxuLyogQW5pbWF0aW9uIGZvciBzbW9vdGggaW50ZXJhY3Rpb25zICovXHJcbkBrZXlmcmFtZXMgY2FyZENvbXBsZXRlIHtcclxuXHQwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG5cdH1cclxuXHQ1MCUge1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcclxuXHR9XHJcblx0MTAwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG5cdH1cclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtLWNvbXBsZXRlZCB7XHJcblx0YW5pbWF0aW9uOiBjYXJkQ29tcGxldGUgMC4zcyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLyogSW1wcm92ZWQgaG92ZXIgc3RhdGVzICovXHJcbi50Zy1xdWFkcmFudC1jYXJkOmhvdmVyIC50Zy1xdWFkcmFudC1jYXJkLXRpdGxlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZDpob3ZlciAudGctcXVhZHJhbnQtY2FyZC1wcmlvcml0eSB7XHJcblx0b3BhY2l0eTogMTtcclxufVxyXG5cclxuLyogQmV0dGVyIHZpc3VhbCBoaWVyYXJjaHkgKi9cclxuLnRnLXF1YWRyYW50LWNhcmQtY29udGVudCB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4vKiBMYXp5IGxvYWRpbmcgc3R5bGVzICovXHJcbi50Zy1xdWFkcmFudC1sb2FkaW5nIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAycmVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtaW4taGVpZ2h0OiAxMDBweDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWxvYWRpbmctc3Bpbm5lciB7XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LXNwaW5uZXIge1xyXG5cdHdpZHRoOiAyNHB4O1xyXG5cdGhlaWdodDogMjRweDtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWxvYWRpbmctbWVzc2FnZSB7XHJcblx0Zm9udC1zaXplOiAwLjlyZW07XHJcblx0b3BhY2l0eTogMC43O1xyXG59XHJcblxyXG4vKiBFbmhhbmNlZCBkcmFnIGFuZCBkcm9wIHN0eWxlcyAqL1xyXG4udGctcXVhZHJhbnQtZHJhZ2dpbmcge1xyXG5cdGN1cnNvcjogZ3JhYmJpbmcgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWRyYWdnaW5nICoge1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC0tZ2hvc3Qge1xyXG5cdG9wYWNpdHk6IDAuNDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyOiAycHggZGFzaGVkIHZhcigtLWNvbG9yLWFjY2VudCk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLS1jaG9zZW4ge1xyXG5cdGJveC1zaGFkb3c6IDAgOHB4IDI1cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxuXHR0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xyXG5cdHotaW5kZXg6IDEwMDA7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC0tZHJhZyB7XHJcblx0b3BhY2l0eTogMC44O1xyXG5cdGJveC1zaGFkb3c6IDAgMTJweCAzMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtLWZhbGxiYWNrIHtcclxuXHRvcGFjaXR5OiAwLjk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRib3gtc2hhZG93OiAwIDhweCAyNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tLWRyYWctdGFyZ2V0IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tY29sb3ItYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tY29udGVudC0tZHJvcC1hY3RpdmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcclxuXHRib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tY29sb3ItYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0bWluLWhlaWdodDogNjBweDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tY29udGVudC0tZHJvcC1hY3RpdmU6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJEcm9wIHRhc2sgaGVyZVwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDUwJTtcclxuXHRsZWZ0OiA1MCU7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcblx0Zm9udC1zaXplOiAwLjlyZW07XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRvcGFjaXR5OiAwLjc7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0ei1pbmRleDogMTtcclxufVxyXG5cclxuLyogRmVlZGJhY2sgc3R5bGVzICovXHJcbi50Zy1xdWFkcmFudC11cGRhdGUtZmVlZGJhY2sge1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHR0b3A6IDIwcHg7XHJcblx0cmlnaHQ6IDIwcHg7XHJcblx0ei1pbmRleDogMTAwMDA7XHJcblx0b3BhY2l0eTogMDtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWZlZWRiYWNrLS1zaG93IHtcclxuXHRvcGFjaXR5OiAxO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWZlZWRiYWNrLS1oaWRlIHtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWZlZWRiYWNrLWNvbnRlbnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRwYWRkaW5nOiAwLjc1cmVtIDFyZW07XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJveC1zaGFkb3c6IDAgNHB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG5cdG1pbi13aWR0aDogMjAwcHg7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1mZWVkYmFjay0tZXJyb3IgLnRnLXF1YWRyYW50LWZlZWRiYWNrLWNvbnRlbnQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtZmVlZGJhY2staWNvbiB7XHJcblx0Zm9udC1zaXplOiAxLjJyZW07XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1mZWVkYmFjay10ZXh0IHtcclxuXHRmb250LXNpemU6IDAuOXJlbTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4vKiBFbmhhbmNlZCBjYXJkIGludGVyYWN0aW9ucyAqL1xyXG4udGctcXVhZHJhbnQtY2FyZCB7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuXHRjdXJzb3I6IGdyYWI7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkOmhvdmVyIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcblx0Ym94LXNoYWRvdzogMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkOmFjdGl2ZSB7XHJcblx0Y3Vyc29yOiBncmFiYmluZztcclxufVxyXG5cclxuLyogSW1wcm92ZWQgZW1wdHkgc3RhdGUgKi9cclxuLnRnLXF1YWRyYW50LWVtcHR5LXN0YXRlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAycmVtIDFyZW07XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtaW4taGVpZ2h0OiAxMjBweDtcclxuXHRib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRtYXJnaW46IDAuNXJlbSAwO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtZW1wdHktaWNvbiB7XHJcblx0bWFyZ2luLWJvdHRvbTogMC43NXJlbTtcclxuXHRvcGFjaXR5OiAwLjU7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1lbXB0eS1tZXNzYWdlIHtcclxuXHRmb250LXNpemU6IDAuOXJlbTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG5cdG1heC13aWR0aDogMjAwcHg7XHJcbn1cclxuXHJcbi8qIExvYWRpbmcgYW5pbWF0aW9uICovXHJcbkBrZXlmcmFtZXMgc3BpbiB7XHJcblx0MCUge1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuXHR9XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1zcGlubmVyIGNpcmNsZSB7XHJcblx0YW5pbWF0aW9uOiBzcGluIDJzIGxpbmVhciBpbmZpbml0ZTtcclxuXHR0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgYWRqdXN0bWVudHMgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0LnRnLXF1YWRyYW50LXVwZGF0ZS1mZWVkYmFjayB7XHJcblx0XHR0b3A6IDEwcHg7XHJcblx0XHRyaWdodDogMTBweDtcclxuXHRcdGxlZnQ6IDEwcHg7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xyXG5cdH1cclxuXHJcblx0LnRnLXF1YWRyYW50LWZlZWRiYWNrLS1zaG93IHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuXHR9XHJcblxyXG5cdC50Zy1xdWFkcmFudC1mZWVkYmFjay0taGlkZSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xyXG5cdH1cclxuXHJcblx0LnRnLXF1YWRyYW50LWZlZWRiYWNrLWNvbnRlbnQge1xyXG5cdFx0bWluLXdpZHRoOiBhdXRvO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG59XHJcblxyXG4vKiBEYXJrIG1vZGUgYWRqdXN0bWVudHMgKi9cclxuLnRoZW1lLWRhcmsgLnRnLXF1YWRyYW50LWNhcmQtLWNob3NlbiB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5LWFsdCk7XHJcblx0Ym94LXNoYWRvdzogMCA4cHggMjVweCByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC50Zy1xdWFkcmFudC1jYXJkLS1mYWxsYmFjayB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5LWFsdCk7XHJcblx0Ym94LXNoYWRvdzogMCA4cHggMjVweCByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC50Zy1xdWFkcmFudC1mZWVkYmFjay1jb250ZW50IHtcclxuXHRib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcclxufVxyXG5cclxuLyogQWNjZXNzaWJpbGl0eSBpbXByb3ZlbWVudHMgKi9cclxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcclxuXHQudGctcXVhZHJhbnQtY2FyZCxcclxuXHQudGctcXVhZHJhbnQtdXBkYXRlLWZlZWRiYWNrLFxyXG5cdC50Zy1xdWFkcmFudC1jYXJkLS1jaG9zZW4sXHJcblx0LnRnLXF1YWRyYW50LWNhcmQtLWRyYWcge1xyXG5cdFx0dHJhbnNpdGlvbjogbm9uZTtcclxuXHRcdGFuaW1hdGlvbjogbm9uZTtcclxuXHR9XHJcblxyXG5cdC50Zy1xdWFkcmFudC1zcGlubmVyIGNpcmNsZSB7XHJcblx0XHRhbmltYXRpb246IG5vbmU7XHJcblx0fVxyXG59XHJcblxyXG4vKiBTY3JvbGwgY29udGFpbmVyIHN0eWxlcyAqL1xyXG4udGctcXVhZHJhbnQtc2Nyb2xsLWNvbnRhaW5lciB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcclxuXHRtYXgtaGVpZ2h0OiA3MHZoO1xyXG5cdHNjcm9sbGJhci13aWR0aDogdGhpbjtcclxuXHRzY3JvbGxiYXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKSB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LXNjcm9sbC1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuXHR3aWR0aDogNnB4O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtc2Nyb2xsLWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtc2Nyb2xsLWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1zY3JvbGwtY29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4vKiBMb2FkIG1vcmUgaW5kaWNhdG9yIHN0eWxlcyAqL1xyXG4udGctcXVhZHJhbnQtbG9hZC1tb3JlIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAxcmVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG1hcmdpbi10b3A6IDAuNXJlbTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWxvYWQtbW9yZS0tdmlzaWJsZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWxvYWQtbW9yZS1zcGlubmVyIHtcclxuXHRtYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcblx0d2lkdGg6IDI0cHg7XHJcblx0aGVpZ2h0OiAyNHB4O1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBBbmltYXRlIHRoZSBPYnNpZGlhbiBsb2FkZXIgaWNvbiAqL1xyXG4udGctcXVhZHJhbnQtbG9hZC1tb3JlLXNwaW5uZXIgc3ZnIHtcclxuXHRhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtbG9hZC1tb3JlLW1lc3NhZ2Uge1xyXG5cdGZvbnQtc2l6ZTogMC44cmVtO1xyXG5cdG9wYWNpdHk6IDAuNztcclxufVxyXG5cclxuLyogQ29sdW1uIGxheW91dCBhZGp1c3RtZW50cyBmb3Igc2Nyb2xsaW5nICovXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0bWluLWhlaWdodDogNDAwcHg7XHJcblx0bWF4LWhlaWdodDogODB2aDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNvbHVtbi1jb250ZW50IHtcclxuXHRmbGV4OiAxO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRwYWRkaW5nOiAwLjVyZW07XHJcbn1cclxuXHJcbi8qIFNtb290aCBzY3JvbGxpbmcgKi9cclxuLnRnLXF1YWRyYW50LXNjcm9sbC1jb250YWluZXIge1xyXG5cdHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xyXG59XHJcblxyXG4vKiBMb2FkaW5nIHN0YXRlcyBkdXJpbmcgc2Nyb2xsICovXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4ubG9hZGluZy1tb3JlIC50Zy1xdWFkcmFudC1sb2FkLW1vcmUge1xyXG5cdG9wYWNpdHk6IDE7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi8qIEludGVyc2VjdGlvbiBvYnNlcnZlciB0YXJnZXQgc3R5bGluZyAqL1xyXG4udGctcXVhZHJhbnQtbG9hZC1tb3JlIHtcclxuXHRtaW4taGVpZ2h0OiA0MHB4O1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4vKiBFbmhhbmNlZCBlbXB0eSBzdGF0ZSBmb3Igc2Nyb2xsYWJsZSBjb250ZW50ICovXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tY29udGVudDplbXB0eTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1pbi1oZWlnaHQ6IDEwMHB4O1xyXG59XHJcblxyXG4vKiBHcmlkIGxheW91dCBhZGp1c3RtZW50cyAqL1xyXG4udGctcXVhZHJhbnQtZ3JpZCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xyXG5cdGhlaWdodDogY2FsYygxMDB2aCAtIDIwMHB4KTtcclxuXHRtaW4taGVpZ2h0OiA0MDBweDtcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBzY3JvbGwgY29udGFpbmVyIGhlaWdodHMgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG5cdC50Zy1xdWFkcmFudC1zY3JvbGwtY29udGFpbmVyIHtcclxuXHRcdG1heC1oZWlnaHQ6IDYwdmg7XHJcblx0fVxyXG5cclxuXHQudGctcXVhZHJhbnQtY29sdW1uIHtcclxuXHRcdG1heC1oZWlnaHQ6IDcwdmg7XHJcblx0fVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQudGctcXVhZHJhbnQtc2Nyb2xsLWNvbnRhaW5lciB7XHJcblx0XHRtYXgtaGVpZ2h0OiA1MHZoO1xyXG5cdH1cclxuXHJcblx0LnRnLXF1YWRyYW50LWNvbHVtbiB7XHJcblx0XHRtYXgtaGVpZ2h0OiA2MHZoO1xyXG5cdFx0bWluLWhlaWdodDogMzAwcHg7XHJcblx0fVxyXG5cclxuXHQudGctcXVhZHJhbnQtZ3JpZCB7XHJcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuXHRcdGhlaWdodDogYXV0bztcclxuXHR9XHJcbn1cclxuXHJcbi8qIFBlcmZvcm1hbmNlIG9wdGltaXphdGlvbnMgKi9cclxuLnRnLXF1YWRyYW50LWNvbHVtbi1jb250ZW50IHtcclxuXHRjb250YWluOiBsYXlvdXQgc3R5bGU7XHJcblx0d2lsbC1jaGFuZ2U6IGNvbnRlbnRzO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZCB7XHJcblx0Y29udGFpbjogbGF5b3V0IHN0eWxlIHBhaW50O1xyXG59XHJcblxyXG4vKiBTY3JvbGwgaW5kaWNhdG9ycyAqL1xyXG4udGctcXVhZHJhbnQtc2Nyb2xsLWNvbnRhaW5lci5oYXMtc2Nyb2xsOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IHN0aWNreTtcclxuXHR0b3A6IDA7XHJcblx0aGVpZ2h0OiAxcHg7XHJcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG5cdFx0dG8gYm90dG9tLFxyXG5cdFx0dmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KSxcclxuXHRcdHRyYW5zcGFyZW50XHJcblx0KTtcclxuXHR6LWluZGV4OiAxO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtc2Nyb2xsLWNvbnRhaW5lci5oYXMtc2Nyb2xsOjphZnRlciB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogc3RpY2t5O1xyXG5cdGJvdHRvbTogMDtcclxuXHRoZWlnaHQ6IDFweDtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpLCB0cmFuc3BhcmVudCk7XHJcblx0ei1pbmRleDogMTtcclxufVxyXG4iLCAiLnRnLWhhYml0LWNvbXBvbmVudC1jb250YWluZXIge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiAxcmVtOyAvKiBnYXAtNCAqL1xyXG5cdHBhZGRpbmc6IDFyZW07IC8qIHAtNCAqL1xyXG5cdGhlaWdodDogMTAwJTsgLyogQWxsb3cgc2Nyb2xsaW5nIGlmIGNvbnRlbnQgb3ZlcmZsb3dzICovXHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxufVxyXG5cclxuLyogPT09IEhhYml0IExpc3QgQ29udGFpbmVyID09PSAqL1xyXG4uaGFiaXQtbGlzdC1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgbWlubWF4KDAsIDFmcikpO1xyXG5cdGdhcDogMXJlbTsgLyogZ2FwLTQgKi9cclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyogXHU1QzBGXHU1QzRGXHU1RTU1XHU4QkJFXHU1OTA3ICovXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcblx0LmhhYml0LWxpc3QtY29udGFpbmVyIHtcclxuXHRcdHBhZGRpbmc6IDAuNXJlbTtcclxuXHRcdGdhcDogMC43NXJlbTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIFx1NEUyRFx1N0I0OVx1NUM0Rlx1NUU1NVx1OEJCRVx1NTkwNyB+NzY4cHggKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuXHQuaGFiaXQtbGlzdC1jb250YWluZXIge1xyXG5cdFx0bWFyZ2luLWxlZnQ6IGF1dG87XHJcblx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XHJcblx0XHRtYXgtd2lkdGg6IDQwMHB4O1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0fVxyXG59XHJcblxyXG4vKiBcdTU5MjdcdTVDNEZcdTVFNTVcdThCQkVcdTU5MDcgKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XHJcblx0LmhhYml0LWxpc3QtY29udGFpbmVyIHtcclxuXHRcdG1heC13aWR0aDogNTAwcHg7XHJcblx0fVxyXG59XHJcbi8qIEFkanVzdCBtYXgtd2lkdGgvY29sdW1ucyBiYXNlZCBvbiBkZXNpcmVkIGxheW91dCAqL1xyXG5cclxuLmhhYml0LWNhcmQtd3JhcHBlciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWluLWhlaWdodDogZml0LWNvbnRlbnQ7XHJcbn1cclxuXHJcbi8qID09PSBDcmVhdGUgSGFiaXQgQnV0dG9uID09PSAqL1xyXG4uaGFiaXQtY3JlYXRlLWJ1dHRvbi1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG59XHJcblxyXG4vKiA9PT0gQmFzZSBDYXJkIFN0eWxlcyA9PT0gKi9cclxuLmhhYml0LWNhcmQge1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7IC8qIFN0YW5kYXJkIG1lZGl1bSByYWRpdXMgKi9cclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLyogU3RhY2sgaGVhZGVyIGFuZCBjb250ZW50ICovXHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdG1pbi1oZWlnaHQ6IGZpdC1jb250ZW50O1xyXG59XHJcblxyXG4uaGFiaXQtY2FyZCAuY2FyZC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0cGFkZGluZzogMC41cmVtIDFyZW07XHJcblx0Z2FwOiAwLjVyZW07XHJcblx0LyogYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTsgKi9cclxufVxyXG5cclxuLmhhYml0LWNhcmQgLmNhcmQtdGl0bGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDAuNXJlbTsgLyogZ2FwLTIgKi9cclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbGFyZ2UpOyAvKiBMYXJnZXIgVUkgZm9udCAqL1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7IC8qIGZvbnQtc2VtaWJvbGQgKi9cclxuXHRmbGV4LWdyb3c6IDE7IC8qIEFsbG93IHRpdGxlIHRvIHRha2Ugc3BhY2UgKi9cclxuXHRvdmVyZmxvdzogaGlkZGVuOyAvKiBQcmV2ZW50IGxvbmcgbmFtZXMgYnJlYWtpbmcgbGF5b3V0ICovXHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLmhhYml0LW5hbWUuaGFiaXQtbmFtZTpob3ZlciB7XHJcblx0LyogU3BlY2lmaWNpdHkgZm9yIGhvdmVyICovXHJcblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uaGFiaXQtY2FyZCAuY2FyZC1jb250ZW50LXdyYXBwZXIge1xyXG5cdHBhZGRpbmc6IDAuNzVyZW0gMXJlbTsgLyogQ29uc2lzdGVudCBwYWRkaW5nICovXHJcblx0ZmxleC1ncm93OiAxOyAvKiBBbGxvdyBjb250ZW50IHRvIGZpbGwgc3BhY2UgKi9cclxuXHQvKiBMYXlvdXQgc3BlY2lmaWNzIGRlZmluZWQgcGVyIGNhcmQgdHlwZSAqL1xyXG59XHJcblxyXG4vKiA9PT0gRGFpbHkgSGFiaXQgQ2FyZCA9PT0gKi9cclxuLmRhaWx5LWhhYml0LWNhcmQgLmNhcmQtaGVhZGVyIHtcclxuXHQvKiBObyBib3JkZXIgbmVlZGVkIGlmIGNoZWNrYm94IGlzIG1haW4gYWN0aW9uICovXHJcblx0LyogYm9yZGVyLWJvdHRvbTogbm9uZTsgKi9cclxufVxyXG4uZGFpbHktaGFiaXQtY2FyZCAuaGFiaXQtY2hlY2tib3gtY29udGFpbmVyIHtcclxuXHQvKiBTdHlsZSBjb250YWluZXIgaWYgbmVlZGVkICovXHJcbn1cclxuLmRhaWx5LWhhYml0LWNhcmQgLmhhYml0LWNoZWNrYm94IHtcclxuXHQtLWNoZWNrYm94LXNpemU6IDEuMjVyZW07XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGFjY2VudC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTsgLyogU3R5bGUgY2hlY2tib3ggY29sb3IgKi9cclxufVxyXG4uZGFpbHktaGFiaXQtY2FyZCAuY2FyZC1jb250ZW50LXdyYXBwZXIge1xyXG5cdC8qIENvbnRhaW5zIGhlYXRtYXAgKi9cclxuXHRwYWRkaW5nOiAwcmVtIDFyZW0gMC43NXJlbTsgLyogQWRqdXN0IHBhZGRpbmcgYXJvdW5kIGhlYXRtYXAgKi9cclxufVxyXG5cclxuLyogPT09IENvdW50IEhhYml0IENhcmQgPT09ICovXHJcbi5jb3VudC1oYWJpdC1jYXJkIC5jYXJkLWNvbnRlbnQtd3JhcHBlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvKiBEZWZhdWx0IG1vYmlsZSBsYXlvdXQgKi9cclxuXHRnYXA6IDAuNzVyZW07IC8qIEFkanVzdGVkIGdhcCAqL1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5jb3VudC1oYWJpdC1jYXJkIC5oYWJpdC1pY29uLWJ1dHRvbiB7XHJcblx0LS1pY29uLXNpemU6IDJyZW07XHJcblx0aGVpZ2h0OiA0cmVtOyAvKiBTbGlnaHRseSBzbWFsbGVyIHRoYW4gaC0xNiAqL1xyXG5cdHdpZHRoOiA0cmVtO1xyXG5cdGFzcGVjdC1yYXRpbzogMTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7IC8qIFNtYWxsZXIgcmFkaXVzICovXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGZvbnQtc2l6ZTogMS41cmVtOyAvKiBGb3IgaWNvbiAqL1xyXG59XHJcblxyXG4uY291bnQtaGFiaXQtY2FyZCAuaGFiaXQtaWNvbi1idXR0b24ge1xyXG5cdGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxufVxyXG5cclxuLmNvdW50LWhhYml0LWNhcmQgLmhhYml0LWljb24tYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi5jb3VudC1oYWJpdC1jYXJkIC5oYWJpdC1jYXJkLW5hbWUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1sYXJnZSk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuLmNvdW50LWhhYml0LWNhcmQgLmhhYml0LWFjdGl2ZS1kYXkge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtd2VpZ2h0OiA0MDA7XHJcbn1cclxuXHJcbi5jb3VudC1oYWJpdC1jYXJkIC5oYWJpdC1pbmZvIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjsgLyogQ2VudGVyIHRleHQgb24gbW9iaWxlICovXHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGZsZXgtZ3JvdzogMTtcclxufVxyXG4uY291bnQtaGFiaXQtY2FyZCAuaGFiaXQtaW5mbyBoMyB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLWxhcmdlKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4uY291bnQtaGFiaXQtY2FyZCAuaGFiaXQtcHJvZ3Jlc3MtYXJlYSB7XHJcblx0d2lkdGg6IDEwMCU7IC8qIEZ1bGwgd2lkdGggb24gbW9iaWxlICovXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAwLjVyZW07XHJcbn1cclxuXHJcbi8qIFRhYmxldC9EZXNrdG9wIGxheW91dCBmb3IgQ291bnQgQ2FyZCAqL1xyXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcclxuXHQvKiBzbSBicmVha3BvaW50ICovXHJcblx0LmNvdW50LWhhYml0LWNhcmQgLmNhcmQtY29udGVudC13cmFwcGVyIHtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyOyAvKiBBbGlnbiBpdGVtcyB2ZXJ0aWNhbGx5ICovXHJcblx0XHRnYXA6IDFyZW07XHJcblx0fVxyXG5cdC5jb3VudC1oYWJpdC1jYXJkIC5oYWJpdC1wcm9ncmVzcy1hcmVhIHtcclxuXHRcdHdpZHRoOiBhdXRvOyAvKiBBbGxvdyBpdCB0byBzaHJpbmsgKi9cclxuXHRcdG1pbi13aWR0aDogMTUwcHg7IC8qIEVuc3VyZSBtaW5pbXVtIHdpZHRoIGZvciBoZWF0bWFwL3Byb2dyZXNzICovXHJcblx0XHRhbGlnbi1pdGVtczogZmxleC1lbmQ7IC8qIEFsaWduIHByb2dyZXNzIHRvIHRoZSByaWdodCAqL1xyXG5cdH1cclxuXHQuY291bnQtaGFiaXQtY2FyZCAuaGFiaXQtaGVhdG1hcC1zbWFsbCB7XHJcblx0XHR3aWR0aDogMTAwJTsgLyogQWxsb3cgaGVhdG1hcCB0byBkZWZpbmUgaXRzIG93biB3aWR0aCAqL1xyXG5cdH1cclxufVxyXG5cclxuLyogPT09IFNjaGVkdWxlZCBIYWJpdCBDYXJkID09PSAqL1xyXG4uc2NoZWR1bGVkLWhhYml0LWNhcmQgLmNhcmQtaGVhZGVyIHtcclxuXHRwYWRkaW5nLWJvdHRvbTogMC41cmVtOyAvKiBwYi0yICovXHJcbn1cclxuLnNjaGVkdWxlZC1oYWJpdC1jYXJkIC5jYXJkLWNvbnRlbnQtd3JhcHBlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvKiBNb2JpbGUgZGVmYXVsdCAqL1xyXG5cdGdhcDogMC43NXJlbTtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyOyAvKiBDZW50ZXIgb24gbW9iaWxlICovXHJcbn1cclxuXHJcbi5zY2hlZHVsZWQtaGFiaXQtY2FyZCAuaGFiaXQtaGVhdG1hcC1tZWRpdW0ge1xyXG5cdHdpZHRoOiAxMDAlOyAvKiBGdWxsIHdpZHRoIGhlYXRtYXAgb24gbW9iaWxlICovXHJcbn1cclxuXHJcbi5zY2hlZHVsZWQtaGFiaXQtY2FyZCAuaGFiaXQtY29udHJvbHMge1xyXG5cdHdpZHRoOiAxMDAlOyAvKiBGdWxsIHdpZHRoIGNvbnRyb2xzIG9uIG1vYmlsZSAqL1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyOyAvKiBDZW50ZXIgY29udHJvbHMgb24gbW9iaWxlICovXHJcbn1cclxuXHJcbi5zY2hlZHVsZWQtaGFiaXQtY2FyZCAuaGFiaXQtZXZlbnQtZHJvcGRvd24ge1xyXG5cdHdpZHRoOiBhdXRvOyAvKiBBdXRvIHdpZHRoIGRyb3Bkb3duICovXHJcblx0bWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vKiBUYWJsZXQvRGVza3RvcCBsYXlvdXQgZm9yIFNjaGVkdWxlZCBDYXJkICovXHJcbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xyXG5cdC5zY2hlZHVsZWQtaGFiaXQtY2FyZCAuY2FyZC1jb250ZW50LXdyYXBwZXIge1xyXG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyAvKiBBbGlnbiB0b3AgKi9cclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHR9XHJcblx0LnNjaGVkdWxlZC1oYWJpdC1jYXJkIC5oYWJpdC1oZWF0bWFwLW1lZGl1bSB7XHJcblx0XHR3aWR0aDogYXV0bzsgLyogQWxsb3cgaGVhdG1hcCB0byBzaHJpbmsgKi9cclxuXHRcdGZsZXgtZ3JvdzogMTsgLyogQWxsb3cgaGVhdG1hcCB0byB0YWtlIGF2YWlsYWJsZSBzcGFjZSAqL1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAxcmVtOyAvKiBTcGFjZSBiZXR3ZWVuIGhlYXRtYXAgYW5kIGNvbnRyb2xzICovXHJcblx0fVxyXG5cdC5zY2hlZHVsZWQtaGFiaXQtY2FyZCAuaGFiaXQtY29udHJvbHMge1xyXG5cdFx0d2lkdGg6IGF1dG87IC8qIFNocmluayBjb250cm9scyAqL1xyXG5cdFx0bWluLXdpZHRoOiAxNTBweDsgLyogTWluaW11bSB3aWR0aCAqL1xyXG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IC8qIEFsaWduIGNvbnRyb2xzIGxlZnQgKi9cclxuXHR9XHJcbn1cclxuXHJcbi8qID09PSBNYXBwaW5nIEhhYml0IENhcmQgPT09ICovXHJcbi5tYXBwaW5nLWhhYml0LWNhcmQgLmNhcmQtaGVhZGVyIHtcclxuXHRwYWRkaW5nLWJvdHRvbTogMC41cmVtOyAvKiBwYi0yICovXHJcbn1cclxuLm1hcHBpbmctaGFiaXQtY2FyZCAuY2FyZC1jb250ZW50LXdyYXBwZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLyogTW9iaWxlIGRlZmF1bHQgKi9cclxuXHRnYXA6IDAuNzVyZW07XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nLXRvcDogMDtcclxuXHRwYWRkaW5nLWJvdHRvbTogMS4ycmVtO1xyXG59XHJcbi5tYXBwaW5nLWhhYml0LWNhcmQgLmhhYml0LWhlYXRtYXAtbWVkaXVtIHtcclxuXHR3aWR0aDogMTAwJTsgLyogRnVsbCB3aWR0aCBoZWF0bWFwIG9uIG1vYmlsZSAqL1xyXG59XHJcbi5tYXBwaW5nLWhhYml0LWNhcmQgLmhhYml0LWNvbnRyb2xzIHtcclxuXHR3aWR0aDogMTAwJTsgLyogRnVsbCB3aWR0aCBjb250cm9scyBvbiBtb2JpbGUgKi9cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDAuNXJlbTtcclxufVxyXG5cclxuLm1hcHBpbmctaGFiaXQtY2FyZCAuaGFiaXQtbWFwcGluZy1idXR0b24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRmb250LXNpemU6IDEuNzVyZW07IC8qIExhcmdlciBlbW9qaS90ZXh0ICovXHJcblx0cGFkZGluZzogMC41cmVtO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1heC13aWR0aDogMTAwcHg7IC8qIExpbWl0IGJ1dHRvbiB3aWR0aCAqL1xyXG5cdGhlaWdodDogMy41cmVtOyAvKiBoLTE2IGVxdWl2YWxlbnQgKi9cclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1idXR0b24tc2Vjb25kYXJ5LWJvcmRlci1jb2xvcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnV0dG9uLXNlY29uZGFyeS1iZyk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTsgLyogRW5zdXJlIGVtb2ppIHZpc2liaWxpdHkgKi9cclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG59XHJcbi5tYXBwaW5nLWhhYml0LWNhcmQgLmhhYml0LW1hcHBpbmctYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idXR0b24tc2Vjb25kYXJ5LWhvdmVyLWJnKTtcclxufVxyXG5cclxuLm1hcHBpbmctaGFiaXQtY2FyZCAuaGFiaXQtc2xpZGVyLXNldHRpbmcge1xyXG5cdHdpZHRoOiAxMDAlOyAvKiBTbGlkZXIgdGFrZXMgZnVsbCB3aWR0aCAqL1xyXG5cdG1heC13aWR0aDogMjAwcHg7IC8qIExpbWl0IHNsaWRlciB3aWR0aCAqL1xyXG59XHJcbi5tYXBwaW5nLWhhYml0LWNhcmQgLmhhYml0LXNsaWRlci1zZXR0aW5nIC5zZXR0aW5nLWl0ZW0taW5mbyB7XHJcblx0ZGlzcGxheTogbm9uZTsgLyogSGlkZSBzbGlkZXIgbGFiZWwgKi9cclxufVxyXG4ubWFwcGluZy1oYWJpdC1jYXJkIC5oYWJpdC1zbGlkZXItc2V0dGluZyAuc2V0dGluZy1pdGVtIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGJvcmRlcjogbm9uZTtcclxufVxyXG4ubWFwcGluZy1oYWJpdC1jYXJkIC5oYWJpdC1zbGlkZXItc2V0dGluZyAuc2V0dGluZy1pdGVtLWNvbnRyb2wge1xyXG5cdHdpZHRoOiAxMDAlOyAvKiBNYWtlIHNsaWRlciBjb250cm9sIHRha2UgZnVsbCB3aWR0aCAqL1xyXG59XHJcblxyXG4ubWFwcGluZy1oYWJpdC1jYXJkIC5oZWF0bWFwLW1kIC5oZWF0bWFwLWNvbnRhaW5lci1zaW1wbGUge1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG59XHJcblxyXG4vKiBUYWJsZXQvRGVza3RvcCBsYXlvdXQgZm9yIE1hcHBpbmcgQ2FyZCAqL1xyXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcclxuXHQubWFwcGluZy1oYWJpdC1jYXJkIC5jYXJkLWNvbnRlbnQtd3JhcHBlciB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjsgLyogQ2VudGVyIGl0ZW1zIHZlcnRpY2FsbHkgKi9cclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHR9XHJcblx0Lm1hcHBpbmctaGFiaXQtY2FyZCAuaGFiaXQtaGVhdG1hcC1tZWRpdW0ge1xyXG5cdFx0d2lkdGg6IGF1dG87XHJcblx0XHRmbGV4LWdyb3c6IDE7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDFyZW07XHJcblx0fVxyXG5cdC5tYXBwaW5nLWhhYml0LWNhcmQgLmhhYml0LWNvbnRyb2xzIHtcclxuXHRcdHdpZHRoOiBhdXRvO1xyXG5cdFx0bWluLXdpZHRoOiA4MHB4OyAvKiBXaWR0aCBmb3IgYnV0dG9uICsgc2xpZGVyICovXHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvKiBLZWVwIGJ1dHRvbiBhYm92ZSBzbGlkZXIgKi9cclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRnYXA6IDAuNzVyZW07XHJcblx0fVxyXG5cdC5tYXBwaW5nLWhhYml0LWNhcmQgLmhhYml0LW1hcHBpbmctYnV0dG9uIHtcclxuXHRcdHdpZHRoOiA0cmVtOyAvKiBGaXhlZCB3aWR0aCBidXR0b24gKi9cclxuXHRcdGhlaWdodDogNHJlbTtcclxuXHR9XHJcblx0Lm1hcHBpbmctaGFiaXQtY2FyZCAuaGFiaXQtc2xpZGVyLXNldHRpbmcge1xyXG5cdFx0d2lkdGg6IDEwMCU7IC8qIFNsaWRlciB0YWtlcyB3aWR0aCBvZiBjb250cm9sIGFyZWEgKi9cclxuXHRcdG1heC13aWR0aDogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi8qID09PSBQcm9ncmVzcyBCYXIgKENvbW1vbiBmb3IgQ291bnQvU2NoZWR1bGVkKSA9PT0gKi9cclxuLmhhYml0LXByb2dyZXNzLWNvbnRhaW5lciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAwLjc1cmVtOyAvKiBTbGlnaHRseSB0aGlja2VyICovXHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1sKTsgLyogUGlsbCBzaGFwZSAqL1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cG9zaXRpb246IHJlbGF0aXZlOyAvKiBGb3IgdGV4dCBvdmVybGF5ICovXHJcbn1cclxuLmhhYml0LXByb2dyZXNzLWJhciB7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWwpO1xyXG5cdHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbn1cclxuLmhhYml0LXByb2dyZXNzLWNvbnRhaW5lci5maWxsZWQgLmhhYml0LXByb2dyZXNzLXRleHQge1xyXG5cdG1peC1ibGVuZC1tb2RlOiB1bnNldDtcclxufVxyXG4uaGFiaXQtcHJvZ3Jlc3MtdGV4dCB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Zm9udC1zaXplOiAwLjZyZW07IC8qIFRpbnkgdGV4dCAqL1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7IC8qIFRleHQgY29sb3Igb24gZmlsbGVkIHBhcnQgKi9cclxuXHRtaXgtYmxlbmQtbW9kZTogZGlmZmVyZW5jZTsgLyogVHJ5IHRvIG1ha2UgdGV4dCB2aXNpYmxlICovXHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLyogPT09IEhlYXRtYXAgU3R5bGVzID09PSAqL1xyXG4udGctaGVhdG1hcC1yb290IHtcclxuXHR3aWR0aDogMTAwJTsgLyogVGFrZSBhdmFpbGFibGUgd2lkdGggKi9cclxufVxyXG4uaGVhdG1hcC1zbSAuaGVhdG1hcC1jb250YWluZXItc2ltcGxlIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0b3ZlcmZsb3cteDogYXV0bzsgLyogQWxsb3cgaG9yaXpvbnRhbCBzY3JvbGwgaWYgdG9vIG1hbnkgY2VsbHMgKi9cclxuXHRwYWRkaW5nLWJvdHRvbTogMnB4OyAvKiBTcGFjZSBmb3Igc2Nyb2xsYmFyICovXHJcbn1cclxuXHJcbi5oZWF0bWFwLW1kIC5oZWF0bWFwLWNvbnRhaW5lci1zaW1wbGUge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNiwgMWZyKTtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxuXHRvdmVyZmxvdy14OiBhdXRvOyAvKiBBbGxvdyBob3Jpem9udGFsIHNjcm9sbCBpZiB0b28gbWFueSBjZWxscyAqL1xyXG5cdHBhZGRpbmctYm90dG9tOiAycHg7IC8qIFNwYWNlIGZvciBzY3JvbGxiYXIgKi9cclxuXHRqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5oZWF0bWFwLWxnIC5oZWF0bWFwLWNvbnRhaW5lci1zaW1wbGUge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTAsIDFmcik7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0b3ZlcmZsb3cteDogYXV0bzsgLyogQWxsb3cgaG9yaXpvbnRhbCBzY3JvbGwgaWYgdG9vIG1hbnkgY2VsbHMgKi9cclxuXHRwYWRkaW5nLWJvdHRvbTogMnB4OyAvKiBTcGFjZSBmb3Igc2Nyb2xsYmFyICovXHJcblx0anVzdGlmeS1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4uaGVhdG1hcC1jZWxsIHtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7IC8qIFNtYWxsIHJhZGl1cyAqL1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0ZmxleC1zaHJpbms6IDA7IC8qIFByZXZlbnQgY2VsbHMgZnJvbSBzaHJpbmtpbmcgKi9cclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoXHJcblx0XHQtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyXHJcblx0KTsgLyogRGVmYXVsdCBiYWNrZ3JvdW5kICovXHJcblx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IC8qIEJvcmRlciBmb3IgYmxhbmsvY3VzdG9tICovXHJcbn1cclxuXHJcbi8qIEhlYXRtYXAgU2hhcGVzICovXHJcbi5oZWF0bWFwLWNlbGwtc3F1YXJlIHtcclxuXHQvKiBEZWZpbmVkIGJ5IHNpemUgKi9cclxufVxyXG4uaGVhdG1hcC1jZWxsLWRvdCB7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG59XHJcblxyXG4vKiBIZWF0bWFwIFNpemVzICovXHJcbi5oZWF0bWFwLXNtIC5oZWF0bWFwLWNlbGwge1xyXG5cdHdpZHRoOiAwLjc1cmVtO1xyXG5cdGhlaWdodDogMC43NXJlbTtcclxufVxyXG4uaGFiaXQtaGVhdG1hcC1tZWRpdW0gLmhlYXRtYXAtbWQgLmhlYXRtYXAtY2VsbCB7XHJcblx0d2lkdGg6IDEuNHJlbTtcclxuXHRoZWlnaHQ6IDEuNHJlbTtcclxuXHRmb250LXNpemU6IDAuN3JlbTtcclxufVxyXG5cclxuLmhlYXRtYXAtbWQgLmhlYXRtYXAtY2VsbCB7XHJcblx0d2lkdGg6IDEuMXJlbTtcclxuXHRoZWlnaHQ6IDEuMXJlbTtcclxuXHRmb250LXNpemU6IDAuN3JlbTtcclxufSAvKiBNYXBwaW5nL1NjaGVkdWxlZCAqL1xyXG4uaGVhdG1hcC1sZyAuaGVhdG1hcC1jZWxsIHtcclxuXHR3aWR0aDogMS4yNXJlbTtcclxuXHRoZWlnaHQ6IDEuMjVyZW07XHJcblx0Zm9udC1zaXplOiAwLjc1cmVtO1xyXG59IC8qIERhaWx5ICovXHJcblxyXG4vKiBIZWF0bWFwIFZhcmlhbnRzICovXHJcbi5oZWF0bWFwLWNlbGwuZGVmYXVsdCB7XHJcblx0LyogRGVmYXVsdCBzdHlsZXMgYWxyZWFkeSBzZXQgKi9cclxufVxyXG4uaGVhdG1hcC1jZWxsLmZpbGxlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpOyAvKiBUZXh0IG9uIGZpbGxlZCAoZS5nLiwgZW1vamkpICovXHJcbn1cclxuXHJcbi5oZWF0bWFwLWNlbGwuaGFzLWN1c3RvbS1jb250ZW50OmhhcygucGllLWRvdC1jb250YWluZXIpIHtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRib3JkZXI6IHVuc2V0O1xyXG59XHJcblxyXG4vKiBTdHlsZSBmb3IgY2VsbHMgd2l0aCBjdXN0b20gY29udGVudCBsaWtlIFBpZURvdCBvciBFbW9qaSAqL1xyXG4uaGVhdG1hcC1jZWxsLmhhcy1jdXN0b20tY29udGVudCxcclxuLmhlYXRtYXAtY2VsbC5oYXMtdGV4dC1jb250ZW50IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7IC8qIFVzZSBjYXJkIGJhY2tncm91bmQgKi9cclxuXHRib3JkZXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTsgLyogQWRkIGJvcmRlciAqL1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7IC8qIEVuc3VyZSB0ZXh0L2Vtb2ppIGlzIHZpc2libGUgKi9cclxufVxyXG4uaGVhdG1hcC1jZWxsLmhhcy10ZXh0LWNvbnRlbnQge1xyXG5cdGxpbmUtaGVpZ2h0OiAxOyAvKiBDZW50ZXIgZW1vamkgdmVydGljYWxseSAqL1xyXG59XHJcblxyXG4vKiBQaWVEb3QgQ29udGFpbmVyICovXHJcbi5waWUtZG90LWNvbnRhaW5lciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG4ucGllLWRvdC1jb250YWluZXIgc3ZnIHtcclxuXHRkaXNwbGF5OiBibG9jazsgLyogUmVtb3ZlIGV4dHJhIHNwYWNlIGJlbG93IFNWRyAqL1xyXG59XHJcblxyXG4vKiA9PT0gRW1wdHkgU3RhdGUgPT09ICovXHJcbi5oYWJpdC1lbXB0eS1zdGF0ZSB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDJyZW0gMXJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuLmhhYml0LWVtcHR5LXN0YXRlIGgyIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbGFyZ2UpO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0bWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG59XHJcbi5oYWJpdC1lbXB0eS1zdGF0ZSBwIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbm9ybWFsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcbn1cclxuXHJcbi8qID09PSBJY29ucyBQbGFjZWhvbGRlciA9PT0gKi9cclxuLmhhYml0LWljb24ge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHQvKiB3aWR0aDogMWVtOyAqL1xyXG5cdGhlaWdodDogMWVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdG1hcmdpbi1yaWdodDogMC4yNWVtO1xyXG5cdC0taWNvbi1zaXplOiAxLjVyZW07XHJcbn1cclxuXHJcbi8qID09PSBIYWJpdCBDaGFydCBNb2RhbCA9PT0gKi9cclxuLmhhYml0LWNoYXJ0LWNvbnRyb2xzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiAwLjVyZW07XHJcblx0bWFyZ2luLWJvdHRvbTogMC43NXJlbTtcclxufVxyXG4uaGFiaXQtY2hhcnQtZmlsdGVycyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0Z2FwOiAwLjVyZW07XHJcbn1cclxuLmhhYml0LWNoYXJ0LWZpbHRlcnMgLmZpbHRlci1idG4ge1xyXG5cdHBhZGRpbmc6IDAuMjVyZW0gMC42cmVtO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbi5oYWJpdC1jaGFydC1maWx0ZXJzIC5maWx0ZXItYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xyXG59XHJcbi5oYWJpdC1jaGFydC15ZWFycyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMC41cmVtO1xyXG59XHJcbi5oYWJpdC1jaGFydC15ZWFycyAueWVhcnMtbGFiZWwge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcbi5oYWJpdC1jaGFydC15ZWFycyAueWVhcnMtYmFyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtd3JhcDogbm93cmFwO1xyXG5cdGdhcDogMC40cmVtO1xyXG5cdG92ZXJmbG93LXg6IGF1dG87XHJcblx0cGFkZGluZy1ib3R0b206IDJweDtcclxufVxyXG4uaGFiaXQtY2hhcnQteWVhcnMgLnllYXItYnRuIHtcclxuXHRwYWRkaW5nOiAwLjJyZW0gMC41cmVtO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG4uaGFiaXQtY2hhcnQteWVhcnMgLnllYXItYnRuLnNlbGVjdGVkLFxyXG4uaGFiaXQtY2hhcnQteWVhcnMgLnllYXItYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcbi5oYWJpdC1jaGFydC1oZWF0bWFwIHtcclxuXHQvKiBSZXVzZSB0aGUgaGVhdG1hcCBncmlkIHN0eWxlczsgYWxsb3cgb3ZlcmZsb3cgKi9cclxuXHRtYXgtaGVpZ2h0OiA2MHZoO1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG59XHJcbiIsICIvKiBEZWZpbmUgdGhlbWUgdmFyaWFibGVzICovXHJcbjpyb290IHtcclxuXHQvKiBUYXNrIHN0YXR1cyBjb2xvcnMgKi9cclxuXHQtLXRhc2stY29tcGxldGVkLWNvbG9yOiAjNGNhZjUwO1xyXG5cdC0tdGFzay1kb2luZy1jb2xvcjogIzgwZGVlNTtcclxuXHQtLXRhc2staW4tcHJvZ3Jlc3MtY29sb3I6ICNmOWQ5MjM7XHJcblx0LS10YXNrLWFiYW5kb25lZC1jb2xvcjogI2ViNTM1MztcclxuXHQtLXRhc2stcGxhbm5lZC1jb2xvcjogIzljMjdiMDsgLyogUGxhbm5lZCB0YXNrIGNvbG9yICovXHJcblx0LS10YXNrLXF1ZXN0aW9uLWNvbG9yOiAjMjE5NmYzOyAvKiBRdWVzdGlvbiB0YXNrcyAqL1xyXG5cdC0tdGFzay1pbXBvcnRhbnQtY29sb3I6ICNmNDQzMzY7IC8qIEltcG9ydGFudCB0YXNrcyAqL1xyXG5cdC0tdGFzay1zdGFyLWNvbG9yOiAjZmZjMTA3OyAvKiBTdGFyIHRhc2tzICovXHJcblx0LS10YXNrLXF1b3RlLWNvbG9yOiAjNjA3ZDhiOyAvKiBRdW90ZSB0YXNrcyAqL1xyXG5cdC0tdGFzay1sb2NhdGlvbi1jb2xvcjogIzc5NTU0ODsgLyogTG9jYXRpb24gdGFza3MgKi9cclxuXHQtLXRhc2stYm9va21hcmstY29sb3I6ICNmZjk4MDA7IC8qIEJvb2ttYXJrIHRhc2tzICovXHJcblx0LS10YXNrLWluZm9ybWF0aW9uLWNvbG9yOiAjMDBiY2Q0OyAvKiBJbmZvcm1hdGlvbiB0YXNrcyAqL1xyXG5cdC0tdGFzay1pZGVhLWNvbG9yOiAjOWMyN2IwOyAvKiBJZGVhIHRhc2tzICovXHJcblx0LS10YXNrLXByb3MtY29sb3I6ICM0Y2FmNTA7IC8qIFByb3MgdGFza3MgKi9cclxuXHQtLXRhc2stY29ucy1jb2xvcjogI2Y0NDMzNjsgLyogQ29ucyB0YXNrcyAqL1xyXG5cdC0tdGFzay1maXJlLWNvbG9yOiAjZmY1NzIyOyAvKiBGaXJlIHRhc2tzICovXHJcblx0LS10YXNrLWtleS1jb2xvcjogI2ZmZDcwMDsgLyogS2V5IHRhc2tzICovXHJcblx0LS10YXNrLXdpbi1jb2xvcjogIzY2YmI2YTsgLyogV2luIHRhc2tzICovXHJcblx0LS10YXNrLXVwLWNvbG9yOiAjNGNhZjUwOyAvKiBVcCB0YXNrcyAqL1xyXG5cdC0tdGFzay1kb3duLWNvbG9yOiAjZjQ0MzM2OyAvKiBEb3duIHRhc2tzICovXHJcblx0LS10YXNrLW5vdGUtY29sb3I6ICM5ZTllOWU7IC8qIE5vdGUgdGFza3MgKi9cclxuXHQtLXRhc2stYW1vdW50LWNvbG9yOiAjOGJjMzRhOyAvKiBBbW91bnQvc2F2aW5ncyB0YXNrcyAqL1xyXG5cdC0tdGFzay1zcGVlY2gtY29sb3I6ICMwM2E5ZjQ7IC8qIFNwZWVjaCBidWJibGUgdGFza3MgKi9cclxuXHJcblx0LyogUHJvZ3Jlc3MgYmFyIGdyYWRpZW50IGNvbG9ycyAtIGxpZ2h0IHRoZW1lICovXHJcblx0LS1wcm9ncmVzcy0wLWNvbG9yOiAjYWU0MzFlO1xyXG5cdC0tcHJvZ3Jlc3MtMjUtY29sb3I6ICNlNTg5MGE7XHJcblx0LS1wcm9ncmVzcy01MC1jb2xvcjogI2I0YzZhNjtcclxuXHQtLXByb2dyZXNzLTc1LWNvbG9yOiAjNmJjYjc3O1xyXG5cdC0tcHJvZ3Jlc3MtMTAwLWNvbG9yOiAjNGQ5NmZmO1xyXG5cclxuXHQtLXByb2dyZXNzLWJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XHJcbn1cclxuXHJcbi8qIERhcmsgdGhlbWUgY29sb3IgYWRqdXN0bWVudHMgKi9cclxuLnRoZW1lLWRhcmsge1xyXG5cdC0tdGFzay1jb21wbGV0ZWQtY29sb3I6ICM0Y2FmNTA7XHJcblx0LS10YXNrLWRvaW5nLWNvbG9yOiAjMzc5ZmE3O1xyXG5cdC0tdGFzay1pbi1wcm9ncmVzcy1jb2xvcjogI2ZmYzEwNztcclxuXHQtLXRhc2stYWJhbmRvbmVkLWNvbG9yOiAjZjQ0MzM2O1xyXG5cdC0tdGFzay1wbGFubmVkLWNvbG9yOiAjY2U5M2Q4OyAvKiBQbGFubmVkIHRhc2sgY29sb3IgZm9yIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2stcXVlc3Rpb24tY29sb3I6ICM0MmE1ZjU7IC8qIFF1ZXN0aW9uIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2staW1wb3J0YW50LWNvbG9yOiAjZWY1MzUwOyAvKiBJbXBvcnRhbnQgdGFza3MgZGFyayB0aGVtZSAqL1xyXG5cdC0tdGFzay1zdGFyLWNvbG9yOiAjZmZkNTRmOyAvKiBTdGFyIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2stcXVvdGUtY29sb3I6ICM5MGE0YWU7IC8qIFF1b3RlIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2stbG9jYXRpb24tY29sb3I6ICM4ZDZlNjM7IC8qIExvY2F0aW9uIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2stYm9va21hcmstY29sb3I6ICNmZmI3NGQ7IC8qIEJvb2ttYXJrIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2staW5mb3JtYXRpb24tY29sb3I6ICMyNmM2ZGE7IC8qIEluZm9ybWF0aW9uIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2staWRlYS1jb2xvcjogI2NlOTNkODsgLyogSWRlYSB0YXNrcyBkYXJrIHRoZW1lICovXHJcblx0LS10YXNrLXByb3MtY29sb3I6ICM2NmJiNmE7IC8qIFByb3MgdGFza3MgZGFyayB0aGVtZSAqL1xyXG5cdC0tdGFzay1jb25zLWNvbG9yOiAjZWY1MzUwOyAvKiBDb25zIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2stZmlyZS1jb2xvcjogI2ZmNzA0MzsgLyogRmlyZSB0YXNrcyBkYXJrIHRoZW1lICovXHJcblx0LS10YXNrLWtleS1jb2xvcjogI2ZmZDcwMDsgLyogS2V5IHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2std2luLWNvbG9yOiAjODFjNzg0OyAvKiBXaW4gdGFza3MgZGFyayB0aGVtZSAqL1xyXG5cdC0tdGFzay11cC1jb2xvcjogIzY2YmI2YTsgLyogVXAgdGFza3MgZGFyayB0aGVtZSAqL1xyXG5cdC0tdGFzay1kb3duLWNvbG9yOiAjZWY1MzUwOyAvKiBEb3duIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2stbm90ZS1jb2xvcjogI2JkYmRiZDsgLyogTm90ZSB0YXNrcyBkYXJrIHRoZW1lICovXHJcblx0LS10YXNrLWFtb3VudC1jb2xvcjogI2FlZDU4MTsgLyogQW1vdW50L3NhdmluZ3MgdGFza3MgZGFyayB0aGVtZSAqL1xyXG5cdC0tdGFzay1zcGVlY2gtY29sb3I6ICMyOWI2ZjY7IC8qIFNwZWVjaCBidWJibGUgdGFza3MgZGFyayB0aGVtZSAqL1xyXG5cclxuXHQtLXByb2dyZXNzLTAtY29sb3I6ICNhZTQzMWU7XHJcblx0LS1wcm9ncmVzcy0yNS1jb2xvcjogI2U1ODkwYTtcclxuXHQtLXByb2dyZXNzLTUwLWNvbG9yOiAjYjRjNmE2O1xyXG5cdC0tcHJvZ3Jlc3MtNzUtY29sb3I6ICM2YmNiNzc7XHJcblx0LS1wcm9ncmVzcy0xMDAtY29sb3I6ICM0ZDk2ZmY7XHJcblxyXG5cdC0tcHJvZ3Jlc3MtYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcclxufVxyXG4iLCAiLnRhc2stZ2VuaXVzLXZpZXctY29uZmlnLW1vZGFsIHtcclxuXHR3aWR0aDogbWF4KDcwJSwgNTAwcHgpO1xyXG59XHJcblxyXG4vKiBTdHlsaW5nIGZvciB0aGUgVmlldyBDb25maWd1cmF0aW9uIE1vZGFsICovXHJcbi50YXNrLWdlbml1cy12aWV3LWNvbmZpZy1tb2RhbCAuc2V0dGluZy1pdGVtIHtcclxuXHQvKiBBZGQgc29tZSBzcGFjaW5nIGJldHdlZW4gc2V0dGluZ3MgaW4gdGhlIG1vZGFsICovXHJcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXctY29uZmlnLW1vZGFsXHJcblx0LnNldHRpbmctaXRlbTpub3QoLnNldHRpbmctaXRlbS1oZWFkaW5nKVxyXG5cdC5zZXR0aW5nLWl0ZW0taW5mbyB7XHJcblx0LyogRW5zdXJlIGxhYmVscyBhcmUgYWxpZ25lZCB3ZWxsICovXHJcblx0d2lkdGg6IDEyMHB4O1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldy1jb25maWctbW9kYWwgLnNldHRpbmctaXRlbS1jb250cm9sIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxyXG4udGFzay1nZW5pdXMtdmlldy1jb25maWctbW9kYWwgLnNldHRpbmctaXRlbS1jb250cm9sIGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xyXG5cdC8qIEVuc3VyZSB0ZXh0IGlucHV0cyB0YWtlIGF2YWlsYWJsZSB3aWR0aCAqL1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldy1jb25maWctbW9kYWwgLnNldHRpbmctaXRlbS1kZXNjcmlwdGlvbiB7XHJcblx0LyogU3R5bGUgZGVzY3JpcHRpb25zICovXHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tdG9wOiAycHg7XHJcbn1cclxuXHJcbi8qIFN0eWxpbmcgZm9yIHRoZSBWaWV3IE1hbmFnZW1lbnQgTGlzdCBpbiBTZXR0aW5ncyBUYWIgKi9cclxuLnZpZXctbWFuYWdlbWVudC1saXN0IC5zZXR0aW5nLWl0ZW0ge1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0cGFkZGluZzogMTBweCAwO1xyXG5cdGRpc3BsYXk6IGZsZXg7IC8qIFVzZSBmbGV4IGZvciBiZXR0ZXIgY29udHJvbCAqL1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8qIEFsaWduIGl0ZW1zIHZlcnRpY2FsbHkgKi9cclxufVxyXG5cclxuLnZpZXctbWFuYWdlbWVudC1saXN0IC5zZXR0aW5nLWl0ZW0taW5mbyB7XHJcblx0ZmxleC1ncm93OiAxOyAvKiBBbGxvdyBuYW1lL2Rlc2NyaXB0aW9uIHRvIHRha2UgdXAgc3BhY2UgKi9cclxuXHRtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbn1cclxuXHJcbi52aWV3LW1hbmFnZW1lbnQtbGlzdCAuc2V0dGluZy1pdGVtLWNvbnRyb2wge1xyXG5cdC8qIEtlZXAgY29udHJvbHMgdG9nZXRoZXIgKi9cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA4cHg7IC8qIFNwYWNlIGJldHdlZW4gdG9nZ2xlcy9idXR0b25zICovXHJcbn1cclxuXHJcbi52aWV3LW1hbmFnZW1lbnQtbGlzdCAuc2V0dGluZy1pdGVtLWNvbnRyb2wgLmJ1dHRvbi1jb21wb25lbnQge1xyXG5cdHBhZGRpbmc6IDVweDsgLyogU21hbGxlciBwYWRkaW5nIGZvciBpY29uIGJ1dHRvbnMgKi9cclxuXHRoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi52aWV3LW1hbmFnZW1lbnQtbGlzdCAudmlldy1vcmRlci1idXR0b24sXHJcbi52aWV3LW1hbmFnZW1lbnQtbGlzdCAudmlldy1kZWxldGUtYnV0dG9uIHtcclxuXHQvKiBTdHlsZSBhY3Rpb24gYnV0dG9ucyAqL1xyXG5cdG1hcmdpbi1sZWZ0OiA1cHg7XHJcbn1cclxuXHJcbi52aWV3LW1hbmFnZW1lbnQtbGlzdCAuc2V0dGluZy1pdGVtOmxhc3QtY2hpbGQge1xyXG5cdGJvcmRlci1ib3R0b206IG5vbmU7XHJcbn1cclxuXHJcbi8qIFNwZWNpZmljIHN0eWxpbmcgZm9yIHRvZ2dsZXMgaW4gdGhlIGxpc3QgKi9cclxuLnZpZXctbWFuYWdlbWVudC1saXN0IC5zZXR0aW5nLWl0ZW0tY29udHJvbCAuY2hlY2tib3gtY29udGFpbmVyIHtcclxuXHRtYXJnaW46IDA7IC8qIFJlbW92ZSBkZWZhdWx0IG1hcmdpbnMgaWYgYW55ICovXHJcbn1cclxuXHJcbi8qIEljb24gUGlja2VyIE1lbnUgU3R5bGVzIChTY29wZWQpICovXHJcbi50Zy1pY29uLW1lbnUge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR6LWluZGV4OiAxMDA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LWwpO1xyXG5cdHBhZGRpbmc6IDhweDtcclxuXHRtYXgtaGVpZ2h0OiAzMDBweDsgLyogTGltaXQgb3ZlcmFsbCBtZW51IGhlaWdodCAqL1xyXG5cdHdpZHRoOiAyNTBweDtcclxuXHRkaXNwbGF5OiBmbGV4OyAvKiBVc2UgZmxleGJveCAqL1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0LyogUHJldmVudCBwYWRkaW5nIGZyb20gYWZmZWN0aW5nIG1heC1oZWlnaHQgY2FsY3VsYXRpb24gZm9yIGZsZXggY2hpbGRyZW4gKi9cclxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG4vKiBSZW1vdmUgc3R5bGVzIGZvciB0aGUgaW50ZXJtZWRpYXRlIGNvbnRhaW5lciAqL1xyXG4vKiAuYm0tcGx1Z2luLWljb24tbWVudSAuYm0tbWVudS1jb250ZW50IHsgXHJcblx0ZmxleC1ncm93OiAxOyBcclxuXHRvdmVyZmxvdy15OiBhdXRvOyBcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0bWluLWhlaWdodDogMDsgXHJcbn0gKi9cclxuXHJcbi50Zy1pY29uLW1lbnUgLnRnLW1lbnUtc2VhcmNoIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiA2cHggOHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdGZsZXgtc2hyaW5rOiAwOyAvKiBQcmV2ZW50IHNlYXJjaCBiYXIgZnJvbSBzaHJpbmtpbmcgKi9cclxufVxyXG5cclxuLnRnLWljb24tbWVudSAudGctbWVudS1pY29ucyB7XHJcblx0ZmxleC1ncm93OiAxOyAvKiBJY29uIGxpc3QgdGFrZXMgcmVtYWluaW5nIHZlcnRpY2FsIHNwYWNlICovXHJcblx0b3ZlcmZsb3cteTogYXV0bzsgLyogTWFrZSB0aGUgaWNvbiBsaXN0IHNjcm9sbGFibGUgKi9cclxuXHRtaW4taGVpZ2h0OiAwOyAvKiBDcnVjaWFsIGZvciBhbGxvd2luZyBmbGV4IGNoaWxkIHRvIHNocmluayBhbmQgc2Nyb2xsICovXHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMnB4LCAxZnIpKTtcclxuXHRnYXA6IDRweDtcclxuXHQvKiBSZW1vdmUgbWluLWhlaWdodCBwcmV2aW91c2x5IG5lZWRlZCBmb3IgZ3JpZCBpbiBmbGV4ICovXHJcbn1cclxuXHJcbi8qIFNjb3BlIHRoZSBjbGlja2FibGUgaWNvbiAqd2l0aGluKiB0aGUgbWVudSAqL1xyXG4udGctaWNvbi1tZW51IC5jbGlja2FibGUtaWNvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDZweDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xcyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLnRnLWljb24tbWVudSAuY2xpY2thYmxlLWljb246aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGctaWNvbi1tZW51IC5jbGlja2FibGUtaWNvbiBzdmcge1xyXG5cdHdpZHRoOiAyMHB4O1xyXG5cdGhlaWdodDogMjBweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuIiwgIi8qIENoZWNrYm94IFN0YXR1cyBTd2l0Y2hlciBTdHlsZXMgKi9cclxuLnRhc2stc3RhdHVzLXdpZGdldCB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtYm9sZCk7XHJcbn1cclxuXHJcbi50YXNrLXN0YXRlLmxpdmUtcHJldmlldy1tb2RlIHtcclxuXHRwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHBhZGRpbmctaW5saW5lLWVuZDogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4udGFzay1zdGF0dXMtd2lkZ2V0IC5saXN0LWJ1bGxldDo6YWZ0ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpc3QtbWFya2VyLWNvbG9yKSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBUT0RPIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCIgXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBET0lORyBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiL1wiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stZG9pbmctY29sb3IpO1xyXG59XHJcblxyXG4vKiBJTi1QUk9HUkVTUyBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiPlwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2staW4tcHJvZ3Jlc3MtY29sb3IpO1xyXG59XHJcblxyXG4vKiBET05FIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCJ4XCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCJYXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1jb21wbGV0ZWQtY29sb3IpO1xyXG59XHJcblxyXG4vKiBDQU5DRUxMRUQgc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cIi1cIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLWFiYW5kb25lZC1jb2xvcik7XHJcbn1cclxuXHJcbi8qIFNDSEVEVUxFRCBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiPFwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stcGxhbm5lZC1jb2xvcik7XHJcbn1cclxuXHJcbi8qIFFVRVNUSU9OIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCI/XCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1xdWVzdGlvbi1jb2xvcik7XHJcbn1cclxuXHJcbi8qIElNUE9SVEFOVCBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiIVwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2staW1wb3J0YW50LWNvbG9yKTtcclxufVxyXG5cclxuLyogU1RBUiBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiKlwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stc3Rhci1jb2xvcik7XHJcbn1cclxuXHJcbi8qIFFVT1RFIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9J1wiJ10ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLXF1b3RlLWNvbG9yKTtcclxufVxyXG5cclxuLyogTE9DQVRJT04gc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cImxcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLWxvY2F0aW9uLWNvbG9yKTtcclxufVxyXG5cclxuLyogQk9PS01BUksgc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cImJcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLWJvb2ttYXJrLWNvbG9yKTtcclxufVxyXG5cclxuLyogSU5GT1JNQVRJT04gc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cImlcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLWluZm9ybWF0aW9uLWNvbG9yKTtcclxufVxyXG5cclxuLyogSURFQSBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiSVwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2staWRlYS1jb2xvcik7XHJcbn1cclxuXHJcbi8qIFBST1Mgc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cInBcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLXByb3MtY29sb3IpO1xyXG59XHJcblxyXG4vKiBDT05TIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCJjXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1jb25zLWNvbG9yKTtcclxufVxyXG5cclxuLyogRklSRSBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiZlwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stZmlyZS1jb2xvcik7XHJcbn1cclxuXHJcbi8qIEtFWSBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwia1wiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2sta2V5LWNvbG9yKTtcclxufVxyXG5cclxuLyogV0lOIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCJ3XCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay13aW4tY29sb3IpO1xyXG59XHJcblxyXG4vKiBVUCBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwidVwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stdXAtY29sb3IpO1xyXG59XHJcblxyXG4vKiBET1dOIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCJkXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1kb3duLWNvbG9yKTtcclxufVxyXG5cclxuLyogTk9URSBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiblwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stbm90ZS1jb2xvcik7XHJcbn1cclxuXHJcbi8qIEFNT1VOVC9TQVZJTkdTIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCJTXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1hbW91bnQtY29sb3IpO1xyXG59XHJcblxyXG4vKiBTUEVFQ0ggQlVCQkxFIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCIwXCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCIxXCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCIyXCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCIzXCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCI0XCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCI1XCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCI2XCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCI3XCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCI4XCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCI5XCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1zcGVlY2gtY29sb3IpO1xyXG59XHJcblxyXG4udGFzay1mYWtlLWJ1bGxldCB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdHdpZHRoOiA1cHg7XHJcblx0aGVpZ2h0OiA1cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRtYXJnaW4tcmlnaHQ6IDRweDtcclxuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG5vbCA+IC50YXNrLWxpc3QtaXRlbSAudGFzay1mYWtlLWJ1bGxldCB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxub2wgPiAudGFzay1saXN0LWl0ZW0gLnRhc2stc3RhdGUtY29udGFpbmVyIHtcclxuXHRtYXJnaW4taW5saW5lLXN0YXJ0OiAwO1xyXG59XHJcbiIsICIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKiBUYXNrIEdlbml1cyBPbmJvYXJkaW5nIFN0eWxlcyAqL1xyXG4vKiBzaGFkY24gRGVzaWduIFByaW5jaXBsZXMgQXBwbGllZCAqL1xyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogTWFpbiBvbmJvYXJkaW5nIHN0eWxlcyAtIHNoYXJlZCBieSBtb2RhbCBhbmQgdmlldyAqL1xyXG4ub25ib2FyZGluZy12aWV3IHtcclxuXHQtLWRpYWxvZy13aWR0aDogODAwcHg7XHJcblx0LS1kaWFsb2ctbWF4LXdpZHRoOiA5MHZ3O1xyXG5cdC0tZGlhbG9nLW1heC1oZWlnaHQ6IDkwdmg7XHJcblx0LS1vbmJvYXJkaW5nLXNwYWNpbmc6IHZhcigtLXNpemUtNC00KTtcclxuXHQtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1czogOHB4O1xyXG5cdC0tb25ib2FyZGluZy10cmFuc2l0aW9uOiBhbGwgMjAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcclxuXHJcblx0Lyogc2hhZGNuIGRlc2lnbiB0b2tlbnMgKi9cclxuXHQtLXNoYWRvdy1zbTogMCAxcHggMnB4IDAgcmdiKDAgMCAwIC8gMC4wNSk7XHJcblx0LS1zaGFkb3ctbWQ6IDAgMXB4IDNweCAwIHJnYigwIDAgMCAvIDAuMSksIDAgMXB4IDJweCAtMXB4IHJnYigwIDAgMCAvIDAuMSk7XHJcblx0LS1zaGFkb3ctbGc6IDAgNHB4IDZweCAtMXB4IHJnYigwIDAgMCAvIDAuMSksIDAgMnB4IDRweCAtMnB4IHJnYigwIDAgMCAvIDAuMSk7XHJcblx0LS1zaGFkb3cteGw6IDAgMTBweCAxNXB4IC0zcHggcmdiKDAgMCAwIC8gMC4xKSwgMCA0cHggNnB4IC00cHggcmdiKDAgMCAwIC8gMC4xKTtcclxufVxyXG5cclxuLyogTW9kYWwgc3BlY2lmaWMgc3R5bGVzICovXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm1vZGFsLWNvbnRlbnQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1vZGFsLWJhY2tncm91bmQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW1vZGFsLXJhZGl1cyk7XHJcblx0bWF4LXdpZHRoOiB2YXIoLS1kaWFsb2ctbWF4LXdpZHRoKTtcclxuXHRtYXgtaGVpZ2h0OiB2YXIoLS1kaWFsb2ctbWF4LWhlaWdodCk7XHJcblx0aGVpZ2h0OiA5MHZoO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRvdmVyZmxvdzogYXV0bztcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0bWluLWhlaWdodDogMTAwcHg7XHJcbn1cclxuXHJcbi8qIFZpZXcgc3BlY2lmaWMgc3R5bGVzICovXHJcbi5vbmJvYXJkaW5nLXZpZXcge1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAudmlldy1jb250ZW50IHtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4vKiBIZWFkZXIgc2VjdGlvbiAqL1xyXG4ub25ib2FyZGluZy12aWV3IC5vbmJvYXJkaW5nLWhlYWRlciB7XHJcblx0cGFkZGluZzogY2FsYyh2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpICogNCkgdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKSB2YXIoLS1zaXplLTQtMikgdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIEhpZGUgb25ib2FyZGluZy1oZWFkZXIgaWYgbm8gaGVhZGVyIGNvbnRlbnQgKi9cclxuLm9uYm9hcmRpbmctdmlldyAub25ib2FyZGluZy1oZWFkZXI6ZW1wdHkge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctc3VidGl0bGUge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuOTVlbTtcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi8qIENvbnRlbnQgc2VjdGlvbiAqL1xyXG4ub25ib2FyZGluZy12aWV3IC5vbmJvYXJkaW5nLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcblx0cGFkZGluZzogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdG1pbi1oZWlnaHQ6IDA7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXJcclxufVxyXG5cclxuLyogRm9vdGVyIHNlY3Rpb24gLSBNb2Rlcm4gZGVzaWduICovXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctZm9vdGVyIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCkgdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci10b3A6IG5vbmU7XHJcblx0Ym94LXNoYWRvdzogMCAtMnB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjA2KTtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxufVxyXG5cclxuLyogR2xhc3MgbW9ycGhpc20gZWZmZWN0IGZvciBtb2Rlcm4gbG9vayAqL1xyXG4ub25ib2FyZGluZy12aWV3IC5vbmJvYXJkaW5nLWZvb3Rlcjo6YmVmb3JlIHtcclxuXHRjb250ZW50OiAnJztcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0cmlnaHQ6IDA7XHJcblx0Ym90dG9tOiAwO1xyXG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSksIHRyYW5zcGFyZW50KTtcclxuXHRvcGFjaXR5OiAwLjU7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctYnV0dG9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ei1pbmRleDogMTtcclxufVxyXG5cclxuLyogQnV0dG9uIGdyb3VwcyAtIGxlZnQgYW5kIHJpZ2h0ICovXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmJ1dHRvbnMtbGVmdCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5idXR0b25zLXJpZ2h0IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0bWFyZ2luLWxlZnQ6IGF1dG87XHJcbn1cclxuXHJcbi8qIEVuaGFuY2VkIGJ1dHRvbiBzdHlsZXMgKi9cclxuLm9uYm9hcmRpbmctdmlldyAub25ib2FyZGluZy1idXR0b25zIGJ1dHRvbiB7XHJcblx0bWluLWhlaWdodDogMzZweDtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctYnV0dG9ucyBidXR0b246bm90KC5tb2QtY3RhKTpob3ZlciB7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG59XHJcblxyXG4vKiBSaXBwbGUgZWZmZWN0IG9uIGJ1dHRvbiBjbGljayAqL1xyXG4ub25ib2FyZGluZy12aWV3IC5vbmJvYXJkaW5nLWJ1dHRvbnMgYnV0dG9uOjphZnRlciB7XHJcblx0Y29udGVudDogJyc7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogNTAlO1xyXG5cdGxlZnQ6IDUwJTtcclxuXHR3aWR0aDogMDtcclxuXHRoZWlnaHQ6IDA7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuXHR0cmFuc2l0aW9uOiB3aWR0aCAwLjZzLCBoZWlnaHQgMC42cztcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAub25ib2FyZGluZy1idXR0b25zIGJ1dHRvbjphY3RpdmU6OmFmdGVyIHtcclxuXHR3aWR0aDogMjAwcHg7XHJcblx0aGVpZ2h0OiAyMDBweDtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIFNldHRpbmdzIENoZWNrIFN0ZXAgKi9cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zZXR0aW5ncy1jaGVjay1jb250ZW50IHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDEuMmZyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTYpO1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLyogQ3VycmVudCBjb25maWd1cmF0aW9uIGNhcmQgKi9cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stY3VycmVudC1jYXJkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zbSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmdzLWNoZWNrLWNhcmQtaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY2hlY2staGVhZGVyLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0Zm9udC1zaXplOiAxLjVlbTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY2hlY2staGVhZGVyLXRpdGxlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY2hlY2staGVhZGVyLXRpdGxlIGgzIHtcclxuXHRtYXJnaW46IDA7XHJcblx0Zm9udC1zaXplOiAxLjFlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zZXR0aW5ncy1jaGVjay1jYXJkLWJvZHkge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY2hlY2stY2FyZC1kZXNjIHtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stY2hhbmdlcy1saXN0IHtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stY2hhbmdlcy1saXN0IGxpIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5jaGFuZ2UtY2hlY2staWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLyogQWN0aW9ucyBjb250YWluZXIgKi9cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTMpO1xyXG59XHJcblxyXG4vKiBBY3Rpb24gY2FyZHMgKi9cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stYWN0aW9uLWNhcmQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAycHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiB2YXIoLS1vbmJvYXJkaW5nLXRyYW5zaXRpb24pO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zbSk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi8qIFNlbGVjdGVkIGNhcmQgc3RhdGUgKi9cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stYWN0aW9uLWNhcmQuaXMtc2VsZWN0ZWQge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcblx0XHQxMzVkZWcsXHJcblx0XHRyZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjA1KSAwJSxcclxuXHRcdHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSkgMTAwJVxyXG5cdCk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LW1kKSwgMCAwIDAgM3B4IHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuMSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmdzLWNoZWNrLWFjdGlvbi1jYXJkOmhvdmVyIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LWxnKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmdzLWNoZWNrLWFjdGlvbi1jYXJkOmhvdmVyOjpiZWZvcmUge1xyXG5cdHRyYW5zZm9ybTogc2NhbGVYKDEpO1xyXG59XHJcblxyXG4vKiBXaXphcmQgY2FyZCAocHJpbWFyeSkgKi9cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stYWN0aW9uLXdpemFyZCB7XHJcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG5cdFx0MTM1ZGVnLFxyXG5cdFx0dmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KSAwJSxcclxuXHRcdHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KSAxMDAlXHJcblx0KTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stYWN0aW9uLXdpemFyZDo6YmVmb3JlIHtcclxuXHR0cmFuc2Zvcm06IHNjYWxlWCgxKTtcclxufVxyXG5cclxuLyogS2VlcCBjYXJkIChzZWNvbmRhcnkpICovXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmdzLWNoZWNrLWFjdGlvbi1rZWVwIHtcclxuXHRvcGFjaXR5OiAwLjk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmdzLWNoZWNrLWFjdGlvbi1rZWVwOmhvdmVyIHtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4vKiBBY3Rpb24gY2FyZCBjb250ZW50ICovXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmFjdGlvbi1jYXJkLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuYWN0aW9uLWNhcmQtaWNvbiB7XHJcblx0Zm9udC1zaXplOiAyZW07XHJcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTQtMyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmFjdGlvbi1jYXJkLWNvbnRlbnQgaDMge1xyXG5cdG1hcmdpbjogMCAwIHZhcigtLXNpemUtNC0yKSAwO1xyXG5cdGZvbnQtc2l6ZTogMS4yZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5hY3Rpb24tY2FyZC1jb250ZW50ID4gcCB7XHJcblx0bWFyZ2luOiAwIDAgdmFyKC0tc2l6ZS00LTMpIDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuYWN0aW9uLWNhcmQtZmVhdHVyZXMge1xyXG5cdGxpc3Qtc3R5bGU6IG5vbmU7XHJcblx0cGFkZGluZzogMDtcclxuXHRtYXJnaW46IHZhcigtLXNpemUtNC0zKSAwIDAgMDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmFjdGlvbi1jYXJkLWZlYXR1cmVzIGxpIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5hY3Rpb24tY2FyZC1mZWF0dXJlcyAuZmVhdHVyZS1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuYWN0aW9uLWNhcmQtbm90ZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMykgdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC1zaXplOiAwLjg1ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5hY3Rpb24tY2FyZC1ub3RlIC5ub3RlLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgYWRqdXN0bWVudHMgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0Lm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stY29udGVudCB7XHJcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuXHR9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKiBXZWxjb21lIFN0ZXAgKi9cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ub25ib2FyZGluZy12aWV3IC53ZWxjb21lLXNlY3Rpb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZlYXR1cmVzLW92ZXJ2aWV3IHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjgwcHgsIDFmcikpO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdG1hcmdpbjogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKSAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mZWF0dXJlLWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1vbmJvYXJkaW5nLWJvcmRlci1yYWRpdXMpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mZWF0dXJlLWljb24ge1xyXG5cdGZvbnQtc2l6ZTogMS41ZW07XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0bGluZS1oZWlnaHQ6IDE7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHVwLW5vdGUge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHVwLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjk1ZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNTtcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKiBVc2VyIExldmVsIFNlbGVjdGlvbiAqL1xyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnVzZXItbGV2ZWwtY2FyZHMge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyNTBweCwgMWZyKSk7XHJcblx0Z2FwOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG5cdG1hcmdpbjogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKSAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC51c2VyLWxldmVsLWNhcmQge1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1vbmJvYXJkaW5nLWJvcmRlci1yYWRpdXMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IHZhcigtLW9uYm9hcmRpbmctdHJhbnNpdGlvbik7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctc20pO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC51c2VyLWxldmVsLWNhcmQuY2FyZC1ob3ZlciB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbGcpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC51c2VyLWxldmVsLWNhcmQuc2VsZWN0ZWQge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4xKTtcclxufVxyXG5cclxuLnVzZXItbGV2ZWwtY2FyZCAuY2FyZC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi51c2VyLWxldmVsLWNhcmQgLmNhcmQtaWNvbiB7XHJcblx0Zm9udC1zaXplOiAxLjhlbTtcclxuXHRsaW5lLWhlaWdodDogMTtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLnVzZXItbGV2ZWwtY2FyZCAuY2FyZC10aXRsZSB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiAxLjJlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4udXNlci1sZXZlbC1jYXJkIC5jYXJkLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG5cdG1hcmdpbjogMCAwIHZhcigtLXNpemUtNC0yKSAwO1xyXG59XHJcblxyXG4udXNlci1sZXZlbC1jYXJkIC5jYXJkLWZlYXR1cmVzIHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi51c2VyLWxldmVsLWNhcmQgLmNhcmQtZmVhdHVyZXMgdWwge1xyXG5cdG1hcmdpbjogMDtcclxuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtNC0zKTtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcblxyXG4udXNlci1sZXZlbC1jYXJkIC5jYXJkLWZlYXR1cmVzIGxpIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4udXNlci1sZXZlbC1jYXJkIC5jYXJkLWZlYXR1cmVzIGxpOmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcdTIwMjJcIjtcclxuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogY2FsYygtMSAqIHZhcigtLXNpemUtNC0zKSk7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi51c2VyLWxldmVsLWNhcmQgLnJlY29tbWVuZGF0aW9uLWJhZGdlIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cmlnaHQ6IHZhcigtLXNpemUtNC0yKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtNC0xKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC1zaXplOiAwLjdlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIENvbmZpZ3VyYXRpb24gUHJldmlldyAqL1xyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNvbmZpZy1vdmVydmlldyB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWF4LXdpZHRoOiA4MDBweDtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5tb2RlLWljb24ge1xyXG5cdC0taWNvbi1zaXplOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNvbmZpZy1zZXR0aW5ncyB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWF4LXdpZHRoOiA4MDBweDtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5jb25maWctZmVhdHVyZXMge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1heC13aWR0aDogODAwcHg7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY29uZmlnLXZpZXdzIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXgtd2lkdGg6IDgwMHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmVuYWJsZWQtZmVhdHVyZXMtbGlzdCB7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1hcmdpbjogMDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmVuYWJsZWQtZmVhdHVyZXMtbGlzdCBsaSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZmVhdHVyZS1jaGVjayB7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAudmlld3MtZ3JpZCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDEyMHB4LCAxZnIpKTtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAudmlldy1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnZpZXctaWNvbiB7XHJcblx0Zm9udC1zaXplOiAxLjJlbTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnZpZXctbmFtZSB7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zZXR0aW5ncy1zdW1tYXJ5LWxpc3Qge1xyXG5cdGxpc3Qtc3R5bGU6IG5vbmU7XHJcblx0cGFkZGluZzogMDtcclxuXHRtYXJnaW46IDA7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zZXR0aW5ncy1zdW1tYXJ5LWxpc3QgbGkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSAwO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3Mtc3VtbWFyeS1saXN0IGxpOmxhc3QtY2hpbGQge1xyXG5cdGJvcmRlci1ib3R0b206IG5vbmU7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmctbGFiZWwge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZy12YWx1ZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5jb25maWctb3B0aW9ucyB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWF4LXdpZHRoOiA4MDBweDtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5jdXN0b21pemF0aW9uLW5vdGUge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1heC13aWR0aDogODAwcHg7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAubm90ZS10ZXh0IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRtYXJnaW46IDA7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4vKiBDb25maWd1cmF0aW9uIENoYW5nZXMgUHJldmlldyAqL1xyXG4ub25ib2FyZGluZy12aWV3IC5jb25maWctY2hhbmdlcy1zdW1tYXJ5IHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXgtd2lkdGg6IDgwMHB4O1xyXG5cdG1hcmdpbjogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKSAwO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hhbmdlcyB7XHJcblx0bWFyZ2luOiB2YXIoLS1zaXplLTQtMikgMDtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnByZXNlcnZlZC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0xKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnByZXNlcnZlZC1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cdGZvbnQtc2l6ZTogMS4xZW07XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNoYW5nZS10ZXh0IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAudXBkYXRlZC12aWV3cyxcclxuLm9uYm9hcmRpbmctbW9kYWwgLnVwZGF0ZWQtdmlld3Mge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNoYW5nZS1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRmb250LXNpemU6IDEuMWVtO1xyXG5cdG1hcmdpbi1yaWdodDogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmdzLWNoYW5nZXMtbGlzdCB7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1hcmdpbjogdmFyKC0tc2l6ZS00LTEpIDAgMCB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmdzLWNoYW5nZXMtbGlzdCBsaSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2FmZXR5LW5vdGUge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblx0YmFja2dyb3VuZDogcmdiYSh2YXIoLS1jb2xvci1ibHVlLXJnYiksIDAuMSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0xKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2FmZXR5LWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ibHVlKTtcclxuXHRmb250LXNpemU6IDEuMWVtO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2FmZXR5LXRleHQge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ibHVlKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIFRhc2sgQ3JlYXRpb24gR3VpZGUgKi9cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ub25ib2FyZGluZy12aWV3IC50YXNrLWd1aWRlLWludHJvIHtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5ndWlkZS1kZXNjcmlwdGlvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45NWVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjU7XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zaG9ydGN1dHMtc2VjdGlvbiB7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZm9ybWF0LWV4YW1wbGUge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC00KTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZvcm1hdC1leGFtcGxlIGNvZGUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtNC0xKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRtYXJnaW46IHZhcigtLXNpemUtMi0xKSAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mb3JtYXQtbGVnZW5kIHNtYWxsIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTItMSk7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm1ldGFkYXRhLXN5bWJvbHMge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc3RhdHVzLWxpc3QgbGksXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnN5bWJvbHMtbGlzdCB7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRtYXJnaW46IDA7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1vbmJvYXJkaW5nLWJvcmRlci1yYWRpdXMpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zdGF0dXMtbGlzdCBsaSxcclxuLm9uYm9hcmRpbmctdmlldyAuc3ltYm9scy1saXN0IGxpIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIDA7XHJcblx0Zm9udC1zaXplOiAwLjg1ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc3RhdHVzLWxpc3QgY29kZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTQtMSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XHJcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblx0bWluLXdpZHRoOiA0MHB4O1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZGVtby1jb250ZW50IHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmRlbW8tYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKSB2YXIoLS1zaXplLTQtNCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLXJhZGl1cyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0dHJhbnNpdGlvbjogdmFyKC0tb25ib2FyZGluZy10cmFuc2l0aW9uKTtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmRlbW8tYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5wcmFjdGljZS1mZWVkYmFjayB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC52YWxpZGF0aW9uLW1lc3NhZ2Uge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1vbmJvYXJkaW5nLWJvcmRlci1yYWRpdXMpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC52YWxpZGF0aW9uLXN1Y2Nlc3Mge1xyXG5cdGJhY2tncm91bmQ6IHJnYmEodmFyKC0tY29sb3ItZ3JlZW4tcmdiKSwgMC4xKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAudmFsaWRhdGlvbi1lcnJvciB7XHJcblx0YmFja2dyb3VuZDogcmdiYSh2YXIoLS1jb2xvci1yZWQtcmdiKSwgMC4xKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1yZWQpO1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC52YWxpZGF0aW9uLXdhcm5pbmcge1xyXG5cdGJhY2tncm91bmQ6IHJnYmEodmFyKC0tY29sb3Itb3JhbmdlLXJnYiksIDAuMSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3Itb3JhbmdlKTtcclxuXHRjb2xvcjogdmFyKC0tY29sb3Itb3JhbmdlKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAudmFsaWRhdGlvbi1pbmZvIHtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWNvbG9yLWJsdWUtcmdiKSwgMC4xKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibHVlKTtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItYmx1ZSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNob3J0Y3V0cy1saXN0IHtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1vbmJvYXJkaW5nLWJvcmRlci1yYWRpdXMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2hvcnRjdXRzLWxpc3QgbGkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgMDtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNob3J0Y3V0cy1saXN0IGNvZGUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtNC0yKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLXNpemUtNC0zKTtcclxuXHRtaW4td2lkdGg6IDEwMHB4O1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKiBDb21wbGV0aW9uIFBhZ2UgKi9cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5jb21wbGV0aW9uLXN1Y2Nlc3Mge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zdWNjZXNzLWljb24ge1xyXG5cdGZvbnQtc2l6ZTogM2VtO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc3VjY2Vzcy1tZXNzYWdlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjk1ZW07XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mZWVkYmFjay1zZWN0aW9uIHtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5jb25maWctc3VtbWFyeS1jYXJkIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNvbmZpZy1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNvbmZpZy1pY29uIHtcclxuXHRmb250LXNpemU6IDEuNWVtO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5jb25maWctbmFtZSB7XHJcblx0Zm9udC1zaXplOiAxLjFlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNvbmZpZy1kZXNjcmlwdGlvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5xdWljay1zdGFydC1zdGVwcyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5xdWljay1zdGFydC1zdGVwIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc3RlcC1udW1iZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHR3aWR0aDogMjRweDtcclxuXHRoZWlnaHQ6IDI0cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnN0ZXAtY29udGVudCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm5leHQtc3RlcHMtbGlzdCB7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1hcmdpbjogMDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAubmV4dC1zdGVwcy1saXN0IGxpIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnN0ZXAtY2hlY2sge1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zdGVwLXRleHQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5yZXNvdXJjZXMtbGlzdCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDIwMHB4LCAxZnIpKTtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAucmVzb3VyY2UtaXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0dHJhbnNpdGlvbjogdmFyKC0tb25ib2FyZGluZy10cmFuc2l0aW9uKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAucmVzb3VyY2UtY2xpY2thYmxlIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnJlc291cmNlLWNsaWNrYWJsZTpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnJlc291cmNlLWljb24ge1xyXG5cdGZvbnQtc2l6ZTogMS41ZW07XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZlZWRiYWNrLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG5cdG1hcmdpbjogMCAwIHZhcigtLXNpemUtNC0yKSAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mZWVkYmFjay1idXR0b25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mZWVkYmFjay1idXR0b24ge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1yYWRpdXMpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdHRyYW5zaXRpb246IHZhcigtLW9uYm9hcmRpbmctdHJhbnNpdGlvbik7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZlZWRiYWNrLXBvc2l0aXZlOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mZWVkYmFjay1uZWdhdGl2ZTpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItcmVkKTtcclxuXHRjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZlZWRiYWNrLXRoYW5rcyB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZmVlZGJhY2stdGhhbmtzLW1lc3NhZ2Uge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRtYXJnaW46IDAgMCB2YXIoLS1zaXplLTQtMikgMDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZmVlZGJhY2stdGhhbmtzIGEge1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZmVlZGJhY2stdGhhbmtzIGE6aG92ZXIge1xyXG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5maW5hbC1tZXNzYWdlIHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5maW5hbC1tZXNzYWdlLXRleHQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDFlbTtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuLyogUmVzcG9uc2l2ZSBEZXNpZ24gKi9cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQub25ib2FyZGluZy12aWV3IHtcclxuXHRcdC0tZGlhbG9nLXdpZHRoOiA5NXZ3O1xyXG5cdFx0LS1kaWFsb2ctbWF4LXdpZHRoOiA5NXZ3O1xyXG5cdFx0LS1kaWFsb2ctbWF4LWhlaWdodDogOTV2aDtcclxuXHR9XHJcblxyXG5cdC5vbmJvYXJkaW5nLXZpZXcgLnVzZXItbGV2ZWwtY2FyZHMge1xyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcblx0fVxyXG5cclxuXHQub25ib2FyZGluZy12aWV3IC5mZWF0dXJlcy1vdmVydmlldyB7XHJcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuXHR9XHJcblxyXG5cdC5vbmJvYXJkaW5nLXZpZXcgLnZpZXdzLWdyaWQge1xyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxMDBweCwgMWZyKSk7XHJcblx0fVxyXG5cclxuXHQub25ib2FyZGluZy12aWV3IC5yZXNvdXJjZXMtbGlzdCB7XHJcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuXHR9XHJcblxyXG5cdC5vbmJvYXJkaW5nLXZpZXcgLmZlZWRiYWNrLWJ1dHRvbnMge1xyXG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHR9XHJcblxyXG5cdC5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctYnV0dG9ucyB7XHJcblx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR9XHJcblxyXG5cdC8qIE1vZGUgYW5kIFBsYWNlbWVudCBTZWxlY3Rpb24gLSBNb2JpbGUgTGF5b3V0ICovXHJcblx0Lm1vZGUtb3B0aW9ucyxcclxuXHQucGxhY2VtZW50LW9wdGlvbnMge1xyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcblx0fVxyXG5cclxuXHQubW9kZS1jYXJkLXByZXZpZXcge1xyXG5cdFx0aGVpZ2h0OiAxMDBweDtcclxuXHR9XHJcblxyXG5cdC5wbGFjZW1lbnQtY2FyZC1wcmV2aWV3IHtcclxuXHRcdGhlaWdodDogODBweDtcclxuXHR9XHJcblxyXG5cdC5tb2RlLWNhcmQsXHJcblx0LnBsYWNlbWVudC1jYXJkIHtcclxuXHRcdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHR9XHJcblxyXG5cdC8qIEludHJvIG1vZGUgc2VsZWN0aW9uIC0gTW9iaWxlIGFkanVzdG1lbnRzICovXHJcblx0LmludHJvLW1vZGUtc2VsZWN0aW9uLWNvbnRhaW5lciB7XHJcblx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHRwYWRkaW5nOiAwIHZhcigtLXNpemUtNC0xKTtcclxuXHR9XHJcblxyXG5cdC5pbnRyby10eXBpbmcge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpIHZhcigtLXNpemUtNC0yKTtcclxuXHR9XHJcblxyXG5cdC8qIEZvb3RlciBhZGp1c3RtZW50cyBmb3IgbW9iaWxlICovXHJcblx0Lm9uYm9hcmRpbmctdmlldyAub25ib2FyZGluZy1mb290ZXIge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpIHZhcigtLXNpemUtNC0yKTtcclxuXHR9XHJcblxyXG5cdC5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctYnV0dG9ucyB7XHJcblx0XHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHR9XHJcblxyXG5cdC5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctYnV0dG9ucyBidXR0b24ge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC0zKTtcclxuXHRcdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0fVxyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuLyogRGFyayBUaGVtZSBBZGp1c3RtZW50cyAqL1xyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qIERhcmsgdGhlbWUgYWRqdXN0bWVudHMgZm9yIGZvb3RlciAqL1xyXG4udGhlbWUtZGFyayAudGhlbWUtZGFyayAub25ib2FyZGluZy12aWV3IC5vbmJvYXJkaW5nLWZvb3RlciB7XHJcblx0Ym94LXNoYWRvdzogMCAtMnB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xyXG59XHJcblxyXG4udGhlbWUtZGFyayAudGhlbWUtZGFyayAub25ib2FyZGluZy12aWV3IC5vbmJvYXJkaW5nLWZvb3Rlcjo6YmVmb3JlIHtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDAsIDAsIDAsIDAuMiksIHRyYW5zcGFyZW50KTtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIEFuaW1hdGlvbiBhbmQgVHJhbnNpdGlvbnMgKi9cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5vbmJvYXJkaW5nLWNvbnRlbnQge1xyXG5cdGFuaW1hdGlvbjogZmFkZUluVXAgMC4zcyBlYXNlLW91dDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW5VcCB7XHJcblx0ZnJvbSB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xyXG5cdH1cclxuXHR0byB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG5cdH1cclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAudXNlci1sZXZlbC1jYXJkLnNlbGVjdGVkIHtcclxuXHRhbmltYXRpb246IGNhcmRTZWxlY3QgMC4ycyBlYXNlLW91dDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBjYXJkU2VsZWN0IHtcclxuXHQwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG5cdH1cclxuXHQ1MCUge1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjAyKTtcclxuXHR9XHJcblx0MTAwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG5cdH1cclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIE1vZGUgU2VsZWN0aW9uIC0gRmx1ZW50IHZzIExlZ2FjeSAqL1xyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5tb2RlLXNlbGVjdGlvbiB7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxufVxyXG5cclxuLm1vZGUtb3B0aW9ucyB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDI4MHB4LCAxZnIpKTtcclxuXHRnYXA6IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcblx0bWFyZ2luOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpIDA7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm1vZGUtY2FyZCB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0cGFkZGluZzogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogdmFyKC0tb25ib2FyZGluZy10cmFuc2l0aW9uKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxufVxyXG5cclxuLm1vZGUtY2FyZDpob3ZlciB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcbn1cclxuXHJcbi5tb2RlLWNhcmQuaXMtc2VsZWN0ZWQge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4yKTtcclxufVxyXG5cclxuLm1vZGUtY2FyZC1oZWFkZXIge1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxufVxyXG5cclxuLm1vZGUtY2FyZC10aXRsZSB7XHJcblx0Zm9udC1zaXplOiAxLjFlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ubW9kZS1jYXJkLWJvZHkge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm1vZGUtY2FyZC1wcmV2aWV3IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogM2VtO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ubW9kZS1mbHVlbnQgLm1vZGUtY2FyZC1wcmV2aWV3IHtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSkgMCUsIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpIDEwMCUpO1xyXG59XHJcblxyXG4ubW9kZS1sZWdhY3kgLm1vZGUtY2FyZC1wcmV2aWV3IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4ubW9kZS1jYXJkLWRlc2Mge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjU7XHJcblx0bWluLWhlaWdodDogM2VtO1xyXG59XHJcblxyXG4vKiBTZWN0aW9uIHNoYXJlZCBzdHlsZXMgKi9cclxuLnNlY3Rpb24tdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogMS4yNWVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uc2VjdGlvbi1kZXNjIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjk1ZW07XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG59XHJcblxyXG4ubW9kZS10aXBzLFxyXG4ucGxhY2VtZW50LXRpcHMge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcblx0dGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG5cclxuLm1vZGUtdGlwcyBwLFxyXG4ucGxhY2VtZW50LXRpcHMgcCB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKiBQbGFjZW1lbnQgU2VsZWN0aW9uIC0gU2lkZWxlYXZlcyB2cyBJbmxpbmUgKi9cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ucGxhY2VtZW50LXNlbGVjdGlvbiB7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxufVxyXG5cclxuLnBsYWNlbWVudC1vcHRpb25zIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjgwcHgsIDFmcikpO1xyXG5cdGdhcDogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxuXHRtYXJnaW46IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZykgMDtcclxufVxyXG5cclxuLnBsYWNlbWVudC1jYXJkIHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiB2YXIoLS1vbmJvYXJkaW5nLXRyYW5zaXRpb24pO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LWNhcmQ6aG92ZXIge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctcyk7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LWNhcmQuaXMtc2VsZWN0ZWQge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4yKTtcclxufVxyXG5cclxuLnBsYWNlbWVudC1jYXJkLWhlYWRlciB7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTMpO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LWNhcmQtdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogMS4xZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLnBsYWNlbWVudC1jYXJkLWJvZHkge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLnBsYWNlbWVudC1jYXJkLXByZXZpZXcge1xyXG5cdGhlaWdodDogMTAwcHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi8qIFZpc3VhbCByZXByZXNlbnRhdGlvbnMgZm9yIHBsYWNlbWVudCBtb2RlcyAqL1xyXG4ucGxhY2VtZW50LXNpZGVsZWF2ZXMgLnBsYWNlbWVudC1jYXJkLXByZXZpZXcge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMmZyIDFmcjtcclxuXHRnYXA6IDRweDtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5wbGFjZW1lbnQtcHJldmlldy1jb2wge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LXByZXZpZXctY29sLnBsYWNlbWVudC1wcmV2aWV3LW1haW4ge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0b3BhY2l0eTogMC4zO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LWlubGluZSAucGxhY2VtZW50LWNhcmQtcHJldmlldyB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LXByZXZpZXctc2luZ2xlIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRvcGFjaXR5OiAwLjM7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG59XHJcblxyXG4ucGxhY2VtZW50LWNhcmQtZGVzYyB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNTtcclxuXHRtaW4taGVpZ2h0OiAzZW07XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKiBBSS1TdHlsZSBJbnRybyBUeXBpbmcgQW5pbWF0aW9uICovXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogV3JhcHBlciB0byBwcmV2ZW50IGxheW91dCBzaGlmdCAqL1xyXG4uaW50cm8tdHlwaW5nLXdyYXBwZXIge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1heC13aWR0aDogbWF4KDkwMHB4LCA3MCUpO1xyXG5cdG1hcmdpbjogMCBhdXRvO1xyXG59XHJcblxyXG4uaW50cm8tdHlwaW5nIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNikgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5pbnRyby1saW5lIHtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0bGluZS1oZWlnaHQ6IDEuNjtcclxufVxyXG5cclxuLmludHJvLWxpbmUtMSB7XHJcblx0LyogXCJIaSxcIiAtIExhcmdlIHJlc3BvbnNpdmUgZ3JlZXRpbmcgKi9cclxuXHRmb250LXNpemU6IGNsYW1wKDNyZW0sIDZ2dywgNXJlbSk7XHJcblx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxuXHRsaW5lLWhlaWdodDogMS4yO1xyXG59XHJcblxyXG4uaW50cm8tbGluZS0yIHtcclxuXHQvKiBcIlRoYW5rIHlvdSBmb3IgdXNpbmcgVGFzayBHZW5pdXNcIiAtIFNlY29uZGFyeSBncmVldGluZyAqL1xyXG5cdGZvbnQtc2l6ZTogY2xhbXAoMS41cmVtLCAzdncsIDIuNXJlbSk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC02KTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG59XHJcblxyXG4uaW50cm8tbGluZS0zLFxyXG4uaW50cm8tbGluZS00IHtcclxuXHQvKiBEZXNjcmlwdGlvbiB0ZXh0IC0gUmVzcG9uc2l2ZSBib2R5IHRleHQgKi9cclxuXHRmb250LXNpemU6IGNsYW1wKDFyZW0sIDJ2dywgMS40cmVtKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bGluZS1oZWlnaHQ6IDEuODtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtNSk7XHJcbn1cclxuXHJcbi8qIEFJLXN0eWxlIHN0cmVhbWluZyBjaGFyYWN0ZXJzICovXHJcbi5pbnRyby1jaGFyIHtcclxuXHRkaXNwbGF5OiBpbmxpbmU7XHJcblx0b3BhY2l0eTogMDtcclxuXHRmaWx0ZXI6IGJsdXIoNHB4KTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSksXHJcblx0ZmlsdGVyIDAuNHMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKSxcclxuXHR0cmFuc2Zvcm0gMC40cyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLmludHJvLWNoYXItdmlzaWJsZSB7XHJcblx0b3BhY2l0eTogMTtcclxuXHRmaWx0ZXI6IGJsdXIoMHB4KTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbn1cclxuXHJcbi8qIFNwYWNlIGNoYXJhY3RlciBoYW5kbGluZyAqL1xyXG4uaW50cm8tY2hhci1zcGFjZSB7XHJcblx0d2lkdGg6IDAuMjVlbTtcclxufVxyXG5cclxuLyogU3RyZWFtaW5nIGN1cnNvciB0aGF0IGZvbGxvd3MgY2hhcmFjdGVycyAqL1xyXG4uaW50cm8tY3Vyc29yIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0bWFyZ2luLWxlZnQ6IDFweDtcclxuXHRvcGFjaXR5OiAwLjc7XHJcblx0YW5pbWF0aW9uOiBjdXJzb3JCbGluayAxcyBpbmZpbml0ZTtcclxuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRmb250LXdlaWdodDogbm9ybWFsO1xyXG5cdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxufVxyXG5cclxuQGtleWZyYW1lcyBjdXJzb3JCbGluayB7XHJcblx0MCUsIDQ5JSB7XHJcblx0XHRvcGFjaXR5OiAwLjc7XHJcblx0fVxyXG5cdDUwJSwgMTAwJSB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdH1cclxufVxyXG5cclxuLyogQ29tcGxldGVkIHN0cmVhbSBsaW5lICovXHJcbi5zdHJlYW0tY29tcGxldGUge1xyXG5cdGFuaW1hdGlvbjogc3RyZWFtQ29tcGxldGUgMC4zcyBlYXNlLW91dDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBzdHJlYW1Db21wbGV0ZSB7XHJcblx0MCUge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcblx0NTAlIHtcclxuXHRcdG9wYWNpdHk6IDAuOTU7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIEZhZGUgb3V0IGFuaW1hdGlvbiBmb3IgcmVtb3ZpbmcgbGluZXMgKi9cclxuLmludHJvLWxpbmUtZmFkZW91dCB7XHJcblx0b3BhY2l0eTogMDtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuNXMgZWFzZS1vdXQ7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi8qIE1vZGUgc2VsZWN0aW9uIGNvbnRhaW5lciB0aGF0IGFwcGVhcnMgYWZ0ZXIgaW50cm8gdHlwaW5nICovXHJcbi5pbnRyby1tb2RlLXNlbGVjdGlvbi1jb250YWluZXIge1xyXG5cdGFuaW1hdGlvbjogZmFkZUluRnJvbUJvdHRvbSAwLjZzIGVhc2Utb3V0O1xyXG5cdGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluRnJvbUJvdHRvbSB7XHJcblx0ZnJvbSB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xyXG5cdH1cclxuXHR0byB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG5cdH1cclxufVxyXG5cclxuLyogRW5oYW5jZWQgcmVhZGFiaWxpdHkgb24gZGlmZmVyZW50IHRoZW1lcyAqL1xyXG4udGhlbWUtZGFyayAuaW50cm8tbGluZS0xIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdHRleHQtc2hhZG93OiAwIDAgMjBweCByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjEpO1xyXG59XHJcblxyXG4udGhlbWUtZGFyayAuaW50cm8tY2hhci12aXNpYmxlIHtcclxuXHQvKiBTdWJ0bGUgZ2xvdyBlZmZlY3QgZm9yIGRhcmsgdGhlbWUgKi9cclxuXHR0ZXh0LXNoYWRvdzogMCAwIDhweCByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjA1KTtcclxufVxyXG5cclxuLyogU21vb3RoIGFwcGVhcmFuY2UgZm9yIHdob2xlIHR5cGluZyBjb250YWluZXIgKi9cclxuLmludHJvLXR5cGluZyB7XHJcblx0YW5pbWF0aW9uOiBmYWRlSW5UeXBpbmcgMC41cyBlYXNlLW91dDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW5UeXBpbmcge1xyXG5cdGZyb20ge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIFRyYW5zaXRpb24gbWVzc2FnZSBjb250YWluZXIgKi9cclxuLmludHJvLXRyYW5zaXRpb24tY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0bWluLWhlaWdodDogNjBweDtcclxufVxyXG5cclxuLmludHJvLXRyYW5zaXRpb24tbWVzc2FnZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKSB2YXIoLS1zaXplLTQtNCk7XHJcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG5cdFx0MTM1ZGVnLFxyXG5cdFx0cmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4wOCkgMCUsXHJcblx0XHRyZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjAzKSAxMDAlXHJcblx0KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNtKTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcclxufVxyXG5cclxuLmludHJvLXRyYW5zaXRpb24tbWVzc2FnZSAudHJhbnNpdGlvbi1pY29uIHtcclxuXHRmb250LXNpemU6IDEuNWVtO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdGFuaW1hdGlvbjogc3BhcmtsZSAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xyXG59XHJcblxyXG4uaW50cm8tdHJhbnNpdGlvbi1tZXNzYWdlIC50cmFuc2l0aW9uLXRleHQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiAwLjk1ZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNTtcclxufVxyXG5cclxuQGtleWZyYW1lcyBzcGFya2xlIHtcclxuXHQwJSxcclxuXHQxMDAlIHtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxuXHQ1MCUge1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xyXG5cdFx0b3BhY2l0eTogMC44O1xyXG5cdH1cclxufVxyXG5cclxuLyogQ29uZmlnIGNoZWNrIHR5cGluZyBhbmltYXRpb24gKi9cclxuLmNvbmZpZy1jaGVjay10eXBpbmcge1xyXG5cdG1pbi1oZWlnaHQ6IDIwMHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLmNvbmZpZy1jaGVjay10eXBpbmcgLmNoZWNrLWxpbmUge1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC00KTtcclxuXHRsaW5lLWhlaWdodDogMS42O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5jb25maWctY2hlY2stdHlwaW5nIC5jaGVjay1saW5lLTEge1xyXG5cdC8qIEZpcnN0IGxpbmUgLSBhdHRlbnRpb24gZ3JhYmJlciAqL1xyXG5cdGZvbnQtc2l6ZTogY2xhbXAoMS4ycmVtLCAyLjV2dywgMS44cmVtKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG59XHJcblxyXG4uY29uZmlnLWNoZWNrLXR5cGluZyAuY2hlY2stbGluZS0yLFxyXG4uY29uZmlnLWNoZWNrLXR5cGluZyAuY2hlY2stbGluZS0zIHtcclxuXHQvKiBQcm9ncmVzcyBtZXNzYWdlcyAqL1xyXG5cdGZvbnQtc2l6ZTogY2xhbXAoMXJlbSwgMnZ3LCAxLjNyZW0pO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG59XHJcblxyXG4uY29uZmlnLWNoZWNrLXR5cGluZyAuY2hlY2stbGluZS1yZXN1bHQge1xyXG5cdC8qIFJlc3VsdCBtZXNzYWdlIC0gaGlnaGxpZ2h0ZWQgY2FyZCAqL1xyXG5cdGZvbnQtc2l6ZTogY2xhbXAoMS4xcmVtLCAyLjJ2dywgMS42cmVtKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC00KTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCkgdmFyKC0tc2l6ZS00LTUpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcblx0XHQxMzVkZWcsXHJcblx0XHRyZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjA1KSAwJSxcclxuXHRcdHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuMDIpIDEwMCVcclxuXHQpO1xyXG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG59XHJcblxyXG4uY29uZmlnLWNoZWNrLXR5cGluZyAuY2hlY2stbGluZS1zdWNjZXNzIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cdGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG5cdFx0MTM1ZGVnLFxyXG5cdFx0cmdiYSh2YXIoLS1jb2xvci1ncmVlbi1yZ2IpLCAwLjA4KSAwJSxcclxuXHRcdHJnYmEodmFyKC0tY29sb3ItZ3JlZW4tcmdiKSwgMC4wMikgMTAwJVxyXG5cdCk7XHJcbn1cclxuXHJcbi5jb25maWctY2hlY2stdHlwaW5nIC5jaGVjay1saW5lLWZyZXNoIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKiBOZXcgVUkgQ29tcG9uZW50cyAoc2hhZGNuIERlc2lnbikgKi9cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiA9PT09PSBTZWxlY3RhYmxlIENhcmQgQ29tcG9uZW50ID09PT09ICovXHJcbi5zZWxlY3RhYmxlLWNhcmRzLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDI4MHB4LCAxZnIpKTtcclxuXHRnYXA6IHZhcigtLXNpemUtNC00KTtcclxuXHRtYXJnaW46IHZhcigtLXNpemUtNC00KSAwO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkIHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IHZhcigtLW9uYm9hcmRpbmctdHJhbnNpdGlvbik7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctc20pO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkOmhvdmVyIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sZyk7XHJcbn1cclxuXHJcbi5zZWxlY3RhYmxlLWNhcmQuaXMtc2VsZWN0ZWQge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4xKTtcclxufVxyXG5cclxuLnNlbGVjdGFibGUtY2FyZC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XHJcbn1cclxuXHJcbi5zZWxlY3RhYmxlLWNhcmQtaWNvbiB7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxuXHRvcGFjaXR5OiAwLjg7XHJcbn1cclxuXHJcbi5zZWxlY3RhYmxlLWNhcmQtdGl0bGUtY29udGFpbmVyIHtcclxuXHRmbGV4OiAxO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkLXRpdGxlIHtcclxuXHRtYXJnaW46IDA7XHJcblx0Zm9udC1zaXplOiAxLjFlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5zZWxlY3RhYmxlLWNhcmQtc3VidGl0bGUge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtMi0xKTtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxufVxyXG5cclxuLnNlbGVjdGFibGUtY2FyZC1iYWRnZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTQtMik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGZvbnQtc2l6ZTogMC43ZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjAyZW07XHJcbn1cclxuXHJcbi5zZWxlY3RhYmxlLWNhcmQtYm9keSB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkLXByZXZpZXcge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdG1pbi1oZWlnaHQ6IDEwMHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG5cdG1hcmdpbjogMCAwIHZhcigtLXNpemUtNC0yKSAwO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkLWZlYXR1cmVzIHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5zZWxlY3RhYmxlLWNhcmQtZmVhdHVyZXMgdWwge1xyXG5cdG1hcmdpbjogMDtcclxuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtNC0zKTtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkLWZlYXR1cmVzIGxpIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkLWZlYXR1cmVzIGxpOmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcdTIwMjJcIjtcclxuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogY2FsYygtMSAqIHZhcigtLXNpemUtNC0zKSk7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi8qID09PT09IEZlYXR1cmUgTGlzdCBDb21wb25lbnQgPT09PT0gKi9cclxuLmZlYXR1cmUtbGlzdCB7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1hcmdpbjogMDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5mZWF0dXJlLWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi5mZWF0dXJlLWl0ZW0taWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG59XHJcblxyXG4uZmVhdHVyZS1pdGVtLXRleHQge1xyXG5cdGZsZXg6IDE7XHJcbn1cclxuXHJcbi8qID09PT09IEJhZGdlIENvbXBvbmVudCA9PT09PSAqL1xyXG4ub25ib2FyZGluZy1iYWRnZSB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LXNpemU6IDAuNzVlbTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjAxZW07XHJcblx0dHJhbnNpdGlvbjogdmFyKC0tb25ib2FyZGluZy10cmFuc2l0aW9uKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYmFkZ2UtZGVmYXVsdCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1iYWRnZS1zdWNjZXNzIHtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWNvbG9yLWdyZWVuLXJnYiksIDAuMSk7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmVlbik7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLWJhZGdlLXdhcm5pbmcge1xyXG5cdGJhY2tncm91bmQ6IHJnYmEodmFyKC0tY29sb3Itb3JhbmdlLXJnYiksIDAuMSk7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3Itb3JhbmdlKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYmFkZ2UtaW5mbyB7XHJcblx0YmFja2dyb3VuZDogcmdiYSh2YXIoLS1jb2xvci1ibHVlLXJnYiksIDAuMSk7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWJsdWUpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1iYWRnZS1hY2NlbnQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXI6IG5vbmU7XHJcbn1cclxuXHJcbi8qID09PT09IEFsZXJ0IENvbXBvbmVudCA9PT09PSAqL1xyXG4ub25ib2FyZGluZy1hbGVydCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHR0cmFuc2l0aW9uOiB2YXIoLS1vbmJvYXJkaW5nLXRyYW5zaXRpb24pO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC1pY29uIHtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLWFsZXJ0LWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLWFsZXJ0LXRpdGxlIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0xKTtcclxuXHRmb250LXNpemU6IDAuOTVlbTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYWxlcnQtbWVzc2FnZSB7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC1pbmZvIHtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWNvbG9yLWJsdWUtcmdiKSwgMC4xKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJsdWUpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC1pbmZvIC5vbmJvYXJkaW5nLWFsZXJ0LWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ibHVlKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYWxlcnQtaW5mbyAub25ib2FyZGluZy1hbGVydC10aXRsZSxcclxuLm9uYm9hcmRpbmctYWxlcnQtaW5mbyAub25ib2FyZGluZy1hbGVydC1tZXNzYWdlIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItYmx1ZSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLWFsZXJ0LXN1Y2Nlc3Mge1xyXG5cdGJhY2tncm91bmQ6IHJnYmEodmFyKC0tY29sb3ItZ3JlZW4tcmdiKSwgMC4xKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYWxlcnQtc3VjY2VzcyAub25ib2FyZGluZy1hbGVydC1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC1zdWNjZXNzIC5vbmJvYXJkaW5nLWFsZXJ0LXRpdGxlLFxyXG4ub25ib2FyZGluZy1hbGVydC1zdWNjZXNzIC5vbmJvYXJkaW5nLWFsZXJ0LW1lc3NhZ2Uge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLWFsZXJ0LXdhcm5pbmcge1xyXG5cdGJhY2tncm91bmQ6IHJnYmEodmFyKC0tY29sb3Itb3JhbmdlLXJnYiksIDAuMSk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC13YXJuaW5nIC5vbmJvYXJkaW5nLWFsZXJ0LWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC13YXJuaW5nIC5vbmJvYXJkaW5nLWFsZXJ0LXRpdGxlLFxyXG4ub25ib2FyZGluZy1hbGVydC13YXJuaW5nIC5vbmJvYXJkaW5nLWFsZXJ0LW1lc3NhZ2Uge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC1lcnJvciB7XHJcblx0YmFja2dyb3VuZDogcmdiYSh2YXIoLS1jb2xvci1yZWQtcmdiKSwgMC4xKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXJlZCk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLWFsZXJ0LWVycm9yIC5vbmJvYXJkaW5nLWFsZXJ0LWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC1lcnJvciAub25ib2FyZGluZy1hbGVydC10aXRsZSxcclxuLm9uYm9hcmRpbmctYWxlcnQtZXJyb3IgLm9uYm9hcmRpbmctYWxlcnQtbWVzc2FnZSB7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLXJlZCk7XHJcbn1cclxuXHJcbi8qID09PT09IFByb2dyZXNzIERvdHMgQ29tcG9uZW50ID09PT09ICovXHJcbi5wcm9ncmVzcy1kb3RzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0bWFyZ2luOiB2YXIoLS1zaXplLTQtMykgMDtcclxufVxyXG5cclxuLnByb2dyZXNzLWRvdC13cmFwcGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0xKTtcclxufVxyXG5cclxuLnByb2dyZXNzLWRvdCB7XHJcblx0d2lkdGg6IDhweDtcclxuXHRoZWlnaHQ6IDhweDtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHRyYW5zaXRpb246IHZhcigtLW9uYm9hcmRpbmctdHJhbnNpdGlvbik7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1kb3QuaXMtYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdHRyYW5zZm9ybTogc2NhbGUoMS41KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4yKTtcclxufVxyXG5cclxuLnByb2dyZXNzLWRvdC5pcy1jb21wbGV0ZWQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0b3BhY2l0eTogMC42O1xyXG59XHJcblxyXG4ucHJvZ3Jlc3MtZG90LWxhYmVsIHtcclxuXHRmb250LXNpemU6IDAuN2VtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcbiIsICIvKiBOb2lzZSBMYXllciBFZmZlY3QgKi9cclxuLnRnLW5vaXNlLWxheWVyIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi50Zy1ub2lzZS1sYXllcjo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0b3BhY2l0eTogMC4yNTtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgd2lkdGg9XCIxOTAxXCIgaGVpZ2h0PVwiOTYxXCIgdmlld0JveD1cIjAgMCAxOTAxIDk2MVwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPjxnIG9wYWNpdHk9XCIwLjI1XCIgZmlsdGVyPVwidXJsKCUyM2ZpbHRlcjBfbl8xXzIpXCI+PHJlY3Qgd2lkdGg9XCIxOTAxXCIgaGVpZ2h0PVwiOTYxXCIgZmlsbD1cIiUyM0VGRUZFRlwiLz48L2c+PGRlZnM+PGZpbHRlciBpZD1cImZpbHRlcjBfbl8xXzJcIiB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCIxOTAxXCIgaGVpZ2h0PVwiOTYxXCIgZmlsdGVyVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz1cInNSR0JcIj48ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PVwiMFwiIHJlc3VsdD1cIkJhY2tncm91bmRJbWFnZUZpeFwiLz48ZmVCbGVuZCBtb2RlPVwibm9ybWFsXCIgaW49XCJTb3VyY2VHcmFwaGljXCIgaW4yPVwiQmFja2dyb3VuZEltYWdlRml4XCIgcmVzdWx0PVwic2hhcGVcIi8+PGZlVHVyYnVsZW5jZSB0eXBlPVwiZnJhY3RhbE5vaXNlXCIgYmFzZUZyZXF1ZW5jeT1cIjEuMjUgMS4yNVwiIHN0aXRjaFRpbGVzPVwic3RpdGNoXCIgbnVtT2N0YXZlcz1cIjNcIiByZXN1bHQ9XCJub2lzZVwiIHNlZWQ9XCI1MzM5XCIgLz48ZmVDb2xvck1hdHJpeCBpbj1cIm5vaXNlXCIgdHlwZT1cImx1bWluYW5jZVRvQWxwaGFcIiByZXN1bHQ9XCJhbHBoYU5vaXNlXCIgLz48ZmVDb21wb25lbnRUcmFuc2ZlciBpbj1cImFscGhhTm9pc2VcIiByZXN1bHQ9XCJjb2xvcmVkTm9pc2UxXCI+PGZlRnVuY0EgdHlwZT1cImRpc2NyZXRlXCIgdGFibGVWYWx1ZXM9XCIxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIFwiLz48L2ZlQ29tcG9uZW50VHJhbnNmZXI+PGZlQ29tcG9zaXRlIG9wZXJhdG9yPVwiaW5cIiBpbjI9XCJzaGFwZVwiIGluPVwiY29sb3JlZE5vaXNlMVwiIHJlc3VsdD1cIm5vaXNlMUNsaXBwZWRcIiAvPjxmZUZsb29kIGZsb29kLWNvbG9yPVwicmdiYSgwLCAwLCAwLCAwLjI1KVwiIHJlc3VsdD1cImNvbG9yMUZsb29kXCIgLz48ZmVDb21wb3NpdGUgb3BlcmF0b3I9XCJpblwiIGluMj1cIm5vaXNlMUNsaXBwZWRcIiBpbj1cImNvbG9yMUZsb29kXCIgcmVzdWx0PVwiY29sb3IxXCIgLz48ZmVNZXJnZSByZXN1bHQ9XCJlZmZlY3QxX25vaXNlXzFfMlwiPjxmZU1lcmdlTm9kZSBpbj1cInNoYXBlXCIgLz48ZmVNZXJnZU5vZGUgaW49XCJjb2xvcjFcIiAvPjwvZmVNZXJnZT48L2ZpbHRlcj48L2RlZnM+PC9zdmc+Jyk7XHJcblx0YmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHR6LWluZGV4OiAxO1xyXG59XHJcblxyXG4udGctbm9pc2UtbGF5ZXIgPiAqIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ei1pbmRleDogMjtcclxufVxyXG4iLCAiLyogVGltZWxpbmUgU2lkZWJhciBWaWV3IFN0eWxlcyAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtc2lkZWJhci1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWludGVyZmFjZSk7XHJcblx0cGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBIZWFkZXIgKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMykgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG5cdFx0MTM1ZGVnLFxyXG5cdFx0dmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpIDAlLFxyXG5cdFx0dmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3ZlcikgMTAwJVxyXG5cdCk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0YmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG5cdC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1jb250cm9scyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiB2YXIoLS1zaXplLTQtOCk7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtOCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWJ0bjpob3ZlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWJ0bi5pcy1hY3RpdmUge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLyogVGltZWxpbmUgQ29udGVudCAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtY29udGVudCB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKSAwO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl1cclxuLnRpbWVsaW5lLWNvbnRlbnQuZm9jdXMtbW9kZVxyXG4udGltZWxpbmUtZGF0ZS1ncm91cDpub3QoLmlzLXRvZGF5KSB7XHJcblx0b3BhY2l0eTogMC4zO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZW1wdHkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTgpO1xyXG59XHJcblxyXG4vKiBEYXRlIEdyb3VwcyAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZGF0ZS1ncm91cCB7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWRhdGUtZ3JvdXAuaXMtdG9kYXkge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0bWFyZ2luOiAwIHZhcigtLXNpemUtNC0yKSB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZGF0ZS1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC00KTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxuXHRwb3NpdGlvbjogc3RpY2t5O1xyXG5cdHRvcDogMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdHotaW5kZXg6IDE7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1kYXRlLWdyb3VwLmlzLXRvZGF5XHJcbi50aW1lbGluZS1kYXRlLWhlYWRlciB7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdG1hcmdpbjogMCAwIHZhcigtLXNpemUtNC0yKSAwO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZGF0ZS1yZWxhdGl2ZSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXdlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG4vKiBFdmVudHMgTGlzdCAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnRzLWxpc3Qge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0xKTtcclxuXHRwYWRkaW5nOiAwIHZhcigtLXNpemUtMi0zKTtcclxufVxyXG5cclxuLyogVGltZWxpbmUgRXZlbnRzICovXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQ6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudDpob3ZlcjpoYXMoLnRpbWVsaW5lLWV2ZW50LWNoZWNrYm94OmhvdmVyKSB7XHJcblx0dHJhbnNmb3JtOiBub25lO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQuaXMtY29tcGxldGVkIHtcclxuXHRvcGFjaXR5OiAwLjY7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudC5pcy1jb21wbGV0ZWRcclxuLnRpbWVsaW5lLWV2ZW50LXRleHQge1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogRXZlbnQgVGltZSAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtdGltZSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG5cdG1pbi13aWR0aDogNDVweDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0bWFyZ2luLXRvcDogMnB4O1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTEpIHZhcigtLXNpemUtNC0yKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLyogRW5oYW5jZWQgdGltZSBkaXNwbGF5IHN0eWxlcyAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtdGltZS50aW1lbGluZS1ldmVudC10aW1lLXNpbmdsZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC10aW1lLnRpbWVsaW5lLWV2ZW50LXRpbWUtcmFuZ2Uge1xyXG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCkgMCUsIHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3ZlcikgMTAwJSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdG1pbi13aWR0aDogODBweDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0YW5pbWF0aW9uOiBzdWJ0bGUtcHVsc2UgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC10aW1lLnRpbWVsaW5lLWV2ZW50LXRpbWUtcmFuZ2U6OmFmdGVyIHtcclxuXHRjb250ZW50OiBcIlx1MjNGMVwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IC02cHg7XHJcblx0cmlnaHQ6IC02cHg7XHJcblx0Zm9udC1zaXplOiAxMHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogOTk5cHg7XHJcblx0bWluLXdpZHRoOiAxOHB4O1xyXG5cdGhlaWdodDogMTZweDtcclxuXHRwYWRkaW5nOiAwIDRweDtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxuXHRsaW5lLWhlaWdodDogMTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4vKiBXaGVuIGR1cmF0aW9uIGlzIHByb3ZpZGVkLCBzaG93IGl0IGluc3RlYWQgb2YgdGhlIGljb24gKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWV2ZW50LXRpbWUudGltZWxpbmUtZXZlbnQtdGltZS1yYW5nZVtkYXRhLWR1cmF0aW9uXTo6YWZ0ZXIge1xyXG5cdGNvbnRlbnQ6IGF0dHIoZGF0YS1kdXJhdGlvbik7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC10aW1lLnRpbWVsaW5lLWV2ZW50LXRpbWUtZGVmYXVsdCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWV2ZW50LXRpbWUudGltZWxpbmUtZXZlbnQtdGltZS1ncm91cCB7XHJcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdmFyKC0tdGV4dC1hY2NlbnQpIDAlLCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpIDEwMCUpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRtaW4td2lkdGg6IDYwcHg7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC10aW1lLnRpbWVsaW5lLWV2ZW50LXRpbWUtZGF0ZS1vbmx5IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdG1pbi13aWR0aDogNjBweDtcclxufVxyXG5cclxuLyogVGltZSBHcm91cCBTdHlsZXMgKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLXRpbWUtZ3JvdXAge1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtdGltZS1ncm91cC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS10aW1lLWdyb3VwLWNvdW50IHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS10aW1lLWdyb3VwLWV2ZW50cyB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQudGltZWxpbmUtZXZlbnQtZ3JvdXBlZCB7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC50aW1lbGluZS1ldmVudC1ncm91cGVkOmxhc3QtY2hpbGQge1xyXG5cdG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi8qIERhdGUtb25seSBFdmVudHMgU2VjdGlvbiAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZGF0ZS1vbmx5LXNlY3Rpb24ge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC00KTtcclxuXHRwYWRkaW5nLXRvcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJvcmRlci10b3A6IDJweCBkYXNoZWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG5cclxuLyogSGlkZSBwZXItZXZlbnQgdGltZSBsYWJlbHMgaW5zaWRlIEFsbCBkYXkgc2VjdGlvbiBhcyBzYWZldHkgbmV0ICovXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1kYXRlLW9ubHktc2VjdGlvbiAudGltZWxpbmUtZXZlbnQgLnRpbWVsaW5lLWV2ZW50LXRpbWUge1xyXG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWRhdGUtb25seS1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC0zKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1kYXRlLW9ubHktdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4vKiBFdmVudCBDb250ZW50ICovXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC1jb250ZW50IHtcclxuXHRmbGV4OiAxO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0bWluLXdpZHRoOiAwO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtY2hlY2tib3gge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRtYXJnaW4tdG9wOiAycHg7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudC1jaGVja2JveFxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG5cdG1hcmdpbjogMDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC10ZXh0IHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxuXHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtaWNvbiB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0bWFyZ2luLXRvcDogMXB4O1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtY29udGVudC10ZXh0IHtcclxuXHRmbGV4OiAxO1xyXG5cdHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbn1cclxuXHJcbi8qIEV2ZW50IEFjdGlvbnMgKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWV2ZW50LWFjdGlvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMSk7XHJcblx0b3BhY2l0eTogMDtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl1cclxuLnRpbWVsaW5lLWV2ZW50OmhvdmVyXHJcbi50aW1lbGluZS1ldmVudC1hY3Rpb25zIHtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtYWN0aW9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IHZhcigtLXNpemUtNC02KTtcclxuXHRoZWlnaHQ6IHZhcigtLXNpemUtNC02KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtYWN0aW9uOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLyogUXVpY2sgSW5wdXQgQXJlYSAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtcXVpY2staW5wdXQge1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC00KTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0cGFkZGluZy1ib3R0b206IHZhcigtLXNpemUtNC0xMik7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHRyYW5zaXRpb246IGFsbCAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi8qIENvbGxhcHNlZCBzdGF0ZSAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtcXVpY2staW5wdXQuaXMtY29sbGFwc2VkIHtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGdhcDogMDtcclxuXHRoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1xdWljay1pbnB1dC5pcy1jb2xsYXBzZWRcclxuLnF1aWNrLWlucHV0LWhlYWRlcixcclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl1cclxuLnRpbWVsaW5lLXF1aWNrLWlucHV0LmlzLWNvbGxhcHNlZFxyXG4ucXVpY2staW5wdXQtZWRpdG9yLFxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtcXVpY2staW5wdXQuaXMtY29sbGFwc2VkXHJcbi5xdWljay1pbnB1dC1hY3Rpb25zIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiBBbmltYXRpb24gc3RhdGVzICovXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1xdWljay1pbnB1dC5pcy1jb2xsYXBzaW5nIHtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtcXVpY2staW5wdXQuaXMtZXhwYW5kaW5nIHtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vKiBDb2xsYXBzZWQgaGVhZGVyICovXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC5xdWljay1pbnB1dC1oZWFkZXItY29sbGFwc2VkIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKSB2YXIoLS1zaXplLTQtNCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXMgZWFzZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWhlYWRlci1jb2xsYXBzZWQ6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAuY29sbGFwc2VkLWV4cGFuZC1idG4ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogdmFyKC0tc2l6ZS00LTYpO1xyXG5cdGhlaWdodDogdmFyKC0tc2l6ZS00LTYpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAuY29sbGFwc2VkLWV4cGFuZC1idG46aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAuY29sbGFwc2VkLXRpdGxlIHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1sZWZ0OiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC5jb2xsYXBzZWQtcXVpY2stYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLmNvbGxhcHNlZC1xdWljay1jYXB0dXJlLFxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAuY29sbGFwc2VkLW1vcmUtb3B0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiB2YXIoLS1zaXplLTQtNyk7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtNyk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC5jb2xsYXBzZWQtcXVpY2stY2FwdHVyZTpob3ZlcixcclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLmNvbGxhcHNlZC1tb3JlLW9wdGlvbnM6aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAuY29sbGFwc2VkLXF1aWNrLWNhcHR1cmU6aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBFeHBhbmRlZCBoZWFkZXIgd2l0aCBjb2xsYXBzZSBidXR0b24gKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2staW5wdXQtaGVhZGVyLWxlZnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWNvbGxhcHNlLWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiB2YXIoLS1zaXplLTQtNik7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtNik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC5xdWljay1pbnB1dC1jb2xsYXBzZS1idG46aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4vKiBSb3RhdGUgY29sbGFwc2UgYnV0dG9uIGljb24gKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWNvbGxhcHNlLWJ0biBzdmcge1xyXG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcyBlYXNlO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtcXVpY2staW5wdXQuaXMtY29sbGFwc2VkXHJcbi5xdWljay1pbnB1dC1jb2xsYXBzZS1idG5cclxuc3ZnIHtcclxuXHR0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2staW5wdXQtdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2staW5wdXQtdGFyZ2V0LWluZm8ge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0xKSB2YXIoLS1zaXplLTQtMik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWVkaXRvciB7XHJcblx0bWluLWhlaWdodDogODBweDtcclxuXHRib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXRleHQpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0cmVzaXplOiB2ZXJ0aWNhbDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2staW5wdXQtZWRpdG9yOmZvY3VzLXdpdGhpbiB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2staW5wdXQtZWRpdG9yIC5jbS1lZGl0b3Ige1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2staW5wdXQtZWRpdG9yIC5jbS1mb2N1c2VkIHtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4ucXVpY2staW5wdXQtZWRpdG9yXHJcbi5jbS1lZGl0b3IuY20tZm9jdXNlZCB7XHJcblx0b3V0bGluZTogbm9uZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWFjdGlvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWNhcHR1cmUtYnRuLFxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2stbW9kYWwtYnRuIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMykgdmFyKC0tc2l6ZS00LTYpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG5cdGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC5xdWljay1jYXB0dXJlLWJ0biB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2stY2FwdHVyZS1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG5cdGJveC1zaGFkb3c6IDAgNHB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2stbW9kYWwtYnRuIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLW1vZGFsLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxuXHRib3gtc2hhZG93OiAwIDRweCA4cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBEZXNpZ24gKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0ZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWhlYWRlciB7XHJcblx0XHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTMpO1xyXG5cdH1cclxuXHJcblx0ZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWNvbnRyb2xzIHtcclxuXHRcdGdhcDogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdH1cclxuXHJcblx0ZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWJ0biB7XHJcblx0XHR3aWR0aDogdmFyKC0tc2l6ZS00LTcpO1xyXG5cdFx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtNyk7XHJcblx0fVxyXG5cclxuXHRkaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnRzLWxpc3Qge1xyXG5cdFx0cGFkZGluZzogMCB2YXIoLS1zaXplLTItMyk7XHJcblx0fVxyXG5cclxuXHRkaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdH1cclxuXHJcblx0ZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLXF1aWNrLWlucHV0IHtcclxuXHRcdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHR9XHJcblxyXG5cdGRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcblx0LnRpbWVsaW5lLXF1aWNrLWlucHV0LmlzLWNvbGxhcHNlZCB7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdH1cclxuXHJcblx0ZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWVkaXRvciB7XHJcblx0XHRtaW4taGVpZ2h0OiA2MHB4O1xyXG5cdH1cclxuXHJcblx0ZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWhlYWRlci1jb2xsYXBzZWQge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC0zKTtcclxuXHR9XHJcblxyXG5cdGRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC5jb2xsYXBzZWQtcXVpY2stY2FwdHVyZSxcclxuXHRkaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAuY29sbGFwc2VkLW1vcmUtb3B0aW9ucyB7XHJcblx0XHR3aWR0aDogdmFyKC0tc2l6ZS00LTYpO1xyXG5cdFx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtNik7XHJcblx0fVxyXG59XHJcblxyXG4vKiBTY3JvbGxiYXIgU3R5bGluZyAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG5cdHdpZHRoOiA2cHg7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4vKiBBbmltYXRpb24gKi9cclxuQGtleWZyYW1lcyBmYWRlSW4ge1xyXG5cdGZyb20ge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuXHR9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc3VidGxlLXB1bHNlIHtcclxuXHQwJSwgMTAwJSB7XHJcblx0XHRib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuNCk7XHJcblx0fVxyXG5cdDUwJSB7XHJcblx0XHRib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4xKTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIEZvY3VzIE1vZGUgKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWNvbnRlbnQuZm9jdXMtbW9kZSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtY29udGVudC5mb2N1cy1tb2RlOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdGJvdHRvbTogMDtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcblx0XHR0byBib3R0b20sXHJcblx0XHRyZ2JhKHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1yZ2IpLCAwLjkpIDAlLFxyXG5cdFx0cmdiYSh2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktcmdiKSwgMC43KSA1MCUsXHJcblx0XHRyZ2JhKHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1yZ2IpLCAwLjkpIDEwMCVcclxuXHQpO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdHotaW5kZXg6IDA7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1jb250ZW50LmZvY3VzLW1vZGVcclxuLnRpbWVsaW5lLWRhdGUtZ3JvdXAuaXMtdG9kYXkge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR6LWluZGV4OiAxO1xyXG59XHJcblxyXG4vKiBNYXJrZG93biByZW5kZXJlciBzdHlsZXMgaW4gdGltZWxpbmUgZXZlbnRzICovXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudC1jb250ZW50LXRleHRcclxuLm1hcmtkb3duLWJsb2NrIHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxuXHRmb250LXNpemU6IGluaGVyaXQ7XHJcblx0bGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudC1jb250ZW50LXRleHRcclxuLm1hcmtkb3duLWJsb2NrXHJcbnAge1xyXG5cdG1hcmdpbjogMDtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuXHRsaW5lLWhlaWdodDogaW5oZXJpdDtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl1cclxuLnRpbWVsaW5lLWV2ZW50LWNvbnRlbnQtdGV4dFxyXG4ubWFya2Rvd24tYmxvY2tcclxuc3Ryb25nLFxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtZXZlbnQtY29udGVudC10ZXh0XHJcbi5tYXJrZG93bi1ibG9ja1xyXG5lbSxcclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl1cclxuLnRpbWVsaW5lLWV2ZW50LWNvbnRlbnQtdGV4dFxyXG4ubWFya2Rvd24tYmxvY2tcclxuY29kZSB7XHJcblx0Zm9udC1zaXplOiBpbmhlcml0O1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtZXZlbnQtY29udGVudC10ZXh0XHJcbi5tYXJrZG93bi1ibG9ja1xyXG5hIHtcclxuXHRjb2xvcjogdmFyKC0tbGluay1jb2xvcik7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtZXZlbnQtY29udGVudC10ZXh0XHJcbi5tYXJrZG93bi1ibG9ja1xyXG5hOmhvdmVyIHtcclxuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl1cclxuLnRpbWVsaW5lLWV2ZW50LWNvbnRlbnQtdGV4dFxyXG4ubWFya2Rvd24tYmxvY2tcclxudWwsXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudC1jb250ZW50LXRleHRcclxuLm1hcmtkb3duLWJsb2NrXHJcbm9sIHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudC1jb250ZW50LXRleHRcclxuLm1hcmtkb3duLWJsb2NrXHJcbmxpIHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxufVxyXG4iLCAiLyogU3R5bGVzIGZvciB0aGUgUmV3YXJkIE1vZGFsICovXHJcbi5yZXdhcmQtbW9kYWwtY29udGVudCB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyOyAvKiBDZW50ZXIgYWxpZ24gY29udGVudCAqL1xyXG59XHJcblxyXG4ucmV3YXJkLW1vZGFsIC5tb2RhbC10aXRsZSB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4ucmV3YXJkLW5hbWUge1xyXG5cdGZvbnQtc2l6ZTogMS4yZW07XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxufVxyXG5cclxuLnJld2FyZC1pbWFnZS1jb250YWluZXIge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0ZGlzcGxheTogZmxleDsgLyogVXNlIGZsZXhib3ggZm9yIGNlbnRlcmluZyAqL1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyOyAvKiBDZW50ZXIgaG9yaXpvbnRhbGx5ICovXHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjsgLyogQ2VudGVyIHZlcnRpY2FsbHkgKi9cclxufVxyXG5cclxuLnJld2FyZC1pbWFnZSB7XHJcblx0bWF4LXdpZHRoOiA4MCU7IC8qIExpbWl0IGltYWdlIHdpZHRoICovXHJcblx0bWF4LWhlaWdodDogMzAwcHg7IC8qIExpbWl0IGltYWdlIGhlaWdodCAqL1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDsgLyogT3B0aW9uYWw6IGFkZCByb3VuZGVkIGNvcm5lcnMgKi9cclxuXHRib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpOyAvKiBPcHRpb25hbDogYWRkIHN1YnRsZSBzaGFkb3cgKi9cclxufVxyXG5cclxuLnJld2FyZC1pbWFnZS1lcnJvciB7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTsgLyogVXNlIE9ic2lkaWFuJ3MgbXV0ZWQgdGV4dCBjb2xvciAqL1xyXG59XHJcblxyXG4ucmV3YXJkLXNwYWNlciB7XHJcblx0aGVpZ2h0OiAyMHB4OyAvKiBBZGQgc29tZSBzcGFjZSBiZWZvcmUgdGhlIGJ1dHRvbnMgKi9cclxufVxyXG5cclxuLyogU3R5bGUgdGhlIGJ1dHRvbnMgd2l0aGluIHRoZSBtb2RhbCAqL1xyXG4udGFzay1nZW5pdXMtcmV3YXJkLW1vZGFsIC5zZXR0aW5nLWl0ZW0tY29udHJvbCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLyogQ2VudGVyIGJ1dHRvbnMgKi9cclxuXHRnYXA6IDEwcHg7IC8qIEFkZCBzcGFjZSBiZXR3ZWVuIGJ1dHRvbnMgKi9cclxufVxyXG4iLCAiLm1hcmtkb3duLXNvdXJjZS12aWV3Lm1vZC1jbTYgLmNtLWd1dHRlcnMudGFzay1ndXR0ZXIge1xyXG5cdG1hcmdpbi1pbmxpbmUtZW5kOiAwICFpbXBvcnRhbnQ7XHJcblx0bWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0tZmlsZS1mb2xkaW5nLW9mZnNldCk7XHJcbn1cclxuXHJcbi5pcy1tb2JpbGUgLm1hcmtkb3duLXNvdXJjZS12aWV3Lm1vZC1jbTYgLmNtLWd1dHRlcnMudGFzay1ndXR0ZXIge1xyXG5cdG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnRhc2stZGV0YWlscy1wb3BvdmVyLnRnLW1lbnUge1xyXG5cdHotaW5kZXg6IDIwO1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sKTtcclxufVxyXG5cclxuLnRhc2stZ3V0dGVyIHtcclxuXHR3aWR0aDogMjZweDtcclxufVxyXG5cclxuLnRhc2stZ3V0dGVyLW1hcmtlciB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zbWFsbGVyKTtcclxuXHRvcGFjaXR5OiAwLjE7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi50YXNrLWd1dHRlci1tYXJrZXI6aG92ZXIge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi50YXNrLXBvcG92ZXItY29udGVudCB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdG1heC13aWR0aDogMzAwcHg7XHJcblx0bWF4LWhlaWdodDogNDAwcHg7XHJcblx0b3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuXHJcbi50YXNrLW1ldGFkYXRhLWVkaXRvciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5maWVsZC1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi5maWVsZC1sYWJlbCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXNtYWxsZXN0KTtcclxuXHRmb250LXdlaWdodDogdmFyKC0tZm9udC1ib2xkKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4uYWN0aW9uLWJ1dHRvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0yKTtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLmFjdGlvbi1idXR0b24ge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKSB2YXIoLS1zaXplLTQtMik7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXNtYWxsZXN0KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4udGFzay1ndXR0ZXItbWFya2VyLmNsaWNrYWJsZS1pY29uIHtcclxuXHR3aWR0aDogMjRweDtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4vKiBUYWJiZWQgSW50ZXJmYWNlIFN0eWxlcyAqL1xyXG4udGFzay1kZXRhaWxzLXBvcG92ZXIgLnRhYnMtbWFpbi1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHR3aWR0aDogMTAwJTsgLyogRW5zdXJlIGl0IHRha2VzIGF2YWlsYWJsZSB3aWR0aCAqL1xyXG59XHJcblxyXG4udGFzay1kZXRhaWxzLXBvcG92ZXIgLnRhYnMtbmF2aWdhdGlvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi50YXNrLWRldGFpbHMtcG9wb3ZlciAudGFiLWJ1dHRvbiB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpIHZhcigtLXNpemUtNC0yKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTsgLyogQWRqdXN0ZWQgZm9yIGNvbnNpc3RlbmN5ICovXHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdG1hcmdpbi1ib3R0b206IC0xcHg7IC8qIEFsaWduIHdpdGggcGFyZW50IGJvcmRlciAqL1xyXG5cdHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnRhc2stZGV0YWlscy1wb3BvdmVyIC50YWItYnV0dG9uOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGFzay1kZXRhaWxzLXBvcG92ZXIgLnRhYi1idXR0b24uYWN0aXZlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWJvbGQpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi50YXNrLWRldGFpbHMtcG9wb3ZlciAudGFiLXBhbmUge1xyXG5cdGRpc3BsYXk6IG5vbmU7IC8qIEhpZGUgaW5hY3RpdmUgcGFuZXMgYnkgZGVmYXVsdCAqL1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IC8qIEVuc3VyZSBjb250ZW50IHdpdGhpbiBwYW5lIGZsb3dzIHZlcnRpY2FsbHkgKi9cclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTsgLyogQWRkIHNvbWUgZ2FwIGJldHdlZW4gZWxlbWVudHMgaW4gdGhlIHBhbmUgKi9cclxufVxyXG5cclxuLnRhc2stZGV0YWlscy1wb3BvdmVyIC50YWItcGFuZS5hY3RpdmUge1xyXG5cdGRpc3BsYXk6IGZsZXg7IC8qIFNob3cgYWN0aXZlIHBhbmUgKi9cclxufVxyXG5cclxuLnRhc2stZGV0YWlscy1wb3BvdmVyIC5kZXRhaWxzLXN0YXR1cy1zZWxlY3RvcixcclxuLnRhc2stc3RhdHVzLWVkaXRvciAuZGV0YWlscy1zdGF0dXMtc2VsZWN0b3Ige1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi50YXNrLWRldGFpbHMtcG9wb3ZlciAucXVpY2stY2FwdHVyZS1zdGF0dXMtc2VsZWN0b3IsXHJcbi50YXNrLXN0YXR1cy1lZGl0b3IgLnF1aWNrLWNhcHR1cmUtc3RhdHVzLXNlbGVjdG9yIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxufVxyXG5cclxuLnRhc2stZGV0YWlscy1wb3BvdmVyIC5xdWljay1jYXB0dXJlLXN0YXR1cy1zZWxlY3Rvci1sYWJlbCxcclxuLnRhc2stc3RhdHVzLWVkaXRvciAucXVpY2stY2FwdHVyZS1zdGF0dXMtc2VsZWN0b3ItbGFiZWwge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5tb2RhbC1jb250ZW50LnRhc2stbWV0YWRhdGEtZWRpdG9yIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5tZXRhZGF0YS1mdWxsLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ubWV0YWRhdGEtZnVsbC1jb250YWluZXIgLmRhdGVzLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcbiIsICIuaW50ZXJuYWwtZW1iZWQgLnRhc2stZ2VuaXVzLWNvbnRhaW5lciB7XHJcblx0bWF4LWhlaWdodDogODAwcHg7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZCAudGFzay1nZW5pdXMtY29udGFpbmVyIC50YXNrLXNpZGViYXIge1xyXG5cdHdpZHRoOiA0NHB4O1xyXG5cdG1pbi13aWR0aDogNDRweDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uaW50ZXJuYWwtZW1iZWQgLnRhc2stZ2VuaXVzLWNvbnRhaW5lciAudGFzay1zaWRlYmFyIC5zaWRlYmFyLW5hdi1pdGVtIHtcclxuXHRwYWRkaW5nOiA4cHggMTBweDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogdmFyKC0tc2l6ZS00LTkpO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZS1pbi1vdXQsIGZsZXgtc2hyaW5rIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZCAudGFzay1nZW5pdXMtY29udGFpbmVyIC50YXNrLXNpZGViYXIgLnNpZGViYXItbmF2IHtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4uaW50ZXJuYWwtZW1iZWQgLnRhc2stZ2VuaXVzLWNvbnRhaW5lciAudGFzay1zaWRlYmFyIC5zaWRlYmFyLW5hdi1pdGVtIHtcclxuXHRwYWRkaW5nOiA4cHggMTBweDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogdmFyKC0tc2l6ZS00LTkpO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cclxuXHR0cmFuc2l0aW9uOiB3aWR0aCAwLjNzIGVhc2UtaW4tb3V0LCBmbGV4LXNocmluayAwLjNzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4uaW50ZXJuYWwtZW1iZWQgLnRhc2stZ2VuaXVzLWNvbnRhaW5lciAudGFzay1zaWRlYmFyIC5uYXYtaXRlbS1pY29uIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDA7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZCAudGFzay1nZW5pdXMtY29udGFpbmVyIC50YXNrLWxpc3Qge1xyXG5cdG1heC1oZWlnaHQ6IDgwMHB4O1xyXG59XHJcblxyXG4uaW50ZXJuYWwtZW1iZWQgLnByb2plY3RzLWNvbnRhaW5lciB7XHJcblx0ZmxleDogMTtcclxuXHRoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZCAuZm9yZWNhc3QtbGVmdC1jb2x1bW4ge1xyXG5cdHdpZHRoOiAyNDBweDtcclxufVxyXG5cclxuLmludGVybmFsLWVtYmVkIC5mb3JlY2FzdC1sZWZ0LWNvbHVtbiAubWluaS1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWdyaWQge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTtcclxuXHRnYXA6IDFweDtcclxuXHRwYWRkaW5nOiAwIDVweDtcclxufVxyXG5cclxuLmludGVybmFsLWVtYmVkXHJcblx0LmZvcmVjYXN0LWxlZnQtY29sdW1uXHJcblx0Lm1pbmktY2FsZW5kYXItY29udGFpbmVyXHJcblx0LmNhbGVuZGFyLWRheS1oZWFkZXIge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRmb250LXNpemU6IDAuN2VtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRwYWRkaW5nOiAzcHggMDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG1hcmdpbi1ib3R0b206IDNweDtcclxufVxyXG5cclxuLmludGVybmFsLWVtYmVkXHJcblx0LmZvcmVjYXN0LWxlZnQtY29sdW1uXHJcblx0Lm1pbmktY2FsZW5kYXItY29udGFpbmVyXHJcblx0LmNhbGVuZGFyLWRheS1oZWFkZXIuY2FsZW5kYXItd2Vla2VuZCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLmludGVybmFsLWVtYmVkIC5mb3JlY2FzdC1sZWZ0LWNvbHVtbiAubWluaS1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWRheSB7XHJcblx0YXNwZWN0LXJhdGlvOiAxO1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRwYWRkaW5nOiAxcHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZFxyXG5cdC5mb3JlY2FzdC1sZWZ0LWNvbHVtblxyXG5cdC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lclxyXG5cdC5jYWxlbmRhci1kYXk6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4uaW50ZXJuYWwtZW1iZWRcclxuXHQuZm9yZWNhc3QtbGVmdC1jb2x1bW5cclxuXHQubWluaS1jYWxlbmRhci1jb250YWluZXJcclxuXHQuY2FsZW5kYXItZGF5LnNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZFxyXG5cdC5mb3JlY2FzdC1sZWZ0LWNvbHVtblxyXG5cdC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lclxyXG5cdC5jYWxlbmRhci1kYXkudG9kYXkge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLmludGVybmFsLWVtYmVkXHJcblx0LmZvcmVjYXN0LWxlZnQtY29sdW1uXHJcblx0Lm1pbmktY2FsZW5kYXItY29udGFpbmVyXHJcblx0LmNhbGVuZGFyLWRheS5wYXN0LWR1ZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4uaW50ZXJuYWwtZW1iZWRcclxuXHQuZm9yZWNhc3QtbGVmdC1jb2x1bW5cclxuXHQubWluaS1jYWxlbmRhci1jb250YWluZXJcclxuXHQuY2FsZW5kYXItZGF5Lm90aGVyLW1vbnRoIHtcclxuXHRvcGFjaXR5OiAwLjU7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZFxyXG5cdC5mb3JlY2FzdC1sZWZ0LWNvbHVtblxyXG5cdC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lclxyXG5cdC5jYWxlbmRhci1kYXktbnVtYmVyIHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0Zm9udC1zaXplOiAwLjc1ZW07XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRwYWRkaW5nOiAxcHg7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZFxyXG5cdC5mb3JlY2FzdC1sZWZ0LWNvbHVtblxyXG5cdC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lclxyXG5cdC5jYWxlbmRhci1kYXktY291bnQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRmb250LXNpemU6IDAuNmVtO1xyXG5cdHBhZGRpbmc6IDFweCAzcHg7XHJcblx0bWFyZ2luOiAxcHggYXV0bztcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0d2lkdGg6IGZpdC1jb250ZW50O1xyXG59XHJcblxyXG4uaW50ZXJuYWwtZW1iZWRcclxuXHQuZm9yZWNhc3QtbGVmdC1jb2x1bW5cclxuXHQubWluaS1jYWxlbmRhci1jb250YWluZXJcclxuXHQuY2FsZW5kYXItZGF5LWNvdW50Lmhhcy1wcmlvcml0eSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZCAudGFncy1jb250YWluZXIge1xyXG5cdGhlaWdodDogYXV0bztcclxuXHRtYXgtaGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4uaW50ZXJuYWwtZW1iZWRcclxuXHQudGFzay1nZW5pdXMtY29udGFpbmVyOmhhcygudGFzay1kZXRhaWxzLnZpc2libGUpXHJcblx0LnRhZ3MtbGVmdC1jb2x1bW4ge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZFxyXG5cdC50YXNrLWdlbml1cy1jb250YWluZXI6aGFzKC50YXNrLWRldGFpbHMudmlzaWJsZSlcclxuXHQucHJvamVjdHMtbGVmdC1jb2x1bW4ge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZCAuZnVsbC1jYWxlbmRhci1jb250YWluZXIge1xyXG5cdGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLmludGVybmFsLWVtYmVkIC50Zy1rYW5iYW4tdmlldyB7XHJcblx0aGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4uYmFzZXMtdmlldy50YXNrLWdlbml1cy1jb250YWluZXIge1xyXG5cdGJvcmRlci10b3A6IHVuc2V0O1xyXG59XHJcblxyXG4vKiBCYXNlcyB1cGRhdGUgZXJyb3Igbm90aWZpY2F0aW9uICovXHJcbi5iYXNlcy11cGRhdGUtZXJyb3Itbm90aWZpY2F0aW9uIHtcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0dG9wOiAyMHB4O1xyXG5cdHJpZ2h0OiAyMHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0cGFkZGluZzogMTJweCAxNnB4O1xyXG5cdG1heC13aWR0aDogNDAwcHg7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpO1xyXG5cdHotaW5kZXg6IDEwMDA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGFuaW1hdGlvbjogc2xpZGVJblJpZ2h0IDAuM3MgZWFzZS1vdXQ7XHJcbn1cclxuXHJcbi5iYXNlcy11cGRhdGUtZXJyb3Itbm90aWZpY2F0aW9uOmhvdmVyIHtcclxuXHRvcGFjaXR5OiAwLjg7XHJcbn1cclxuXHJcbi5iYXNlcy11cGRhdGUtZXJyb3Itbm90aWZpY2F0aW9uIC5lcnJvci1pY29uIHtcclxuXHRmb250LXNpemU6IDE2cHg7XHJcblx0bWFyZ2luLWJvdHRvbTogOHB4O1xyXG59XHJcblxyXG4uYmFzZXMtdXBkYXRlLWVycm9yLW5vdGlmaWNhdGlvbiAuZXJyb3ItbWVzc2FnZSAuZXJyb3ItdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdG1hcmdpbi1ib3R0b206IDRweDtcclxufVxyXG5cclxuLmJhc2VzLXVwZGF0ZS1lcnJvci1ub3RpZmljYXRpb24gLmVycm9yLW1lc3NhZ2UgLmVycm9yLWRldGFpbHMge1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZUluUmlnaHQge1xyXG5cdGZyb20ge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcbn1cclxuIiwgIi8qIFYyIFZpZXcgTWFpbiBMYXlvdXQgKi9cclxuLnRhc2stZ2VuaXVzLXYyLXZpZXcge1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi50Zy12Mi1jb250YWluZXIge1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnZpZXctY29udGVudC50YXNrLWdlbml1cy12Mi12aWV3IHtcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4udGctdjItbGF5b3V0IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vKiBTaWRlYmFyIFN0eWxlcyAqL1xyXG4udGctdjItc2lkZWJhci1jb250YWluZXIge1xyXG5cdHdpZHRoOiAyNjBweDtcclxuXHRtaW4td2lkdGg6IDIwMHB4O1xyXG5cdG1heC13aWR0aDogNDAwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnYyLXNpZGViYXIge1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbi52Mi1zaWRlYmFyLWhlYWRlciB7XHJcblx0cGFkZGluZzogMTJweDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4vKiBXb3Jrc3BhY2UgU2VsZWN0b3IgKi9cclxuLndvcmtzcGFjZS1zZWxlY3Rvci1idXR0b24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0cGFkZGluZzogOHB4O1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXM7XHJcbn1cclxuXHJcbi53b3Jrc3BhY2Utc2VsZWN0b3ItYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLndvcmtzcGFjZS1pbmZvIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAxMnB4O1xyXG59XHJcblxyXG4ud29ya3NwYWNlLWljb24ge1xyXG5cdHdpZHRoOiAzMnB4O1xyXG5cdGhlaWdodDogMzJweDtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLndvcmtzcGFjZS1pY29uIHN2ZyB7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG59XHJcblxyXG4ud29ya3NwYWNlLWRldGFpbHMge1xyXG5cdHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi53b3Jrc3BhY2UtbmFtZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ud29ya3NwYWNlLWxhYmVsIHtcclxuXHRmb250LXNpemU6IDEycHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4ud29ya3NwYWNlLWRyb3Bkb3duLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogTmV3IFRhc2sgQnV0dG9uICovXHJcbi52Mi1uZXctdGFzay1idG4ge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1hcmdpbi10b3A6IDEycHg7XHJcblx0cGFkZGluZzogMTBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRnYXA6IDhweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cztcclxufVxyXG5cclxuLnYyLW5ldy10YXNrLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLnYyLW5ldy10YXNrLWljb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcbi8qIFNpZGViYXIgQ29udGVudCAqL1xyXG4udjItc2lkZWJhci1jb250ZW50IHtcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0cGFkZGluZzogOHB4IDA7XHJcblx0LS1pY29uLXNpemU6IDE2cHg7XHJcbn1cclxuXHJcbi52Mi1zaWRlYmFyLXNlY3Rpb24ge1xyXG5cdHBhZGRpbmc6IDhweCAwO1xyXG59XHJcblxyXG4udjItc2lkZWJhci1zZWN0aW9uICsgLnYyLXNpZGViYXItc2VjdGlvbiB7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnYyLXNlY3Rpb24taGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdHBhZGRpbmc6IDRweCAxNnB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDRweDtcclxufVxyXG5cclxuLnYyLXNlY3Rpb24taGVhZGVyIHNwYW4ge1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4udjItcHJvamVjdC1oZWFkZXItYnV0dG9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogOHB4O1xyXG59XHJcblxyXG4udjItYWRkLXByb2plY3QtYnRuLFxyXG4udjItc29ydC1wcm9qZWN0LWJ0bixcclxuLnYyLXRyZWUtdG9nZ2xlLWJ0biB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR0cmFuc2l0aW9uOiBjb2xvciAwLjE1cztcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDIwcHg7XHJcblx0aGVpZ2h0OiAyMHB4O1xyXG59XHJcblxyXG4udjItYWRkLXByb2plY3QtYnRuOmhvdmVyLFxyXG4udjItc29ydC1wcm9qZWN0LWJ0bjpob3ZlcixcclxuLnYyLXRyZWUtdG9nZ2xlLWJ0bjpob3ZlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLyogTmF2aWdhdGlvbiBJdGVtcyAqL1xyXG4udjItbmF2aWdhdGlvbi1saXN0IHtcclxuXHRwYWRkaW5nOiAwIDhweDtcclxufVxyXG5cclxuLnYyLW5hdmlnYXRpb24taXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMTJweDtcclxuXHRwYWRkaW5nOiA2cHggOHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cztcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi52Mi1uYXZpZ2F0aW9uLWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4udjItbmF2aWdhdGlvbi1pdGVtLmlzLWFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUtaG92ZXIpO1xyXG59XHJcblxyXG4udjItbmF2aWdhdGlvbi1pY29uIHtcclxuXHR3aWR0aDogMjBweDtcclxuXHRoZWlnaHQ6IDIwcHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnYyLW5hdmlnYXRpb24taXRlbS5pcy1hY3RpdmUgLnYyLW5hdmlnYXRpb24taWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnYyLW5hdmlnYXRpb24tbGFiZWwge1xyXG5cdGZsZXg6IDE7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi52Mi1uYXZpZ2F0aW9uLWJhZGdlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Zm9udC1zaXplOiAxMXB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0cGFkZGluZzogMnB4IDZweDtcclxuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xyXG5cdG1pbi13aWR0aDogMThweDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIFByb2plY3QgTGlzdCAqL1xyXG4udjItcHJvamVjdC1zY3JvbGwge1xyXG5cdG1heC1oZWlnaHQ6IDMwMHB4O1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0cGFkZGluZzogMCA4cHg7XHJcbn1cclxuXHJcbi52Mi1wcm9qZWN0LWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDEwcHg7XHJcblx0cGFkZGluZzogNnB4IDhweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXM7XHJcbn1cclxuXHJcbi52Mi1wcm9qZWN0LWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4udjItcHJvamVjdC1pdGVtLmlzLWFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUtaG92ZXIpO1xyXG59XHJcblxyXG4udjItcHJvamVjdC1jb2xvciB7XHJcblx0d2lkdGg6IDEycHg7XHJcblx0aGVpZ2h0OiAxMnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLnYyLXByb2plY3QtY29sb3ItZGFzaGVkIHtcclxuXHR3aWR0aDogMTJweDtcclxuXHRoZWlnaHQ6IDEycHg7XHJcblx0Ym9yZGVyOiAxLjVweCBkYXNoZWQgdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG59XHJcblxyXG4udjItcHJvamVjdC1uYW1lIHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLnYyLWFkZC1wcm9qZWN0IC52Mi1wcm9qZWN0LW5hbWUge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnYyLXByb2plY3QtY291bnQge1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi8qIFRyZWUgVmlldyBTdHlsZXMgKi9cclxuLnYyLXByb2plY3QtbGlzdC5pcy10cmVlLXZpZXcgLnYyLXByb2plY3QtaXRlbSB7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7XHJcbn1cclxuXHJcbi52Mi1wcm9qZWN0LWNoZXZyb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMTZweDtcclxuXHRoZWlnaHQ6IDE2cHg7XHJcblx0bWFyZ2luLXJpZ2h0OiA0cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgZWFzZTtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLnYyLXByb2plY3QtY2hldnJvbjpob3ZlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnYyLXByb2plY3QtY2hldnJvbiBzdmcge1xyXG5cdHdpZHRoOiAxMnB4O1xyXG5cdGhlaWdodDogMTJweDtcclxufVxyXG5cclxuLnYyLXByb2plY3QtY2hldnJvbi1zcGFjZXIge1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxuXHRtYXJnaW4tcmlnaHQ6IDRweDtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLyogVHJlZSBpbmRlbnRhdGlvbiAqL1xyXG4udjItcHJvamVjdC1saXN0LmlzLXRyZWUtdmlldyAudjItcHJvamVjdC1pdGVtW2RhdGEtbGV2ZWw9XCIxXCJdIHtcclxuXHRwYWRkaW5nLWxlZnQ6IDI4cHg7XHJcbn1cclxuXHJcbi52Mi1wcm9qZWN0LWxpc3QuaXMtdHJlZS12aWV3IC52Mi1wcm9qZWN0LWl0ZW1bZGF0YS1sZXZlbD1cIjJcIl0ge1xyXG5cdHBhZGRpbmctbGVmdDogNDhweDtcclxufVxyXG5cclxuLnYyLXByb2plY3QtbGlzdC5pcy10cmVlLXZpZXcgLnYyLXByb2plY3QtaXRlbVtkYXRhLWxldmVsPVwiM1wiXSB7XHJcblx0cGFkZGluZy1sZWZ0OiA2OHB4O1xyXG59XHJcblxyXG4vKiBUcmVlIGhpZXJhcmNoeSBsaW5lcyAob3B0aW9uYWwgLSBjYW4gYmUgYWRkZWQgbGF0ZXIpICovXHJcbi52Mi1wcm9qZWN0LWxpc3QuaXMtdHJlZS12aWV3IC52Mi1wcm9qZWN0LWl0ZW06OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogOHB4O1xyXG5cdHRvcDogMDtcclxuXHRib3R0b206IDA7XHJcblx0d2lkdGg6IDFweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0b3BhY2l0eTogMDtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzO1xyXG59XHJcblxyXG4udjItcHJvamVjdC1saXN0LmlzLXRyZWUtdmlld1xyXG4udjItcHJvamVjdC1pdGVtW2RhdGEtbGV2ZWxdOm5vdChbZGF0YS1sZXZlbD1cIjBcIl0pOmhvdmVyOjpiZWZvcmUge1xyXG5cdG9wYWNpdHk6IDAuMztcclxufVxyXG5cclxuLyogVmlydHVhbCBwcm9qZWN0IG5vZGVzIChpbnRlcm1lZGlhdGUgZm9sZGVycykgKi9cclxuLnYyLXByb2plY3QtaXRlbS5pcy12aXJ0dWFsIC52Mi1wcm9qZWN0LW5hbWUge1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRvcGFjaXR5OiAwLjg1O1xyXG59XHJcblxyXG4udjItcHJvamVjdC1pdGVtLmlzLXZpcnR1YWwgLnYyLXByb2plY3QtY29sb3Ige1xyXG5cdG9wYWNpdHk6IDAuNjtcclxufVxyXG5cclxuLnYyLXByb2plY3QtaXRlbS5pcy12aXJ0dWFsOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLyogTWFpbiBDb250YWluZXIgKi9cclxuLnRnLXYyLW1haW4tY29udGFpbmVyIHtcclxuXHRmbGV4OiAxO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vKiBUb3AgTmF2aWdhdGlvbiAqL1xyXG4udGctdjItdG9wLW5hdiB7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG59XHJcblxyXG4udjItdG9wLW5hdmlnYXRpb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0aGVpZ2h0OiA1NnB4O1xyXG5cdHBhZGRpbmc6IDAgMjBweDtcclxuXHRnYXA6IDIwcHg7XHJcbn1cclxuXHJcbi52Mi1uYXYtbGVmdCB7XHJcblx0ZmxleDogMCAxIDQwMHB4O1xyXG59XHJcblxyXG4udjItc2VhcmNoLWNvbnRhaW5lciB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcblx0bWF4LXdpZHRoOiA0MDBweDtcclxuXHRmbGV4OiAxO1xyXG59XHJcblxyXG4vKiBDZW50ZXIgTmF2aWdhdGlvbiAqL1xyXG4udjItbmF2LWNlbnRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMTJweDtcclxufVxyXG5cclxuLnYyLXZpZXctdGFicyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdHBhZGRpbmc6IDJweDtcclxufVxyXG5cclxuLnYyLXZpZXctdGFiIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA2cHg7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjE1cztcclxufVxyXG5cclxuLnYyLXZpZXctdGFiOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udjItdmlldy10YWIuaXMtYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Ym94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxufVxyXG5cclxuLnYyLXZpZXctdGFiLWljb24ge1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi52Mi1uYXYtc2VwYXJhdG9yIHtcclxuXHR3aWR0aDogMXB4O1xyXG5cdGhlaWdodDogMjRweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi52Mi1uYXYtYnV0dG9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA2cHg7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4xNXM7XHJcbn1cclxuXHJcbi52Mi1uYXYtYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLnYyLW5hdi1idXR0b24taWNvbiB7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcbi8qIFJpZ2h0IE5hdmlnYXRpb24gKi9cclxuLnYyLW5hdi1yaWdodCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMTJweDtcclxufVxyXG5cclxuLnYyLW5hdi1pY29uLWJ1dHRvbiB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiAzNnB4O1xyXG5cdGhlaWdodDogMzZweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzO1xyXG59XHJcblxyXG4udjItbmF2LWljb24tYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udjItbm90aWZpY2F0aW9uLWJhZGdlIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAtMnB4O1xyXG5cdHJpZ2h0OiAtMnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxuXHRmb250LXNpemU6IDEwcHg7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRwYWRkaW5nOiAycHggNXB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcblx0bWluLXdpZHRoOiAxNnB4O1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLyogQ29udGVudCBBcmVhICovXHJcbi50Zy12Mi1jb250ZW50IHtcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4udGctdjItY29udGVudCAuY29udGVudC1oZWFkZXIsXHJcbi50Zy12Mi1jb250ZW50IC50Zy1rYW5iYW4tZmlsdGVycyB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLyogVmlldy1zcGVjaWZpYyBzdHlsZXMgKi9cclxuLnRnLXYyLWxpc3QtdmlldyxcclxuLnRnLXYyLWthbmJhbi12aWV3LFxyXG4udGctdjItdHJlZS12aWV3LFxyXG4udGctdjItY2FsZW5kYXItdmlldyB7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4vKiBSZXNwb25zaXZlIGFkanVzdG1lbnRzICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC50Zy12Mi1zaWRlYmFyLWNvbnRhaW5lcjpub3QoLmlzLW1vYmlsZS1kcmF3ZXIpIHtcclxuXHRcdHdpZHRoOiAyMDBweDtcclxuXHR9XHJcblxyXG5cdC52Mi1uYXYtY2VudGVyIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG5cclxuXHQudjItc2VhcmNoLWNvbnRhaW5lciB7XHJcblx0XHRmbGV4OiAxO1xyXG5cdH1cclxuXHJcblx0LnYyLW5hdi1sZWZ0IC5zZWFyY2gtaW5wdXQtY29udGFpbmVyIHtcclxuXHRcdHdpZHRoOiAzMDBweDtcclxuXHR9XHJcbn1cclxuXHJcbi8qIE1vYmlsZS1zcGVjaWZpYyBtZWRpYSBxdWVyeSAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcclxuXHQvKiBFbnN1cmUgZHJhd2VyIHRha2VzIGFwcHJvcHJpYXRlIHdpZHRoIG9uIHNtYWxsIHNjcmVlbnMgKi9cclxuXHQudGctdjItc2lkZWJhci1jb250YWluZXIuaXMtbW9iaWxlLWRyYXdlciB7XHJcblx0XHR3aWR0aDogNzV2dyAhaW1wb3J0YW50O1xyXG5cdFx0bWF4LXdpZHRoOiAzMjBweCAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHJcblx0LyogTWFrZSBoYW1idXJnZXIgYnV0dG9uIG1vcmUgcHJvbWluZW50IG9uIG1vYmlsZSAqL1xyXG5cdC52Mi1oYW1idXJnZXItYnV0dG9uIHtcclxuXHRcdHdpZHRoOiA0NHB4O1xyXG5cdFx0aGVpZ2h0OiA0NHB4O1xyXG5cdH1cclxuXHJcblx0LyogQWRqdXN0IHRvcCBuYXZpZ2F0aW9uIHNwYWNpbmcgb24gbW9iaWxlICovXHJcblx0LnYyLXRvcC1uYXZpZ2F0aW9uIHtcclxuXHRcdHBhZGRpbmc6IDAgMTJweDtcclxuXHR9XHJcblxyXG5cdC8qIEhpZGUgdmlldyB0YWJzIG9uIHZlcnkgc21hbGwgc2NyZWVucyAqL1xyXG5cdC52Mi12aWV3LXRhYnMge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblxyXG5cdC8qIE9wdGltaXplIHNlYXJjaCBjb250YWluZXIgb24gbW9iaWxlICovXHJcblx0LnYyLXNlYXJjaC1jb250YWluZXIge1xyXG5cdFx0ZmxleDogMTtcclxuXHRcdG1heC13aWR0aDogY2FsYygxMDB2dyAtIDE4MHB4KTtcclxuXHR9XHJcbn1cclxuXHJcbi8qID09PT09IENvbGxhcHNlZCBTaWRlYmFyIChSYWlsKSA9PT09PSAqL1xyXG4udGctdjItc2lkZWJhci1jb250YWluZXIge1xyXG5cdHRyYW5zaXRpb246IHdpZHRoIDAuMnMgZWFzZSwgbWluLXdpZHRoIDAuMnMgZWFzZSwgbWF4LXdpZHRoIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLyogV2hlbiB0aGUgc2lkZWJhciBlbGVtZW50IGl0c2VsZiBpcyBjb2xsYXBzZWQgKi9cclxuLnRnLXYyLXNpZGViYXItY29udGFpbmVyLmlzLWNvbGxhcHNlZCxcclxuXHQvKiBPciB3aGVuIHRoZSByb290IGFkZHMgYSBoZWxwZXIgY2xhc3MgKi9cclxuLnYyLXNpZGViYXItY29sbGFwc2VkIC50Zy12Mi1zaWRlYmFyLWNvbnRhaW5lciB7XHJcblx0d2lkdGg6IDQ0cHg7XHJcblx0bWluLXdpZHRoOiA0NHB4O1xyXG5cdG1heC13aWR0aDogNDRweDtcclxufVxyXG5cclxuLyogUmFpbCBsYXlvdXQgKi9cclxuLnYyLXNpZGViYXItcmFpbCB7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogOHB4O1xyXG5cdHBhZGRpbmc6IDhweCA0cHg7XHJcbn1cclxuXHJcbi52Mi1yYWlsLWJ0biB7XHJcblx0d2lkdGg6IDM2cHg7XHJcblx0aGVpZ2h0OiAzNnB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UsIGNvbG9yIDAuMTVzIGVhc2U7XHJcbn1cclxuXHJcbi52Mi1yYWlsLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnYyLXJhaWwtYnRuIHN2ZyB7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG59XHJcblxyXG4vKiBBY3RpdmUgc3RhdGUgZm9yIHJhaWwgYnV0dG9ucyAqL1xyXG4udjItcmFpbC1idG4uaXMtYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZS1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnRnLWJldGEge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLnRnLWJldGE6OmFmdGVyIHtcclxuXHRjb250ZW50OiBcImJldGFcIjtcclxuXHRmb250LXNpemU6IDAuNDRlbTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudC1pbnZlcnRlZCk7XHJcblx0cGFkZGluZy1sZWZ0OiAycHg7XHJcblx0cGFkZGluZy1yaWdodDogMnB4O1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdG1hcmdpbi1sZWZ0OiA0cHg7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogLTFweDtcclxuXHRyaWdodDogLTJweDtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRwYWRkaW5nLXRvcDogMXB4O1xyXG59XHJcblxyXG4vKiA9PT09PSBNb2JpbGUgRHJhd2VyIFN0eWxlcyA9PT09PSAqL1xyXG4uZHJhd2VyLW92ZXJsYXkge1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHRyaWdodDogMDtcclxuXHRib3R0b206IDA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xyXG5cdHotaW5kZXg6IDk5OTtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4uZHJhd2VyLW9wZW4gLmRyYXdlci1vdmVybGF5IHtcclxuXHRvcGFjaXR5OiAxO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG59XHJcblxyXG4vKiBNb2JpbGUgZHJhd2VyIHNpZGViYXIgKi9cclxuLnRnLXYyLXNpZGViYXItY29udGFpbmVyLmlzLW1vYmlsZS1kcmF3ZXIge1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHRib3R0b206IDA7XHJcblx0d2lkdGg6IDI4MHB4ICFpbXBvcnRhbnQ7XHJcblx0bWF4LXdpZHRoOiA4NXZ3ICFpbXBvcnRhbnQ7XHJcblx0bWluLXdpZHRoOiAyODBweCAhaW1wb3J0YW50O1xyXG5cdHotaW5kZXg6IDEwMDA7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG5cdGJveC1zaGFkb3c6IDRweCAwIDIwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxufVxyXG5cclxuLyogV2hlbiBkcmF3ZXIgaXMgb3BlbiAqL1xyXG4uZHJhd2VyLW9wZW4gLnRnLXYyLXNpZGViYXItY29udGFpbmVyLmlzLW1vYmlsZS1kcmF3ZXIge1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxufVxyXG5cclxuLyogRW5zdXJlIHNpZGViYXIgY29udGVudCBpcyB2aXNpYmxlIG9uIG1vYmlsZSBldmVuIHdoZW4gXCJjb2xsYXBzZWRcIiAqL1xyXG4udGctdjItc2lkZWJhci1jb250YWluZXIuaXMtbW9iaWxlLWRyYXdlciAudjItc2lkZWJhci5pcy1jb2xsYXBzZWQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIEhpZGUgcmFpbCBtb2RlIG9uIG1vYmlsZSAqL1xyXG4udGctdjItc2lkZWJhci1jb250YWluZXIuaXMtbW9iaWxlLWRyYXdlciAudjItc2lkZWJhci1yYWlsIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiBNb2JpbGUtc3BlY2lmaWMgc2lkZWJhciBjb250ZW50IGFkanVzdG1lbnRzICovXHJcbi5pcy1tb2JpbGUgLnYyLXNpZGViYXIge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0b3ZlcmZsb3cteDogaGlkZGVuO1xyXG59XHJcblxyXG4uaXMtbW9iaWxlIC52Mi1zaWRlYmFyLWhlYWRlciB7XHJcblx0cGFkZGluZzogMTZweDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4vKiBFbnN1cmUgYWxsIHNlY3Rpb25zIGFyZSB2aXNpYmxlIG9uIG1vYmlsZSAqL1xyXG4uaXMtbW9iaWxlIC52Mi1zaWRlYmFyLWNvbnRlbnQge1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0bWF4LWhlaWdodDogY2FsYyhcclxuXHRcdDEwMHZoIC0gMTUwcHhcclxuXHQpOyAvKiBBY2NvdW50IGZvciBoZWFkZXIgYW5kIG5ldyB0YXNrIGJ1dHRvbiAqL1xyXG59XHJcblxyXG4uaXMtbW9iaWxlIC52Mi1zaWRlYmFyLXNlY3Rpb24ge1xyXG5cdGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcblx0dmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBFbnN1cmUgc2VjdGlvbiBoZWFkZXJzIGFyZSB2aXNpYmxlIG9uIG1vYmlsZSAqL1xyXG4uaXMtbW9iaWxlIC52Mi1zZWN0aW9uLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xyXG5cdHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmlzLW1vYmlsZSAudjItbmF2aWdhdGlvbi1pdGVtLFxyXG4uaXMtbW9iaWxlIC52Mi1wcm9qZWN0LWl0ZW0ge1xyXG5cdHBhZGRpbmc6IDEwcHggMTZweDtcclxuXHRmb250LXNpemU6IDE1cHg7XHJcbn1cclxuXHJcbi5pcy1tb2JpbGUgLnYyLW5ldy10YXNrLWJ0biB7XHJcblx0cGFkZGluZzogMTJweDtcclxuXHRmb250LXNpemU6IDE1cHg7XHJcbn1cclxuXHJcbi5pcy1tb2JpbGUgLnYyLW5hdmlnYXRpb24tbGlzdCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLmlzLW1vYmlsZSBzcGFuLnYyLW5hdmlnYXRpb24tbGFiZWwge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIFRvdWNoLWZyaWVuZGx5IHNpemluZyAqL1xyXG4uaXMtbW9iaWxlIC52Mi1uYXZpZ2F0aW9uLWl0ZW0sXHJcbi5pcy1tb2JpbGUgLnYyLXByb2plY3QtaXRlbSxcclxuLmlzLW1vYmlsZSAudjItYWRkLXByb2plY3Qge1xyXG5cdG1pbi1oZWlnaHQ6IDQ0cHg7XHJcbn1cclxuXHJcbi8qIEFkanVzdCBtYWluIGNvbnRhaW5lciBvbiBtb2JpbGUgd2hlbiBkcmF3ZXIgaXMgb3BlbiAqL1xyXG4uZHJhd2VyLW9wZW4gLnRnLXYyLW1haW4tY29udGFpbmVyIHtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLyogSGFtYnVyZ2VyIG1lbnUgYnV0dG9uIGZvciBtb2JpbGUgKi9cclxuLnYyLWhhbWJ1cmdlci1idXR0b24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogNDBweDtcclxuXHRoZWlnaHQ6IDQwcHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLCBjb2xvciAwLjE1cyBlYXNlO1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4udjItaGFtYnVyZ2VyLWJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnYyLWhhbWJ1cmdlci1idXR0b24gc3ZnIHtcclxuXHR3aWR0aDogMjBweDtcclxuXHRoZWlnaHQ6IDIwcHg7XHJcbn1cclxuXHJcbi8qIEFkanVzdCBzZWFyY2ggY29udGFpbmVyIG9uIG1vYmlsZSB3aGVuIGhhbWJ1cmdlciBpcyBwcmVzZW50ICovXHJcbi52Mi1uYXYtbGVmdCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogOHB4O1xyXG59XHJcblxyXG4vKiBIaWRlIHNpZGViYXIgdG9nZ2xlIG9uIGRlc2t0b3Agd2hlbiBpbiBtb2JpbGUgZHJhd2VyIG1vZGUgKi9cclxuLnRnLXYyLXNpZGViYXItY29udGFpbmVyLmlzLW1vYmlsZS1kcmF3ZXJcclxufiAudGctdjItbWFpbi1jb250YWluZXJcclxuLnNpZGViYXItdG9nZ2xlIHtcclxuXHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIEFuaW1hdGlvbiBmb3IgZHJhd2VyIGZyb20gcmlnaHQgKG9wdGlvbmFsIC0gY2FuIGJlIGNvbmZpZ3VyZWQpICovXHJcbi50Zy12Mi1zaWRlYmFyLWNvbnRhaW5lci5pcy1tb2JpbGUtZHJhd2VyLmRyYXdlci1yaWdodCB7XHJcblx0bGVmdDogYXV0bztcclxuXHRyaWdodDogMDtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XHJcblx0Ym94LXNoYWRvdzogLTRweCAwIDIwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxufVxyXG5cclxuLmRyYXdlci1vcGVuIC50Zy12Mi1zaWRlYmFyLWNvbnRhaW5lci5pcy1tb2JpbGUtZHJhd2VyLmRyYXdlci1yaWdodCB7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG59XHJcblxyXG4udmlldy1jb250ZW50OmhhcygudGctcmlnaHQtZGV0YWlsLXZpZXcpIHtcclxuXHRwYWRkaW5nLWxlZnQ6IDA7XHJcblx0cGFkZGluZy1yaWdodDogMDtcclxuXHRwYWRkaW5nLXRvcDogMDtcclxufVxyXG5cclxuLnRnLXJpZ2h0LWRldGFpbC12aWV3IC50YXNrLWRldGFpbHMge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vKiBTbW9vdGggYW5pbWF0aW9ucyBmb3IgYWxsIHRyYW5zaXRpb25zICovXHJcbkBrZXlmcmFtZXMgc2xpZGVJbkZyb21MZWZ0IHtcclxuXHRmcm9tIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XHJcblx0XHRvcGFjaXR5OiAwLjg7XHJcblx0fVxyXG5cdHRvIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0fVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNsaWRlSW5Gcm9tUmlnaHQge1xyXG5cdGZyb20ge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG5cdFx0b3BhY2l0eTogMC44O1xyXG5cdH1cclxuXHR0byB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi5vbmJvYXJkaW5nLXNoYWRvdyB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGJhY2tncm91bmQ6IGhzbCh2YXIoLS1jb2xvci1hY2NlbnQtaHNsKSwgMCk7XHJcblx0Ym9yZGVyLXJhZGl1czogMjRweDtcclxuXHRyb3RhdGU6IDM1ZGVnO1xyXG5cdHdpZHRoOiAyNjBweDtcclxuXHR0b3A6IDIwMHB4O1xyXG5cdGhlaWdodDogNDAwcHg7XHJcblx0ZmlsdGVyOiBibHVyKDE1MHB4KTtcclxuXHRhbmltYXRpb246IHNoYWRvdy1zbGlkZSBpbmZpbml0ZSA0cyBsaW5lYXIgYWx0ZXJuYXRlO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNoYWRvdy1zbGlkZSB7XHJcblx0MCUge1xyXG5cdFx0YmFja2dyb3VuZDogaHNsKHZhcigtLWNvbG9yLWFjY2VudC1oc2wpLCAwLjIpO1xyXG5cdFx0cmlnaHQ6IDM2MHB4XHJcblx0fVxyXG5cdHRvIHtcclxuXHRcdGJhY2tncm91bmQ6IGhzbCh2YXIoLS1jb2xvci1hY2NlbnQtaHNsKSwgMC44KTtcclxuXHRcdHJpZ2h0OiAxNjBweFxyXG5cdH1cclxufVxyXG4iLCAiLyogVGFzayBHZW5pdXMgVjIgRW5oYW5jZWQgU3R5bGVzIC0gU2hhZGNuLWluc3BpcmVkICovXHJcblxyXG4vKiA9PT09PT09PT09IEJhc2UgVmFyaWFibGVzID09PT09PT09PT0gKi9cclxuOnJvb3Qge1xyXG5cdC8qIFNoYWRvd3MgKi9cclxuXHQtLXRnLXNoYWRvdy1zbTogMCAxcHggMnB4IDAgcmdiKDAgMCAwIC8gMC4wNSk7XHJcblx0LS10Zy1zaGFkb3c6IDAgMXB4IDNweCAwIHJnYigwIDAgMCAvIDAuMSksIDAgMXB4IDJweCAtMXB4IHJnYigwIDAgMCAvIDAuMSk7XHJcblx0LS10Zy1zaGFkb3ctbWQ6IDAgNHB4IDZweCAtMXB4IHJnYigwIDAgMCAvIDAuMSksIDAgMnB4IDRweCAtMnB4IHJnYigwIDAgMCAvIDAuMSk7XHJcblx0LS10Zy1zaGFkb3ctbGc6IDAgMTBweCAxNXB4IC0zcHggcmdiKDAgMCAwIC8gMC4xKSwgMCA0cHggNnB4IC00cHggcmdiKDAgMCAwIC8gMC4xKTtcclxuXHQtLXRnLXNoYWRvdy14bDogMCAyMHB4IDI1cHggLTVweCByZ2IoMCAwIDAgLyAwLjEpLCAwIDhweCAxMHB4IC02cHggcmdiKDAgMCAwIC8gMC4xKTtcclxuXHJcblx0LyogQW5pbWF0aW9ucyAqL1xyXG5cdC0tdGctdHJhbnNpdGlvbi1mYXN0OiAxNTBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG5cdC0tdGctdHJhbnNpdGlvbi1iYXNlOiAyMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG5cdC0tdGctdHJhbnNpdGlvbi1zbG93OiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG5cclxuXHQvKiBCb3JkZXIgcmFkaXVzICovXHJcblx0LS10Zy1yYWRpdXMtc206IDAuMjVyZW07XHJcblx0LS10Zy1yYWRpdXM6IDAuMzc1cmVtO1xyXG5cdC0tdGctcmFkaXVzLW1kOiAwLjVyZW07XHJcblx0LS10Zy1yYWRpdXMtbGc6IDAuNzVyZW07XHJcblx0LS10Zy1yYWRpdXMtZnVsbDogOTk5OXB4O1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09IFRhc2sgTGlzdCBWaWV3IFN0eWxlcyA9PT09PT09PT09ICovXHJcbi50YXNrLWxpc3QtY29udGFpbmVyIHtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nOiAxLjVyZW07XHJcblx0YW5pbWF0aW9uOiBmYWRlSW4gdmFyKC0tdGctdHJhbnNpdGlvbi1iYXNlKTtcclxufVxyXG5cclxuLnRhc2stbGlzdC13cmFwcGVyIHtcclxuXHRtYXgtd2lkdGg6IDEyMDBweDtcclxuXHRtYXJnaW46IDAgYXV0bztcclxufVxyXG5cclxuLnRhc2stbGlzdC1pdGVtIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS10Zy1yYWRpdXMtbWQpO1xyXG5cdG1hcmdpbi1ib3R0b206IDAuNzVyZW07XHJcblx0cGFkZGluZzogMXJlbSAxLjI1cmVtO1xyXG5cdHRyYW5zaXRpb246IGFsbCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4udGFzay1saXN0LWl0ZW06OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogMDtcclxuXHR0b3A6IDA7XHJcblx0Ym90dG9tOiAwO1xyXG5cdHdpZHRoOiAzcHg7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG59XHJcblxyXG4udGFzay1saXN0LWl0ZW06aG92ZXIge1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXRnLXNoYWRvdyk7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLnRhc2stbGlzdC1pdGVtOmhvdmVyOjpiZWZvcmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi50YXNrLWxpc3QtaXRlbS5pcy1jb21wbGV0ZWQge1xyXG5cdG9wYWNpdHk6IDAuNjtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi50YXNrLWxpc3QtaXRlbS5pcy1vdmVyZHVlOjpiZWZvcmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4udGFzay1saXN0LWVtcHR5IHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogM3JlbSAxLjVyZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45cmVtO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09IFRhc2sgVHJlZSBWaWV3IFN0eWxlcyA9PT09PT09PT09ICovXHJcbi50YXNrLXRyZWUtY29udGFpbmVyIHtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nOiAxLjVyZW07XHJcblx0YW5pbWF0aW9uOiBmYWRlSW4gdmFyKC0tdGctdHJhbnNpdGlvbi1iYXNlKTtcclxufVxyXG5cclxuLnRhc2stdHJlZS13cmFwcGVyIHtcclxuXHRtYXgtd2lkdGg6IDEyMDBweDtcclxuXHRtYXJnaW46IDAgYXV0bztcclxufVxyXG5cclxuLnRhc2stdHJlZS1wcm9qZWN0IHtcclxuXHRtYXJnaW4tYm90dG9tOiAxLjVyZW07XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzLWxnKTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRyYW5zaXRpb246IGFsbCB2YXIoLS10Zy10cmFuc2l0aW9uLWJhc2UpO1xyXG59XHJcblxyXG4udGFzay10cmVlLXByb2plY3Q6aG92ZXIge1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXRnLXNoYWRvdy1tZCk7XHJcbn1cclxuXHJcbi50YXNrLXRyZWUtcHJvamVjdC1oZWFkZXIge1xyXG5cdHBhZGRpbmc6IDFyZW0gMS4yNXJlbTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGZvbnQtc2l6ZTogMC45NXJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdGctdHJhbnNpdGlvbi1mYXN0KTtcclxufVxyXG5cclxuLnRhc2stdHJlZS1wcm9qZWN0LWhlYWRlcjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi50YXNrLXRyZWUtcHJvamVjdC1oZWFkZXI6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcdTI1QjZcIjtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0bWFyZ2luLXJpZ2h0OiAwLjVyZW07XHJcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRnLXRyYW5zaXRpb24tZmFzdCk7XHJcblx0Zm9udC1zaXplOiAwLjc1cmVtO1xyXG59XHJcblxyXG4udGFzay10cmVlLXByb2plY3QuaXMtZXhwYW5kZWQgLnRhc2stdHJlZS1wcm9qZWN0LWhlYWRlcjo6YmVmb3JlIHtcclxuXHR0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbn1cclxuXHJcbi50YXNrLXRyZWUtdGFza3Mge1xyXG5cdHBhZGRpbmc6IDAuNXJlbTtcclxufVxyXG5cclxuLnRhc2stdHJlZS1pdGVtIHtcclxuXHRwYWRkaW5nOiAwLjc1cmVtIDFyZW07XHJcblx0bWFyZ2luOiAwLjI1cmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cyk7XHJcblx0dHJhbnNpdGlvbjogYWxsIHZhcigtLXRnLXRyYW5zaXRpb24tZmFzdCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHBhZGRpbmctbGVmdDogMnJlbTtcclxufVxyXG5cclxuLnRhc2stdHJlZS1pdGVtOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IDFyZW07XHJcblx0dG9wOiA1MCU7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG5cdHdpZHRoOiA0cHg7XHJcblx0aGVpZ2h0OiA0cHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzLWZ1bGwpO1xyXG59XHJcblxyXG4udGFzay10cmVlLWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGFzay10cmVlLWVtcHR5IHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogM3JlbSAxLjVyZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45cmVtO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09IEZpbHRlciBQYW5lbCBTdHlsZXMgPT09PT09PT09PSAqL1xyXG4udGctdjItZmlsdGVyLXBhbmVsIHtcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0cmlnaHQ6IC0zODBweDtcclxuXHR0b3A6IDA7XHJcblx0Ym90dG9tOiAwO1xyXG5cdHdpZHRoOiAzODBweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXRnLXNoYWRvdy14bCk7XHJcblx0dHJhbnNpdGlvbjogcmlnaHQgdmFyKC0tdGctdHJhbnNpdGlvbi1zbG93KTtcclxuXHR6LWluZGV4OiAxMDAwO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4udGctdjItZmlsdGVyLXBhbmVsLmlzLW9wZW4ge1xyXG5cdHJpZ2h0OiAwO1xyXG59XHJcblxyXG4uZmlsdGVyLXBhbmVsLWhlYWRlciB7XHJcblx0cGFkZGluZzogMS4yNXJlbTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbn1cclxuXHJcbi5maWx0ZXItcGFuZWwtdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogMS4xcmVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmZpbHRlci1wYW5lbC1jbG9zZSB7XHJcblx0d2lkdGg6IDMycHg7XHJcblx0aGVpZ2h0OiAzMnB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS10Zy1yYWRpdXMpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIHZhcigtLXRnLXRyYW5zaXRpb24tZmFzdCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4uZmlsdGVyLXBhbmVsLWNsb3NlOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uZmlsdGVyLXBhbmVsLWNvbnRlbnQge1xyXG5cdHBhZGRpbmc6IDEuMjVyZW07XHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAge1xyXG5cdG1hcmdpbi1ib3R0b206IDEuNXJlbTtcclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1sYWJlbCB7XHJcblx0Zm9udC1zaXplOiAwLjg3NXJlbTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wMjVlbTtcclxufVxyXG5cclxuLmZpbHRlci1vcHRpb25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiAwLjVyZW07XHJcbn1cclxuXHJcbi5maWx0ZXItb3B0aW9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMC41cmVtIDAuNzVyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG59XHJcblxyXG4uZmlsdGVyLW9wdGlvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi5maWx0ZXItb3B0aW9uLmlzLXNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5maWx0ZXItY2hlY2tib3gge1xyXG5cdG1hcmdpbi1yaWdodDogMC43NXJlbTtcclxufVxyXG5cclxuLyogRmlsdGVyIHNwZWNpZmljIHN0eWxlcyAqL1xyXG4uZmlsdGVyLXNlbGVjdCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0cGFkZGluZzogMC41cmVtIDAuNzVyZW07XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1mb3JtLWZpZWxkKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtc2l6ZTogMC44NzVyZW07XHJcblx0dHJhbnNpdGlvbjogYWxsIHZhcigtLXRnLXRyYW5zaXRpb24tZmFzdCk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uZmlsdGVyLXNlbGVjdDpob3ZlciB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4uZmlsdGVyLXNlbGVjdDpmb2N1cyB7XHJcblx0b3V0bGluZTogbm9uZTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi5maWx0ZXItdGFncy1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdGdhcDogMC41cmVtO1xyXG5cdHBhZGRpbmc6IDAuNXJlbSAwO1xyXG59XHJcblxyXG4uZmlsdGVyLXRhZyB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzLWZ1bGwpO1xyXG5cdGZvbnQtc2l6ZTogMC44NzVyZW07XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG59XHJcblxyXG4uZmlsdGVyLXRhZzpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi5maWx0ZXItdGFnLmlzLXNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4uZmlsdGVyLWRhdGUtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiAwLjc1cmVtO1xyXG59XHJcblxyXG4uZmlsdGVyLWRhdGUtZmllbGQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDAuNXJlbTtcclxufVxyXG5cclxuLmZpbHRlci1kYXRlLWZpZWxkIHNwYW4ge1xyXG5cdG1pbi13aWR0aDogNTBweDtcclxuXHRmb250LXNpemU6IDAuODc1cmVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLmZpbHRlci1kYXRlLWlucHV0IHtcclxuXHRmbGV4OiAxO1xyXG5cdHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZm9ybS1maWVsZCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cyk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDAuODc1cmVtO1xyXG5cdHRyYW5zaXRpb246IGFsbCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG59XHJcblxyXG4uZmlsdGVyLWRhdGUtaW5wdXQ6aG92ZXIge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLmZpbHRlci1kYXRlLWlucHV0OmZvY3VzIHtcclxuXHRvdXRsaW5lOiBub25lO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLmZpbHRlci1hY3Rpb24tYnV0dG9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDAuNzVyZW07XHJcblx0bWFyZ2luLXRvcDogMS41cmVtO1xyXG5cdHBhZGRpbmctdG9wOiAxLjVyZW07XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLmZpbHRlci1hY3Rpb24tYnV0dG9ucyBidXR0b24ge1xyXG5cdGZsZXg6IDE7XHJcbn1cclxuXHJcbi5wcmlvcml0eS1jb2xvci1kb3Qge1xyXG5cdHdpZHRoOiAxMnB4O1xyXG5cdGhlaWdodDogMTJweDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS10Zy1yYWRpdXMtZnVsbCk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT0gTG9hZGluZyBTdGF0ZXMgPT09PT09PT09PSAqL1xyXG4udGctdjItbG9hZGluZyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGdhcDogMXJlbTtcclxufVxyXG5cclxuLnRnLXYyLXNwaW5uZXIge1xyXG5cdHdpZHRoOiAzMnB4O1xyXG5cdGhlaWdodDogMzJweDtcclxuXHRib3JkZXI6IDNweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXRvcC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS10Zy1yYWRpdXMtZnVsbCk7XHJcblx0YW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcclxufVxyXG5cclxuQGtleWZyYW1lcyBzcGluIHtcclxuXHR0byB7XHJcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG5cdH1cclxufVxyXG5cclxuLnRnLXYyLWxvYWRpbmctdGV4dCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45cmVtO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09IEVtcHR5IFN0YXRlcyA9PT09PT09PT09ICovXHJcbi50Zy12Mi1lbXB0eS1zdGF0ZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdHBhZGRpbmc6IDJyZW07XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4udGctdjItZW1wdHktaWNvbiB7XHJcblx0d2lkdGg6IDY0cHg7XHJcblx0aGVpZ2h0OiA2NHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDFyZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdG9wYWNpdHk6IDAuNTtcclxufVxyXG5cclxuLnRnLXYyLWVtcHR5LXRpdGxlIHtcclxuXHRmb250LXNpemU6IDEuMjVyZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1ib3R0b206IDAuNXJlbTtcclxufVxyXG5cclxuLnRnLXYyLWVtcHR5LWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luLWJvdHRvbTogMS41cmVtO1xyXG5cdG1heC13aWR0aDogNDAwcHg7XHJcbn1cclxuXHJcbi50Zy12Mi1lbXB0eS1hY3Rpb24ge1xyXG5cdHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzLW1kKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGctdHJhbnNpdGlvbi1mYXN0KTtcclxufVxyXG5cclxuLnRnLXYyLWVtcHR5LWFjdGlvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tdGctc2hhZG93KTtcclxufVxyXG5cclxuLyogPT09PT09PT09PSBUb29sdGlwcyA9PT09PT09PT09ICovXHJcbi50Zy12Mi10b29sdGlwIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0cGFkZGluZzogMC41cmVtIDAuNzVyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzKTtcclxuXHRmb250LXNpemU6IDAuODc1cmVtO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXRnLXNoYWRvdy1sZyk7XHJcblx0ei1pbmRleDogOTk5OTtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpO1xyXG5cdHRyYW5zaXRpb246IGFsbCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG59XHJcblxyXG4udGctdjItdG9vbHRpcC5pcy12aXNpYmxlIHtcclxuXHRvcGFjaXR5OiAxO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxufVxyXG5cclxuLyogPT09PT09PT09PSBDYXJkcyA9PT09PT09PT09ICovXHJcbi50Zy12Mi1jYXJkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS10Zy1yYWRpdXMtbGcpO1xyXG5cdHBhZGRpbmc6IDEuMjVyZW07XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGctdHJhbnNpdGlvbi1iYXNlKTtcclxufVxyXG5cclxuLnRnLXYyLWNhcmQ6aG92ZXIge1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXRnLXNoYWRvdy1tZCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4udGctdjItY2FyZC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHRwYWRkaW5nLWJvdHRvbTogMC43NXJlbTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4udGctdjItY2FyZC10aXRsZSB7XHJcblx0Zm9udC1zaXplOiAxcmVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnRnLXYyLWNhcmQtYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDAuNXJlbTtcclxufVxyXG5cclxuLnRnLXYyLWNhcmQtYWN0aW9uIHtcclxuXHR3aWR0aDogMjhweDtcclxuXHRoZWlnaHQ6IDI4cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnRnLXYyLWNhcmQtYWN0aW9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09IEJ1dHRvbnMgPT09PT09PT09PSAqL1xyXG4udGctdjItYnV0dG9uIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGdhcDogMC41cmVtO1xyXG5cdHBhZGRpbmc6IDAuNjI1cmVtIDEuMjVyZW07XHJcblx0Zm9udC1zaXplOiAwLjg3NXJlbTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cy1tZCk7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGctdHJhbnNpdGlvbi1mYXN0KTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnRnLXYyLWJ1dHRvbjo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDUwJTtcclxuXHRsZWZ0OiA1MCU7XHJcblx0d2lkdGg6IDA7XHJcblx0aGVpZ2h0OiAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cy1mdWxsKTtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblx0dHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGctdHJhbnNpdGlvbi1zbG93KSxcclxuXHRoZWlnaHQgdmFyKC0tdGctdHJhbnNpdGlvbi1zbG93KTtcclxufVxyXG5cclxuLnRnLXYyLWJ1dHRvbjphY3RpdmU6OmJlZm9yZSB7XHJcblx0d2lkdGg6IDMwMHB4O1xyXG5cdGhlaWdodDogMzAwcHg7XHJcbn1cclxuXHJcbi50Zy12Mi1idXR0b24tcHJpbWFyeSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4udGctdjItYnV0dG9uLXByaW1hcnk6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXRnLXNoYWRvdyk7XHJcbn1cclxuXHJcbi50Zy12Mi1idXR0b24tc2Vjb25kYXJ5IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi50Zy12Mi1idXR0b24tc2Vjb25kYXJ5OmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi50Zy12Mi1idXR0b24tZ2hvc3Qge1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50Zy12Mi1idXR0b24tZ2hvc3Q6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGctdjItYnV0dG9uLWRhbmdlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG4udGctdjItYnV0dG9uLWRhbmdlcjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogI2RjMjYyNjtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tdGctc2hhZG93KTtcclxufVxyXG5cclxuLyogPT09PT09PT09PSBBbmltYXRpb25zID09PT09PT09PT0gKi9cclxuQGtleWZyYW1lcyBmYWRlSW4ge1xyXG5cdGZyb20ge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpO1xyXG5cdH1cclxuXHR0byB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG5cdH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZUluIHtcclxuXHRmcm9tIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG5cdH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZVVwIHtcclxuXHRmcm9tIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG5cdH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBwdWxzZSB7XHJcblx0MCUsXHJcblx0MTAwJSB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxuXHQ1MCUge1xyXG5cdFx0b3BhY2l0eTogMC41O1xyXG5cdH1cclxufVxyXG5cclxuLyogPT09PT09PT09PSBSZXNwb25zaXZlIERlc2lnbiA9PT09PT09PT09ICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuXHQudGFzay1saXN0LWNvbnRhaW5lcixcclxuXHQudGFzay10cmVlLWNvbnRhaW5lciB7XHJcblx0XHRwYWRkaW5nOiAxcmVtO1xyXG5cdH1cclxuXHJcblx0LnRnLXYyLWZpbHRlci1wYW5lbCB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdHJpZ2h0OiAtMTAwJTtcclxuXHR9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA2NDBweCkge1xyXG5cdC50YXNrLWxpc3QtaXRlbSB7XHJcblx0XHRwYWRkaW5nOiAwLjc1cmVtIDFyZW07XHJcblx0fVxyXG5cclxuXHQudGFzay10cmVlLXByb2plY3QtaGVhZGVyIHtcclxuXHRcdHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcclxuXHR9XHJcblxyXG5cdC50Zy12Mi1jYXJkIHtcclxuXHRcdHBhZGRpbmc6IDFyZW07XHJcblx0fVxyXG59XHJcblxyXG4vKiA9PT09PT09PT09IERhcmsgTW9kZSBBZGp1c3RtZW50cyA9PT09PT09PT09ICovXHJcbi50aGVtZS1kYXJrIHtcclxuXHQtLXRnLXNoYWRvdy1zbTogMCAxcHggMnB4IDAgcmdiKDAgMCAwIC8gMC4zKTtcclxuXHQtLXRnLXNoYWRvdzogMCAxcHggM3B4IDAgcmdiKDAgMCAwIC8gMC40KSwgMCAxcHggMnB4IC0xcHggcmdiKDAgMCAwIC8gMC4zKTtcclxuXHQtLXRnLXNoYWRvdy1tZDogMCA0cHggNnB4IC0xcHggcmdiKDAgMCAwIC8gMC40KSwgMCAycHggNHB4IC0ycHggcmdiKDAgMCAwIC8gMC4zKTtcclxuXHQtLXRnLXNoYWRvdy1sZzogMCAxMHB4IDE1cHggLTNweCByZ2IoMCAwIDAgLyAwLjQpLCAwIDRweCA2cHggLTRweCByZ2IoMCAwIDAgLyAwLjMpO1xyXG5cdC0tdGctc2hhZG93LXhsOiAwIDIwcHggMjVweCAtNXB4IHJnYigwIDAgMCAvIDAuNCksIDAgOHB4IDEwcHggLTZweCByZ2IoMCAwIDAgLyAwLjMpO1xyXG59XHJcblxyXG4udGhlbWUtZGFyayAudGctdjItY2FyZDpob3ZlcixcclxuLnRoZW1lLWRhcmsgLnRhc2stbGlzdC1pdGVtOmhvdmVyLFxyXG4udGhlbWUtZGFyayAudGFzay10cmVlLXByb2plY3Q6aG92ZXIge1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDFweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpLFxyXG5cdHZhcigtLXRnLXNoYWRvdy1tZCk7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT0gUHJvZ3Jlc3MgQmFycyA9PT09PT09PT09ICovXHJcbi50Zy12Mi1wcm9ncmVzcyB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiA2cHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cy1mdWxsKTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdG1hcmdpbjogMC41cmVtIDA7XHJcbn1cclxuXHJcbi50Zy12Mi1wcm9ncmVzcy1iYXIge1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cy1mdWxsKTtcclxuXHR0cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10Zy10cmFuc2l0aW9uLXNsb3cpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4udGctdjItcHJvZ3Jlc3MtYmFyOjphZnRlciB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0cmlnaHQ6IDA7XHJcblx0Ym90dG9tOiAwO1xyXG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuXHRcdDkwZGVnLFxyXG5cdFx0dHJhbnNwYXJlbnQsXHJcblx0XHRyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyksXHJcblx0XHR0cmFuc3BhcmVudFxyXG5cdCk7XHJcblx0YW5pbWF0aW9uOiBzaGltbWVyIDJzIGluZmluaXRlO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNoaW1tZXIge1xyXG5cdDAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG5cdH1cclxufVxyXG5cclxuLyogPT09PT09PT09PSBUYWdzID09PT09PT09PT0gKi9cclxuLnRnLXYyLXRhZyB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAwLjI1cmVtIDAuNjI1cmVtO1xyXG5cdGZvbnQtc2l6ZTogMC43NXJlbTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cy1mdWxsKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0bWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xyXG5cdHRyYW5zaXRpb246IGFsbCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG59XHJcblxyXG4udGctdjItdGFnOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi50Zy12Mi10YWctcHJpbWFyeSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLnRnLXYyLXRhZy1zdWNjZXNzIHtcclxuXHRiYWNrZ3JvdW5kOiAjMTBiOTgxO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxuXHRib3JkZXItY29sb3I6ICMxMGI5ODE7XHJcbn1cclxuXHJcbi50Zy12Mi10YWctd2FybmluZyB7XHJcblx0YmFja2dyb3VuZDogI2Y1OWUwYjtcclxuXHRjb2xvcjogd2hpdGU7XHJcblx0Ym9yZGVyLWNvbG9yOiAjZjU5ZTBiO1xyXG59XHJcblxyXG4udGctdjItdGFnLWRhbmdlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcbn1cclxuXHJcbi53b3Jrc3BhY2UtbmFtZS13aXRoLWljb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuIiwgIi8qIFRhc2sgR2VuaXVzIFYyIENvbnRlbnQgSGVhZGVyIFN0eWxlcyAqL1xyXG5cclxuLyogPT09IENvbnRlbnQgV3JhcHBlciA9PT0gKi9cclxuLnRnLXYyLWNvbnRlbnQtd3JhcHBlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vKiA9PT0gQ29udGVudCBIZWFkZXIgPT09ICovXHJcbi52Mi1jb250ZW50LWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRwYWRkaW5nOiAxMnB4IDIwcHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG1pbi1oZWlnaHQ6IDU2cHg7XHJcblx0Z2FwOiAxNnB4O1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4udjItY29udGVudC1oZWFkZXIgLmhlYWRlci1sZWZ0LXNlY3Rpb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDEycHg7XHJcblx0bWluLXdpZHRoOiAyMDBweDtcclxufVxyXG5cclxuLnYyLWNvbnRlbnQtaGVhZGVyIC5jb250ZW50LXRpdGxlIHtcclxuXHRmb250LXNpemU6IDEuMjVyZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi52Mi1jb250ZW50LWhlYWRlciAudGFzay1jb3VudCB7XHJcblx0Zm9udC1zaXplOiAwLjg3NXJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0cGFkZGluZzogMnB4IDhweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi52Mi1jb250ZW50LWhlYWRlciAuaGVhZGVyLWNlbnRlci1zZWN0aW9uIHtcclxuXHRmbGV4OiAxO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0bWF4LXdpZHRoOiA1MDBweDtcclxuXHRtYXJnaW46IDAgYXV0bztcclxufVxyXG5cclxuLnYyLWNvbnRlbnQtaGVhZGVyIC5jb250ZW50LWZpbHRlciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi52Mi1jb250ZW50LWhlYWRlciAuZmlsdGVyLWlucHV0IHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktYWx0KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGZvbnQtc2l6ZTogMC44NzVyZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udjItY29udGVudC1oZWFkZXIgLmZpbHRlci1pbnB1dDo6cGxhY2Vob2xkZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnYyLWNvbnRlbnQtaGVhZGVyIC5maWx0ZXItaW5wdXQ6Zm9jdXMge1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjIpO1xyXG59XHJcblxyXG4udjItY29udGVudC1oZWFkZXIgLmhlYWRlci1yaWdodC1zZWN0aW9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA4cHg7XHJcbn1cclxuXHJcbi52Mi1jb250ZW50LWhlYWRlciAudmlldy10b2dnbGUtYnRuLFxyXG4udjItY29udGVudC1oZWFkZXIgLnNvcnQtYnV0dG9uLFxyXG4udjItY29udGVudC1oZWFkZXIgLmZpbHRlci1idXR0b24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMzJweDtcclxuXHRoZWlnaHQ6IDMycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnYyLWNvbnRlbnQtaGVhZGVyIC52aWV3LXRvZ2dsZS1idG46aG92ZXIsXHJcbi52Mi1jb250ZW50LWhlYWRlciAuc29ydC1idXR0b246aG92ZXIsXHJcbi52Mi1jb250ZW50LWhlYWRlciAuZmlsdGVyLWJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnYyLWNvbnRlbnQtaGVhZGVyIC52aWV3LXRvZ2dsZS1idG46YWN0aXZlLFxyXG4udjItY29udGVudC1oZWFkZXIgLnNvcnQtYnV0dG9uOmFjdGl2ZSxcclxuLnYyLWNvbnRlbnQtaGVhZGVyIC5maWx0ZXItYnV0dG9uOmFjdGl2ZSB7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcclxufVxyXG5cclxuLnYyLWNvbnRlbnQtaGVhZGVyIC52aWV3LXRvZ2dsZS1idG4gc3ZnLFxyXG4udjItY29udGVudC1oZWFkZXIgLnNvcnQtYnV0dG9uIHN2ZyxcclxuLnYyLWNvbnRlbnQtaGVhZGVyIC5maWx0ZXItYnV0dG9uIHN2ZyB7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG59XHJcblxyXG4vKiA9PT0gQ29udGVudCBBcmVhICh3aXRoIGhlYWRlcikgPT09ICovXHJcbi50Zy12Mi1jb250ZW50IHtcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxufVxyXG5cclxuLyogPT09IFJlc3BvbnNpdmUgYWRqdXN0bWVudHMgPT09ICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC52Mi1jb250ZW50LWhlYWRlciB7XHJcblx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRwYWRkaW5nOiA4cHggMTJweDtcclxuXHR9XHJcblxyXG5cdC52Mi1jb250ZW50LWhlYWRlciAuaGVhZGVyLWxlZnQtc2VjdGlvbiB7XHJcblx0XHRtaW4td2lkdGg6IGF1dG87XHJcblx0fVxyXG5cclxuXHQudjItY29udGVudC1oZWFkZXIgLmhlYWRlci1jZW50ZXItc2VjdGlvbiB7XHJcblx0XHRvcmRlcjogMztcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWF4LXdpZHRoOiBub25lO1xyXG5cdFx0bWFyZ2luLXRvcDogOHB4O1xyXG5cdH1cclxuXHJcblx0LnYyLWNvbnRlbnQtaGVhZGVyIC5jb250ZW50LXRpdGxlIHtcclxuXHRcdGZvbnQtc2l6ZTogMS4xcmVtO1xyXG5cdH1cclxufVxyXG4iLCAiLyogUHJvamVjdCBQb3BvdmVyIFN0eWxlcyAqL1xyXG4udjItcHJvamVjdC1wb3BvdmVyLWNvbnRhaW5lciB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHotaW5kZXg6IDEwMDA7XHJcbn1cclxuXHJcbi52Mi1wcm9qZWN0LXBvcG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRib3gtc2hhZG93OiAwIDRweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcblx0bWluLXdpZHRoOiAzMjBweDtcclxuXHRtYXgtd2lkdGg6IDQwMHB4O1xyXG5cdGFuaW1hdGlvbjogcG9wb3Zlci1mYWRlLWluIDAuMnMgZWFzZS1vdXQ7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcG9wb3Zlci1mYWRlLWluIHtcclxuXHRmcm9tIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7XHJcblx0fVxyXG5cdHRvIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcblx0fVxyXG59XHJcblxyXG4udjItcG9wb3Zlci1hcnJvdyxcclxuLnYyLXBvcG92ZXItYXJyb3c6OmJlZm9yZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHdpZHRoOiAxMHB4O1xyXG5cdGhlaWdodDogMTBweDtcclxuXHRiYWNrZ3JvdW5kOiBpbmhlcml0O1xyXG59XHJcblxyXG4udjItcG9wb3Zlci1hcnJvdyB7XHJcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xyXG59XHJcblxyXG4udjItcG9wb3Zlci1hcnJvdzo6YmVmb3JlIHtcclxuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0dHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4vKiBBcnJvdyBwb3NpdGlvbmluZyBmb3IgZGlmZmVyZW50IHBsYWNlbWVudHMgKi9cclxuLnYyLXByb2plY3QtcG9wb3ZlcltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwidG9wXCJdIC52Mi1wb3BvdmVyLWFycm93IHtcclxuXHRib3R0b206IC01cHg7XHJcbn1cclxuXHJcbi52Mi1wcm9qZWN0LXBvcG92ZXJbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInRvcFwiXSAudjItcG9wb3Zlci1hcnJvdzo6YmVmb3JlIHtcclxuXHRib3JkZXItdG9wOiBub25lO1xyXG5cdGJvcmRlci1sZWZ0OiBub25lO1xyXG59XHJcblxyXG4udjItcHJvamVjdC1wb3BvdmVyW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJib3R0b21cIl0gLnYyLXBvcG92ZXItYXJyb3cge1xyXG5cdHRvcDogLTVweDtcclxufVxyXG5cclxuLnYyLXByb2plY3QtcG9wb3ZlcltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwiYm90dG9tXCJdIC52Mi1wb3BvdmVyLWFycm93OjpiZWZvcmUge1xyXG5cdGJvcmRlci1yaWdodDogbm9uZTtcclxuXHRib3JkZXItYm90dG9tOiBub25lO1xyXG59XHJcblxyXG4udjItcHJvamVjdC1wb3BvdmVyW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJsZWZ0XCJdIC52Mi1wb3BvdmVyLWFycm93IHtcclxuXHRyaWdodDogLTVweDtcclxufVxyXG5cclxuLnYyLXByb2plY3QtcG9wb3ZlcltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwibGVmdFwiXSAudjItcG9wb3Zlci1hcnJvdzo6YmVmb3JlIHtcclxuXHRib3JkZXItYm90dG9tOiBub25lO1xyXG5cdGJvcmRlci1sZWZ0OiBub25lO1xyXG59XHJcblxyXG4udjItcHJvamVjdC1wb3BvdmVyW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJyaWdodFwiXSAudjItcG9wb3Zlci1hcnJvdyB7XHJcblx0bGVmdDogLTVweDtcclxufVxyXG5cclxuLnYyLXByb2plY3QtcG9wb3ZlcltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwicmlnaHRcIl0gLnYyLXBvcG92ZXItYXJyb3c6OmJlZm9yZSB7XHJcblx0Ym9yZGVyLXRvcDogbm9uZTtcclxuXHRib3JkZXItcmlnaHQ6IG5vbmU7XHJcbn1cclxuXHJcbi52Mi1wb3BvdmVyLWNvbnRlbnQge1xyXG5cdHBhZGRpbmc6IDE2cHg7XHJcbn1cclxuXHJcbi52Mi1wb3BvdmVyLWhlYWRlciB7XHJcblx0bWFyZ2luLWJvdHRvbTogMTZweDtcclxuXHRwYWRkaW5nLWJvdHRvbTogMTJweDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4udjItcG9wb3Zlci1oZWFkZXIgaDMge1xyXG5cdG1hcmdpbjogMDtcclxuXHRmb250LXNpemU6IDE2cHg7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udjItcG9wb3Zlci1zZWN0aW9uIHtcclxuXHRtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG59XHJcblxyXG4udjItcG9wb3Zlci1zZWN0aW9uIGxhYmVsIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRtYXJnaW4tYm90dG9tOiA4cHg7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xyXG59XHJcblxyXG4udjItcG9wb3Zlci1pbnB1dCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0cGFkZGluZzogOHB4IDEycHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzO1xyXG59XHJcblxyXG4udjItcG9wb3Zlci1pbnB1dDpmb2N1cyB7XHJcblx0b3V0bGluZTogbm9uZTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi52Mi1wb3BvdmVyLWlucHV0LmlzLWVycm9yIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGFuaW1hdGlvbjogc2hha2UgMC4zcztcclxufVxyXG5cclxuQGtleWZyYW1lcyBzaGFrZSB7XHJcblx0MCUsXHJcblx0MTAwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcblx0fVxyXG5cdDI1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTRweCk7XHJcblx0fVxyXG5cdDc1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTtcclxuXHR9XHJcbn1cclxuXHJcbi52Mi1jb2xvci1ncmlkIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDUsIDFmcik7XHJcblx0Z2FwOiA4cHg7XHJcbn1cclxuXHJcbi52Mi1jb2xvci1idXR0b24ge1xyXG5cdHdpZHRoOiAzNnB4O1xyXG5cdGhlaWdodDogMzZweDtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzO1xyXG5cdGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLnYyLWNvbG9yLWJ1dHRvbjpob3ZlciB7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xyXG59XHJcblxyXG4udjItY29sb3ItYnV0dG9uLmlzLXNlbGVjdGVkIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi52Mi1jb2xvci1idXR0b24uaXMtc2VsZWN0ZWQ6OmFmdGVyIHtcclxuXHRjb250ZW50OiBcIlx1MjcxM1wiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDUwJTtcclxuXHRsZWZ0OiA1MCU7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG5cdGZvbnQtc2l6ZTogMTZweDtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHR0ZXh0LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcclxufVxyXG5cclxuLnYyLXBvcG92ZXItYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdGdhcDogOHB4O1xyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0cGFkZGluZy10b3A6IDE2cHg7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnYyLWJ1dHRvbiB7XHJcblx0cGFkZGluZzogNnB4IDE2cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycztcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0b3V0bGluZTogbm9uZTtcclxufVxyXG5cclxuLnYyLWJ1dHRvbi1wcmltYXJ5IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi52Mi1idXR0b24tcHJpbWFyeTpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLnYyLWJ1dHRvbi1zZWNvbmRhcnkge1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi52Mi1idXR0b24tc2Vjb25kYXJ5OmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4vKiBNb2RhbCBTdHlsZXMgdXNpbmcgT2JzaWRpYW4gbmF0aXZlIE1vZGFsICovXHJcbi52Mi1wcm9qZWN0LW1vZGFsIHtcclxuXHQvKiBNb2RhbCB3aWxsIHVzZSBPYnNpZGlhbidzIGRlZmF1bHQgc3R5bGluZyAqL1xyXG59XHJcblxyXG4udjItcHJvamVjdC1tb2RhbCAubW9kYWwtY29udGVudCBoMiB7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRmb250LXNpemU6IDIwcHg7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udjItbW9kYWwtc2VjdGlvbiB7XHJcblx0bWFyZ2luLWJvdHRvbTogMjRweDtcclxufVxyXG5cclxuLnYyLW1vZGFsLXNlY3Rpb24gbGFiZWwge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi52Mi1tb2RhbC1pbnB1dCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0cGFkZGluZzogMTBweCAxNHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRmb250LXNpemU6IDE2cHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycztcclxufVxyXG5cclxuLnYyLW1vZGFsLWlucHV0OmZvY3VzIHtcclxuXHRvdXRsaW5lOiBub25lO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAzcHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLnYyLW1vZGFsLWlucHV0LmlzLWVycm9yIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGFuaW1hdGlvbjogc2hha2UgMC4zcztcclxufVxyXG5cclxuLnYyLW1vZGFsLWNvbG9yLWdyaWQge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTtcclxuXHRnYXA6IDEycHg7XHJcbn1cclxuXHJcbi52Mi1tb2RhbC1jb2xvci1idXR0b24ge1xyXG5cdHdpZHRoOiA0OHB4O1xyXG5cdGhlaWdodDogNDhweDtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzO1xyXG5cdGJvcmRlcjogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLnYyLW1vZGFsLWNvbG9yLWJ1dHRvbjpob3ZlciB7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xyXG59XHJcblxyXG4udjItbW9kYWwtY29sb3ItYnV0dG9uLmlzLXNlbGVjdGVkIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgM3B4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi52Mi1tb2RhbC1jb2xvci1idXR0b24uaXMtc2VsZWN0ZWQ6OmFmdGVyIHtcclxuXHRjb250ZW50OiBcIlx1MjcxM1wiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDUwJTtcclxuXHRsZWZ0OiA1MCU7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG5cdGZvbnQtc2l6ZTogMjBweDtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHR0ZXh0LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC40KTtcclxufVxyXG5cclxuLnYyLW1vZGFsLXByZXZpZXcge1xyXG5cdHBhZGRpbmc6IDEycHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxufVxyXG5cclxuLnYyLXByb2plY3QtaXRlbS1wcmV2aWV3IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAxMnB4O1xyXG5cdHBhZGRpbmc6IDhweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxufVxyXG5cclxuLnYyLXByb2plY3QtaXRlbS1wcmV2aWV3IC52Mi1wcm9qZWN0LWNvbG9yIHtcclxuXHR3aWR0aDogOHB4O1xyXG5cdGhlaWdodDogMzJweDtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi52Mi1wcm9qZWN0LWl0ZW0tcHJldmlldyAudjItcHJvamVjdC1uYW1lIHtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udjItbW9kYWwtZm9vdGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0Z2FwOiAxMnB4O1xyXG5cdHBhZGRpbmc6IDIwcHg7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnYyLW1vZGFsLWZvb3RlciAudjItYnV0dG9uIHtcclxuXHRwYWRkaW5nOiAxMHB4IDI0cHg7XHJcblx0Zm9udC1zaXplOiAxNXB4O1xyXG59XHJcbiJdLAogICJtYXBwaW5ncyI6ICI7QUFDQSxDQUFDO0FBQ0EsV0FBUztBQUNULFlBQVU7QUFDVixlQUFhO0FBQ2IsaUJBQWU7QUFDaEI7QUFFQSxDQUFDLGdCQUFnQixDQVBoQjtBQVFBLFdBQVM7QUFDVjtBQUVBLENBQUMsZUFBZSxDQVhmO0FBWUEsV0FBUztBQUNULFlBQVU7QUFDVixlQUFhO0FBQ2IsaUJBQWU7QUFDaEI7QUFFQSxDQUFDO0FBQ0EsVUFBUTtBQUNSLFlBQVU7QUFDWDtBQUdBLENBQUM7QUFDQSxvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxvQkFBa0IsSUFBSTtBQUN2QjtBQUdBLENBQUM7QUFDQSxvQkFBa0IsSUFBSTtBQUN0QixXQUFTO0FBQ1Y7QUFFQSxDQUFDO0FBQ0Esb0JBQWtCLElBQUk7QUFDdEIsV0FBUztBQUNULFlBQVU7QUFDVixPQUFLO0FBQ0wsVUFBUTtBQUNUO0FBRUEsQ0FBQztBQUNBLG9CQUFrQixJQUFJO0FBQ3RCLFdBQVM7QUFDVCxZQUFVO0FBQ1YsT0FBSztBQUNMLFVBQVE7QUFDVDtBQUVBLENBQUM7QUFDQSxvQkFBa0IsSUFBSTtBQUN0QixXQUFTO0FBQ1QsWUFBVTtBQUNWLE9BQUs7QUFDTCxVQUFRO0FBQ1Q7QUFFQSxDQUFDO0FBQ0EsU0FBTztBQUNQLG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlO0FBQ2Ysa0JBQWdCO0FBQ2hCLG1CQUFpQjtBQUNqQixlQUFhO0FBQ2IsU0FBTztBQUNQLFlBQVU7QUFDVixZQUFVO0FBQ1g7QUFFQSxDQVpDLDhCQVk4QixDQUFDO0FBQy9CLFdBQVM7QUFDVjtBQUdBLENBL0ZDLHFCQStGcUIsQ0FBQztBQUN0QixXQUFTO0FBQ1QsZ0JBQWM7QUFDZjtBQUVBLENBcEdDLHFCQW9HcUIsQ0FBQztBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBeEdDLHFCQXdHcUIsQ0FBQztBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBNUdDLHFCQTRHcUIsQ0FBQztBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBaEhDLHFCQWdIcUIsQ0FBQztBQUN0QixTQUFPLElBQUk7QUFDWjtBQUdBLENBckhDLG9CQXFIb0IsQ0FBQztBQUNyQixXQUFTO0FBQ1QsZUFBYTtBQUNkO0FBRUEsQ0EvR0MsZUFnSEEsQ0EzSEEsb0JBMkhxQixDQU5BLFlBT3JCLENBOUNBO0FBK0NELENBbEhDLGVBa0hlLENBN0hmLG9CQTZIb0MsQ0FSZixZQVE0QixDQUFDO0FBQ2xELGlCQUFlO0FBQ2hCO0FBRUEsQ0FqSUMsb0JBaUlvQixDQVpDLFlBWVksQ0FuRGpDO0FBb0RBLGlCQUFlO0FBQ2YsU0FBTztBQUNSO0FBRUEsQ0F0SUMsb0JBc0lvQixDQWpCQyxZQWlCWSxDQVRpQjtBQVVsRCxhQUFXO0FBQ1gsZUFBYTtBQUNkO0FBR0EsQ0FBQyxXQUFXLENBM0ZYO0FBNEZBLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FKQyxXQUlXLENBMUZYO0FBMkZBLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FSQyxXQVFXLENBdEZYO0FBdUZBLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FaQyxXQVlXLENBbEZYO0FBbUZBLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUjs7O0FDN0pBLENBQUM7QUFDQSxXQUFTO0FBQ1QsVUFBUSxJQUFJO0FBQ1osV0FBUyxJQUFJO0FBQ2IsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDZDtBQUdBLENBQUM7QUFDRCxDQUFDO0FBQ0EsVUFBUTtBQUNSLG1CQUFpQjtBQUNqQixTQUFPLElBQUk7QUFDWjtBQUVBLENBUEMsZ0JBT2dCO0FBQ2pCLENBUEMsaUJBT2lCO0FBQ2pCLFNBQU8sSUFBSTtBQUNaOzs7QUNyQkEsQ0FBQztBQUNBLFVBQVEsS0FBSztBQUNkO0FBRUEsQ0FBQztBQUNBLFVBQVEsS0FBSyxFQUFFLEtBQUs7QUFDcEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsVUFBUSxLQUFLLEVBQUUsSUFBSTtBQUNuQixTQUFPLElBQUk7QUFDWCxhQUFXO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLFdBQVM7QUFDVCxpQkFBZTtBQUNmLFVBQVEsS0FBSyxFQUFFLEtBQUs7QUFDcEIsZUFBYSxJQUFJLE1BQU0sSUFBSTtBQUM1QjtBQUVBLENBQUM7QUFDQSxVQUFRLEtBQUs7QUFDYixXQUFTO0FBQ1QsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNoQjtBQUVBLENBQUM7QUFDQSxTQUFPLElBQUk7QUFDWCxhQUFXO0FBQ1gsY0FBWTtBQUNaLGVBQWE7QUFDZDtBQUVBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1gsV0FBUztBQUNULGlCQUFlO0FBQ2YsY0FBWTtBQUNaLGFBQVc7QUFDWjtBQUdBLENBQUM7QUFDQSxVQUFRLEtBQUs7QUFDYixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLGlCQUFlO0FBQ2hCO0FBRUEsQ0FKQyxlQUllLENBQUM7QUFDaEIsVUFBUTtBQUNSLFdBQVM7QUFDVCxpQkFBZTtBQUNoQjtBQUVBLENBVkMsZUFVZSxDQUFDO0FBQ2hCLGdCQUFjO0FBQ2Y7QUFFQSxDQWRDLGVBY2UsQ0FBQztBQUNoQixXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixhQUFXO0FBQ1o7QUFFQSxDQXJCQyxlQXFCZSxDQVBDLHFCQU9xQixLQUFLLENBQUM7QUFDM0MsZ0JBQWM7QUFDZjtBQUVBLENBekJDLGVBeUJlLENBQUM7QUFDaEIsV0FBUztBQUNULFNBQU87QUFDUCxVQUFRO0FBQ1IsaUJBQWU7QUFDZixlQUFhO0FBQ2IsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDbEI7QUFFQSxDQXBDQyxlQW9DZSxDQXRCQyxxQkFzQnFCO0FBQ3JDLGVBQWE7QUFDZDtBQUVBLENBQUM7QUFDQSx1QkFBcUIsS0FBSyxJQUFJLGlCQUFpQixFQUFFO0FBQ2xEO0FBRUEsQ0FKQyxxQkFJcUIsQ0FBQztBQUN0Qix3QkFBc0IsSUFBSTtBQUMxQixzQkFBb0IsSUFBSTtBQUV4QixtQkFBaUI7QUFFakIsVUFBUTtBQUNUO0FBR0EsQ0E3R0M7QUE4R0EsVUFBUSxLQUFLO0FBQ2Q7QUFFQSxDQTdHQztBQThHQSxVQUFRLEtBQUssRUFBRSxLQUFLO0FBQ3BCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0E3R0M7QUE4R0EsVUFBUSxLQUFLLEVBQUUsSUFBSTtBQUNuQixTQUFPLElBQUk7QUFDWCxhQUFXO0FBQ1o7QUFFQSxDQTdHQztBQThHQSxjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1gsV0FBUztBQUNULGlCQUFlO0FBQ2YsVUFBUSxLQUFLLEVBQUUsS0FBSztBQUNwQixlQUFhLElBQUksTUFBTSxJQUFJO0FBQzVCO0FBRUEsQ0E3R0M7QUE4R0EsVUFBUSxLQUFLO0FBQ2IsV0FBUztBQUNULFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWU7QUFDaEI7QUFFQSxDQTdHQztBQThHQSxTQUFPLElBQUk7QUFDWCxhQUFXO0FBQ1gsY0FBWTtBQUNaLGVBQWE7QUFDZDtBQUVBLENBN0dDO0FBOEdBLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWCxXQUFTO0FBQ1QsaUJBQWU7QUFDZixjQUFZO0FBQ1osYUFBVztBQUNaO0FBR0EsQ0E3R0M7QUE4R0EsVUFBUSxLQUFLO0FBQ2IsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLFdBQVM7QUFDVjtBQUVBLENBN0dDO0FBOEdBLGlCQUFlO0FBQ2hCO0FBRUEsQ0FqSEMsZUFpSGUsQ0E3R0M7QUE4R2hCLFVBQVE7QUFDUixXQUFTO0FBQ1QsaUJBQWU7QUFDaEI7QUFFQSxDQXZIQyxlQXVIZSxDQTdHQztBQThHaEIsZ0JBQWM7QUFDZjtBQUVBLENBM0hDLGVBMkhlLENBN0dDO0FBOEdoQixXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixhQUFXO0FBQ1o7QUFFQSxDQWxJQyxlQWtJZSxDQXBIQyxxQkFvSHFCLEtBQUssQ0FBQztBQUMzQyxnQkFBYztBQUNmO0FBRUEsQ0F0SUMsZUFzSWUsQ0E3R0M7QUE4R2hCLFdBQVM7QUFDVCxTQUFPO0FBQ1AsVUFBUTtBQUNSLGlCQUFlO0FBQ2YsZUFBYTtBQUNiLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2xCO0FBRUEsQ0FqSkMsZUFpSmUsQ0FuSUMscUJBbUlxQjtBQUNyQyxlQUFhO0FBQ2Q7QUFFQSxDQTdHQztBQThHQSx1QkFBcUIsS0FBSyxJQUFJLGlCQUFpQixFQUFFO0FBQ2xEO0FBRUEsQ0FqSEMscUJBaUhxQixDQTdHQztBQThHdEIsd0JBQXNCLElBQUk7QUFDMUIsc0JBQW9CLElBQUk7QUFFeEIsbUJBQWlCO0FBRWpCLFVBQVE7QUFDVDtBQUdBLENBQUMscUJBQXFCLENBQUM7QUFDdEIsY0FBWSxJQUFJO0FBQ2hCLGlCQUFlLElBQUk7QUFDbkIsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLLElBQUk7QUFDVjtBQUdBLENBVEMscUJBU3FCLENBQUM7QUFDdEIsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLLElBQUk7QUFDVjtBQUdBLENBaEJDLHFCQWdCcUIsQ0FBQztBQUN0QixhQUFXLElBQUk7QUFDZixlQUFhLElBQUk7QUFDakIsU0FBTyxJQUFJO0FBQ1gsa0JBQWdCO0FBQ2hCLGtCQUFnQjtBQUNoQixXQUFTLEVBQUUsSUFBSTtBQUNmLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLGtCQUFnQixJQUFJO0FBQ3JCO0FBR0EsQ0E1QkMscUJBNEJxQixDQUFDO0FBQ3RCLFdBQVM7QUFDVCx5QkFBdUIsT0FBTyxDQUFDLEVBQUUsT0FBTyxLQUFLLEVBQUU7QUFDL0MsT0FBSyxJQUFJO0FBQ1Y7QUFFQSxPQUFPLENBQUMsU0FBUyxFQUFFO0FBQ2xCLEdBbkNBLHFCQW1Dc0IsQ0FQQTtBQVFyQiwyQkFBdUIsT0FBTyxDQUFDLEVBQUUsT0FBTyxLQUFLLEVBQUU7QUFDaEQ7QUFDRDtBQUVBLE9BQU8sQ0FBQyxTQUFTLEVBQUU7QUFDbEIsR0F6Q0EscUJBeUNzQixDQWJBO0FBY3JCLDJCQUF1QjtBQUN4QjtBQUNEO0FBR0EsQ0EvQ0MscUJBK0NxQixDQUFDO0FBQ3RCLFdBQVM7QUFDVCx5QkFBdUIsT0FBTyxDQUFDLEVBQUU7QUFDakMsa0JBQWdCLElBQUk7QUFDcEIsY0FBWSxJQUFJO0FBQ2hCLGlCQUFlLElBQUk7QUFDbkIsVUFBUTtBQUNSLE9BQUssSUFBSTtBQUNWO0FBRUEsT0FBTyxDQUFDLFNBQVMsRUFBRTtBQUNsQixHQTFEQSxxQkEwRHNCLENBWEE7QUFZckIsMkJBQXVCLE9BQU8sQ0FBQyxFQUFFO0FBQ2xDO0FBQ0Q7QUFFQSxDQS9EQyxxQkErRHFCLENBQUM7QUFDdEIsV0FBUyxJQUFJLFlBQVksSUFBSTtBQUM3QixpQkFBZSxJQUFJO0FBQ25CLFVBQVE7QUFDUixXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUssSUFBSTtBQUNULGNBQVksSUFBSTtBQUNoQixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGNBQVksSUFBSTtBQUNoQixZQUFVO0FBQ1YsWUFBVTtBQUNWLGNBQVksSUFBSSxLQUFLO0FBQ3RCO0FBRUEsQ0E5RUMscUJBOEVxQixDQWZDLFlBZVk7QUFDbEMsV0FBUztBQUNULFlBQVU7QUFDVixPQUFLO0FBQ0wsU0FBTztBQUNQLFNBQU87QUFDUCxVQUFRO0FBQ1Isb0JBQWtCLElBQUk7QUFDdEIsYUFBVyxRQUFRO0FBQ25CLFdBQVM7QUFDVCxXQUFTO0FBQ1QsY0FBWSxJQUFJLEtBQUs7QUFDckIsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBN0ZDLHFCQTZGcUIsQ0E5QkMsWUE4QlksTUFBTTtBQUN4QyxhQUFXLFFBQVE7QUFDbkIsV0FBUztBQUNWO0FBRUEsQ0FsR0MscUJBa0dxQixDQUFDLG1CQUFtQjtBQUN6QyxvQkFBa0IsSUFBSTtBQUN0QixXQUFTO0FBQ1Y7QUFHQSxDQXhHQyxxQkF3R3FCLENBQUM7QUFDdkIsQ0F6R0MscUJBeUdxQixDQTFDQyxhQTBDYTtBQUNwQyxDQTFHQyxxQkEwR3FCLENBQUM7QUFDdEIsWUFBVTtBQUNWLFdBQVM7QUFDVjtBQUdBLENBaEhDLHFCQWdIcUIsQ0FwRkMsdUJBb0Z1QixDQVJ2QjtBQVN0QixXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixTQUFPLElBQUk7QUFDWCxVQUFRLElBQUk7QUFDWixlQUFhO0FBQ2Q7QUFFQSxDQXpIQyxxQkF5SHFCLENBN0ZDLHVCQTZGdUIsQ0FqQnZCLGtCQWlCMEM7QUFDaEUsU0FBTyxJQUFJO0FBQ1gsVUFBUSxJQUFJO0FBQ2I7QUFHQSxDQS9IQyxxQkErSHFCLENBbkdDLHVCQW1HdUIsQ0FyQnZCO0FBc0J0QixhQUFXLElBQUk7QUFDZixlQUFhLElBQUk7QUFDakIsUUFBTTtBQUNOLGNBQVk7QUFDYjtBQUdBLENBdklDLHFCQXVJcUIsQ0EzR0MsdUJBMkd1QixDQXhFdkIsWUF3RW9DO0FBQzFELGNBQVksSUFBSTtBQUNoQixnQkFBYyxJQUFJO0FBQ2xCLGFBQVcsV0FBVztBQUN0QixjQUFZLElBQUk7QUFDakI7QUFFQSxDQTlJQyxxQkE4SXFCLENBbEhDLHVCQWtIdUIsQ0E1Q3ZCO0FBNkN0QixjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1gsZ0JBQWMsSUFBSTtBQUNsQixjQUFZLElBQUk7QUFDaEIsZUFBYSxJQUFJO0FBQ2xCO0FBRUEsQ0F0SkMscUJBc0pxQixDQTFIQyx1QkEwSHVCLENBcER2QixtQkFvRDJDO0FBQ2pFLGNBQVksSUFBSTtBQUNoQixnQkFBYyxJQUFJO0FBQ2xCLGFBQVcsV0FBVztBQUN2QjtBQUdBLENBN0pDLHFCQTZKcUIsQ0E5RkMsWUE4Rlk7QUFDbEMsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQWpLQyxxQkFpS3FCLENBL0RDO0FBZ0V0QixvQkFBa0IsSUFBSTtBQUN0QixlQUFhO0FBQ2Q7QUFFQSxDQXRLQyxxQkFzS3FCLENBQUM7QUFDdEIsWUFBVTtBQUNYO0FBRUEsQ0ExS0MscUJBMEtxQixDQUFDO0FBQ3RCLFdBQVM7QUFDVjtBQUVBLENBOUtDLHFCQThLcUIsQ0FBQztBQUN0QixXQUFTO0FBQ1Y7QUFFQSxDQWxMQyxxQkFrTHFCLENBQUM7QUFDdEIsV0FBUztBQUNULGtCQUFnQjtBQUNoQixlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLGNBQVksSUFBSTtBQUNoQixpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0EzTEMscUJBMkxxQixDQVRDLDRCQVM0QixDQUFDO0FBQ25ELFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLE9BQUs7QUFDTCxhQUFXLElBQUk7QUFDaEI7QUFFQSxDQW5NQyxxQkFtTXFCLENBakJDLDRCQWlCNEIsQ0FBQztBQUNuRCxlQUFhO0FBRWIsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDbEI7QUFHQSxDQTVNQyxxQkE0TXFCLENBN0lDLFlBNklZLENBQUM7QUFDbkMsV0FBUztBQUNWO0FBR0EsQ0FqTkMscUJBaU5xQixDQWpOQztBQWtOdEIsV0FBUztBQUNWO0FBRUEsQ0FyTkMsb0JBcU5vQixLQUNuQixDQXhDcUIsMkJBd0NPLEtBQUssQ0FBQyx1QkFFbkMsQ0F4TnNCO0FBeU50QixXQUFTO0FBQ1Y7QUFHQSxDQTdOQyxxQkE2TnFCLENBOUtDO0FBK0t0QixXQUFTO0FBQ1Y7QUFHQSxDQWxPQyxvQkFrT29CLEtBQUssQ0FoSUgsbUJBZ0l1QixDQUFDLHNCQUM5QyxDQXBMc0I7QUFxTHRCLFdBQVM7QUFDVjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1Y7QUFFQSxDQTVPQyxvQkE0T29CLEtBQ25CLENBL0RxQiwyQkErRE8sS0FBSyxDQUFDLHVCQUVuQyxDQVBBO0FBUUEsV0FBUztBQUNWO0FBR0EsQ0FBQztBQUNBLGNBQVk7QUFDWixpQkFBZTtBQUNoQjtBQUVBLENBQUM7QUFDQSxpQkFBZSxJQUFJO0FBQ25CLFdBQVMsSUFBSTtBQUNiLGdCQUFjLElBQUk7QUFDbEIsaUJBQWUsSUFBSTtBQUNuQixpQkFBZSxJQUFJO0FBRW5CLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSztBQUNMLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBQ0EsZUFBYTtBQUNkO0FBRUEsQ0FBQztBQUNBLFdBQVMsSUFBSTtBQUNiLG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsZUFBYSxJQUFJO0FBQ2pCLGFBQVc7QUFDWCxpQkFBZTtBQUNmLGVBQWE7QUFDZDtBQUVBLENBQUM7QUFDQSxjQUFZO0FBQ1osY0FBWTtBQUNiO0FBRUEsQ0FBQztBQUNBLFVBQVE7QUFDUixTQUFPO0FBQ1AsZUFBYSxJQUFJO0FBQ2pCLFVBQVE7QUFDVDtBQUVBLENBQUM7QUFDQSxpQkFBZSxJQUFJO0FBQ25CLFdBQVMsSUFBSTtBQUNiLGlCQUFlLElBQUk7QUFDbkIsb0JBQWtCLElBQUk7QUFDdEIsV0FBUztBQUNULGtCQUFnQjtBQUNqQjtBQUVBLENBQUM7QUFDQSxlQUFhO0FBQ2IsaUJBQWUsSUFBSTtBQUNuQixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTLElBQUk7QUFDYixvQkFBa0IsSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLGVBQWEsSUFBSTtBQUNsQjtBQUVBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDaEIsaUJBQWUsSUFBSTtBQUVuQixlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0QsQ0FBQztBQUNBLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNoQixXQUFTLElBQUk7QUFDYixvQkFBa0IsSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLGFBQVc7QUFDWjtBQUVBLENBQUM7QUFDQSxjQUFZO0FBQ1osV0FBUztBQUNULGlCQUFlO0FBQ2YsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxpQkFBZTtBQUNmLGlCQUFlO0FBQ2YsZUFBYSxJQUFJO0FBQ2pCLGdCQUFjLElBQUk7QUFDbEIsaUJBQWUsSUFBSTtBQUNuQixjQUFZLGlCQUFpQixLQUFLO0FBQ25DO0FBRUEsQ0FUQyxpQkFTaUI7QUFDakIsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLFNBQU8sSUFBSTtBQUNYLGNBQVk7QUFDWixXQUFTO0FBQ1Y7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNiLGNBQVk7QUFDWixXQUFTO0FBQ1QsY0FBWTtBQUNaLGFBQVcsT0FBTyxLQUFLO0FBQ3hCO0FBRUEsQ0FBQztBQUNBLGNBQVk7QUFDWixXQUFTO0FBQ1QsaUJBQWU7QUFDZixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLE9BQUs7QUFDTCxjQUFZO0FBQ2I7QUFFQSxDQVBDLDBCQU8wQjtBQUMxQixXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNmLGFBQVc7QUFDWCxlQUFhO0FBQ2IsVUFBUTtBQUNUO0FBRUEsQ0FmQywwQkFlMEIsTUFBTSxDQUFDO0FBQ2pDLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU87QUFDUjtBQUVBLFdBOUJZO0FBK0JYO0FBQ0MsYUFBUztBQUNWO0FBQ0E7QUFDQyxhQUFTO0FBQ1Y7QUFDRDtBQUVBLENBQUM7QUFDQSxhQUFXO0FBQ1gsU0FBTztBQUNSO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxTQUFPO0FBQ1I7QUFHQSxDQUFDO0FBQ0EsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLFdBQVM7QUFDVCxjQUFZO0FBQ1osY0FBWTtBQUNaLG9CQUFrQixJQUFJO0FBQ3RCLGNBQVksRUFBRSxJQUFJLElBQUksS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUNyQztBQUVBLENBQUM7QUFDQSxpQkFBZTtBQUNmLFdBQVM7QUFDVCxpQkFBZTtBQUNmLG9CQUFrQixJQUFJO0FBQ3RCLGNBQVksRUFBRSxJQUFJLElBQUksS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUNwQyxlQUFhLElBQUksTUFBTSxJQUFJO0FBQzVCO0FBRUEsQ0FUQyxhQVNhLENBaGxCRztBQWlsQmhCLFVBQVE7QUFDUixXQUFTO0FBQ1Y7QUFFQSxDQWRDLGFBY2EsQ0Eva0JHO0FBZ2xCaEIsV0FBUztBQUNWO0FBRUEsQ0FsQkMsYUFrQmEsQ0FBQztBQUNkLGFBQVc7QUFDWCxlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQXhCQyxhQXdCYSxDQUFDO0FBQ2QsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxjQUFZO0FBQ1osV0FBUyxJQUFJLEVBQUUsRUFBRTtBQUNqQixjQUFZLElBQUksTUFBTSxJQUFJO0FBQzNCO0FBRUEsQ0FBQztBQUNBLG1CQUFpQjtBQUNqQixXQUFTO0FBQ1QsYUFBVztBQUNYLE9BQUssSUFBSTtBQUNULFdBQVM7QUFDVCxVQUFRO0FBQ1Q7QUFFQSxDQUFDO0FBQ0EsV0FBUyxJQUFJO0FBQ2IsaUJBQWU7QUFDZixhQUFXO0FBQ1gsV0FBUztBQUNULGVBQWE7QUFDYixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxjQUFZO0FBQ1osU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNaLFdBQVM7QUFDVjtBQUdBLENBQUM7QUFDQSxpQkFBZTtBQUNoQjtBQUVBLENBQUM7QUFDQSxjQUFZO0FBQ1osY0FBWSxJQUFJLE1BQU0sSUFBSTtBQUMxQixlQUFhO0FBQ2Q7QUFFQSxDQU5DLHdCQU13QjtBQUN4QixjQUFZO0FBQ1osaUJBQWU7QUFDZixhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsY0FBWTtBQUNiO0FBRUEsQ0FKQywwQkFJMEIsQ0F6RDFCO0FBMERBLFdBQVM7QUFDVCxhQUFXO0FBQ1gsT0FBSztBQUNOO0FBRUEsQ0FWQywwQkFVMEIsQ0F0RDFCO0FBdURBLFdBQVM7QUFDVCxpQkFBZTtBQUNmLFdBQVM7QUFDVCxvQkFBa0I7QUFDbkI7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULG1CQUFpQjtBQUNqQixPQUFLO0FBQ0wsY0FBWTtBQUNaLGVBQWE7QUFDYixjQUFZLElBQUksTUFBTSxJQUFJO0FBQzNCO0FBRUEsQ0FBQztBQUNELENBQUM7QUFDRCxDQUFDO0FBQ0EsV0FBUyxJQUFJO0FBQ2IsaUJBQWU7QUFDZixVQUFRO0FBQ1Q7QUFFQSxDQVJDLG9CQVFvQixDQUFDO0FBQ3JCLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FaQztBQWFBLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FoQkM7QUFpQkEsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNiO0FBRUEsQ0FBQztBQUNBLGNBQVk7QUFDWixTQUFPLElBQUk7QUFDWCxjQUFZO0FBQ1osV0FBUztBQUNWO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFdBQVMsSUFBSTtBQUNiLG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsaUJBQWU7QUFDZixjQUFZLEVBQUUsSUFBSSxJQUFJLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUU7QUFDckM7QUFFQSxDQUFDO0FBQ0EsZUFBYTtBQUNiLFFBQU07QUFDTixnQkFBYztBQUNmO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxPQUFLO0FBQ047QUFFQSxDQUFDO0FBQ0QsQ0FBQztBQUNELENBQUM7QUFDRCxDQUFDO0FBQ0EsV0FBUyxJQUFJO0FBQ2IsaUJBQWU7QUFDZixvQkFBa0IsSUFBSTtBQUN0QixVQUFRO0FBQ1IsYUFBVztBQUNYLFVBQVE7QUFDVDtBQUVBLENBWkMsbUJBWW1CO0FBQ3BCLENBWkMsc0JBWXNCO0FBQ3ZCLENBWkMsd0JBWXdCO0FBQ3hCLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FoQkMscUJBZ0JxQjtBQUNyQixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsV0FBUyxJQUFJO0FBQ2IsZUFBYTtBQUNiLGlCQUFlO0FBQ2YsYUFBVztBQUNYLGtCQUFnQjtBQUNoQixlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0Esb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBQ0Esb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0Esb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQUFDO0FBQ0EsV0FBUyxFQUFFLEVBQUUsRUFBRSxJQUFJO0FBQ25CLGNBQVksSUFBSTtBQUNoQixpQkFBZSxJQUFJO0FBQ25CLGVBQWEsSUFBSSxNQUFNLElBQUk7QUFDNUI7QUFFQSxDQUFDO0FBQ0EsU0FBTztBQUNSO0FBR0EsQ0FBQztBQUNBLGNBQVk7QUFDWixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsV0FBUztBQUNULG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FBQztBQUNELENBQUM7QUFDQSxjQUFZO0FBQ1osZUFBYTtBQUNiLGNBQVksSUFBSSxNQUFNLElBQUk7QUFDM0I7QUFFQSxDQUFDO0FBQ0QsQ0FBQztBQUNBLGNBQVk7QUFDWixXQUFTO0FBQ1QsaUJBQWU7QUFDaEI7QUFFQSxDQUFDO0FBQ0QsQ0FBQztBQUNBLG1CQUFpQjtBQUNqQixXQUFTO0FBQ1QsVUFBUTtBQUNUO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxPQUFLO0FBQ0wsZUFBYTtBQUNiLFFBQU07QUFDUDtBQUVBLENBUEMsd0JBT3dCO0FBQ3hCLFdBQVMsSUFBSTtBQUNiLGlCQUFlO0FBQ2YsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTCxlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0QsQ0FBQztBQUNBLFNBQU8sSUFBSTtBQUNYLGlCQUFlO0FBQ2YsV0FBUyxJQUFJO0FBQ2IsVUFBUTtBQUNSLFVBQVE7QUFDVDtBQUVBLENBVEMsc0JBU3NCO0FBQ3ZCLENBVEMseUJBU3lCO0FBQ3pCLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNELENBQUM7QUFDQSxvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWCxXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNmLGNBQVk7QUFDWixVQUFRO0FBQ1IsVUFBUTtBQUNUO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxPQUFLO0FBQ0wsZUFBYTtBQUNkO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNmLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULG1CQUFpQjtBQUNqQixPQUFLO0FBQ0wsY0FBWTtBQUNaLGVBQWE7QUFDYixjQUFZLElBQUksTUFBTSxJQUFJO0FBQzNCO0FBRUEsQ0FBQztBQUNELENBQUM7QUFDQSxXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNmLFVBQVE7QUFDUixVQUFRO0FBQ1Q7QUFFQSxDQVJDLGlCQVFpQixDQXJOSTtBQXNOckIsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQVpDO0FBYUEsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNiLGNBQVk7QUFDWixjQUFZO0FBQ1osV0FBUztBQUNULGlCQUFlO0FBQ2hCO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNmLGVBQWE7QUFDYixhQUFXO0FBQ1gsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBQ0EsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxlQUFhO0FBQ2IsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0EvN0JpQixxQkErN0JLLElBQUksQ0FBQztBQUMxQixXQUFTO0FBQ1QsV0FBUyxJQUFJO0FBQ2IsaUJBQWU7QUFDZixhQUFXO0FBQ1gsZUFBYTtBQUNiLGdCQUFjO0FBQ2Y7QUFFQSxDQXg4QmlCLHFCQXc4QkssQ0FBQztBQUN0QixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBNzhCaUIscUJBNjhCSyxDQUFDO0FBQ3RCLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0F4V0M7QUF5V0EsZ0JBQWM7QUFDZjtBQUdBLENBalVDLDBCQWlVMEIsQ0F2UTFCO0FBd1FBLFdBQVMsSUFBSTtBQUNiLG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsY0FBWSxFQUFFLElBQUksSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFO0FBQ3BDLGlCQUFlO0FBQ2hCO0FBRUEsQ0F6VUMsMEJBeVUwQixDQWpPMUI7QUFrT0EsV0FBUztBQUNULFdBQVMsSUFBSTtBQUNiLGVBQWE7QUFDYixpQkFBZTtBQUNmLGFBQVc7QUFDWCxrQkFBZ0I7QUFDaEIsZUFBYTtBQUNkO0FBRUEsQ0FsTkM7QUFtTkEsbUJBQWlCO0FBQ2pCLFdBQVMsRUFBRSxFQUFFLEVBQUU7QUFDZixVQUFRLElBQUksRUFBRSxLQUFLO0FBQ25CLGVBQWEsSUFBSSxNQUFNLElBQUk7QUFDNUI7QUFHQSxDQS9UQztBQWdVRCxDQTdHQyxpQkE2R2lCLENBMVRJO0FBMlR0QixDQW5VQyxvQkFtVW9CLENBM1RDO0FBNFRyQixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWCxXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNmLGVBQWE7QUFDYixVQUFRO0FBQ1IsVUFBUTtBQUNSLGNBQVksRUFBRSxJQUFJLElBQUksS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUNwQyxjQUFZLElBQUksS0FBSztBQUNyQixjQUFZO0FBQ2I7QUFFQSxDQTlVQyx5QkE4VXlCO0FBQzFCLENBNUhDLGlCQTRIaUIsQ0F6VUksT0F5VUk7QUFDMUIsQ0FsVkMsb0JBa1ZvQixDQTFVQyxPQTBVTztBQUM1QixvQkFBa0IsSUFBSTtBQUN0QixjQUFZLEVBQUUsSUFBSSxJQUFJLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUU7QUFDcEMsYUFBVyxXQUFXO0FBQ3ZCO0FBRUEsQ0FqU0M7QUFrU0QsQ0FqU0M7QUFrU0QsQ0FwU0M7QUFxU0QsQ0FsU0M7QUFtU0EsVUFBUTtBQUNSLG9CQUFrQixJQUFJO0FBQ3RCLFdBQVMsSUFBSTtBQUNiLGlCQUFlO0FBQ2YsYUFBVztBQUNYLFVBQVE7QUFDUixjQUFZLElBQUksS0FBSztBQUN0QjtBQUVBLENBOVNDLHNCQThTc0I7QUFDdkIsQ0E5U0Msd0JBOFN3QjtBQUN6QixDQWpUQyxtQkFpVG1CO0FBQ25CLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FuVEMscUJBbVRxQjtBQUNyQixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLGVBQWE7QUFDYixXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNmLGlCQUFlO0FBQ2hCO0FBRUEsQ0EzT0Msd0JBMk93QjtBQUN4QixvQkFBa0IsSUFBSTtBQUN0QixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLFdBQVMsSUFBSTtBQUNiLGlCQUFlO0FBQ2YsYUFBVztBQUNaO0FBRUEsQ0FuUEMsd0JBbVB3QixLQUFLO0FBQzdCLGdCQUFjLElBQUk7QUFDbEIsV0FBUztBQUNWO0FBRUEsQ0FoWEM7QUFpWEQsQ0E1YkM7QUE2YkQsQ0FBQztBQUNELENBQUM7QUFDQSxjQUFZO0FBQ1osU0FBTyxJQUFJO0FBQ1gsV0FBUztBQUNULGNBQVk7QUFDWixvQkFBa0IsSUFBSTtBQUN0QixpQkFBZTtBQUNmLFVBQVEsS0FBSztBQUNkO0FBR0EsQ0FBQztBQUNELENBQUM7QUFDQSxjQUFZO0FBQ1osV0FBUztBQUNULGlCQUFlO0FBQ2YsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUMsa0JBQWtCLENBbmxDRjtBQW9sQ2pCLENBQUMsaUJBQWlCLENBcGxDRDtBQXFsQ2hCLFdBQVM7QUFDVjtBQUVBLENBSkMsZ0JBSWdCLENBOWxDQTtBQStsQ2hCLGNBQVk7QUFDYjtBQUVBLENBVEMsa0JBU2tCLENBeGxDRjtBQXlsQ2pCLENBVEMsaUJBU2lCLENBemxDRDtBQTBsQ2hCLFdBQVM7QUFDVCxhQUFXO0FBQ1gsT0FBSztBQUNMLGVBQWE7QUFDZDtBQUVBLENBakJDLGtCQWlCa0IsQ0FobUNGLHFCQWdtQ3dCLEtBQUssQ0FBQztBQUM5QyxRQUFNO0FBQ04sYUFBVztBQUNaO0FBRUEsQ0FyQkMsaUJBcUJpQixDQXJtQ0QscUJBcW1DdUIsQ0FBQztBQUV4QyxRQUFNO0FBQ04sYUFBVztBQUNaO0FBRUEsQ0EzQkMsaUJBMkJpQixDQTNtQ0QscUJBMm1DdUI7QUFDdkMsU0FBTztBQUNQLGNBQVk7QUFDWixVQUFRO0FBQ1Q7QUFFQSxDQWpDQyxpQkFpQ2lCLENBam5DRCxxQkFpbkN1QixDQUFDO0FBQ3hDLGFBQVc7QUFDWjtBQUVBLENBdENDLGtCQXNDa0IsQ0FybkNGLHFCQXFuQ3dCO0FBQ3pDLENBdENDLGlCQXNDaUIsQ0F0bkNELHFCQXNuQ3VCO0FBQ3ZDLGVBQWE7QUFDZDtBQUVBLENBQUM7QUFDQSxVQUFRO0FBQ1IsVUFBUTtBQUNSLG9CQUFrQixJQUFJO0FBQ3RCLGNBQVk7QUFDWixpQkFBZTtBQUNoQjtBQUVBLENBNW9DaUIsWUE0b0NKLENBQUMsbUJBQW1CLENBdG9DaEI7QUF1b0NoQixXQUFTO0FBQ1Y7QUFFQSxDQWhwQ2lCLFlBZ3BDSixDQUpDLG1CQUltQixNQUFNLENBckJFO0FBc0J4QyxRQUFNO0FBQ1A7QUFHQSxDQUFDO0FBQ0QsQ0FBQztBQUNELENBQUM7QUFDRCxDQUFDO0FBQ0EsV0FBUztBQUNULFNBQU87QUFDUCxVQUFRO0FBQ1IsaUJBQWU7QUFDZixlQUFhO0FBQ2IsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDbEI7QUFFQSxDQWJDO0FBY0EsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQWpCQyxnQkFpQmdCO0FBQ2hCLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FwQkM7QUFxQkEsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQXhCQyxrQkF3QmtCO0FBQ2xCLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGdCQUFjO0FBQ2QsZUFBYTtBQUNkO0FBR0EsQ0FBQztBQUNBLFVBQVEsS0FBSztBQUNiLFdBQVM7QUFDVCxvQkFBa0IsSUFBSTtBQUN0QixpQkFBZTtBQUNmLGVBQWEsSUFBSSxNQUFNLElBQUk7QUFDNUI7QUFFQSxDQVJDLGVBUWU7QUFDZixVQUFRLElBQUk7QUFDYjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUssSUFBSTtBQUNULFdBQVMsSUFBSTtBQUNiLGlCQUFlLElBQUk7QUFDbkIsb0JBQWtCLElBQ2pCLElBQUksV0FBVyxFQUNmLElBQUksV0FBVyxFQUNmLElBQUksV0FBVyxFQUNmO0FBRUQsVUFBUSxJQUFJLE1BQ1gsSUFBSSxJQUFJLFdBQVcsRUFBRSxJQUFJLFdBQVcsRUFBRSxJQUFJLFdBQVcsRUFBRTtBQUN4RCxpQkFBZSxJQUFJO0FBQ25CLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxlQUFhO0FBQ2IsZUFBYTtBQUNkO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUssSUFBSTtBQUNWO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDYixhQUFXLElBQUk7QUFDaEI7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1gsYUFBVyxJQUFJO0FBQ2YsZUFBYTtBQUNkO0FBRUEsQ0FOQyxtQkFNbUI7QUFDbkIsU0FBTyxJQUFJO0FBQ1gsbUJBQWlCO0FBQ2xCO0FBRUEsQ0FYQyxtQkFXbUIsQ0FBQztBQUNwQixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUssSUFBSTtBQUNULFdBQVMsSUFBSTtBQUNiLFVBQVEsSUFBSSxZQUFZO0FBQ3hCLGlCQUFlLElBQUk7QUFDbkIsb0JBQWtCLElBQUk7QUFDdEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN2QjtBQUVBLENBWEMsNEJBVzRCO0FBQzVCLGFBQVcsSUFBSTtBQUNmLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWCxpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0FsQkMsNEJBa0I0QjtBQUM1QixlQUFhLElBQUk7QUFDakIsYUFBVyxJQUFJO0FBQ2YsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNYLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0Isb0JBQWtCLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLFVBQVEsSUFBSSxZQUFZO0FBQ3pCO0FBRUEsQ0E5QkMsNEJBOEI0QixJQUFJO0FBQ2hDLGNBQVk7QUFDYjtBQUVBLENBbENDLDRCQWtDNEIsSUFBSTtBQUNoQyxpQkFBZTtBQUNoQjtBQUdBLENBQUM7QUFDRCxDQUFDO0FBQ0EsY0FBWTtBQUNiO0FBRUEsQ0FBQztBQUNELENBQUM7QUFDQSxVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsaUJBQWU7QUFDZixXQUFTO0FBQ1Y7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNaLGNBQVk7QUFDWixXQUFTO0FBQ1Y7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULGNBQVk7QUFDWixlQUFhLElBQUksTUFBTSxJQUFJO0FBQzNCLGdCQUFjO0FBQ2Y7QUFFQSxDQVBDLGVBT2U7QUFDZixXQUFTO0FBQ1QsZ0JBQWM7QUFDZCxhQUFXO0FBQ1o7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNWO0FBRUEsQ0FKQyxpQkFJaUI7QUFDakIsb0JBQWtCLElBQUk7QUFDdEIsVUFBUTtBQUNUO0FBRUEsQ0FBQztBQUNBLGFBQVcsSUFBSTtBQUNmLFNBQU8sSUFBSTtBQUNYLGNBQVk7QUFDWixjQUFZO0FBQ2I7QUFHQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLFdBQVM7QUFDVCxvQkFBa0IsSUFBSTtBQUN0QixpQkFBZTtBQUNmLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLGlCQUFlO0FBQ2YsYUFBVztBQUNYLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUs7QUFDTCxjQUFZO0FBQ2I7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ0wsV0FBUztBQUNULG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixjQUFZLElBQUksS0FBSztBQUN0QjtBQUVBLENBWEMsdUJBV3VCO0FBQ3ZCLGdCQUFjLElBQUk7QUFDbEIsY0FBWSxFQUFFLElBQUksSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFO0FBQ3JDO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixXQUFTLElBQUk7QUFDYixvQkFBa0IsSUFBSTtBQUN0QixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsZUFBYSxJQUFJO0FBQ2pCLGFBQVc7QUFDWCxjQUFZLGFBQWEsS0FBSztBQUMvQjtBQUVBLENBWkMsd0JBWXdCO0FBQ3hCLFdBQVM7QUFDVCxnQkFBYyxJQUFJO0FBQ2xCLGNBQVksRUFBRSxFQUFFLEVBQUUsSUFBSSxJQUFJO0FBQzNCO0FBRUEsQ0FsQkMsd0JBa0J3QjtBQUN4QixTQUFPLElBQUk7QUFDWCxjQUFZO0FBQ2I7QUFFQSxDQUFDO0FBQ0EsU0FBTztBQUNQLFVBQVE7QUFDUixXQUFTO0FBQ1QsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1gsVUFBUTtBQUNSLGlCQUFlO0FBQ2YsYUFBVztBQUNYLGVBQWE7QUFDYixVQUFRO0FBQ1IsY0FBWSxJQUFJLEtBQUs7QUFDdEI7QUFFQSxDQWpCQyw2QkFpQjZCO0FBQzdCLG9CQUFrQixJQUFJO0FBQ3RCLGFBQVcsTUFBTTtBQUNsQjtBQUVBLENBQUM7QUFDQSxXQUFTLEtBQUs7QUFDZCxvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWCxVQUFRO0FBQ1IsaUJBQWU7QUFDZixlQUFhO0FBQ2IsVUFBUTtBQUNSLGNBQVksSUFBSSxLQUFLO0FBQ3JCLGNBQVk7QUFDWixjQUFZO0FBQ2I7QUFFQSxDQWJDLDBCQWEwQjtBQUMxQixjQUFZLEVBQUUsSUFBSSxJQUFJLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUU7QUFDcEMsYUFBVyxXQUFXO0FBQ3ZCO0FBRUEsQ0FsQkMsMEJBa0IwQjtBQUMxQixhQUFXLFdBQVc7QUFDdkI7QUFHQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLFdBQVM7QUFDVCxvQkFBa0IsSUFBSTtBQUN0QixpQkFBZTtBQUNmLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLGlCQUFlO0FBQ2YsYUFBVztBQUNYLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxTQUFPO0FBQ1AsbUJBQWlCO0FBQ2pCLGFBQVc7QUFDWjtBQUVBLENBTkMsZ0NBTWdDO0FBQ2pDLENBUEMsZ0NBT2dDO0FBQ2hDLFdBQVMsSUFBSTtBQUNiLGNBQVk7QUFDWixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3ZCO0FBRUEsQ0FiQyxnQ0FhZ0M7QUFDaEMsb0JBQWtCLElBQUk7QUFDdEIsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FuQkMsZ0NBbUJnQztBQUNoQyxvQkFBa0IsSUFBSTtBQUN0QixlQUFhLElBQUk7QUFDbEI7QUFFQSxDQXhCQyxnQ0F3QmdDLEVBQUUsaUJBQWlCO0FBQ25ELG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0E1QkMsZ0NBNEJnQyxFQUFFLE9BQU87QUFDekMsb0JBQWtCLElBQUk7QUFDdkI7OztBQzNpREEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2Isa0JBQWdCO0FBQ2hCLGdCQUFjLElBQUk7QUFDbEIsY0FBWSxLQUFLLEdBQUcsRUFBRSxJQUFJO0FBQzNCO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxPQUFLLElBQUk7QUFDVCxhQUFXO0FBQ1gsZUFBYTtBQUNiLG1CQUFpQjtBQUNsQjtBQUVBLENBUkMsbUJBUW1CLENBaEJuQjtBQWlCQSxnQkFBYztBQUNkLGNBQVk7QUFDYjtBQUdBLENBQUM7QUFDQSxpQkFBZTtBQUNmLFdBQVM7QUFDVCxVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2Ysb0JBQWtCLElBQUk7QUFDdkI7QUFHQSxDQUFDO0FBQ0QsQ0FBQztBQUNELENBQUM7QUFDRCxDQUFDO0FBQ0EsVUFBUSxLQUFLO0FBQ2IsV0FBUztBQUNULGNBQVksSUFBSTtBQUNoQixpQkFBZTtBQUNoQjtBQUVBLENBQUM7QUFDRCxDQUFDO0FBQ0QsQ0FBQztBQUNELENBQUM7QUFDRCxDQUFDO0FBQ0EsYUFBVztBQUNYLGVBQWE7QUFDYixpQkFBZTtBQUNmLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNELENBQUM7QUFDRCxDQUFDO0FBQ0QsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSztBQUNMLGlCQUFlO0FBQ2hCO0FBRUEsQ0FBQztBQUNELENBQUM7QUFDRCxDQUFDO0FBQ0QsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSztBQUNMLGNBQVksSUFBSTtBQUNoQixXQUFTO0FBQ1QsaUJBQWU7QUFDZixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGNBQVksYUFBYTtBQUMxQjtBQUVBLENBZEMsc0JBY3NCO0FBQ3ZCLENBZEMsb0JBY29CO0FBQ3JCLENBZEMscUJBY3FCO0FBQ3RCLENBZEMsdUJBY3VCO0FBQ3ZCLGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQUFDO0FBQ0QsQ0FBQztBQUNELENBQUM7QUFDRCxDQUFDO0FBQ0EsUUFBTTtBQUNOLFdBQVM7QUFDVCxVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLGVBQWEsSUFBSTtBQUNqQixhQUFXO0FBQ1o7QUFFQSxDQWRDLHVCQWN1QjtBQUN4QixDQWRDLHFCQWNxQjtBQUN0QixDQWRDLHNCQWNzQjtBQUN2QixDQWRDLHdCQWN3QjtBQUN4QixXQUFTO0FBQ1QsZ0JBQWMsSUFBSTtBQUNsQixjQUFZLEVBQUUsRUFBRSxFQUFFLElBQUksSUFBSTtBQUMzQjtBQUVBLENBQUM7QUFDRCxDQUFDO0FBQ0QsQ0FBQztBQUNELENBQUM7QUFDQSxTQUFPO0FBQ1AsVUFBUTtBQUNSLFdBQVM7QUFDVCxVQUFRO0FBQ1IsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLGlCQUFlO0FBQ2YsVUFBUTtBQUNSLGFBQVc7QUFDWCxlQUFhO0FBQ2IsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsY0FBWSxpQkFBaUI7QUFDOUI7QUFFQSxDQXBCQyw0QkFvQjRCO0FBQzdCLENBcEJDLDBCQW9CMEI7QUFDM0IsQ0FwQkMsMkJBb0IyQjtBQUM1QixDQXBCQyw2QkFvQjZCO0FBQzdCLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBQUM7QUFDRCxDQUFDO0FBQ0QsQ0FBQztBQUNELENBQUM7QUFDQSxXQUFTLE9BQU87QUFDaEIsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLGlCQUFlO0FBQ2YsVUFBUTtBQUNSLGFBQVc7QUFDWCxjQUFZLElBQUk7QUFDakI7QUFFQSxDQWJDLHlCQWF5QjtBQUMxQixDQWJDLHVCQWF1QjtBQUN4QixDQWJDLHdCQWF3QjtBQUN6QixDQWJDLDBCQWEwQjtBQUMxQixnQkFBYyxJQUFJO0FBQ2xCLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0FBQztBQUNBLGNBQVk7QUFDWixXQUFTO0FBQ1QsY0FBWSxJQUFJO0FBQ2hCLGlCQUFlO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUCxtQkFBaUI7QUFDakIsYUFBVztBQUNaO0FBRUEsQ0FOQyxnQ0FNZ0M7QUFDaEMsY0FBWTtBQUNaLFdBQVM7QUFDVCxpQkFBZSxJQUFJLE1BQU0sSUFBSTtBQUM3QixTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQWRDLGdDQWNnQztBQUNoQyxXQUFTLE9BQU87QUFDaEIsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDN0IsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQXBCQyxnQ0FvQmdDLEVBQUUsWUFBWTtBQUM5QyxpQkFBZTtBQUNoQjtBQUVBLENBeEJDLGdDQXdCZ0MsRUFBRSxPQUFPO0FBQ3pDLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBQUM7QUFDQSxTQUFPO0FBQ1AsYUFBVztBQUNYLGNBQVk7QUFDWixjQUFZO0FBQ2I7QUFFQSxDQVBDLHlCQU95QixDQUFDO0FBQzFCLFdBQVM7QUFDVCxrQkFBZ0I7QUFDakI7QUFFQSxDQUFDO0FBQ0EsV0FBUyxJQUFJO0FBQ2Isb0JBQWtCLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixjQUFZLElBQUk7QUFDaEIsaUJBQWUsSUFBSTtBQUNuQixnQkFBYyxJQUFJO0FBQ2xCLGlCQUFlLElBQUk7QUFDbkIsYUFBVyxJQUFJO0FBQ2hCO0FBRUEsQ0FBQyxxQkFBcUIsQ0FBQyxxQkFBcUIsS0FBSyxDQUFDO0FBQ2pELFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsV0FBUyxJQUFJO0FBQ2IsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBTkMscUJBTXFCLENBQUM7QUFDdEIsY0FBWSxJQUFJLE1BQU0sSUFBSTtBQUMxQixlQUFhLElBQUk7QUFDbEI7OztBQzdOQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ0wsV0FBUztBQUNULGlCQUFlO0FBQ2YsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNoQjtBQUVBLENBQUM7QUFDQSxhQUFXO0FBQ1gsZUFBYTtBQUNiLGVBQWE7QUFDYixjQUFZO0FBQ2I7QUFFQSxDQUFDO0FBQ0EsUUFBTTtBQUNOLGFBQVc7QUFDWjtBQUVBLENBQUM7QUFDQSxlQUFhO0FBQ2IsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGlCQUFlO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1o7OztBQy9CQSxDQUFDO0FBQ0EsWUFBVTtBQUNWLFdBQVM7QUFDVCxlQUFhO0FBQ2IsY0FBWSxJQUFJO0FBQ2hCLFVBQVEsSUFBSSxzQkFBc0IsTUFBTSxJQUFJO0FBQzVDLGlCQUFlLElBQUk7QUFDbkIsY0FBWSxJQUFJLE1BQU07QUFDdEIsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FYQyxrQ0FXa0M7QUFDbEMsZ0JBQWMsSUFBSTtBQUNsQixjQUFZLEVBQUUsRUFBRSxFQUFFLElBQUksS0FBSyxJQUFJLHlCQUF5QixFQUFFO0FBQzNEO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFdBQVMsRUFBRSxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBRUEsQ0FUQyx3QkFTd0I7QUFDeEIsU0FBTyxJQUFJO0FBQ1gsVUFBUSxJQUFJO0FBQ2I7QUFHQSxDQUFDO0FBQ0EsUUFBTTtBQUNOLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0IsVUFBUTtBQUNSLGNBQVk7QUFDWixTQUFPLElBQUk7QUFDWCxhQUFXLElBQUk7QUFDZixXQUFTO0FBQ1Y7QUFFQSxLQUFLLENBVko7QUFXQSxVQUFRO0FBQ1IsY0FBWTtBQUNiO0FBRUEsQ0FmQyx3QkFld0I7QUFDeEIsU0FBTyxJQUFJO0FBQ1gsV0FBUztBQUNWO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFdBQVMsSUFBSTtBQUNiLGdCQUFjLElBQUk7QUFDbEIsVUFBUTtBQUNSLGNBQVk7QUFDWixTQUFPLElBQUk7QUFDWCxVQUFRO0FBQ1IsaUJBQWUsSUFBSTtBQUNuQixjQUFZLElBQUksTUFBTTtBQUN0QixjQUFZO0FBQ1osZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNYLFVBQVEsSUFBSTtBQUNiO0FBRUEsQ0FsQkMsd0JBa0J3QjtBQUN4QixjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQXZCQyx3QkF1QndCO0FBQ3hCLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBM0JDLHlCQTJCeUI7QUFDekIsU0FBTyxJQUFJO0FBQ1gsVUFBUSxJQUFJO0FBQ2I7QUFHQSxDQUFDO0FBQ0EsWUFBVTtBQUNWLE9BQUssS0FBSyxLQUFLLEVBQUUsSUFBSTtBQUNyQixRQUFNO0FBQ04sU0FBTztBQUNQLGNBQVksSUFBSTtBQUNoQixVQUFRLElBQUksZ0JBQWdCLE1BQU0sSUFBSTtBQUN0QyxpQkFBZSxJQUFJO0FBQ25CLGNBQVksSUFBSTtBQUNoQixXQUFTLElBQUk7QUFDYixjQUFZO0FBQ1osY0FBWTtBQUNaLGNBQVk7QUFDYjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0IsVUFBUTtBQUNSLGlCQUFlLElBQUksZ0JBQWdCLE1BQU0sSUFBSTtBQUM3QyxjQUFZLGlCQUFpQixLQUFLO0FBQ2xDLFlBQVU7QUFDWDtBQUVBLENBVkMseUJBVXlCO0FBQ3pCLGlCQUFlO0FBQ2hCO0FBRUEsQ0FkQyx5QkFjeUI7QUFDMUIsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBbkJDLHlCQW1CeUI7QUFDekIsY0FBWSxJQUFJO0FBQ2pCO0FBR0EsQ0FBQztBQUNBLGVBQWEsSUFBSTtBQUNqQixTQUFPLElBQUk7QUFDWCxpQkFBZSxJQUFJO0FBQ25CLGFBQVcsSUFBSTtBQUNmLGVBQWEsSUFBSTtBQUNsQjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUssSUFBSTtBQUNULGlCQUFlLElBQUk7QUFDcEI7QUFFQSxDQUFDO0FBQ0EsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsY0FBWSxJQUFJO0FBQ2hCLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0IsaUJBQWUsSUFBSTtBQUNuQixlQUFhLElBQUk7QUFDakIsa0JBQWdCO0FBQ2hCLGtCQUFnQjtBQUNqQjtBQUdBLENBQUM7QUFDQSxhQUFXLElBQUk7QUFDZixTQUFPLElBQUk7QUFDWCxlQUFhLElBQUk7QUFDakIsY0FBWSxJQUFJO0FBQ2pCO0FBR0EsQ0FBQztBQUNBLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0IsY0FBWTtBQUNaLFNBQU8sSUFBSTtBQUNYLGFBQVcsSUFBSTtBQUNmLGNBQVk7QUFDYjtBQUdBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDaEIsaUJBQWUsSUFBSTtBQUNuQixjQUFZLGlCQUFpQixLQUFLO0FBQ2xDLGFBQVcseUJBQXlCLEtBQUs7QUFDMUM7QUFFQSxXQUhZO0FBSVg7QUFDQyxnQkFBWSxJQUFJO0FBQ2hCLGVBQVcsTUFBTTtBQUNsQjtBQUNBO0FBQ0MsZ0JBQVksSUFBSTtBQUNoQixlQUFXLE1BQU07QUFDbEI7QUFDQTtBQUNDLGdCQUFZLElBQUk7QUFDaEIsZUFBVyxNQUFNO0FBQ2xCO0FBQ0Q7QUFHQSxDQTdFQztBQThFQSxjQUFZLElBQUk7QUFDaEIsV0FBUyxJQUFJLGdCQUFnQixNQUFNLElBQUk7QUFDdkMsa0JBQWdCO0FBQ2pCO0FBR0EsT0FBTyxDQUFDLFNBQVMsRUFBRTtBQUNsQixHQXBIQTtBQXFIQyxnQkFBWTtBQUNaLG1CQUFlLElBQUk7QUFDcEI7QUFFQSxHQXpHQTtBQTBHQyxhQUFTLElBQUksWUFBWSxJQUFJO0FBQzlCO0FBRUEsR0FyRkE7QUFzRkMsZUFBVyxJQUFJO0FBQ2hCO0FBRUEsR0F6RUE7QUEwRUMsZUFBVyxJQUFJO0FBQ2YsYUFBUyxJQUFJLFlBQVksSUFBSTtBQUM5QjtBQUNEO0FBR0EsQ0F4SUM7QUF5SUEsbUJBQWlCO0FBQ2pCLG1CQUFpQixJQUFJLHNCQUFzQjtBQUM1QztBQUVBLENBN0lDLDBCQTZJMEI7QUFDMUIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQWpKQywwQkFpSjBCO0FBQzFCLGNBQVk7QUFDYjtBQUVBLENBckpDLDBCQXFKMEI7QUFDMUIsY0FBWSxJQUFJO0FBQ2hCLGlCQUFlLElBQUk7QUFDbkIsVUFBUSxJQUFJLE1BQU07QUFDbEIsbUJBQWlCO0FBQ2xCO0FBRUEsQ0E1SkMsMEJBNEowQix5QkFBeUI7QUFDbkQsY0FBWSxJQUFJO0FBQ2hCLG1CQUFpQjtBQUNsQjtBQUdBLENBQUMscUJBQXFCLENBQUM7QUFDdEIsY0FBWSxJQUFJO0FBQ2pCO0FBR0EsQ0F2S0M7QUF3S0EsV0FBUyxJQUFJLGVBQWUsRUFBRTtBQUMvQjtBQUdBLENBbE9DLHdCQWtPd0I7QUFDeEIsVUFBUTtBQUNSLFdBQVM7QUFDVCxjQUFZO0FBQ2I7QUFHQSxDQXhQQztBQXlQQSxjQUFZLE1BQU0sTUFBTTtBQUN6QjtBQUVBLENBN1FDLGtDQTZRa0MsY0FBYyxDQTVQaEQ7QUE2UEEsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQTdOQztBQThOQSxXQUFTO0FBQ1Y7QUFFQSxDQWpPQyx3QkFpT3dCO0FBQ3hCLFdBQVM7QUFDVjs7O0FDelJBLENBQUMsaUJBQWlCLENBQUM7QUFDbEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLFdBQVM7QUFDVCxVQUFRLEtBQUs7QUFDZDtBQUVBLENBUEMsaUJBT2lCLENBUEMsWUFPWSxDQUFDO0FBQy9CLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWCxpQkFBZTtBQUNoQjtBQUVBLENBYkMsaUJBYWlCLENBYkMsWUFhWSxDQUFDO0FBQy9CLFNBQU8sSUFBSTtBQUNYLGlCQUFlO0FBQ2hCO0FBRUEsQ0FsQkMsaUJBa0JpQixDQWxCQyxZQWtCWSxDQUxDLHlCQUt5QjtBQUN4RCxVQUFRLElBQUk7QUFDYjtBQUVBLENBdEJDLGlCQXNCaUIsQ0F0QkMsWUFzQlksQ0FBQztBQUMvQixXQUFTO0FBQ1QsT0FBSztBQUNMLGVBQWE7QUFDZDtBQUVBLENBNUJDLGlCQTRCaUIsQ0E1QkMsWUE0QlksTUFBTSxDQUFDO0FBQ3JDLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNYLFVBQVE7QUFDUixpQkFBZTtBQUNmLFdBQVMsSUFBSTtBQUNiLFVBQVE7QUFDUixlQUFhO0FBQ2Q7QUFFQSxDQXRDQyxpQkFzQ2lCLENBdENDLFlBc0NZLE1BQU0sQ0FWQyxPQVVPO0FBQzVDLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0ExQ0MsaUJBMENpQixDQTFDQyxZQTBDWSxNQUFNLENBQUM7QUFDckMsb0JBQWtCO0FBQ2xCLFNBQU8sSUFBSTtBQUNYLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWU7QUFDZixXQUFTLElBQUk7QUFDYixVQUFRO0FBQ1Q7QUFFQSxDQW5EQyxpQkFtRGlCLENBbkRDLFlBbURZLE1BQU0sQ0FUQyxTQVNTO0FBQzlDLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0F6REMsaUJBeURpQixDQUFDO0FBQ2xCLG9CQUFrQixJQUFJO0FBQ3RCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWU7QUFDZixXQUFTO0FBQ1QsVUFBUSxLQUFLO0FBQ2Q7QUFFQSxDQWpFQyxpQkFpRWlCLENBUkMsWUFRWSxDQTFEQztBQTJEL0IsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNYLGlCQUFlO0FBQ2hCO0FBR0EsQ0FBQztBQUNBLG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsV0FBUztBQUNULFVBQVEsSUFBSTtBQUNiO0FBRUEsQ0FQQyxtQkFPbUIsQ0FBQztBQUNwQixlQUFhO0FBQ2IsaUJBQWU7QUFDaEI7QUFFQSxDQVpDLG1CQVltQixDQUFDO0FBQ3BCLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWjs7O0FDdEZBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTCxpQkFBZTtBQUNmLFNBQU87QUFDUjtBQUdBLENBQUM7QUFDQSxlQUFhO0FBQ2Q7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSztBQUNMLFdBQVMsSUFBSTtBQUNiLG9CQUFrQixJQUFJO0FBQ3RCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWU7QUFDZixVQUFRO0FBQ1IsY0FBWSxJQUFJLE1BQU07QUFDdEIsYUFBVztBQUNYLFVBQVE7QUFDVDtBQUVBLENBZEMsa0NBY2tDO0FBQ2xDLG9CQUFrQixJQUFJO0FBQ3RCLGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQW5CQyxrQ0FtQmtDO0FBQ2xDLG9CQUFrQixJQUFJO0FBQ3ZCO0FBR0EsQ0F4QkMsbUNBd0JtQyxDQUFDO0FBQ3BDLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU87QUFDUCxVQUFRO0FBQ1IsZUFBYTtBQUNkO0FBRUEsQ0FqQ0MsbUNBaUNtQyxDQVRDLGVBU2U7QUFDbkQsU0FBTztBQUNQLFVBQVE7QUFDUixRQUFNLElBQUk7QUFDWDtBQUdBLENBeENDLG1DQXdDbUMsQ0FBQztBQUNwQyxRQUFNO0FBQ04sYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDYixZQUFVO0FBQ1YsaUJBQWU7QUFDaEI7QUFHQSxDQWxEQyxtQ0FrRG1DLENBQUM7QUFDcEMsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsU0FBTztBQUNQLFVBQVE7QUFDUixlQUFhO0FBQ2IsZUFBYTtBQUNkO0FBRUEsQ0E1REMsbUNBNERtQyxDQVZDLHdCQVV3QjtBQUM1RCxTQUFPO0FBQ1AsVUFBUTtBQUNSLFFBQU0sSUFBSTtBQUNWLGNBQVksVUFBVSxNQUFNO0FBQzdCO0FBRUEsQ0FuRUMsa0NBbUVrQyxPQUFPLENBakJMLHdCQWlCOEI7QUFDbEUsUUFBTSxJQUFJO0FBQ1g7QUFHQSxDQTFGQyx1QkEwRnVCLENBQUM7QUFDeEIsUUFBTTtBQUNOLGFBQVc7QUFDWjtBQUdBLENBaEdDLHVCQWdHdUIsQ0FBQztBQUN4QixTQUFPO0FBQ1I7QUFHQSxDQUFDO0FBQ0EsU0FBTztBQUNSO0FBR0EsQ0FMQywyQkFLMkIsQ0FBQztBQUM1QixjQUFZO0FBQ2I7QUFHQSxPQUFPLENBQUMsU0FBUyxFQUFFO0FBQ2xCLEdBaEhBO0FBaUhDLG9CQUFnQjtBQUNoQixpQkFBYTtBQUNiLFNBQUs7QUFDTjtBQUVBLEdBcEdBO0FBcUdDLFdBQU87QUFDUCxlQUFXO0FBQ1o7QUFFQSxHQTNIQSx1QkEySHdCLENBakNBO0FBa0N2QixXQUFPO0FBQ1I7QUFDRDs7O0FDaklBLENBQUM7QUFDQSxXQUFTO0FBQ1QsT0FBSyxJQUFJO0FBQ1QsbUJBQWlCO0FBQ2pCLGNBQVksSUFBSTtBQUNqQjtBQUdBLENBQUM7QUFDQSxhQUFXO0FBQ1gsYUFBVztBQUNaO0FBRUEsQ0FBQztBQUNBLGlCQUFlLElBQUk7QUFDbkIsU0FBTyxJQUFJO0FBQ1gsYUFBVyxJQUFJO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLFVBQVEsSUFBSSxZQUFZO0FBQ3hCLGNBQVk7QUFDWixjQUFZO0FBQ1osVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLFdBQVMsSUFBSTtBQUNkO0FBRUEsQ0FBQztBQUNBLGNBQVk7QUFDWixXQUFTLElBQUk7QUFDZDtBQUVBLENBQUM7QUFDQSxTQUFPLElBQUk7QUFDWCxjQUFZO0FBQ1osVUFBUTtBQUNUO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSyxJQUFJO0FBQ1QsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBUEMsZ0JBT2dCO0FBQ2hCLGlCQUFlO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1gsYUFBVyxJQUFJO0FBQ2hCO0FBRUEsQ0FWQyxpQkFVaUI7QUFDakIsV0FBUztBQUNULGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsU0FBTztBQUNQLFVBQVE7QUFDUixVQUFRO0FBQ1IsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLGlCQUFlLElBQUk7QUFDbkIsVUFBUTtBQUNSLGNBQVksaUJBQWlCLEtBQUs7QUFDbkM7QUFFQSxDQWRDLHNCQWNzQjtBQUN0QixjQUFZLElBQUk7QUFDakI7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLGVBQWE7QUFDYixlQUFhO0FBQ2Q7OztBQ3JGQSxDQUFDO0FBQ0EsV0FBUztBQUNULHlCQUF1QixJQUFJLElBQUk7QUFDL0IsT0FBSztBQUNMLFdBQVMsSUFBSTtBQUNiLFVBQVE7QUFDUixTQUFPO0FBQ1AsY0FBWSxJQUFJO0FBQ2hCLGlCQUFlO0FBQ2hCO0FBR0EsQ0FBQztBQUNBLGlCQUFlO0FBQ2YsV0FBUztBQUNULFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSztBQUNOO0FBRUEsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNoQixXQUFTO0FBQ1Y7QUFFQSxDQUFDO0FBQ0EsY0FBWSxJQUFJO0FBQ2hCLFdBQVM7QUFDVjtBQUdBLENBQUM7QUFDQSxVQUFRO0FBQ1IsaUJBQWU7QUFDaEI7QUFFQSxDQUFDO0FBQ0EsY0FBWSxJQUFJO0FBQ2hCLFdBQVM7QUFDVjtBQUVBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDaEIsV0FBUztBQUNWO0FBR0EsQ0FBQztBQUNBLFVBQVE7QUFDVDtBQUdBLENBQUM7QUFDQSxpQkFBZTtBQUNmLFdBQVM7QUFDVCxrQkFBZ0I7QUFDakI7QUFFQSxDQUFDO0FBQ0EsY0FBWSxJQUFJO0FBQ2hCLFdBQVM7QUFDVjtBQUdBLENBQUM7QUFDQSxVQUFRO0FBQ1IsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDN0IsV0FBUyxJQUFJO0FBQ2IsV0FBUztBQUNULE9BQUs7QUFDTCxlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsU0FBTztBQUNQLFVBQVE7QUFDUixjQUFZLElBQUk7QUFDaEIsV0FBUztBQUNULGlCQUFlO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNoQixXQUFTO0FBQ1Y7QUFHQSxDQUFDO0FBQ0EsUUFBTTtBQUNOLFdBQVM7QUFDVCxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUs7QUFDTjtBQUVBLENBQUM7QUFDQSxVQUFRO0FBQ1IsY0FBWSxJQUFJO0FBQ2hCLFdBQVM7QUFDVCxpQkFBZTtBQUNoQjs7O0FDcEdBLENBQUMsZUFBZSxLQUFLLENBQUMsb0JBQW9CLENBQUM7QUFDMUMsY0FBWTtBQUNiO0FBR0EsQ0FMc0I7QUFNckIsV0FBUztBQUNULE9BQUssSUFBSTtBQUNULFVBQVEsSUFBSSxZQUFZO0FBQ3hCLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxRQUFNO0FBQ04sY0FBWSxJQUFJO0FBQ2hCLGlCQUFlLElBQUk7QUFDbkIsV0FBUyxJQUFJO0FBQ2IsWUFBVTtBQUNWLFlBQVU7QUFDVixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUssSUFBSTtBQUNWO0FBRUEsQ0FQQywrQkFPK0I7QUFDL0IsVUFBUTtBQUNSLFNBQU8sSUFBSTtBQUNYLGFBQVcsSUFBSTtBQUNoQjtBQUVBLENBYkMsK0JBYStCO0FBQy9CLFVBQVE7QUFDUixTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLFdBQVM7QUFDVCxVQUFRO0FBQ1IsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLLElBQUk7QUFDVjtBQUVBLENBVEMsdUJBU3VCO0FBQ3ZCLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSyxJQUFJO0FBQ1QsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQWhCQyx1QkFnQnVCLEVBQUU7QUFDekIsV0FBUztBQUNULFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDYixlQUFhO0FBQ2Q7QUFHQSxDQUFDO0FBQ0Esa0JBQWdCO0FBQ2hCLGVBQWE7QUFDYixvQkFBa0IsSUFBSTtBQUN2QjtBQUdBLENBQUM7QUFDQSxhQUFXO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsYUFBVyxNQUFNO0FBQ2xCO0FBRUEsQ0FBQztBQUNBLGFBQVcsTUFBTTtBQUNsQjtBQUVBLENBQUM7QUFDQSxhQUFXO0FBQ1gsYUFBVyxNQUFNO0FBQ2xCO0FBR0EsQ0F6QkMsa0JBeUJrQjtBQUNuQixDQTFCQyxrQkEwQmtCO0FBQ25CLENBM0JDLGtCQTJCa0IsQ0FBQztBQUNuQixrQkFBZ0I7QUFDaEIsVUFBUTtBQUNUO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxPQUFLLElBQUk7QUFDVCxpQkFBZSxJQUFJO0FBQ25CLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLGtCQUFnQixJQUFJO0FBQ3JCO0FBRUEsQ0FBQztBQUNBLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0IsaUJBQWUsSUFBSTtBQUNuQixVQUFRO0FBQ1IsY0FBWSxJQUFJLEtBQUs7QUFDckIsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBRUEsQ0FUQyxhQVNhO0FBQ2IsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FkQyxhQWNhLENBQUM7QUFDZCxjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULHlCQUF1QjtBQUN2QixPQUFLLElBQUk7QUFDVjtBQUdBLE9BQU8sQ0FBQyxTQUFTLEVBQUU7QUFDbEIsR0F0SXFCO0FBdUlwQixvQkFBZ0I7QUFDakI7QUFFQSxHQTlIQTtBQStIQyxnQkFBWTtBQUNiO0FBRUEsR0E3RUE7QUE4RUMsZUFBVyxNQUFNO0FBQ2xCO0FBQ0Q7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLLElBQUk7QUFDVjtBQUVBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDaEIsaUJBQWUsSUFBSTtBQUNuQixXQUFTLElBQUk7QUFDYixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxPQUFLLElBQUk7QUFDVCxXQUFTLElBQUk7QUFDYixjQUFZLElBQUk7QUFDaEIsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBQUM7QUFDQSxRQUFNO0FBQ04sY0FBWTtBQUNiO0FBRUEsQ0FBQztBQUNBLGFBQVcsSUFBSTtBQUNmLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWCxXQUFTO0FBQ1Y7QUFFQSxDQUFDO0FBQ0EsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsV0FBUztBQUNULGNBQVksSUFBSTtBQUNqQjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUssSUFBSTtBQUNULGNBQVksSUFBSTtBQUNqQjtBQUVBLENBQUM7QUFDQSxXQUFTLElBQUk7QUFDYixjQUFZLElBQUk7QUFDaEIsaUJBQWUsSUFBSTtBQUNuQixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLFVBQVE7QUFDUixjQUFZLElBQUksS0FBSztBQUN0QjtBQUVBLENBVEMsdUJBU3VCO0FBQ3ZCLGNBQVksSUFBSTtBQUNoQixnQkFBYyxJQUFJO0FBQ25CO0FBRUEsQ0FkQyx3QkFjd0I7QUFDeEIsVUFBUSxFQUFFLEVBQUUsSUFBSSxZQUFZO0FBQzVCLFNBQU8sSUFBSTtBQUNYLGFBQVcsSUFBSTtBQUNoQjtBQUVBLENBcEJDLHdCQW9Cd0I7QUFDeEIsVUFBUTtBQUNSLFNBQU8sSUFBSTtBQUNYLGFBQVcsSUFBSTtBQUNoQjtBQUVBLENBbE5DLDBCQWtOMEIsQ0FBQyxlQUFlLENBdEoxQywwQkFzSnFFLENBQUM7QUFDbkUsU0FBTztBQUNYOzs7QUNoT0EsQ0FBQztBQUNBLGNBQVk7QUFDWixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsV0FBUztBQUNULGNBQVksSUFBSTtBQUNqQjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTCxXQUFTO0FBQ1QsaUJBQWU7QUFDZixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FYQyxnQkFXZ0I7QUFDaEIsaUJBQWU7QUFDaEI7QUFFQSxDQUFDO0FBQ0QsQ0FBQztBQUNELENBQUM7QUFDRCxDQUFDO0FBQ0EsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLO0FBQ047QUFFQSxDQVRDO0FBVUEsYUFBVztBQUNaO0FBRUEsQ0FaQztBQWFBLFFBQU07QUFDUDtBQUVBLENBZEM7QUFlQSxhQUFXO0FBQ1o7QUFFQSxDQXBDQyxpQkFvQ2lCO0FBQ2pCLGFBQVc7QUFDWCxlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQTFDQyxpQkEwQ2lCLEtBQUssQ0FBQztBQUN2QixXQUFTLFFBQVE7QUFDakIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWCxhQUFXO0FBQ1o7QUFFQSxDQW5EQyxpQkFtRGlCLEtBQUssQ0FBQztBQUN2QixTQUFPO0FBQ1AsVUFBUTtBQUNUO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxVQUFRO0FBQ1IsaUJBQWU7QUFDZixjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1gsVUFBUTtBQUNSLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLGFBQVc7QUFDWCxVQUFRO0FBQ1Q7QUFFQSxDQUFDO0FBQ0EsY0FBWTtBQUNiO0FBRUEsQ0FKQyxxQkFJcUIsQ0FBQztBQUN0QixVQUFRO0FBQ1IsV0FBUztBQUNWO0FBRUEsQ0FUQyxxQkFTcUIsQ0FBQztBQUN0QixPQUFLO0FBQ047QUFFQSxDQWJDLHFCQWFxQixFQUFFLENBVEQ7QUFVdEIsY0FBWTtBQUNiO0FBRUEsQ0FBQztBQUNBLGNBQVk7QUFDWixXQUFTO0FBQ1QsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLGVBQWE7QUFDYixXQUFTLFFBQVE7QUFDbEI7QUFFQSxDQVBDLGdCQU9nQixLQUFLO0FBQ3JCLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLGlCQUFlO0FBQ2Ysa0JBQWdCO0FBQ2pCO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQXhCQyxnQkF3QmdCLENBQUM7QUFDakIsb0JBQWtCLElBQUk7QUFDdEIsZUFBYSxJQUFJLE1BQU0sSUFBSTtBQUM1QjtBQUVBLENBN0JDLGdCQTZCZ0IsQ0FMQyxNQUtNLENBaEJ2QjtBQWlCQSxTQUFPLElBQUk7QUFDWjtBQUdBLENBdkR1QixhQXVEVCxDQWxEUyxxQkFrRGEsTUFBTSxDQUFDO0FBQzFDLGNBQVksVUFBVSxLQUFLO0FBQzVCO0FBRUEsQ0EzRHVCLGFBMkRULENBdERTLHFCQXNEYSxNQUFNLENBQUMsb0JBQXNCO0FBQ2hFLGFBQVcsT0FBTztBQUNuQjtBQUdBLFdBQVc7QUFDVjtBQUNDLGVBQVcsT0FBTztBQUNuQjtBQUNBO0FBQ0MsZUFBVyxPQUFPO0FBQ25CO0FBQ0Q7QUFFQSxDQXpFdUIsYUF5RVQsQ0FwRVMscUJBb0VhLE1BQU0sQ0FBQyxVQUFVLENBQUM7QUFDckQsYUFBVyxhQUFhLEdBQUcsT0FBTztBQUNuQztBQUdBLE9BQU8sQ0FBQyxTQUFTLEVBQUU7QUFDbEIsR0F6SkE7QUEwSkMsb0JBQWdCO0FBQ2hCLGlCQUFhO0FBQ2IsU0FBSztBQUNOO0FBRUEsR0FoSkE7QUFBQSxFQWlKQSxDQWhKQTtBQUFBLEVBaUpBLENBL0lBO0FBZ0pDLGVBQVc7QUFDWjtBQUVBLEdBN0dBO0FBOEdDLGdCQUFZO0FBQ1osZ0JBQVk7QUFDYjtBQUNEO0FBR0EsQ0FBQyxXQUFXLENBNUtYLGlCQTRLNkIsS0FBSyxDQUFDO0FBQ25DLGNBQVksSUFBSTtBQUNoQixnQkFBYyxJQUFJO0FBQ25CO0FBRUEsQ0FMQyxXQUtXLENBakxYLGlCQWlMNkIsS0FBSyxDQUFDLFVBQVk7QUFDL0MsZ0JBQWMsSUFBSTtBQUNsQixjQUFZLEVBQUUsRUFBRSxFQUFFLElBQUksSUFBSTtBQUMzQjtBQUdBLENBL0xDLDJCQStMMkIsTUFBTTtBQUNqQyxXQUFTO0FBQ1QsV0FBUztBQUNULGNBQVk7QUFDWixTQUFPLElBQUk7QUFDWCxjQUFZO0FBQ1osV0FBUztBQUNWO0FBR0EsQ0FBQztBQUNBLGNBQVk7QUFDWixXQUFTO0FBQ1QsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBUkMsNkJBUTZCLENBL0hQO0FBZ0l0QixVQUFRO0FBQ1IsV0FBUyxPQUFPO0FBQ2pCO0FBRUEsQ0FiQyw2QkFhNkIsQ0FwSVAsWUFvSW9CLEtBQUs7QUFDL0MsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDOUI7QUFHQSxDQWxCQyw2QkFrQjZCO0FBQzdCLFlBQVU7QUFDVixjQUFZLElBQUksS0FBSztBQUN0QjtBQUVBLENBdkJDLDZCQXVCNkIsTUFBTTtBQUNuQyxXQUFTO0FBQ1QsVUFBUTtBQUNSLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWjtBQUVBLENBOUJDLDZCQThCNkIsTUFBTSxLQUFLLFVBQVU7QUFDbEQsYUFBVyxXQUFXO0FBQ3RCLGNBQVksSUFBSTtBQUNqQjtBQUdBLENBcENDLDZCQW9DNkIsTUFBTSxDQUFDO0FBQ3BDLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWCxnQkFBYyxJQUFJO0FBQ25CO0FBRUEsQ0EvREMsV0ErRFcsQ0ExQ1gsNkJBMEN5QyxNQUFNLENBQUM7QUFDaEQsY0FBWSxJQUFJO0FBQ2hCLFdBQVM7QUFDVjs7O0FDeFBBLENBQUMsYUFBYSxDQUFDO0FBQ2QsUUFBTTtBQUNQO0FBR0EsQ0FMQztBQU1BLFNBQU87QUFDUCxlQUFhO0FBQ2IsZUFBYSxJQUFJLE1BQU0sSUFBSTtBQUMzQixVQUFRO0FBQ1IsY0FBWTtBQUNaLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsY0FBWSxJQUFJLEtBQUs7QUFDckIsWUFBVTtBQUNWLGFBQVc7QUFDWCxhQUFXO0FBQ1gsb0JBQWtCLElBQUk7QUFDdEIsU0FBTztBQUNSO0FBR0EsQ0FBQyxxQkFBcUIsQ0FBQyxlQUFlLENBdEJyQztBQXVCQSxTQUFPO0FBQ1AsV0FBUztBQUNULGdCQUFjO0FBQ2QsWUFBVTtBQUNYO0FBRUEsQ0FQQyxxQkFPcUIsQ0FBQyxnQkFBZ0IsQ0E3QnRDO0FBOEJBLFNBQU87QUFDUCxXQUFTO0FBQ1QsZ0JBQWM7QUFDZjtBQUdBLENBQUMsU0FBUyxDQXBDVDtBQXFDRCxDQUFDLFVBQVUsQ0FyQ1Y7QUFzQ0EsWUFBVTtBQUNWLFNBQU87QUFDUCxPQUFLO0FBQ0wsVUFBUTtBQUNSLFNBQU87QUFDUCxhQUFXO0FBQ1gsV0FBUztBQUNULGFBQVcsV0FBVztBQUN2QjtBQUVBLENBWkMsU0FZUyxDQTFCVCxxQkEwQitCLENBMUJULGVBMEJ5QixDQWhEL0M7QUFpREQsQ0FaQyxVQVlVLENBM0JWLHFCQTJCZ0MsQ0EzQlYsZUEyQjBCLENBakRoRDtBQWtERCxDQWJDLFVBYVUsQ0FBQyxlQUFlLENBNUJKLGVBNEJvQixDQWxEMUM7QUFtREEsU0FBTztBQUNQLGdCQUFjO0FBQ2QsYUFBVyxXQUFXO0FBQ3ZCO0FBRUEsQ0FwQkMsU0FvQlMsQ0FsQ1QscUJBa0MrQixDQTNCVCxnQkEyQjBCLENBeERoRDtBQXlERCxDQXBCQyxVQW9CVSxDQW5DVixxQkFtQ2dDLENBNUJWLGdCQTRCMkIsQ0F6RGpEO0FBMERELENBckJDLFVBcUJVLENBUkMsZUFRZSxDQTdCSixnQkE2QnFCLENBMUQzQztBQTJEQSxTQUFPLEtBQUssS0FBSyxFQUFFLElBQUk7QUFDdkIsYUFBVyxXQUFXO0FBQ3ZCO0FBR0EsQ0E1QkMsU0E0QlMsQ0ExQ1QscUJBMEMrQixDQW5DVCxlQW1DeUI7QUFDaEQsQ0E1QkMsVUE0QlUsQ0EzQ1YscUJBMkNnQyxDQXBDVixlQW9DMEI7QUFDakQsQ0E3QkMsVUE2QlUsQ0FoQkMsZUFnQmUsQ0FyQ0osZUFxQ29CO0FBQzFDLFdBQVM7QUFDVCxZQUFVO0FBQ1YsT0FBSztBQUNMLFFBQU07QUFDTixTQUFPO0FBQ1AsVUFBUTtBQUNSLG9CQUFrQixJQUFJO0FBQ3RCLFdBQVM7QUFDVCxXQUFTO0FBQ1QsY0FBWSxRQUFRLEtBQUs7QUFDMUI7QUFFQSxDQTNDQyxTQTJDUyxDQUFDO0FBQ1gsQ0EzQ0MsVUEyQ1UsQ0FEQTtBQUVWLFNBQU87QUFDUCxVQUFRO0FBQ1IsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDbEI7QUFFQSxDQXBEQyxTQW9EUyxDQUFDO0FBQ1gsQ0FwREMsVUFvRFUsQ0FEQTtBQUVWLFdBQVMsSUFBSTtBQUNkO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxVQUFRO0FBQ1IsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixjQUFZO0FBQ1osU0FBTyxJQUFJO0FBQ1gsV0FBUztBQUNWO0FBR0EsQ0FoQlc7QUFpQlYsV0FBUyxJQUFJO0FBQ2Isa0JBQWdCLElBQUk7QUFDcEIsZUFBYSxJQUFJO0FBQ2pCLGVBQWE7QUFDYixpQkFBZSxJQUFJLE1BQU0sSUFBSTtBQUM3QixXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLGVBQWE7QUFDYixhQUFXO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsV0FBUyxJQUFJO0FBQ2IsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLLElBQUk7QUFDVCxjQUFZO0FBQ1osa0JBQWdCLElBQUksSUFBSSx5QkFBeUIsRUFBRSxJQUFJO0FBQ3hEO0FBRUEsQ0FBQztBQUNBLFVBQVEsRUFBRSxFQUFFLElBQUk7QUFDaEIsV0FBUztBQUNULGFBQVc7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULG1CQUFpQjtBQUNqQixlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0Esa0JBQWdCO0FBQ2hCLGFBQVcsSUFBSTtBQUNoQjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsV0FBUyxJQUFJO0FBQ2IsaUJBQWU7QUFDZixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWCxhQUFXLElBQUk7QUFDaEI7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULG1CQUFpQjtBQUNqQixlQUFhO0FBQ2Q7QUFFQSxDQUFDLGVBQWUsS0FBSyxDQUFDO0FBQ3JCLFdBQVM7QUFDVCxlQUFhO0FBRWIsT0FBSztBQUNOO0FBRUEsQ0FBQyxTQUFTLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQztBQUN4QyxXQUFTO0FBQ1Y7QUFFQSxDQUpDLFNBSVMsS0FBSyxDQUFDLG9CQUFvQixDQUpLO0FBS3hDLFdBQVM7QUFDVjtBQUVBLENBSmdCO0FBS2YsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFFakIsZ0JBQWMsSUFBSTtBQUNuQjtBQUVBLENBaEJnQjtBQWlCZixXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNsQjtBQUVBLENBN0JzQjtBQThCckIsV0FBUztBQUNULG1CQUFpQjtBQUVqQixrQkFBZ0I7QUFDakI7QUFFQSxDQXBDc0IsYUFvQ1IsQ0FBQztBQUNkLGtCQUFnQjtBQUNoQixXQUFTLElBQUksTUFDWixJQUFJLElBQUksV0FBVyxFQUFFLElBQUksV0FBVyxFQUFFLElBQUksV0FBVyxFQUFFO0FBQ3hELGlCQUFlO0FBQ2hCO0FBRUEsQ0EzQ3NCLGFBMkNSLEtBQUssQ0FQSjtBQVFkLFdBQVM7QUFDVjtBQUVBLENBL0NzQixhQStDUixLQUFLLENBWEosUUFXYTtBQUMzQixXQUFTO0FBQ1Y7QUFFQSxDQW5Ec0IsY0FtRFAsS0FBSyxDQUFDO0FBQ3BCLHFCQUFtQjtBQUNwQjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUssSUFBSTtBQUNULGNBQVksSUFBSTtBQUNoQixpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSztBQUNOO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxjQUFZO0FBQ1osYUFBVztBQUNaO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLE9BQUs7QUFDTCxpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0FBQztBQUNELENBQUM7QUFDQSxvQkFBa0IsSUFBSTtBQUN0QixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsV0FBUyxJQUFJO0FBQ2IsU0FBTyxJQUFJO0FBQ1gsVUFBUTtBQUNSLGFBQVcsSUFBSTtBQUNoQjtBQUVBLENBWEMsZ0JBV2dCO0FBQ2pCLENBWEMsa0JBV2tCO0FBQ2xCLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FmQztBQWdCQSxvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUs7QUFDTjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUs7QUFDTjtBQUVBLENBQUM7QUFDQSxhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUjtBQUVBLENBQUM7QUFDQSxlQUFhO0FBQ2Q7QUFFQSxDQVJDLG1CQVFtQjtBQUNwQixDQVRDLG1CQVNtQjtBQUNuQixTQUFPO0FBQ1AsV0FBUyxJQUFJO0FBQ2IsaUJBQWU7QUFDZixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUCxXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNmLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLGNBQVk7QUFDWixPQUFLO0FBQ047QUFFQSxDQVBDLHFCQU9xQjtBQUNyQixRQUFNO0FBQ04sbUJBQWlCO0FBQ2xCO0FBRUEsQ0FBQztBQUNBLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWCxjQUFZO0FBQ1osV0FBUztBQUNULG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLG9CQUFrQixJQUFJO0FBQ3RCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWU7QUFDZixXQUFTLElBQUk7QUFDYixTQUFPLElBQUk7QUFDWCxVQUFRO0FBQ1IsYUFBVyxJQUFJO0FBQ2hCO0FBRUEsQ0FWQyxxQkFVcUI7QUFDckIsb0JBQWtCLElBQUk7QUFDdkI7QUFHQSxDQTVUQyxVQTRUVSxDQS9TQyxnQkErU2dCLENBalczQjtBQWtXQSxZQUFVO0FBQ1YsU0FBTztBQUNQLE9BQUs7QUFDTCxVQUFRO0FBQ1IsVUFBUTtBQUNSLFNBQU87QUFDUCxhQUFXO0FBQ1gsV0FBUztBQUNULG9CQUFrQixJQUFJO0FBQ3RCLGNBQVksS0FBSyxFQUFFLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUN2QztBQUVBLENBelVDLFVBeVVVLENBOVdWLGFBOFd3QixDQS9SZCxpQkErUmdDO0FBQzFDLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0E3VUMsVUE2VVUsQ0E5UFY7QUErUEEsa0JBQWdCLElBQUk7QUFDckI7QUFHQSxPQUFPLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRTtBQUM3QixHQUFDO0FBQ0Esb0JBQWdCO0FBQ2pCO0FBRUEsR0FBQztBQUNBLFdBQU87QUFDUCxlQUFXO0FBQ1gsWUFBUTtBQUNSLGtCQUFjO0FBQ2QsbUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDOUI7QUFFQSxHQUFDO0FBQ0EsV0FBTztBQUNQLFVBQU07QUFDUDtBQUVBLEdBellBO0FBMFlDLFdBQU87QUFDUCxlQUFXO0FBQ1gsaUJBQWE7QUFDZDtBQUNEO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSztBQUNMLGNBQVk7QUFDWixXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNmLGFBQVc7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQVhDLHlCQVd5QixDQUFDO0FBQzFCLGFBQVc7QUFDWjtBQUVBLENBZkMseUJBZXlCLENBQUM7QUFDMUIsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQXBCQyx3QkFvQndCLENBQUM7QUFDekIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN2QjtBQUVBLENBeEJDLHdCQXdCd0IsQ0FKQyxtQkFJbUIsQ0FUbEI7QUFVMUIsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBR0EsQ0E5QkMsd0JBOEJ3QixDQUFDO0FBQ3pCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdkI7QUFFQSxDQWxDQyx3QkFrQ3dCLENBSkMsbUJBSW1CLENBbkJsQjtBQW9CMUIsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQWpJQyxpQkFpSWlCLENBQUM7QUFDbEIsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNYLGNBQVk7QUFDWixjQUFZO0FBQ2I7QUFFQSxDQXhJQyxpQkF3SWlCLENBQUM7QUFDbEIsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNYLGNBQVk7QUFDWixjQUFZO0FBQ2I7QUFHQSxDQXREQyx3QkFzRHdCLENBQUM7QUFDekIsWUFBVTtBQUNWLE9BQUs7QUFDTCxRQUFNO0FBQ04sU0FBTztBQUNQLFdBQVM7QUFDVCxjQUFZO0FBQ1osV0FBUyxJQUFJO0FBQ2IsYUFBVztBQUNYLGVBQWE7QUFDYixZQUFVO0FBQ1YsaUJBQWU7QUFDaEI7QUFHQSxDQXJFQyx3QkFxRXdCLENBQUM7QUFDekIsWUFBVTtBQUNWLE9BQUs7QUFDTCxTQUFPO0FBQ1AsV0FBUyxJQUFJO0FBQ2IsYUFBVztBQUNYLGlCQUFlO0FBQ2YsV0FBUztBQUNWO0FBRUEsQ0EvRUMsd0JBK0V3QixDQVZDLGdCQVVnQixDQXBFZjtBQXFFMUIsYUFBVztBQUNaO0FBRUEsQ0FBQyxlQUFlLENBQUM7QUFDaEIsb0JBQWtCLElBQUk7QUFDdEIsV0FBUztBQUNWO0FBR0EsQ0FBQyxpQkFBaUIsQ0FBQztBQUNsQixZQUFVO0FBQ1g7QUFFQSxDQUpDLGlCQUlpQixDQUpDLGlCQUlpQixDQTdGbkM7QUE4RkEsY0FBWTtBQUNiOzs7QUMvZUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSztBQUNMLFdBQVM7QUFDVCxVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2Ysb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLO0FBQ047QUFFQSxDQUFDO0FBQ0EsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUs7QUFDTCxjQUFZO0FBQ1osZUFBYTtBQUNiLGNBQVksSUFBSSxNQUFNLElBQUk7QUFDM0I7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLO0FBQ047QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGNBQVk7QUFDWixjQUFZO0FBQ2I7QUFHQSxDQW5DQyx5QkFtQ3lCLENBQUM7QUFDMUIsU0FBTztBQUNSO0FBR0EsQ0FuQkMsbUJBbUJtQixDQUFDO0FBQ3BCLFNBQU87QUFDUCxXQUFTLElBQUk7QUFDYixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2Ysb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQTVCQyxtQkE0Qm1CLENBVEMsVUFTVTtBQUM5QixnQkFBYyxJQUFJO0FBQ2xCLFdBQVM7QUFDVCxjQUFZLEVBQUUsRUFBRSxFQUFFLElBQUksSUFBSTtBQUMzQjtBQUdBLENBbkNDLG1CQW1DbUIsQ0FBQztBQUNwQixXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTjtBQUdBLENBQUM7QUFDQSxlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGNBQVk7QUFDWixlQUFhO0FBQ2IsWUFBVTtBQUNWLGlCQUFlO0FBQ2YsYUFBVztBQUNaO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNiO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNiO0FBR0EsQ0EvR0MseUJBK0d5QixDQUFDO0FBQzFCLGdCQUFjLElBQUk7QUFDbEIsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQXBIQyx5QkFvSHlCLENBQUM7QUFDMUIsZ0JBQWMsSUFBSTtBQUNuQjtBQUVBLENBQUM7QUFDQSxhQUFXO0FBQ1gsY0FBWTtBQUNaLFdBQVMsSUFBSTtBQUNiLGlCQUFlO0FBQ2hCO0FBRUEsQ0FQQywrQkFPK0IsQ0FBQztBQUNoQyxTQUFPLElBQUk7QUFDWCxvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBWkMsK0JBWStCLENBQUM7QUFDaEMsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQUFDLGFBQWEsQ0F6SWI7QUEwSUEsY0FBWTtBQUNaLFVBQVE7QUFDUixvQkFBa0I7QUFDbEIsV0FBUztBQUNWO0FBRUEsQ0FQQyxhQU9hLENBakhiO0FBa0hBLGlCQUFlO0FBQ2hCO0FBR0EsT0FBTyxDQUFDLFNBQVMsRUFBRTtBQUNsQixHQXRKQTtBQXVKQyxhQUFTO0FBQ1QsU0FBSztBQUNOO0FBRUEsR0FySUE7QUFzSUMsU0FBSztBQUNOO0FBRUEsR0FqRkE7QUFrRkMsZUFBVztBQUNaO0FBQ0Q7QUFHQSxDQUFDLFdBQVcsQ0FyS1g7QUFzS0Esb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQUpDLFdBSVcsQ0ExSVgsbUJBMEkrQixDQXZIWDtBQXdIcEIsb0JBQWtCLElBQUk7QUFDdEIsZ0JBQWMsSUFBSTtBQUNuQjtBQUdBLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRTtBQUN6QixHQWhMQTtBQWlMQyxrQkFBYztBQUNmO0FBRUEsR0FySkEsbUJBcUpvQixDQWxJQTtBQW1JbkIsa0JBQWM7QUFDZjtBQUVBLEdBekpBLG1CQXlKb0IsQ0F0SUEsVUFzSVc7QUFDOUIsZ0JBQVksRUFBRSxFQUFFLEVBQUUsSUFBSSxJQUFJO0FBQzNCO0FBQ0Q7QUFHQSxDQXhLQztBQXlLQSxjQUFZLElBQUksS0FBSztBQUN0QjtBQUVBLENBbktDO0FBb0tBLFdBQVM7QUFDVCxhQUFXLFdBQVc7QUFDdEIsY0FBWSxRQUFRLEtBQUssV0FBVyxFQUFFLFVBQVUsS0FBSztBQUN0RDtBQUVBLENBektDLGtCQXlLa0IsQ0FBQztBQUNuQixXQUFTO0FBQ1QsYUFBVyxXQUFXO0FBQ3ZCO0FBRUEsQ0E5S0Msa0JBOEtrQixDQUFDO0FBQ25CLFdBQVM7QUFDVCxhQUFXLFdBQVc7QUFDdkI7QUFHQSxDQUFDO0FBQ0Esa0JBQWdCO0FBQ2hCLHNCQUFvQjtBQUNwQix1QkFBcUI7QUFDdEI7QUFFQSxDQU5DLG1CQU1tQixDQUFDO0FBQ3BCLFdBQVM7QUFDVCxjQUFZLElBQUk7QUFDaEIsY0FBWTtBQUNiO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxjQUFZO0FBQ1osY0FBWTtBQUNiO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxtQkFBaUI7QUFDakIsT0FBSztBQUNMLFdBQVMsS0FBSztBQUNkLGNBQVksSUFBSSxNQUFNLElBQUk7QUFDMUIsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQVRDLDJCQVMyQjtBQUMzQixhQUFXO0FBQ1o7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDZDtBQUVBLENBQUM7QUFDQSxXQUFTLElBQUk7QUFDYixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2Ysb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNiLGFBQVcsSUFBSTtBQUNmLFVBQVE7QUFDUixjQUFZLElBQUksTUFBTTtBQUN0QixhQUFXO0FBQ1gsY0FBWTtBQUNiO0FBRUEsQ0FkQyxpQ0FjaUM7QUFDakMsb0JBQWtCLElBQUk7QUFDdEIsZ0JBQWMsSUFBSTtBQUNuQjtBQUVBLENBbkJDLGlDQW1CaUM7QUFDakMsV0FBUztBQUNULGdCQUFjLElBQUk7QUFDbEIsY0FBWSxFQUFFLEVBQUUsRUFBRSxJQUFJLElBQUk7QUFDM0I7QUFFQSxDQXpCQyxpQ0F5QmlDO0FBQ2pDLG9CQUFrQixJQUFJO0FBQ3RCLGFBQVcsTUFBTTtBQUNsQjtBQUdBLE9BQU8sQ0FBQyxTQUFTLEVBQUU7QUFDbEIsR0FyRUE7QUFzRUMsb0JBQWdCO0FBQ2hCLHlCQUFxQjtBQUN0QjtBQUVBLEdBOURBO0FBK0RDLGFBQVM7QUFDVCxnQkFBWTtBQUNiO0FBRUEsR0E3REE7QUE4REMsYUFBUyxLQUFLO0FBQ2Qsb0JBQWdCO0FBQ2pCO0FBRUEsR0FsRUEsMkJBa0U0QjtBQUMzQixXQUFPO0FBQ1AsZUFBVztBQUNaO0FBQ0Q7OztBQzFTQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixVQUFRO0FBQ1IsaUJBQWU7QUFDZixjQUFZLGlCQUFpQixLQUFLO0FBQ25DO0FBRUEsQ0FSQyxzQkFRc0I7QUFDdEIsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQVpDLHNCQVlzQixDQUFDO0FBQ3ZCLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixZQUFVO0FBQ1g7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsU0FBTztBQUNQLFVBQVE7QUFDUixnQkFBYztBQUNkLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDZDtBQUVBLENBQUM7QUFDQSxRQUFNO0FBQ04sYUFBVztBQUNaO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWCxpQkFBZTtBQUNoQjtBQUVBLENBQUM7QUFDQSxhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBR0EsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDO0FBQ3BCLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNYLGlCQUFlO0FBQ2YsV0FBUyxJQUFJO0FBQ2Q7QUFHQSxDQUFDLHFCQUFxQixDQTdEckI7QUE4REEsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDOUI7QUFFQSxDQUpDLHFCQUlxQixDQWpFckIsc0JBaUU0QztBQUM1QyxpQkFBZTtBQUNoQjtBQUdBLENBQUMsV0FBVyxDQXRFWCxzQkFzRWtDO0FBQ2xDLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FKQyxXQUlXLENBMUVYLHNCQTBFa0MsQ0E5RFg7QUErRHZCLG9CQUFrQixJQUFJO0FBQ3ZCO0FBR0EsT0FBTyxDQUFDLGdCQUFnQixFQUFFO0FBQ3pCLEdBaEZBO0FBaUZDLFlBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsbUJBQWU7QUFDaEI7QUFFQSxHQXJGQSxzQkFxRnVCO0FBQUEsRUFDdkIsQ0F0RkEsc0JBc0Z1QixDQTFFQTtBQTJFdEIsa0JBQWMsSUFBSTtBQUNuQjtBQUNEOzs7QUN6RkEsQ0FBQztBQUNBLGFBQVc7QUFDWCxTQUFPO0FBQ1I7QUFFQSxDQUxDLGtCQUtrQixDQUFDO0FBQ25CLFdBQVM7QUFDVjtBQUdBLENBVkMsa0JBVWtCLENBQUM7QUFDbkIsaUJBQWU7QUFDaEI7QUFFQSxDQWRDLGtCQWNrQixDQUFDO0FBQ25CLGVBQWE7QUFDYixpQkFBZTtBQUNoQjtBQUVBLENBbkJDLGtCQW1Ca0IsQ0FBQztBQUNuQixXQUFTO0FBQ1QseUJBQXVCLE9BQU8sQ0FBQyxFQUFFO0FBQ2pDLE9BQUs7QUFDTjtBQUVBLE9BQU8sQ0FBQyxTQUFTLEVBQUU7QUFDbEIsR0ExQkEsa0JBMEJtQixDQVBBO0FBUWxCLDJCQUF1QjtBQUN4QjtBQUNEO0FBRUEsQ0EvQkMsa0JBK0JrQixDQUFDO0FBQ25CLFdBQVM7QUFDVCxXQUFTO0FBQ1QsaUJBQWUsSUFBSTtBQUNuQixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLG9CQUFrQixJQUFJO0FBQ3RCLFVBQVE7QUFDUixjQUFZLElBQUksS0FBSztBQUN0QjtBQUVBLENBekNDLGtCQXlDa0IsQ0FWQyxlQVVlO0FBQ2xDLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0E3Q0Msa0JBNkNrQixDQWRDLGVBY2UsQ0FBQztBQUNuQyxnQkFBYyxJQUFJO0FBQ2xCLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FsREMsa0JBa0RrQixDQUFDO0FBQ25CLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU87QUFDUCxVQUFRO0FBQ1IsaUJBQWU7QUFDZixvQkFBa0IsSUFBSTtBQUN0QixnQkFBYztBQUNmO0FBRUEsQ0E3REMsa0JBNkRrQixDQVhDLGdCQVdnQjtBQUNuQyxTQUFPO0FBQ1AsVUFBUTtBQUNSLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FuRUMsa0JBbUVrQixDQUFDO0FBQ25CLFFBQU07QUFDTixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2pCO0FBRUEsQ0F6RUMsa0JBeUVrQixDQUFDO0FBQ25CLGVBQWE7QUFDYixpQkFBZTtBQUNoQjtBQUVBLENBOUVDLGtCQThFa0IsQ0FBQztBQUNuQixhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQXBGQyxrQkFvRmtCLENBQUM7QUFDcEIsQ0FyRkMsa0JBcUZrQixDQUFDO0FBQ25CLGlCQUFlO0FBQ2hCO0FBR0EsQ0ExRkMsa0JBMEZrQixDQUFDO0FBQ25CLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU87QUFDUCxVQUFRO0FBQ1IsZUFBYTtBQUNiLG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlO0FBQ2hCO0FBRUEsQ0FyR0Msa0JBcUdrQixDQVhDLG1CQVdtQjtBQUN0QyxTQUFPO0FBQ1AsVUFBUTtBQUNUO0FBR0EsQ0EzR0Msa0JBMkdrQixDQUFDO0FBQ25CLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixXQUFTO0FBQ1QsaUJBQWU7QUFDZixjQUFZO0FBQ2I7QUFFQSxDQW5IQyxrQkFtSGtCLENBQUM7QUFDbkIsV0FBUztBQUNULGVBQWE7QUFDYixpQkFBZTtBQUNoQjtBQUVBLENBekhDLGtCQXlIa0IsQ0FBQztBQUNuQixTQUFPO0FBQ1AsZ0JBQWM7QUFDZCxhQUFXO0FBQ1o7QUFFQSxDQS9IQyxrQkErSGtCLENBQUM7QUFDbkIsVUFBUSxFQUFFO0FBQ1YsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQXBJQyxrQkFvSWtCLENBQUM7QUFDbkIsUUFBTTtBQUNOLGFBQVc7QUFDWCxnQkFBYyxJQUFJO0FBQ25CO0FBRUEsQ0ExSUMsa0JBMElrQixDQUFDO0FBQ25CLGNBQVk7QUFDWixVQUFRO0FBQ1IsU0FBTyxJQUFJO0FBQ1gsVUFBUTtBQUNSLGFBQVc7QUFDWCxXQUFTLEVBQUU7QUFDWjtBQUVBLENBbkpDLGtCQW1Ka0IsQ0FBQztBQUNuQixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWCxVQUFRO0FBQ1IsaUJBQWUsSUFBSTtBQUNuQixXQUFTLElBQUk7QUFDYixVQUFRO0FBQ1IsYUFBVztBQUNaO0FBR0EsQ0E5SkMsa0JBOEprQixDQUFDO0FBQ25CLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixXQUFTO0FBQ1QsaUJBQWU7QUFDZixjQUFZO0FBQ2I7QUFFQSxDQXRLQyxrQkFzS2tCLENBQUM7QUFDbkIsV0FBUztBQUNULGlCQUFlO0FBQ2YsT0FBSztBQUNOO0FBRUEsQ0E1S0Msa0JBNEtrQixDQUFDO0FBQ25CLFNBQU87QUFDUCxhQUFXO0FBQ1o7QUFFQSxDQWpMQyxrQkFpTGtCLENBQUM7QUFDbkIsUUFBTTtBQUNOLGFBQVc7QUFDWjtBQUVBLENBdExDLGtCQXNMa0IsQ0FBQztBQUNuQixTQUFPO0FBQ1AsYUFBVztBQUNaO0FBRUEsQ0EzTEMsa0JBMkxrQixDQUFDO0FBQ25CLGNBQVk7QUFDWixVQUFRO0FBQ1IsU0FBTyxJQUFJO0FBQ1gsVUFBUTtBQUNSLGFBQVc7QUFDWCxXQUFTLEVBQUU7QUFDWjtBQUVBLENBcE1DLGtCQW9Na0IsQ0FBQztBQUNuQixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWCxVQUFRO0FBQ1IsaUJBQWUsSUFBSTtBQUNuQixXQUFTLElBQUk7QUFDYixVQUFRO0FBQ1IsYUFBVztBQUNaO0FBR0EsQ0EvTUMsa0JBK01rQixDQUFDO0FBQ25CLFdBQVM7QUFDVCxtQkFBaUI7QUFDakIsT0FBSztBQUNMLGNBQVk7QUFDYjtBQUVBLENBdE5DLGtCQXNOa0IsQ0FBQztBQUNuQixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWCxVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDbkIsV0FBUyxJQUFJO0FBQ2IsVUFBUTtBQUNUO0FBRUEsQ0EvTkMsa0JBK05rQixDQUFDO0FBQ25CLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNYLFVBQVE7QUFDUixpQkFBZSxJQUFJO0FBQ25CLFdBQVMsSUFBSTtBQUNiLFVBQVE7QUFDVDtBQUdBLENBek9DLGtCQXlPa0IsS0FBSyxDQUFDO0FBQ3pCLENBMU9DLGtCQTBPa0IsS0FBSyxDQUFDO0FBQ3hCLG9CQUFrQixJQUFJO0FBQ3RCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixXQUFTO0FBQ1QsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQWxQQyxrQkFrUGtCLENBbk5DLGVBbU5lLENBck1DLFNBcU1TLENBcEt6QjtBQXFLcEIsQ0FuUEMsa0JBbVBrQixDQXBOQyxlQW9OZSxDQXRNQyxTQXNNUyxDQTFLekI7QUEyS25CLFNBQU8sSUFBSTtBQUNaOzs7QUN0UEEsQ0FBQztBQUNBLFdBQVM7QUFDVCxTQUFPO0FBQ1I7QUFFQSxDQUFDO0FBQ0EsZUFBYTtBQUNiLGNBQVksSUFBSSxNQUFNLElBQUk7QUFDM0I7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULG1CQUFpQjtBQUNqQixpQkFBZTtBQUNoQjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTCxXQUFTLElBQUk7QUFDYixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWCxpQkFBZSxJQUFJO0FBQ25CLFVBQVE7QUFDUixhQUFXO0FBQ1o7QUFFQSxDQVpDLGlCQVlpQjtBQUNqQixTQUFPO0FBQ1AsVUFBUTtBQUNUO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixjQUFZO0FBQ1osY0FBWTtBQUNaLFdBQVM7QUFDVCxVQUFRLElBQUksT0FBTyxJQUFJO0FBQ3ZCLGlCQUFlLElBQUk7QUFDbkIsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQWJDLGtCQWFrQjtBQUNsQixVQUFRLEVBQUUsRUFBRSxLQUFLO0FBQ2pCLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWjtBQUVBLENBbkJDLGtCQW1Ca0I7QUFDbEIsVUFBUTtBQUNSLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSztBQUNOO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsV0FBUztBQUNULGlCQUFlLElBQUk7QUFDbkIsb0JBQWtCLElBQUk7QUFDdEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixjQUFZLGlCQUFpQixLQUFLO0FBQ2xDLFVBQVE7QUFDUixVQUFRO0FBQ1Q7QUFFQSxDQVpDLFVBWVU7QUFDVixvQkFBa0IsSUFBSTtBQUN2QjtBQUdBLENBQUM7QUFDQSxlQUFhO0FBQ2IsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsU0FBTztBQUNQLFVBQVE7QUFDUixpQkFBZTtBQUNmLG9CQUFrQixJQUFJO0FBQ3RCLGdCQUFjO0FBQ2Y7QUFFQSxDQVpDLGdCQVlnQjtBQUNoQixTQUFPLElBQUk7QUFDWjtBQUdBLENBQUM7QUFDQSxRQUFNO0FBQ04sYUFBVztBQUNaO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDYixpQkFBZTtBQUNmLGFBQVc7QUFDWCxlQUFhO0FBQ2IsWUFBVTtBQUNWLGlCQUFlO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWCxlQUFhO0FBQ2IsWUFBVTtBQUNWLGlCQUFlO0FBQ2YsaUJBQWU7QUFDaEI7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGFBQVc7QUFDWCxXQUFTLElBQUk7QUFDYixpQkFBZSxJQUFJO0FBQ25CLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxPQUFLO0FBQ0wsZUFBYTtBQUNkO0FBRUEsQ0FBQztBQUNELENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixTQUFPO0FBQ1AsVUFBUTtBQUNSLGlCQUFlO0FBQ2Ysb0JBQWtCLElBQUk7QUFDdEIsVUFBUTtBQUNSLFdBQVM7QUFDVCxVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3ZCO0FBRUEsQ0FkQyxpQkFjaUI7QUFDbEIsQ0FkQyxtQkFjbUI7QUFDbkIsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQW5CQyxrQkFtQmtCO0FBQ25CLENBbkJDLG9CQW1Cb0I7QUFDcEIsU0FBTztBQUNQLFVBQVE7QUFDUixTQUFPLElBQUk7QUFDWjtBQUVBLENBekJDLG1CQXlCbUIsT0FBTztBQUMxQixTQUFPLElBQUk7QUFDWjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLE9BQUs7QUFDTCxjQUFZO0FBQ2I7QUFFQSxDQUFDO0FBQ0Esb0JBQWtCLElBQUk7QUFDdEIsU0FBTztBQUNQLFVBQVE7QUFDUixpQkFBZSxJQUFJO0FBQ25CLFdBQVMsSUFBSTtBQUNiLFVBQVE7QUFDVDs7O0FDdkxBLENBQUM7QUFDQSxhQUFXO0FBQ1gsVUFBUSxFQUFFO0FBQ1g7QUFHQSxDQUFDO0FBQ0EsaUJBQWU7QUFDZixpQkFBZSxJQUFJLE1BQU0sSUFBSTtBQUM3QixrQkFBZ0I7QUFDakI7QUFFQSxDQUFDO0FBQ0EsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLFVBQVE7QUFDUixXQUFTLE9BQU87QUFDaEIsaUJBQWU7QUFDZixVQUFRO0FBQ1IsaUJBQWU7QUFDZixhQUFXO0FBQ1gsY0FBWSxJQUFJLEtBQUs7QUFDdEI7QUFFQSxDQVpDLGVBWWU7QUFDZixjQUFZLElBQUk7QUFDaEIsYUFBVyxXQUFXO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLFNBQU8sSUFBSTtBQUNYLGNBQVk7QUFDWixlQUFhO0FBQ2Q7QUFHQSxDQUFDO0FBQ0EsaUJBQWU7QUFDZixXQUFTO0FBQ1QsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLGNBQVksSUFBSTtBQUNqQjtBQUdBLENBQUM7QUFDQSxjQUFZO0FBQ2I7QUFFQSxDQUpDLGlCQUlpQjtBQUNqQixpQkFBZTtBQUNmLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGlCQUFlO0FBQ2YsV0FBUztBQUNULFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWU7QUFDZixjQUFZLElBQUk7QUFDaEIsY0FBWSxJQUFJLEtBQUs7QUFDdEI7QUFFQSxDQVRDLGVBU2U7QUFDZixnQkFBYyxJQUFJO0FBQ2xCLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLGVBQWE7QUFDYixpQkFBZTtBQUNoQjtBQUVBLENBQUMsaUJBQWlCO0FBQ2pCLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTLE9BQU87QUFDaEIsaUJBQWU7QUFDZixhQUFXO0FBQ1gsZUFBYTtBQUNiLGtCQUFnQjtBQUNoQixrQkFBZ0I7QUFDakI7QUFFQSxDQUFDO0FBQ0EsY0FBWSxJQUFJO0FBQ2hCLFNBQU87QUFDUjtBQUVBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDaEIsU0FBTztBQUNSO0FBRUEsQ0FBQztBQUNBLGlCQUFlO0FBQ2YsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDZDtBQUVBLENBUEMsbUJBT21CO0FBQ25CLGlCQUFlO0FBQ2hCO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxtQkFBaUI7QUFDakIsZUFBYTtBQUNiLE9BQUs7QUFDTjtBQUVBLENBQUM7QUFDRCxDQUFDO0FBQ0EsV0FBUztBQUNULE9BQUs7QUFDTjtBQUVBLENBYkMsbUJBYW1CO0FBQ25CLFdBQVMsT0FBTztBQUNoQixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWCxVQUFRO0FBQ1IsY0FBWSxJQUFJLEtBQUs7QUFDckIsYUFBVztBQUNYLGVBQWE7QUFDZDtBQUVBLENBMUJDLG1CQTBCbUIsTUFBTTtBQUN6QixjQUFZLElBQUk7QUFDaEIsZ0JBQWMsSUFBSTtBQUNsQixhQUFXLFdBQVc7QUFDdkI7QUFFQSxDQWhDQyxtQkFnQ21CLE1BQU0sQ0FBQztBQUMxQixjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1gsZ0JBQWMsSUFBSTtBQUNuQjtBQUVBLENBdENDLG1CQXNDbUIsTUFBTSxDQU5DLE9BTU87QUFDakMsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0ExQ0MsbUJBMENtQixNQUFNLENBQUM7QUFDMUIsY0FBWSxJQUFJO0FBQ2hCLFNBQU87QUFDUCxnQkFBYyxJQUFJO0FBQ25CO0FBRUEsQ0FoREMsbUJBZ0RtQixNQUFNLENBTkMsV0FNVztBQUNyQyxjQUFZLElBQUk7QUFDaEIsV0FBUztBQUNWO0FBRUEsQ0FyREMsbUJBcURtQixNQUFNO0FBQ3pCLFdBQVM7QUFDVCxVQUFRO0FBQ1IsYUFBVztBQUNaO0FBRUEsQ0EzREMsbUJBMkRtQixNQUFNLENBQUM7QUFDMUIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQS9EQyxtQkErRG1CLE1BQU0sQ0FBQztBQUMxQixjQUFZLElBQUk7QUFDaEIsU0FBTztBQUNQLGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQXJFQyxtQkFxRW1CLE1BQU0sQ0FBQztBQUMxQixjQUFZLElBQUk7QUFDaEIsU0FBTztBQUNQLGdCQUFjLElBQUk7QUFDbkI7QUFHQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLGNBQVk7QUFDWixXQUFTO0FBQ1QsVUFBUSxJQUFJLE9BQU8sSUFBSTtBQUN2QixpQkFBZTtBQUNmLGNBQVksSUFBSTtBQUNoQixjQUFZLElBQUksS0FBSztBQUN0QjtBQUVBLENBVkMsd0JBVXdCO0FBQ3hCLGdCQUFjLElBQUk7QUFDbEIsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FmQyx5QkFleUI7QUFDekIsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLFVBQVE7QUFDUixXQUFTLE9BQU87QUFDaEIsaUJBQWU7QUFDZixlQUFhO0FBQ2IsVUFBUTtBQUNSLGNBQVksSUFBSSxLQUFLO0FBQ3JCLGFBQVc7QUFDWjtBQUVBLENBM0JDLHlCQTJCeUIsTUFBTTtBQUMvQixjQUFZLElBQUk7QUFDaEIsYUFBVyxXQUFXO0FBQ3ZCO0FBR0EsQ0FBQztBQUNBLGNBQVk7QUFDWixjQUFZO0FBQ1osV0FBUztBQUNULFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWU7QUFDZixjQUFZLElBQUk7QUFDakI7QUFFQSxDQUFDO0FBQ0EsY0FBWSxJQUFJO0FBQ2hCLFNBQU87QUFDUCxVQUFRO0FBQ1IsV0FBUyxPQUFPO0FBQ2hCLGlCQUFlO0FBQ2YsZUFBYTtBQUNiLFVBQVE7QUFDUixjQUFZLElBQUksS0FBSztBQUNyQixhQUFXO0FBQ1o7QUFFQSxDQVpDLGVBWWU7QUFDZixjQUFZLElBQUk7QUFDaEIsV0FBUztBQUNULGFBQVcsV0FBVztBQUN2QjtBQUdBLENBQUM7QUFDQSxjQUFZO0FBQ1osV0FBUyxLQUFLO0FBQ2QsU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNaLGNBQVksSUFBSTtBQUNoQixpQkFBZTtBQUNmLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdkI7QUFHQSxDQUFDLGlCQUFpQixDQUFDO0FBQ2xCLGFBQVc7QUFDWCxjQUFZO0FBQ1osY0FBWTtBQUNiO0FBRUEsQ0FBQztBQUNBLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsT0FBSztBQUNMLG1CQUFpQjtBQUNqQixjQUFZO0FBQ1osZUFBYTtBQUNiLGNBQVksSUFBSSxNQUFNLElBQUk7QUFDM0I7QUFFQSxDQVRDLHVCQVN1QjtBQUN2QixXQUFTLE9BQU87QUFDaEIsaUJBQWU7QUFDZixhQUFXO0FBQ1gsYUFBVztBQUNaO0FBR0EsT0FBTyxDQUFDLFNBQVMsRUFBRTtBQUNsQixHQTNOQTtBQTROQyxvQkFBZ0I7QUFDaEIsaUJBQWE7QUFDYixTQUFLO0FBQ047QUFFQSxHQXRMQTtBQXVMQyxvQkFBZ0I7QUFDaEIsU0FBSztBQUNOO0FBRUEsR0FwTEE7QUFBQSxFQXFMQSxDQXBMQTtBQXFMQyxXQUFPO0FBQ1AscUJBQWlCO0FBQ2xCO0FBRUEsR0FqTUEsbUJBaU1vQjtBQUNuQixVQUFNO0FBQ04sZUFBVztBQUNaO0FBQ0Q7QUFFQSxPQUFPLENBQUMsU0FBUyxFQUFFO0FBQ2xCLEdBalFBO0FBa1FDLGFBQVM7QUFDVjtBQUVBLEdBck1BO0FBQUEsRUFzTUEsQ0FyTUE7QUFzTUMsb0JBQWdCO0FBQ2pCO0FBRUEsR0FqTkEsbUJBaU5vQjtBQUNuQixXQUFPO0FBQ1AsbUJBQWU7QUFDaEI7QUFFQSxHQXhEQTtBQXlEQyxvQkFBZ0I7QUFDakI7QUFFQSxHQTVEQSx1QkE0RHdCO0FBQ3ZCLFdBQU87QUFDUjtBQUNEO0FBR0EsQ0FBQztBQUNBLFVBQVEsS0FBSztBQUNkO0FBRUEsQ0FBQztBQUNBLGNBQVk7QUFDWixXQUFTO0FBQ1QsU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNaLGNBQVksSUFBSTtBQUNoQixpQkFBZTtBQUNmLFVBQVEsSUFBSSxPQUFPLElBQUk7QUFDeEI7QUFFQSxDQUFDO0FBQ0EsaUJBQWU7QUFDZixXQUFTO0FBQ1QsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLGNBQVksSUFBSTtBQUNoQixjQUFZLElBQUksS0FBSztBQUN0QjtBQUVBLENBVEMscUJBU3FCO0FBQ3JCLGdCQUFjLElBQUk7QUFDbEIsY0FBWSxFQUFFLElBQUksSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFO0FBQ3JDO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxtQkFBaUI7QUFDakIsZUFBYTtBQUNiLGlCQUFlO0FBQ2hCO0FBRUEsQ0FQQyx3QkFPd0I7QUFDeEIsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNaO0FBRUEsQ0FBQztBQUNBLFdBQVMsT0FBTztBQUNoQixpQkFBZTtBQUNmLGFBQVc7QUFDWCxlQUFhO0FBQ2Isa0JBQWdCO0FBQ2hCLGtCQUFnQjtBQUNqQjtBQUVBLENBVEMsdUJBU3VCLENBQUM7QUFDeEIsY0FBWSxJQUFJO0FBQ2hCLFNBQU87QUFDUjtBQUVBLENBZEMsdUJBY3VCLENBQUM7QUFDeEIsY0FBWSxJQUFJO0FBQ2hCLFNBQU87QUFDUjtBQUVBLENBQUM7QUFDQSxpQkFBZTtBQUNmLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQVBDLHlCQU95QjtBQUN6QixpQkFBZTtBQUNoQjtBQUVBLENBQUM7QUFDQSxlQUFhLElBQUk7QUFDakIsY0FBWSxJQUFJO0FBQ2hCLFdBQVMsT0FBTztBQUNoQixpQkFBZTtBQUNmLFdBQVM7QUFDVCxlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsZUFBYSxJQUFJO0FBQ2pCLGNBQVksSUFBSTtBQUNoQixXQUFTLE9BQU87QUFDaEIsaUJBQWU7QUFDZixXQUFTO0FBQ1QsZUFBYTtBQUNkO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxPQUFLO0FBQ0wsYUFBVztBQUNaO0FBRUEsQ0FOQyx5QkFNeUI7QUFDekIsV0FBUyxPQUFPO0FBQ2hCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWU7QUFDZixjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNYLFVBQVE7QUFDUixjQUFZLElBQUksS0FBSztBQUN0QjtBQUVBLENBakJDLHlCQWlCeUIsTUFBTTtBQUMvQixjQUFZLElBQUk7QUFDaEIsZ0JBQWMsSUFBSTtBQUNuQjtBQUVBLENBdEJDLHlCQXNCeUIsTUFBTSxDQTlTTDtBQStTMUIsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQTVCQyx5QkE0QnlCLE1BQU0sQ0ExU0w7QUEyUzFCLGNBQVksSUFBSTtBQUNoQixTQUFPO0FBQ1AsZ0JBQWMsSUFBSTtBQUNuQjtBQUVBLENBQUM7QUFDQSxjQUFZO0FBQ1osY0FBWTtBQUNiO0FBRUEsQ0FMQyxxQkFLcUI7QUFDckIsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLFVBQVE7QUFDUixXQUFTLE9BQU87QUFDaEIsaUJBQWU7QUFDZixlQUFhO0FBQ2IsVUFBUTtBQUNSLGNBQVksSUFBSSxLQUFLO0FBQ3RCO0FBRUEsQ0FoQkMscUJBZ0JxQixNQUFNO0FBQzNCLGNBQVksSUFBSTtBQUNoQixhQUFXLFdBQVc7QUFDdkI7QUFHQSxDQUFDLHVCQUF1QixDQTVOTDtBQTZObEIsYUFBVztBQUNYLGNBQVk7QUFDWixjQUFZO0FBQ2I7QUFFQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLFdBQVM7QUFDVCxjQUFZLElBQUk7QUFDaEIsaUJBQWU7QUFDZixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGVBQWEsSUFBSTtBQUNqQixhQUFXO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsZUFBYTtBQUNkO0FBR0EsQ0FyQkMsdUJBcUJ1QjtBQUN2QixVQUFRLE9BQU87QUFDZixnQkFBYztBQUNmO0FBRUEsQ0ExQkMsdUJBMEJ1QjtBQUN2QixpQkFBZTtBQUNmLGVBQWE7QUFDZDtBQUVBLENBL0JDLHVCQStCdUI7QUFDdkIsY0FBWSxJQUFJO0FBQ2hCLFdBQVMsT0FBTztBQUNoQixpQkFBZTtBQUNmLGVBQWEsSUFBSTtBQUNqQixhQUFXO0FBQ1o7QUFHQSxXQUFXO0FBQ1Y7QUFDQyxlQUFXLE9BQU87QUFDbkI7QUFDQTtBQUNDLGVBQVcsT0FBTztBQUNuQjtBQUNEO0FBRUEsQ0FqYUMsbUJBaWFtQixNQUFNLENBdFdDLE9Bc1dPO0FBQ2pDLFdBQVM7QUFDVCxXQUFTO0FBQ1QsZ0JBQWM7QUFDZCxhQUFXLEtBQUssR0FBRyxPQUFPO0FBQzNCO0FBRUEsQ0FBQztBQUNELENBclJDO0FBc1JBLGFBQVc7QUFDWCxjQUFZO0FBRVosaUJBQWU7QUFDaEI7QUFFQSxDQVJDLDJCQVEyQixDQTVSVDtBQTZSbkIsQ0E3UkMsaUJBNlJpQixDQTdSQztBQThSbEIsaUJBQWUsSUFBSTtBQUNwQjs7O0FDcGlCQSxDQUFDO0FBQ0EsV0FBUyxJQUFJLFlBQVksSUFBSTtBQUM3QixrQkFBZ0IsSUFBSTtBQUNwQixnQkFBYyxJQUFJO0FBQ2xCLG9CQUFrQixJQUFJO0FBQ3RCLGNBQVksSUFBSSxNQUFNLElBQUk7QUFDMUIsV0FBUztBQUNULGtCQUFnQjtBQUNoQixjQUFZO0FBQ1osY0FBWTtBQUNiO0FBRUEsQ0FBQztBQUNBLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDZDtBQUVBLENBakJDLGtCQWlCa0IsRUFBRSxDQUFDO0FBQ3JCLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNsQjtBQUVBLENBQUM7QUFDQSxhQUFXLElBQUk7QUFDZixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUs7QUFDTjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2pCO0FBRUEsQ0FMQyxvQkFLb0I7QUFDcEIsYUFBVztBQUNYLFVBQVEsSUFBSTtBQUNaLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FYQyxtQkFXbUI7QUFDbkIsaUJBQWU7QUFDaEI7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ047QUFFQSxDQU5DLG1CQU1tQixLQUFLLENBQUM7QUFDekIsVUFBUTtBQUNUO0FBRUEsQ0FWQyxtQkFVbUI7QUFDbkIsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxtQkFBaUI7QUFDakIsT0FBSztBQUNMLGNBQVk7QUFDWixlQUFhO0FBQ2IsY0FBWSxJQUFJLE1BQU0sSUFBSTtBQUMzQjtBQUVBLENBQUM7QUFDRCxDQUFDO0FBQ0EsV0FBUyxJQUFJO0FBQ2IsaUJBQWU7QUFDZixhQUFXO0FBQ1gsVUFBUTtBQUNUO0FBRUEsQ0FSQztBQVNBLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FqQkM7QUFrQkEsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsU0FBTztBQUNQLGFBQVc7QUFDWCxpQkFBZTtBQUNmLFdBQVMsSUFBSTtBQUNiLGVBQWEsSUFBSTtBQUNqQixhQUFXO0FBQ1o7QUFFQSxDQVRDLHVCQVN1QjtBQUN2QixjQUFZLEVBQUUsRUFBRSxFQUFFLElBQUksSUFBSTtBQUMxQixXQUFTO0FBQ1Y7QUFFQSxDQTVFQyxvQkE0RW9CLENBQUM7QUFDckIsY0FBWTtBQUNaLGlCQUFlO0FBQ2YsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDZDtBQUVBLENBMUZDO0FBMkZBLGNBQVk7QUFDWixjQUFZO0FBQ1osaUJBQWU7QUFDaEI7QUFFQSxDQWhHQztBQWlHQSxpQkFBZTtBQUNmLGVBQWEsSUFBSTtBQUNsQjs7O0FDcElBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixVQUFRLElBQUksWUFBWTtBQUN4QixTQUFPLElBQUk7QUFDWCxhQUFXLElBQUk7QUFDaEI7QUFFQSxDQVRDLHNCQVNzQjtBQUN2QixDQVZDLHNCQVVzQjtBQUN0QixXQUFTO0FBQ1QsYUFBVztBQUNYLFVBQVE7QUFDUixvQkFBa0IsS0FDakI7QUFFRCxVQUFRLEVBQUUsSUFBSTtBQUNmO0FBRUEsQ0FBQztBQUNBLFVBQVE7QUFDUixXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNsQjtBQUdBLENBQUM7QUFDQSxXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGNBQVk7QUFDWixVQUFRO0FBQ1IsZUFBYSxJQUFJO0FBQ2pCLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLE9BQUssSUFBSTtBQUVULHNCQUFvQjtBQUNwQixXQUFTO0FBQ1QsWUFBVTtBQUNWLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWCxhQUFXLElBQUk7QUFDZixpQkFBZSxJQUFJO0FBQ25CLFdBQVMsSUFBSTtBQUNiLGVBQWEsSUFBSTtBQUNqQixVQUFRLElBQUk7QUFDWixlQUFhO0FBQ2IsT0FBSyxJQUFJO0FBRVQsY0FBWTtBQUNiO0FBRUEsQ0ExQkMsV0EwQlc7QUFDWCxjQUFZO0FBQ1osV0FBUyxJQUFJO0FBQ2Isb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0QsQ0FBQztBQUNBLGFBQVcsSUFBSTtBQUNmLFVBQVEsSUFBSTtBQUNaLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsY0FBWTtBQUNiO0FBRUEsQ0FQQyxjQU9jO0FBQ2QsY0FBWTtBQUNiO0FBRUEsQ0FBQztBQUNBLGFBQVcsSUFBSTtBQUNoQjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsb0JBQWtCLEtBQ2pCO0FBRUY7QUFHQSxDQUFDLDBCQUEwQixDQUFDO0FBQzNCLFdBQVMsSUFBSTtBQUNiLGFBQVc7QUFDWCxjQUFZO0FBQ2I7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLFdBQVMsSUFBSTtBQUNiLGlCQUFlLElBQUk7QUFDcEI7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGFBQVc7QUFDWCxvQkFBa0IsSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLGNBQVksSUFBSTtBQUNoQixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3ZCO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSztBQUNOO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSztBQUNMLFdBQVM7QUFDVCxvQkFBa0IsS0FDakIsMEJBQTBCLEVBQzFCLElBQUk7QUFFTCxpQkFBZSxJQUFJO0FBQ25CLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBRUEsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUVBLFNBQU87QUFDUCxVQUFRLElBQUksTUFBTSxJQUFJLG9CQUFvQixFQUFFLElBQUk7QUFFakQ7QUFFQSxDQVBDLHFCQU9xQjtBQUNyQixnQkFBYyxJQUFJO0FBQ2xCLGNBQVksRUFBRSxFQUFFLEVBQUUsSUFBSSxJQUFJO0FBQzNCO0FBRUEsQ0FBQztBQUVBLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSyxJQUFJO0FBRVQsY0FBWTtBQUNaLFlBQVU7QUFDWDtBQUdBLENBQUM7QUFDQSxXQUFTLElBQUk7QUFDYixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDbkIsb0JBQWtCLElBQUk7QUFDdEIsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLLElBQUk7QUFDVjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNsQjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTjtBQUVBLENBTkMseUJBTXlCLENBQUMsc0JBQXNCLENBQUM7QUFDakQsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQVZDLHlCQVV5QixDQUpDLHFCQUlxQixPQUFPLENBSkw7QUFLakQsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQWRDLHlCQWN5QixDQVJDO0FBUzFCLGlCQUFlLElBQUk7QUFDcEI7QUFFQSxDQWxCQyx5QkFrQnlCLEVBQUUsQ0EzSDNCO0FBNEhELENBbkJDLHlCQW1CeUIsRUFBRSxJQUFJLENBNUgvQjtBQTZIQSxlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQXhCQyx5QkF3QnlCLENBQUMsc0JBQXNCLENBNUloRDtBQTZJQSxVQUFRLElBQUksTUFBTSxJQUFJLG9CQUFvQixFQUFFLElBQUk7QUFDakQ7QUFFQSxDQTVCQyx5QkE0QnlCLENBSkMsc0JBSXNCLENBaEpoRCxjQWdKK0Q7QUFDL0QsZ0JBQWMsSUFBSTtBQUNsQixjQUFZLEVBQUUsRUFBRSxFQUFFLElBQUksSUFBSTtBQUMzQjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTjtBQUVBLENBTkMsMEJBTTBCLENBQUMsbUJBQW1CLENBQUM7QUFDaEQsQ0FQQywwQkFPMEIsQ0FBQyxnQkFBZ0IsQ0FESTtBQUUvQyxpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0FYQywwQkFXMEIsQ0FMQyxtQkFLbUIsQ0FMQyxpQkFLaUIsQ0F0Q2Y7QUF1Q2pELFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FmQywwQkFnQkQsQ0FWNEIsbUJBVVIsQ0FWNEIsZ0JBVVgsT0FDckMsQ0E1Q2tEO0FBNkNqRCxTQUFPLElBQUk7QUFDWjtBQUVBLENBckJDLDBCQXFCMEIsQ0FmQyxtQkFlbUIsQ0FmQyxnQkFlZ0I7QUFDL0Qsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQXpCQywwQkF5QjBCLENBbEJDLGdCQWtCZ0IsQ0FuQkksaUJBbUJjLENBcERaO0FBcURqRCxTQUFPLElBQUk7QUFDWjtBQUVBLENBN0JDLDBCQTZCMEIsQ0F0QkMsZ0JBc0JnQixDQXZCSSxnQkF1QmEsT0FBTyxDQXhEbEI7QUF5RGpELFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FqQ0MsMEJBaUMwQixDQTFCQyxnQkEwQmdCLENBM0JJLGdCQTJCYTtBQUM1RCxvQkFBa0IsS0FDakIsd0JBQXdCLEVBQ3hCLElBQUk7QUFFTjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUssSUFBSTtBQUNULGdCQUFjO0FBQ2QsZUFBYSxJQUFJLE1BQU0sSUFBSTtBQUMzQixlQUFhLElBQUk7QUFDbEI7QUFFQSxDQVRDLFlBU1k7QUFDWixXQUFTO0FBQ1Y7QUFHQSxDQUFDO0FBR0EsZ0JBQWM7QUFDZCxjQUFZO0FBQ2I7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDbEI7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLLElBQUk7QUFDVCxXQUFTLElBQUk7QUFHYixlQUFhO0FBQ2Isa0JBQWdCO0FBQ2pCO0FBRUEsQ0FYQyxZQVdZLENBQUM7QUFDYixhQUFXLElBQUk7QUFDZixlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNiO0FBRUEsQ0FsQkMsWUFrQlksQ0FBQyxzQkFBc0IsQ0E1T25DO0FBNk9BLGNBQVk7QUFDWixhQUFXO0FBQ1gsZUFBYTtBQUNiLFVBQVEsSUFBSSxNQUFNLElBQUksb0JBQW9CLEVBQUUsSUFBSTtBQUVoRCxjQUFZO0FBQ2I7QUFFQSxDQTNCQyxZQTJCWSxDQVRDLHNCQVNzQixDQXJQbkMsY0FxUGtEO0FBQ2xELGdCQUFjLElBQUk7QUFDbEIsY0FBWSxFQUFFLEVBQUUsRUFBRSxJQUFJLElBQUk7QUFDM0I7QUFFQSxDQWhDQyxZQWdDWSxDQUFDLHVCQUF1QixDQTFQcEM7QUEyUEEsU0FBTztBQUNQLFVBQVEsSUFBSSxNQUFNLElBQUksb0JBQW9CLEVBQUUsSUFBSTtBQUVoRCxjQUFZO0FBQ2I7QUFFQSxDQXZDQyxZQXVDWSxDQVBDLHVCQU91QixDQWpRcEMsY0FpUW1EO0FBQ25ELGdCQUFjLElBQUk7QUFDbEIsY0FBWSxFQUFFLEVBQUUsRUFBRSxJQUFJLElBQUk7QUFDM0I7QUFFQSxDQTVDQyxZQTRDWSxDQUFDLGtCQUFrQixDQXZRL0I7QUF3UUEsYUFBVztBQUNYLFVBQVEsSUFBSSxNQUFNLElBQUksb0JBQW9CLEVBQUUsSUFBSTtBQUNoRCxTQUFPO0FBQ1I7QUFFQSxDQWxEQyxZQWtEWSxDQU5DLGtCQU1rQixDQTdRL0IsYUE2UTZDO0FBQzdDLGdCQUFjLElBQUk7QUFDbEIsY0FBWSxFQUFFLEVBQUUsRUFBRSxJQUFJLElBQUk7QUFDM0I7QUFFQSxDQXZEQyxZQXVEWSxDQUFDLGlCQUFpQixDQXRIaUIsaUJBc0hDLENBdkpDO0FBd0pqRCxTQUFPLElBQUk7QUFDWjtBQUVBLENBM0RDLFlBMkRZLENBSkMsaUJBSWlCLENBMUhpQixnQkEwSEEsT0FBTyxDQTNKTDtBQTRKakQsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQS9EQyxZQStEWSxDQVJDLGlCQVFpQixDQTlIaUIsZ0JBOEhBO0FBQy9DLG9CQUFrQixLQUNqQix3QkFBd0IsRUFDeEIsSUFBSTtBQUVOO0FBR0EsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNoQixpQkFBZSxJQUFJO0FBQ25CLGVBQWEsSUFBSTtBQUNqQixXQUFTO0FBQ1QsbUJBQWlCO0FBQ2xCO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2xCO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxPQUFLLElBQUk7QUFNVjtBQUVBLENBQUM7QUFDRCxDQUFDO0FBQ0EsUUFBTTtBQUNQO0FBRUEsQ0FBQztBQUNELENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNsQjtBQUVBLENBWkMsc0JBWXNCO0FBQ3RCLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FoQkMsc0JBZ0JzQjtBQUN0QixvQkFBa0IsSUFBSTtBQUN2QjtBQUdBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDaEIsV0FBUyxJQUFJO0FBQ2IsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CO0FBQUEsSUFBWTtBQUFBLE1BQ1gsTUFBTTtBQUFBLE1BQ04sSUFBSSx3QkFBd0IsRUFBRTtBQUFBLE1BQzlCLElBQUksMEJBQTBCO0FBRS9CLGNBQVksSUFBSTtBQUNoQixjQUFZLElBQUksS0FBSztBQUN0QjtBQUVBLENBZEMscUJBY3FCO0FBQ3JCLGNBQVksRUFBRSxJQUFJLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUNyQyxhQUFXLFdBQVc7QUFDdkI7QUFFQSxDQW5CQyxzQkFtQnNCO0FBQ3RCLFVBQVEsRUFBRSxFQUFFLElBQUksWUFBWTtBQUM1QixhQUFXLElBQUk7QUFDZixlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1gsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLLElBQUk7QUFDVjtBQUVBLENBN0JDLHNCQTZCc0I7QUFDdEIsVUFBUSxJQUFJLFlBQVk7QUFDeEIsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGFBQVcsSUFBSTtBQUNmLFNBQU8sSUFBSTtBQUNYLFVBQVEsSUFBSSxZQUFZO0FBQ3hCLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0Isb0JBQWtCLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixlQUFhLElBQUksTUFBTSxJQUFJO0FBQzVCO0FBRUEsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNoQixXQUFTLElBQUksWUFBWSxFQUFFLEVBQUU7QUFDN0IsY0FBWSxJQUFJLE1BQU0sSUFBSTtBQUMzQjtBQUVBLENBTkMsc0JBTXNCO0FBQ3RCLFVBQVEsRUFBRSxFQUFFLElBQUksWUFBWTtBQUM1QixhQUFXLElBQUk7QUFDZixlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1gsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLLElBQUk7QUFDVjtBQUVBLENBaEJDLHNCQWdCc0I7QUFDdEIsVUFBUSxJQUFJLFlBQVk7QUFDeEIsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsV0FBUyxJQUFJLFlBQVksSUFBSTtBQUM3QixvQkFBa0IsSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNoQixlQUFhLElBQUk7QUFDbEI7QUFFQSxDQUFDO0FBQ0Esb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1gsV0FBUyxTQUFTO0FBQ2xCLGlCQUFlLElBQUk7QUFDbkIsZUFBYTtBQUNkO0FBR0EsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNoQixXQUFTLElBQUk7QUFDYixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDbkIsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQVJDLDBCQVEwQixDQXBaMUI7QUFxWkEsb0JBQWtCO0FBQ2xCLFVBQVE7QUFDUixXQUFTO0FBQ1Y7QUFFQSxDQWRDLDBCQWMwQixDQXBaMUI7QUFxWkEsb0JBQWtCO0FBQ2xCLFVBQVE7QUFDUixXQUFTO0FBQ1Y7QUFHQSxDQUFDLDhCQUE4QixDQXJCOUIsMEJBcUJ5RCxDQXJWekQ7QUFzVkEsV0FBUyxJQUFJO0FBQ2IsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBTEMsOEJBSzhCLENBMUI5QiwwQkEwQnlELENBcE96RDtBQXFPQSxXQUFTLElBQUk7QUFDYixPQUFLLElBQUk7QUFDVjtBQUVBLENBVkMsOEJBVThCLENBL0I5QiwwQkErQnlELENBcmV6RDtBQXNlQSxXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGNBQVk7QUFDYjtBQUVBLENBZkMsOEJBZThCLENBcEM5QiwwQkFvQ3lELENBeGN6RDtBQXljRCxDQWhCQyw4QkFnQjhCLENBckM5QiwwQkFxQ3lELENBMWN6RDtBQTJjQSxhQUFXLElBQUk7QUFDZixVQUFRO0FBQ1Q7OztBQ3ZnQkEsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSztBQUNMLGlCQUFlLElBQUk7QUFDcEI7QUFHQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWU7QUFDZixXQUFTO0FBQ1Y7QUFHQSxDQUFDO0FBQ0EsaUJBQWU7QUFDaEI7QUFFQSxDQUpDLG9CQUlvQjtBQUNwQixVQUFRO0FBQ1IsYUFBVztBQUNYLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDRCxDQUFDO0FBQ0EsY0FBWTtBQUNaLFVBQVEsSUFBSSxPQUFPLElBQUk7QUFDdkIsaUJBQWU7QUFDZixXQUFTO0FBQ1QsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FSQyxjQVFjLE1BQU07QUFDcEIsV0FBUyxLQUFLO0FBQ2QsV0FBUztBQUNULGNBQVk7QUFDWixTQUFPLElBQUk7QUFDWCxXQUFTO0FBQ1QsY0FBWTtBQUNiO0FBRUEsQ0FqQkMsY0FpQmMsQ0FBQyxnQkFBa0IsTUFBTTtBQUN2QyxXQUFTO0FBQ1Y7QUFFQSxDQXJCQyxjQXFCYyxDQUFDLG1CQUFxQixNQUFNO0FBQzFDLFdBQVM7QUFDVjtBQUdBLENBQUM7QUFDRCxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixXQUFTO0FBQ1QsaUJBQWU7QUFDZixvQkFBa0IsSUFBSTtBQUN0QixpQkFBZTtBQUNmLFVBQVE7QUFDUixjQUFZLElBQUksS0FBSztBQUN0QjtBQUVBLENBWkMsU0FZUztBQUNULG9CQUFrQixJQUFJO0FBQ3ZCO0FBR0EsQ0FBQztBQUNBLFVBQVE7QUFDUixnQkFBYztBQUNkLFdBQVM7QUFDVjtBQUVBLENBTkMsZ0JBTWdCO0FBQ2hCLFVBQVE7QUFDVDtBQUdBLENBQUM7QUFDQSxnQkFBYztBQUNmO0FBR0EsQ0FBQztBQUNBLFFBQU07QUFDTixnQkFBYztBQUNmO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDZDtBQUVBLENBQUM7QUFDQSxhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULE9BQUs7QUFDTjtBQUVBLENBQUM7QUFDQSxjQUFZO0FBQ1osVUFBUTtBQUNSLFVBQVE7QUFDUixXQUFTO0FBQ1QsaUJBQWU7QUFDZixTQUFPLElBQUk7QUFDWCxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNsQjtBQUVBLENBWkMsa0JBWWtCO0FBQ2xCLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUMsa0JBQWtCO0FBQ2xCLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVjtBQUVBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDakI7OztBQzVJQSxDQUFDO0FBQ0csV0FBUztBQUNULGNBQVksSUFBSTtBQUNoQixpQkFBZTtBQUNmLGlCQUFlO0FBQ2YsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUMxQjtBQUVBLENBQUM7QUFDRyxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUs7QUFDVDtBQUVBLENBQUM7QUFDRyxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTCxlQUFhO0FBQ2IsYUFBVztBQUNmO0FBRUEsQ0FSQyxvQkFRb0IsQ0FBQyxRQUFRLENBQUM7QUFDM0IsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNYLGFBQVcsTUFBTSxHQUFHO0FBQ3hCO0FBRUEsQ0FkQyxvQkFjb0IsQ0FBQyxRQUFRLENBTkM7QUFPM0IsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNmO0FBRUEsQ0FBQztBQUNHLFdBQVM7QUFDVCxPQUFLO0FBQ0wsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGdCQUFjO0FBQ2xCO0FBR0EsQ0FBQztBQUNHLGlCQUFlO0FBQ25CO0FBRUEsQ0FBQztBQUNHLGlCQUFlO0FBQ2YsY0FBWSxJQUFJO0FBQ2hCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWU7QUFDZixZQUFVO0FBQ2Q7QUFFQSxDQUFDO0FBQ0csVUFBUTtBQUNSLFdBQVMsS0FBSztBQUNkLGNBQVksSUFBSTtBQUNoQixpQkFBZTtBQUNmLGlCQUFlO0FBQ2YsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ0wsZUFBYTtBQUNiLGNBQVksaUJBQWlCO0FBQ2pDO0FBRUEsQ0FiQyxpQkFhaUI7QUFDZCxjQUFZLElBQUk7QUFDcEI7QUFHQSxDQUFDO0FBQ0csY0FBWSxVQUFVO0FBQ3RCLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU87QUFDUCxVQUFRO0FBQ1o7QUFFQSxDQVRDLFVBU1U7QUFDUCxTQUFPO0FBQ1AsVUFBUTtBQUNSLGdCQUFjO0FBQ2xCO0FBRUEsQ0FmQyxTQWVTLENBQUM7QUFDUCxhQUFXLE9BQU87QUFDdEI7QUFFQSxDQUFDO0FBQ0csZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNmO0FBRUEsQ0FBQztBQUNHLFdBQVM7QUFDVCxjQUFZLElBQUk7QUFDaEIsV0FBUztBQUNiO0FBRUEsQ0FOQyxrQkFNa0IsQ0FmUjtBQWdCUCxXQUFTO0FBQ2I7QUFFQSxDQUFDO0FBQ0csWUFBVTtBQUNWLGlCQUFlO0FBQ25CO0FBRUEsQ0FBQztBQUNHLFlBQVU7QUFDVixXQUFTLEtBQUssS0FBSyxLQUFLO0FBQ3hCLGNBQVksSUFBSTtBQUNoQixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsaUJBQWU7QUFDZixhQUFXO0FBQ1gsZUFBYTtBQUNiLFlBQVU7QUFDVixjQUFZO0FBQ1osZUFBYSxJQUFJO0FBQ2pCLG1CQUFpQjtBQUNqQixtQkFBaUIsSUFBSSxzQkFBc0IsSUFBSTtBQUNuRDtBQUVBLENBaEJDLGdCQWdCZ0I7QUFDYixTQUFPLElBQUk7QUFDWCxlQUFhLElBQUk7QUFDakIsZUFBYTtBQUNiLFdBQVM7QUFDYjtBQUVBLENBdkJDLGVBdUJlO0FBQ1osU0FBTztBQUNQLFVBQVE7QUFDWjtBQUVBLENBNUJDLGVBNEJlO0FBQ1osY0FBWSxJQUFJO0FBQ3BCO0FBRUEsQ0FoQ0MsZUFnQ2U7QUFDWixjQUFZLElBQUk7QUFDaEIsaUJBQWU7QUFDbkI7QUFFQSxDQXJDQyxlQXFDZSx5QkFBeUI7QUFDckMsY0FBWSxJQUFJO0FBQ3BCO0FBR0EsQ0FBQztBQUNHLFlBQVU7QUFDVixPQUFLO0FBQ0wsU0FBTztBQUNQLFdBQVMsSUFBSTtBQUNiLGFBQVc7QUFDWCxjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1gsVUFBUTtBQUNSLGlCQUFlO0FBQ2YsVUFBUTtBQUNSLGNBQVksSUFBSTtBQUNoQixlQUFhO0FBQ2IsV0FBUztBQUNiO0FBRUEsQ0FoQkMsWUFnQlk7QUFDVCxjQUFZLElBQUk7QUFDaEIsYUFBVyxXQUFXO0FBQ3RCLGNBQVksRUFBRSxJQUFJLElBQUksS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUN4QztBQUVBLENBdEJDLFlBc0JZLENBQUM7QUFDVixhQUFXLFlBQVksS0FBSztBQUM1QixjQUFZLElBQUk7QUFDcEI7QUFHQSxDQUFDO0FBQ0csVUFBUSxLQUFLO0FBQ2IsV0FBUztBQUNULGNBQVksSUFBSTtBQUNoQixpQkFBZTtBQUNmLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDMUI7QUFFQSxDQUFDO0FBQ0csVUFBUSxLQUFLLEVBQUUsRUFBRTtBQUNqQixlQUFhO0FBQ2pCO0FBRUEsQ0FMQyxjQUtjO0FBQ1gsVUFBUSxJQUFJO0FBQ1osU0FBTyxJQUFJO0FBQ2Y7QUFFQSxDQVZDLGNBVWM7QUFDWCxjQUFZLElBQUk7QUFDaEIsV0FBUyxJQUFJO0FBQ2IsaUJBQWU7QUFDZixhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ2Y7QUFHQSxDQUFDO0FBQ0csZUFBYTtBQUNiLFNBQU87QUFDUCxnQkFBYztBQUNsQjtBQUdBLENBQUM7QUFDRyxjQUFZO0FBQ2hCO0FBRUEsQ0FBQztBQUNHLGlCQUFlO0FBQ25CO0FBRUEsQ0FBQztBQUNHLGFBQVc7QUFDWCxlQUFhO0FBQ2IsaUJBQWU7QUFDZixTQUFPLElBQUk7QUFDZjtBQUdBLENBQUM7QUFDRyxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTCxXQUFTO0FBQ1QsY0FBWSxJQUFJO0FBQ2hCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWU7QUFDZixpQkFBZTtBQUNuQjtBQUVBLENBQUM7QUFDRyxRQUFNO0FBQ04sV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ1Q7QUFFQSxDQUFDO0FBQ0csZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNmO0FBRUEsQ0FBQztBQUNHLGVBQWEsSUFBSTtBQUNqQixXQUFTLElBQUk7QUFDYixjQUFZLElBQUk7QUFDaEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDakI7QUFFQSxDQUFDO0FBQ0csV0FBUyxJQUFJO0FBQ2IsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWU7QUFDZixVQUFRO0FBQ1IsY0FBWSxXQUFXO0FBQzNCO0FBRUEsQ0FWQyxxQkFVcUI7QUFDbEIsY0FBWSxJQUFJO0FBQ3BCO0FBRUEsQ0FkQyxxQkFjcUIsQ0F2R1I7QUF3R1YsYUFBVyxZQUFZLEtBQUs7QUFDNUIsY0FBWSxJQUFJO0FBQ3BCO0FBR0EsQ0FBQztBQUNHLFdBQVM7QUFDVCx5QkFBdUIsT0FBTyxTQUFTLEVBQUUsT0FBTyxLQUFLLEVBQUU7QUFDdkQsT0FBSztBQUNMLGlCQUFlO0FBQ25CO0FBRUEsQ0FBQztBQUNHLFlBQVU7QUFDVixXQUFTO0FBQ1Q7QUFBQSxJQUFZO0FBQUEsTUFBZ0IsTUFBTTtBQUFBLE1BQUUsSUFBSSx3QkFBd0IsRUFBRTtBQUFBLE1BQUUsSUFBSSxzQkFBc0I7QUFDOUYsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLGNBQVksSUFBSSxLQUFLLGFBQWEsR0FBRyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUU7QUFDL0MsWUFBVTtBQUNkO0FBRUEsQ0FWQyxhQVVhO0FBQ1YsV0FBUztBQUNULFlBQVU7QUFDVixPQUFLO0FBQ0wsUUFBTTtBQUNOLFNBQU87QUFDUCxVQUFRO0FBQ1I7QUFBQSxJQUFZO0FBQUEsTUFBZ0IsS0FBSztBQUFBLE1BQUUsSUFBSSxzQkFBc0IsRUFBRTtBQUFBLE1BQUUsSUFBSSxlQUFlO0FBQ3BGLGFBQVcsT0FBTztBQUNsQixvQkFBa0I7QUFDbEIsY0FBWSxVQUFVLEtBQUs7QUFDL0I7QUFFQSxDQXZCQyxhQXVCYTtBQUNWLGFBQVcsV0FBVztBQUN0QixjQUFZLEVBQUUsSUFBSSxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUU7QUFDckMsZ0JBQWMsSUFBSTtBQUN0QjtBQUVBLENBN0JDLGFBNkJhLE1BQU07QUFDaEIsYUFBVyxPQUFPO0FBQ3RCO0FBRUEsQ0FBQztBQUNHLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSztBQUNMLGlCQUFlO0FBQ25CO0FBRUEsQ0FBQztBQUNHLFNBQU87QUFDUCxVQUFRO0FBQ1IsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsU0FBTyxJQUFJO0FBQ1gsV0FBUztBQUNiO0FBRUEsQ0FWQyxjQVVjO0FBQ1gsU0FBTztBQUNQLFVBQVE7QUFDUixnQkFBYztBQUNsQjtBQUVBLENBQUM7QUFDRyxlQUFhLElBQUk7QUFDakIsYUFBVztBQUNYLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWCxjQUFZLElBQUk7QUFDaEIsV0FBUyxJQUFJO0FBQ2IsaUJBQWU7QUFDZixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ3BCO0FBRUEsQ0FBQztBQUNHLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2IsZ0JBQWM7QUFDbEI7QUFHQSxDQUFDO0FBQ0csY0FBWSxJQUFJO0FBQ2hCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWU7QUFDZixZQUFVO0FBQ1YsY0FBWSxFQUFFLElBQUksS0FBSyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFO0FBQ3JDLGNBQVk7QUFDaEI7QUFHQSxDQUFDO0FBQ0csV0FBUztBQUNULE9BQUs7QUFDTDtBQUFBLElBQVk7QUFBQSxNQUFnQixNQUFNO0FBQUEsTUFBRSxJQUFJLHdCQUF3QixFQUFFO0FBQUEsTUFBRSxJQUFJLDJCQUEyQjtBQUNuRyxpQkFBZSxJQUFJLE1BQU0sSUFBSTtBQUM3QixXQUFTO0FBQ2I7QUFFQSxDQUFDO0FBQ0csUUFBTTtBQUNOLFdBQVMsS0FBSztBQUNkLGNBQVk7QUFDWixTQUFPLElBQUk7QUFDWCxVQUFRO0FBQ1IsVUFBUTtBQUNSLGNBQVksSUFBSSxLQUFLLGFBQWEsR0FBRyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUU7QUFDL0MsYUFBVztBQUNYLGVBQWE7QUFDYixZQUFVO0FBQ1YsY0FBWTtBQUNaLGNBQVk7QUFDaEI7QUFFQSxDQWZDLGVBZWU7QUFDWixXQUFTO0FBQ1QsWUFBVTtBQUNWLFVBQVE7QUFDUixRQUFNO0FBQ04sYUFBVyxXQUFXLE1BQU0sT0FBTztBQUNuQyxTQUFPO0FBQ1AsVUFBUTtBQUNSLGNBQVksSUFBSTtBQUNoQixjQUFZLFVBQVUsS0FBSztBQUMzQixpQkFBZSxJQUFJLElBQUksRUFBRTtBQUM3QjtBQUVBLENBNUJDLGVBNEJlO0FBQ1osY0FBWSxLQUFLLElBQUkseUJBQXlCLEVBQUU7QUFDaEQsU0FBTyxJQUFJO0FBQ2Y7QUFFQSxDQWpDQyxlQWlDZSxDQUFDO0FBQ2IsY0FBWSxLQUFLLElBQUkseUJBQXlCLEVBQUU7QUFDaEQsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNqQjtBQUVBLENBdkNDLGVBdUNlLENBTkMsTUFNTTtBQUNuQixhQUFXLFdBQVcsTUFBTSxPQUFPO0FBQ3ZDO0FBR0EsQ0FBQztBQUNHLFlBQVU7QUFDVixjQUFZLElBQUk7QUFDaEIsY0FBWSxJQUFJLE1BQU0sSUFBSTtBQUM5QjtBQUVBLENBQUM7QUFDRyxXQUFTO0FBQ1QsWUFBVTtBQUNWLGFBQVcsT0FBTyxLQUFLO0FBQzNCO0FBRUEsQ0FOQyxpQkFNaUIsQ0F2QkQ7QUF3QmIsV0FBUztBQUNiO0FBRUEsV0FQZTtBQVFYO0FBQ0ksYUFBUztBQUNULGVBQVcsV0FBVztBQUMxQjtBQUNBO0FBQ0ksYUFBUztBQUNULGVBQVcsV0FBVztBQUMxQjtBQUNKO0FBRUEsQ0FBQztBQUNHLFVBQVE7QUFDUixXQUFTLEtBQUssS0FBSyxLQUFLO0FBQ3hCO0FBQUEsSUFBWTtBQUFBLE1BQWdCLE1BQU07QUFBQSxNQUFFLElBQUksbUJBQW1CLEVBQUU7QUFBQSxNQUFFLEtBQUssSUFBSSx5QkFBeUIsRUFBRSxLQUFLO0FBQ3hHLGFBQVc7QUFDWCxlQUFhO0FBQ2IsY0FBWTtBQUNaLGNBQVk7QUFDWixlQUFhLElBQUk7QUFDakIsVUFBUTtBQUNSLFlBQVU7QUFDZDtBQUVBLENBYkMsZ0JBYWdCO0FBQ2IsV0FBUztBQUNULFlBQVU7QUFDVixPQUFLO0FBQ0wsUUFBTTtBQUNOLFNBQU87QUFDUCxVQUFRO0FBQ1I7QUFBQSxJQUFZO0FBQUEsTUFBZ0IsS0FBSztBQUFBLE1BQUUsV0FBVztBQUFBLE1BQUUsSUFBSSw2QkFBNkI7QUFBQSxNQUFFO0FBQ3ZGO0FBRUEsQ0F2QkMsaUJBdUJpQjtBQUNkLFNBQU8sSUFBSTtBQUNYLGVBQWEsSUFBSTtBQUNqQixlQUFhO0FBQ2IsV0FBUztBQUNULGVBQWEsRUFBRSxJQUFJLElBQUksS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUN6QztBQUVBLENBQUM7QUFDRyxZQUFVO0FBQ1YsT0FBSztBQUNMLFNBQU87QUFDUCxXQUFTLElBQUk7QUFDYixjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1gsVUFBUTtBQUNSLGlCQUFlO0FBQ2YsVUFBUTtBQUNSLGFBQVc7QUFDWCxlQUFhO0FBQ2IsY0FBWSxJQUFJLEtBQUssYUFBYSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRTtBQUMvQyxXQUFTO0FBQ1QsY0FBWSxFQUFFLElBQUksSUFBSSxLQUFLLElBQUkseUJBQXlCLEVBQUU7QUFDOUQ7QUFFQSxDQWpCQyxvQkFpQm9CO0FBQ2pCLGNBQVksSUFBSTtBQUNoQixhQUFXLFdBQVc7QUFDdEIsY0FBWSxFQUFFLElBQUksS0FBSyxLQUFLLElBQUkseUJBQXlCLEVBQUU7QUFDL0Q7QUFFQSxDQXZCQyxvQkF1Qm9CO0FBQ2pCLGFBQVcsV0FBVztBQUN0QixjQUFZLEVBQUUsSUFBSSxJQUFJLEtBQUssSUFBSSx5QkFBeUIsRUFBRTtBQUM5RDtBQUVBLENBNUJDLG9CQTRCb0IsQ0FwVlA7QUFxVlYsYUFBVyxZQUFZLEtBQUs7QUFDNUIsY0FBWSxJQUFJO0FBQ2hCLGNBQVksRUFBRSxJQUFJLElBQUksS0FBSyxJQUFJLDBCQUEwQixFQUFFO0FBQy9EO0FBR0EsV0ExVmU7QUEyVlg7QUFBSyxlQUFXLE1BQU07QUFBSTtBQUMxQjtBQUFNLGVBQVcsTUFBTTtBQUFNO0FBQzdCO0FBQU8sZUFBVyxNQUFNO0FBQUk7QUFDaEM7QUFFQSxXQXZmZTtBQXdmWDtBQUFLLGFBQVM7QUFBRztBQUNqQjtBQUFNLGFBQVM7QUFBSztBQUNwQjtBQUFPLGFBQVM7QUFBRztBQUN2QjtBQUdBLENBamVDO0FBa2VELENBdkpDO0FBd0pELENBdFBDO0FBdVBEO0FBQ0ksY0FBWSxJQUFJLEtBQUs7QUFDekI7QUFHQSxDQWhiQyxnQkFnYmdCLENBQUM7QUFDZCxTQUFPLElBQUk7QUFDZjtBQUVBLENBcGJDLGdCQW9iZ0IsQ0FBQztBQUNkLFNBQU8sSUFBSTtBQUNmO0FBRUEsQ0F4YkMsZ0JBd2JnQixDQUFDO0FBQ2QsU0FBTyxJQUFJO0FBQ2Y7QUFFQSxDQTViQyxnQkE0YmdCLENBQUM7QUFDZCxTQUFPLElBQUk7QUFDZjtBQUdBLE9BQU8sQ0FBQyxTQUFTLEVBQUU7QUFDZixHQXJSSDtBQXNSTywyQkFBdUI7QUFDM0I7QUFFQSxHQXBoQkg7QUFxaEJPLG9CQUFnQjtBQUNoQixTQUFLO0FBQ1Q7QUFDSjtBQUVBLENBQUM7QUFDRyxnQkFBYyxJQUFJO0FBQ3RCO0FBR0EsQ0FBQztBQUNBLGlCQUFlO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxTQUFPLElBQUk7QUFDWCxpQkFBZTtBQUNmLGFBQVc7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsaUJBQWU7QUFDZixjQUFZLFVBQVUsS0FBSztBQUM1QjtBQUVBLENBTkMsdUJBTXVCO0FBQ3ZCLGFBQVcsTUFBTTtBQUNsQjtBQUVBLENBQUM7QUFDQSxjQUFZO0FBQ1osV0FBUztBQUNULE9BQUs7QUFDTjtBQUdBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1gsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNmLGFBQVc7QUFDWCxVQUFRO0FBQ1IsY0FBWSxJQUFJLEtBQUs7QUFDdEI7QUFFQSxDQVhDLDRCQVc0QjtBQUM1QixjQUFZLElBQUk7QUFDakI7QUFFQSxDQWZDLDRCQWU0QixDQS9iZjtBQWdjYixjQUFZLElBQUk7QUFDaEIsU0FBTztBQUNSO0FBRUEsQ0FBQztBQUNBLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxjQUFZO0FBQ1osU0FBTyxJQUFJO0FBQ1gsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNmLGFBQVc7QUFDWCxVQUFRO0FBQ1IsY0FBWSxJQUFJLEtBQUs7QUFDdEI7QUFFQSxDQVhDLHVCQVd1QjtBQUN2QixjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLFdBQVM7QUFDVCxjQUFZLElBQUk7QUFDaEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNoQjtBQUVBLENBQUM7QUFDQSxhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1gsaUJBQWU7QUFDZixjQUFZO0FBQ2I7QUFFQSxDQVBDLHNCQU9zQjtBQUN0QixjQUFZO0FBQ2I7QUFFQSxDQUFDO0FBQ0EsY0FBWSxJQUFJO0FBQ2hCLFdBQVM7QUFDVCxpQkFBZTtBQUNmLGFBQVc7QUFDWCxjQUFZO0FBQ1osVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN2QjtBQUVBLENBVEMsc0JBU3NCO0FBQ3RCLFNBQU8sSUFBSTtBQUNYLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxVQUFRLEtBQUs7QUFDYixVQUFRO0FBQ1IsY0FBWSxJQUFJLE1BQU0sSUFBSTtBQUMzQjs7O0FDOXFCQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixhQUFXO0FBQ1gsVUFBUTtBQUNSLFdBQVM7QUFDVCxjQUFZLFFBQVEsS0FBSztBQUN6QixlQUFhO0FBRWIsZUFBYTtBQUNiLGtCQUFnQjtBQUNqQjtBQUVBLENBYkMsNEJBYTRCO0FBQzVCLFdBQVM7QUFDVCxtQkFBaUI7QUFDakIsZUFBYTtBQUNkO0FBRUEsQ0FuQkMsMkJBbUIyQjtBQUMzQixXQUFTO0FBQ1Y7QUFHQSxDQXhCQywyQkF3QjJCLENBQUM7QUFDNUIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQTVCQywyQkE0QjJCLENBQUM7QUFDNUIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQWhDQywyQkFnQzJCLENBQUM7QUFDNUIsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQUFDLFdBQVcsQ0FyQ1gsMkJBcUN1QyxDQUFDO0FBQ3hDLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FKQyxXQUlXLENBekNYLDJCQXlDdUMsQ0FBQztBQUN4QyxTQUFPLElBQUk7QUFDWjtBQUVBLENBUkMsV0FRVyxDQTdDWCwyQkE2Q3VDLENBQUM7QUFDeEMsU0FBTyxJQUFJO0FBQ1o7OztBQy9DQSxDQUFDO0FBQ0EsV0FBUztBQUNULGtCQUFnQjtBQUNoQixTQUFPO0FBQ1AsYUFBVztBQUNYLGFBQVc7QUFDWjtBQUVBLENBUkMsMkJBUTJCLENBQUM7QUFDNUIsV0FBUztBQUNULE9BQUssSUFBSTtBQUNULFdBQVMsSUFBSTtBQUNkO0FBRUEsQ0FkQywyQkFjMkIsQ0FBQztBQUM1QixRQUFNO0FBQ04sYUFBVztBQUNYLGdCQUFjLElBQUksTUFBTSxJQUFJO0FBQzdCO0FBRUEsQ0FwQkMsMkJBb0IyQixDQUFDO0FBQzVCLFFBQU07QUFDTixhQUFXO0FBQ1o7QUFFQSxDQXpCQywyQkF5QjJCLENBQUM7QUFDNUIsYUFBVyxJQUFJO0FBQ2YsZUFBYSxJQUFJO0FBQ2pCLGlCQUFlLElBQUk7QUFDbkIsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQWpDQywyQkFpQzJCLENBQUM7QUFDNUIsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLLElBQUk7QUFDVCxjQUFZO0FBQ1osWUFBVTtBQUNWLGNBQVk7QUFDYjtBQUVBLENBMUNDLDJCQTBDMkIsQ0FBQztBQUM1QixXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLGVBQWE7QUFDYixXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLFVBQVE7QUFDUixjQUFZLGlCQUFpQixLQUFLO0FBQ25DO0FBRUEsQ0FuREMsMkJBbUQyQixDQVRDLGlCQVNpQjtBQUM3QyxvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBdkRDLDJCQXVEMkIsQ0FiQyxpQkFhaUIsQ0FBQztBQUM5QyxvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBNURDLDJCQTREMkIsQ0FsQkMsaUJBa0JpQixDQUFDO0FBQzlDLGNBQVksSUFBSSxNQUFNLElBQUk7QUFDMUIsY0FBWSxJQUFJO0FBQ2hCLGVBQWEsSUFBSTtBQUNqQixTQUFPLElBQUk7QUFDWjtBQUVBLENBbkVDLDJCQW1FMkIsQ0F6QkMsaUJBeUJpQixDQVBDLFlBT1k7QUFDMUQsU0FBTyxJQUFJO0FBQ1gsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQXhFQywyQkF3RTJCLENBQUM7QUFDNUIsYUFBVyxJQUFJO0FBQ2YsZUFBYSxJQUFJO0FBQ2xCO0FBRUEsQ0E3RUMsMkJBNkUyQixDQUFDO0FBQzVCLGFBQVcsSUFBSTtBQUNmLFNBQU8sSUFBSTtBQUNYLGVBQWEsSUFBSTtBQUNsQjtBQUVBLENBbkZDLDJCQW1GMkIsQ0F6Q0MsaUJBeUNpQixDQTVCQyxTQTRCUyxDQU4zQjtBQU81QixTQUFPLElBQUk7QUFDWjtBQUdBLENBeEZDLDJCQXdGMkIsQ0FBQztBQUM1QixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2pCO0FBRUEsQ0E3RkMsMkJBNkYyQixDQUFDO0FBQzVCLFdBQVM7QUFDVCxtQkFBaUI7QUFDakIsZUFBYTtBQUNiLGlCQUFlLElBQUk7QUFDbkIsV0FBUyxFQUFFLElBQUk7QUFDaEI7QUFFQSxDQXJHQywyQkFxRzJCLENBQUM7QUFDNUIsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsU0FBTztBQUNQLFVBQVE7QUFDUixpQkFBZSxJQUFJO0FBQ25CLFVBQVE7QUFDUixjQUFZLGlCQUFpQixLQUFLO0FBQ25DO0FBRUEsQ0FoSEMsMkJBZ0gyQixDQVhDLGdCQVdnQjtBQUM1QyxvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBcEhDLDJCQW9IMkIsQ0FBQztBQUM1QixhQUFXLElBQUk7QUFDZixlQUFhLElBQUk7QUFDakIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQTFIQywyQkEwSDJCLENBQUM7QUFDNUIsV0FBUztBQUNULHlCQUF1QixPQUFPLENBQUMsRUFBRTtBQUNqQyxPQUFLO0FBQ0wsb0JBQWtCLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixZQUFVO0FBQ1g7QUFFQSxDQW5JQywyQkFtSTJCLENBQUM7QUFDNUIsb0JBQWtCLElBQUk7QUFDdEIsV0FBUyxJQUFJO0FBQ2IsY0FBWTtBQUNaLGFBQVcsSUFBSTtBQUNmLGVBQWEsSUFBSTtBQUNqQixTQUFPLElBQUk7QUFDWjtBQUVBLENBNUlDLDJCQTRJMkIsQ0FBQztBQUM1QixvQkFBa0IsSUFBSTtBQUN0QixXQUFTLElBQUk7QUFDYixjQUFZO0FBQ1osYUFBVyxJQUFJO0FBQ2YsVUFBUTtBQUNSLGNBQVksaUJBQWlCLEtBQUs7QUFDbEMsY0FBWTtBQUNaLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2xCO0FBRUEsQ0F6SkMsMkJBeUoyQixDQWJDLFlBYVk7QUFDeEMsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQTdKQywyQkE2SjJCLENBakJDLFlBaUJZLENBQUM7QUFDekMsU0FBTyxJQUFJO0FBQ1gsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQWxLQywyQkFrSzJCLENBdEJDLFlBc0JZLENBQUM7QUFDekMsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1gsZUFBYSxJQUFJO0FBQ2xCO0FBRUEsQ0F4S0MsMkJBd0syQixDQTVCQyxZQTRCWSxDQWpITTtBQWtIOUMsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1gsZUFBYSxJQUFJO0FBQ2xCO0FBRUEsQ0E5S0MsMkJBOEsyQixDQWxDQyxZQWtDWSxDQVpDLEtBWUssQ0F2SEE7QUF3SDlDLG9CQUFrQixJQUFJO0FBQ3RCLGNBQVksTUFBTSxFQUFFLEVBQUUsRUFBRSxJQUFJLElBQUk7QUFDakM7QUFHQSxDQUFDLG1CQUFtQixDQUFDO0FBQ3BCLFdBQVM7QUFDVCxZQUFVO0FBQ1Ysb0JBQWtCLElBQUk7QUFDdEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLGNBQVksSUFBSTtBQUNoQixjQUFZO0FBQ1osWUFBVTtBQUNYO0FBRUEsQ0FYQyxtQkFXbUIsQ0FYQyxRQVdRLENBQUM7QUFDN0IsV0FBUztBQUNWO0FBR0EsT0FBTyxDQUFDLFNBQVMsRUFBRTtBQUNsQixHQXJNQSwyQkFxTTRCLENBN0xBO0FBOEwzQixvQkFBZ0I7QUFDaEIsU0FBSyxJQUFJO0FBQ1Y7QUFFQSxHQTFNQSwyQkEwTTRCLENBNUxBO0FBNkwzQixrQkFBYztBQUNkLG1CQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLG1CQUFlO0FBQ2Ysb0JBQWdCLElBQUk7QUFDckI7QUFFQSxHQWpOQTtBQWtOQyxlQUFXO0FBQ1gsZUFBVztBQUNaO0FBRUEsR0F0TkEsMkJBc040QixDQTFFQTtBQTJFM0IsZ0JBQVk7QUFDWixlQUFXLElBQUk7QUFDaEI7QUFDRDtBQUdBLENBN05DLDJCQTZOMkIsQ0FBQztBQUM1QixTQUFPLElBQUk7QUFDWCxvQkFBa0IsSUFBSTtBQUN0QixXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGlCQUFlLElBQUk7QUFDbkIsYUFBVyxJQUFJO0FBQ2hCOzs7QUNqT0E7QUFFQyx1QkFBcUIsRUFBRSxHQUFHO0FBQzFCLHVCQUFxQixJQUFJLElBQUk7QUFDN0Isa0JBQWdCLElBQUksS0FBSztBQUN6Qiw2QkFBMkIsSUFBSSxLQUFLO0FBQ3BDLG1CQUFpQixJQUFJLEtBQUs7QUFDM0I7QUFFQSxDQUFDO0FBQ0EsdUJBQXFCLElBQUksSUFBSTtBQUM3Qix1QkFBcUIsRUFBRSxHQUFHO0FBQzFCLGtCQUFnQixJQUFJLEtBQUs7QUFDekIsNkJBQTJCLElBQUksR0FBRztBQUNsQyxtQkFBaUIsSUFBSSxLQUFLO0FBQzNCO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxtQkFBaUI7QUFDakIsZUFBYTtBQUNiLFdBQVMsS0FBSztBQUNkLGlCQUFlLElBQUksTUFBTSxJQUFJLElBQUk7QUFDakMsY0FBWSxJQUFJLElBQUk7QUFDckI7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULFdBQVM7QUFDVCxjQUFZLElBQUksSUFBSTtBQUNwQixpQkFBZTtBQUNmLE9BQUs7QUFDTjtBQUVBLENBQUM7QUFDQSxXQUFTLElBQUk7QUFDYixjQUFZO0FBQ1osVUFBUTtBQUNSLGlCQUFlO0FBQ2YsVUFBUTtBQUNSLGNBQVksSUFBSSxNQUFNLGFBQWEsR0FBRyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUU7QUFDaEQsU0FBTyxJQUFJLElBQUk7QUFDZixhQUFXO0FBQ1gsZUFBYTtBQUNiLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLGVBQWE7QUFDYixZQUFVO0FBQ1g7QUFFQSxDQWpCQyxpQkFpQmlCLE1BQU0sS0FBSyxDQUFDO0FBQzdCLFNBQU8sSUFBSSxJQUFJO0FBQ2hCO0FBRUEsQ0FyQkMsaUJBcUJpQixDQUpZO0FBSzdCLGNBQVksSUFBSSxJQUFJO0FBQ3BCLFNBQU8sSUFBSSxJQUFJO0FBQ2YsY0FBWSxFQUFFLElBQUksSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxJQUFJLElBQUksS0FBSyxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUU7QUFDdEU7QUFHQSxDQUFDO0FBQ0EsZ0JBQWM7QUFDZCxXQUFTO0FBQ1QsZUFBYTtBQUNiLFNBQU87QUFDUCxVQUFRO0FBQ1Q7QUFFQSxDQVJDLHVCQVF1QjtBQUN2QixTQUFPO0FBQ1AsVUFBUTtBQUNUO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsZUFBYTtBQUNkO0FBR0EsQ0FBQztBQUNBLFdBQVMsSUFBSTtBQUNiLGNBQVk7QUFDWixVQUFRLElBQUksTUFBTSxJQUFJLElBQUk7QUFDMUIsaUJBQWU7QUFDZixVQUFRO0FBQ1IsY0FBWSxJQUFJLE1BQU0sYUFBYSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRTtBQUNoRCxTQUFPLElBQUksSUFBSTtBQUNmLGFBQVc7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQVpDLG1CQVltQjtBQUNuQixjQUFZLElBQUksSUFBSTtBQUNwQixTQUFPLElBQUksSUFBSTtBQUNmLGdCQUFjLElBQUksSUFBSTtBQUN2QjtBQUdBLENBQUM7QUFDQSxRQUFNO0FBQ04sY0FBWTtBQUNaLFdBQVMsSUFBSTtBQUNkO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxtQkFBaUI7QUFDakIsZUFBYTtBQUNiLFdBQVMsSUFBSTtBQUNiLGNBQVksSUFBSSxNQUFNLElBQUk7QUFDM0I7QUFFQSxDQUFDO0FBQ0QsQ0FBQztBQUNBLFdBQVM7QUFDVCxPQUFLLElBQUk7QUFDVjtBQUVBLENBQUM7QUFDQSxXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGNBQVk7QUFDWixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDbkIsVUFBUTtBQUNSLGNBQVksSUFBSSxLQUFLO0FBQ3JCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FWQyxzQkFVc0I7QUFDdEIsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1gsZ0JBQWMsSUFBSTtBQUNuQjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUssSUFBSTtBQUNULGlCQUFlLElBQUk7QUFDcEI7QUFFQSxDQUFDO0FBQ0EsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUCxXQUFTLElBQUk7QUFDYixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDbkIsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQVRDLGVBU2U7QUFDZixXQUFTO0FBQ1QsZ0JBQWMsSUFBSTtBQUNsQixjQUFZLEVBQUUsRUFBRSxFQUFFLElBQUksSUFBSTtBQUMzQjtBQUVBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDakI7QUFFQSxDQUFDO0FBQ0EsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsYUFBVztBQUNYLE9BQUssSUFBSTtBQUNWO0FBRUEsQ0FBQztBQUNBLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0Isb0JBQWtCLElBQUk7QUFDdEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLFVBQVE7QUFDUixjQUFZLElBQUksS0FBSztBQUNyQixhQUFXLElBQUk7QUFDZixTQUFPLElBQUk7QUFDWjtBQUVBLENBWEMsZUFXZTtBQUNmLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNYLGdCQUFjLElBQUk7QUFDbkI7QUFHQSxDQUFDLG1CQUFtQixDQUFDO0FBQ3BCLFNBQU87QUFDUCxhQUFXO0FBQ1gsVUFBUTtBQUNSLGNBQVk7QUFDYjtBQUVBLENBUEMsbUJBT21CLENBQUM7QUFDcEIsU0FBTztBQUNQLGFBQVc7QUFDWCxVQUFRO0FBQ1IsY0FBWTtBQUNiO0FBR0EsQ0FBQztBQUNBLFdBQVMsSUFBSTtBQUNiLG9CQUFrQixJQUFJO0FBQ3RCLGNBQVksSUFBSSxNQUFNLElBQUk7QUFDMUIsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLLElBQUk7QUFDVjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsT0FBSyxJQUFJO0FBQ1QsZUFBYTtBQUNiLGVBQWE7QUFDZDtBQUVBLENBUEMsc0JBT3NCLENBQUM7QUFDdkIsY0FBWTtBQUNaLFVBQVE7QUFDUixpQkFBZSxJQUFJO0FBQ25CLFdBQVMsSUFBSTtBQUNiLFVBQVE7QUFDUixjQUFZLElBQUksS0FBSztBQUNyQixTQUFPLElBQUk7QUFDWCxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNsQjtBQUVBLENBcEJDLHNCQW9Cc0IsQ0FiQyxtQkFhbUI7QUFDMUMsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQXpCQyxzQkF5QnNCLENBbEJDLG1CQWtCbUIsQ0F4TWI7QUF5TTdCLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0F4REMsbUJBd0RtQixDQUFDO0FBQ3BCLGFBQVc7QUFDWCxhQUFXO0FBQ1gsY0FBWTtBQUNiO0FBR0EsQ0FBQztBQUNBLFdBQVMsSUFBSTtBQUNiLGNBQVksSUFBSSxJQUFJO0FBQ3BCLGlCQUFlO0FBQ2YsaUJBQWU7QUFDaEI7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ0wsYUFBVztBQUNaO0FBRUEsQ0FBQztBQUNBLFNBQU8sSUFBSSxJQUFJO0FBQ2YsZUFBYTtBQUNkO0FBRUEsQ0FBQztBQUNBLFNBQU8sSUFBSSxJQUFJO0FBQ2YsUUFBTTtBQUNQO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixXQUFTLElBQUk7QUFDYixjQUFZLElBQUksSUFBSTtBQUNwQixVQUFRLElBQUksTUFBTSxJQUFJLElBQUk7QUFDMUIsaUJBQWU7QUFDZixhQUFXO0FBQ1gsU0FBTyxJQUFJLElBQUk7QUFDaEI7QUFFQSxDQVZDLGdDQVVnQztBQUNoQyxXQUFTO0FBQ1QsZ0JBQWMsSUFBSTtBQUNsQixjQUFZLEVBQUUsRUFBRSxFQUFFLElBQUksSUFBSTtBQUMzQjtBQUlBLENBQUM7QUFDQSxXQUFTO0FBQ1QsT0FBSyxJQUFJO0FBQ1Y7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULE9BQUssSUFBSTtBQUNWO0FBRUEsQ0FuRndCLG1CQW1GSixDQXpRVTtBQTBRN0Isb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1gsZ0JBQWMsSUFBSTtBQUNuQjtBQUVBLENBQUM7QUFDQSxXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGFBQVc7QUFDWCxVQUFRO0FBQ1IsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBQUM7QUFDQSxZQUFVO0FBQ1YsVUFBUTtBQUNSLFFBQU07QUFDTixhQUFXLFdBQVc7QUFDdEIsU0FBTztBQUNQLFdBQVMsSUFBSTtBQUNiLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWCxhQUFXLElBQUk7QUFDZixXQUFTO0FBQ1Y7QUFHQSxDQUFDO0FBQ0EsV0FBUyxJQUFJLFlBQVksSUFBSTtBQUM3QixpQkFBZSxJQUFJO0FBQ25CLFVBQVE7QUFDUixjQUFZLGlCQUFpQixLQUFLO0FBQ2xDLGNBQVk7QUFDWixXQUFTO0FBQ1QsZUFBYTtBQUNkO0FBRUEsQ0FWQyxnQ0FVZ0M7QUFDaEMsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQWRDLGdDQWNnQyxDQUFDO0FBQ2pDLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FuQkMsZ0NBbUJnQyxDQUxDLFlBS1ksQ0FBQztBQUM5QyxTQUFPLElBQUk7QUFDWjtBQUVBLENBdkJDLGdDQXVCZ0MsQ0FUQyxZQVNZLENBQUM7QUFDOUMsU0FBTyxJQUFJO0FBQ1gsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxhQUFXO0FBQ1gsY0FBWTtBQUNiO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDUDtBQUVBLENBbkIrQztBQW9COUMsYUFBVyxJQUFJO0FBQ2YsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FyQitDO0FBc0I5QyxhQUFXLElBQUk7QUFDZixTQUFPLElBQUk7QUFDWCxjQUFZO0FBQ2I7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixpQkFBZSxJQUFJO0FBQ25CLE9BQUssSUFBSTtBQUNULGFBQVcsSUFBSTtBQUNmLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWCxXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGFBQVc7QUFDWjtBQUVBLENBQUM7QUFDQSxTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsUUFBTTtBQUNOLGlCQUFlLElBQUk7QUFDbkIsU0FBTyxJQUFJO0FBQ1gsYUFBVyxJQUFJO0FBQ2YsZUFBYTtBQUNiLGFBQVc7QUFDWCxhQUFXO0FBQ1gsZUFBYTtBQUNiLFlBQVU7QUFDVixpQkFBZTtBQUNmLFdBQVMsSUFBSTtBQUNiLGNBQVksaUJBQWlCLEtBQUs7QUFDbkM7QUFFQSxDQWZDLG9CQWVvQjtBQUNwQixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBbkJDLG9CQW1Cb0I7QUFDcEIsb0JBQWtCLElBQUk7QUFDdEIsV0FBUyxJQUFJLE1BQU0sSUFBSTtBQUN2QixrQkFBZ0I7QUFDaEIsWUFBVTtBQUNWLGlCQUFlO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWCxpQkFBZTtBQUNmLGNBQVk7QUFDWixjQUFZO0FBQ2I7QUFFQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLE9BQUs7QUFDTjtBQUVBLENBQUM7QUFDRCxDQUFDO0FBQ0EsV0FBUyxJQUFJO0FBQ2IsaUJBQWU7QUFDZixVQUFRO0FBQ1Q7QUFFQSxDQVBDO0FBUUEsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQVhDO0FBWUEsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQXRSQyxvQkFzUm9CLENBQUM7QUFDckIsV0FBUztBQUNULGVBQWE7QUFDYixrQkFBZ0I7QUFDaEIsT0FBSztBQUVMLGFBQVcsSUFBSTtBQUNmLGVBQWE7QUFDZDtBQUNBLENBQUM7QUFDQSxjQUFZO0FBQ1osaUJBQWU7QUFDaEI7QUFDQSxDQUFDO0FBQ0EsV0FBUztBQUNULG1CQUFpQjtBQUNqQixPQUFLO0FBQ047QUFHQSxDQTFTQyxtQkEwU21CLENBQUM7QUFDcEIsU0FBTztBQUNQLGFBQVc7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsVUFBUTtBQUNSLE9BQUs7QUFDTCxpQkFBZTtBQUNoQjtBQUVBLENBQUM7QUFDQSxRQUFNO0FBQ04sZ0JBQWMsSUFBSSxNQUFNLElBQUk7QUFDNUIsaUJBQWU7QUFDZixjQUFZO0FBQ1osYUFBVztBQUNaO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2pCO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDYixpQkFBZTtBQUNmLGFBQVcsSUFBSTtBQUNmLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGlCQUFlO0FBQ2hCO0FBRUEsQ0EvVUMsbUJBK1VtQixDQXJDQyxLQXFDSyxDQWhEekI7QUFpREEsY0FBWTtBQUNaLFFBQU07QUFDTixjQUFZO0FBQ1osVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLFdBQVM7QUFDVCxjQUFZO0FBQ2I7QUFHQSxPQUFPLENBQUMsU0FBUyxFQUFFO0FBQ2xCLEdBM1ZBLG1CQTJWb0IsQ0FqREE7QUFrRG5CLFdBQU87QUFDUjtBQUVBLEdBaERBO0FBaURDLG9CQUFnQjtBQUNqQjtBQUVBLEdBN0NBO0FBOENDLGVBQVc7QUFDWCxrQkFBYztBQUNkLG1CQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLG1CQUFlO0FBQ2Ysb0JBQWdCO0FBQ2hCLG1CQUFlO0FBQ2YsZ0JBQVk7QUFDYjtBQUNEO0FBRUEsQ0F4REMsMkJBd0QyQixDQUFDO0FBQzVCLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsbUJBQWlCO0FBRWpCLGlCQUFlLElBQUk7QUFDbkIsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FqRUMsMkJBaUUyQixDQUFDO0FBQzVCLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsbUJBQWlCO0FBRWpCLE9BQUssSUFBSTtBQUNWOzs7QUMxa0JBLENBQUM7QUFDQSxRQUFNO0FBQ04sY0FBWTtBQUNaLFdBQVM7QUFDVjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLFdBQVMsSUFBSTtBQUNiLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLFVBQVE7QUFDUixPQUFLLElBQUk7QUFDVjtBQUVBLENBVEMsU0FTUztBQUNULG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FBQyx3QkFBd0IsQ0FieEIsU0Fha0M7QUFDbEMsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQWpCQyxTQWlCUyxDQUFDO0FBQ1Ysb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQXJCQyxTQXFCUyxDQUFDLGVBQWUsQ0FBQztBQUMxQixtQkFBaUI7QUFDakIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQTFCQyxVQTBCVSxDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0FBQy9DLFdBQVM7QUFDVCxVQUFRO0FBQ1IsZUFBYTtBQUNiLFlBQVU7QUFDVixpQkFBZTtBQUNoQjtBQUVBLENBQUM7QUFDQSxTQUFPO0FBQ1AsVUFBUTtBQUNSLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU8sSUFBSTtBQUNYLFVBQVE7QUFDUixlQUFhO0FBQ2Q7QUFFQSxDQTdDQyxTQTZDUyxDQXhCQyxlQXdCZSxDQVh6QjtBQVlBLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0E1QjJCO0FBNkIxQixRQUFNO0FBQ04sZUFBYTtBQUNiLFlBQVU7QUFDVixpQkFBZTtBQUNmLFNBQU87QUFDUjtBQUVBLENBQUM7QUFDQSxRQUFNO0FBQ04sZUFBYTtBQUNiLFlBQVU7QUFDVixpQkFBZTtBQUNoQjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsYUFBVztBQUNYLGVBQWE7QUFDYixPQUFLLElBQUk7QUFDVCxjQUFZLElBQUksS0FBSztBQUN0QjtBQUdBLENBVEMsK0JBUytCLENBQUM7QUFDaEMsa0JBQWdCO0FBQ2hCLGVBQWE7QUFDZDtBQUVBLENBZEMsK0JBYytCLENBTEMsb0JBS29CLENBMUQxQjtBQTJEMUIsUUFBTTtBQUNOLGFBQVc7QUFDWjtBQUVBLENBbkJDLCtCQW1CK0IsQ0FWQyxvQkFVb0IsQ0FBQztBQUNyRCxlQUFhO0FBQ2IsY0FBWTtBQUNiO0FBR0EsQ0F6QkMsK0JBeUIrQixDQUFDO0FBQ2hDLGtCQUFnQjtBQUNoQixlQUFhO0FBQ2Q7QUFFQSxDQTlCQywrQkE4QitCLENBTEMsbUJBS21CLENBMUV6QjtBQTRFM0I7QUFFQSxDQWxDQywrQkFrQytCLENBVEMsbUJBU21CLENBZkU7QUFnQnJELGNBQVksSUFBSTtBQUNqQjtBQUVBLENBbkJzRDtBQW9CckQsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLLElBQUk7QUFDVCxjQUFZLElBQUk7QUFDakI7QUFFQSxDQTFCc0Qsa0JBMEJuQztBQUNsQixXQUFTO0FBQ1Y7QUFFQSxDQUFDO0FBQ0EsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNiLG9CQUFrQixJQUFJO0FBQ3RCLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0IsaUJBQWUsSUFBSTtBQUNuQixXQUFTO0FBQ1Y7QUFFQSxDQTVIQyxTQTRIUyxPQUFPLENBVmhCO0FBV0EsV0FBUztBQUNWO0FBRUEsQ0FkQyxTQWNTO0FBQ1QsV0FBUztBQUNULGdCQUFjLElBQUk7QUFDbEIsYUFBVztBQUNYLFdBQVM7QUFDVCxhQUFXLFdBQVc7QUFDdkI7QUFFQSxDQUFDLGVBQWUsQ0F0QmYsU0FzQnlCO0FBQ3pCLGFBQVcsV0FBVztBQUN2QjtBQUVBLENBMUJDLFNBMEJTLENBQUMsYUFBYTtBQUN2QixXQUFTO0FBQ1Y7QUFFQSxDQTlCQyxTQThCUyxDQUFDO0FBQ1YsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBRUEsQ0FuQ0MsU0FtQ1MsQ0FBQztBQUNWLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDZDtBQUVBLENBeENDLFNBd0NTLENBQUM7QUFDVixTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQTdDQyxTQTZDUyxDQUFDLGVBQWU7QUFDekIsV0FBUztBQUNWO0FBRUEsQ0FqREMsU0FpRFMsQ0FBQyxpQkFBaUI7QUFDM0IsV0FBUztBQUNWO0FBRUEsQ0FyREMsU0FxRFMsQ0FBQyxtQkFBbUI7QUFDN0IsV0FBUztBQUNWO0FBRUEsQ0F6REMsU0F5RFMsQ0FBQyxjQUFjO0FBQ3hCLFdBQVM7QUFDVjtBQUVBLENBN0RDLFNBNkRTLENBQUMsbUJBQW1CO0FBQzdCLFdBQVM7QUFDVjtBQUVBLENBakVDLFNBaUVTLENBQUMsZUFBZTtBQUN6QixXQUFTO0FBQ1Y7QUFFQSxDQXJFQyxTQXFFUyxDQUFDLGtCQUFrQjtBQUM1QixXQUFTO0FBQ1Y7QUFFQSxDQUFDO0FBQ0EsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsb0JBQWtCLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGVBQWE7QUFDYixXQUFTO0FBQ1Y7QUFFQSxDQVZDLFlBVVksS0FBSztBQUNqQixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBMU1DLFNBME1TLE9BQU8sQ0FmaEI7QUFnQkEsV0FBUztBQUNWO0FBRUEsQ0FuQkMsWUFtQlk7QUFDWixXQUFTO0FBQ1QsZ0JBQWMsSUFBSTtBQUVsQixXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUVqQixhQUFXLElBQUk7QUFDaEI7QUFFQSxDQTlCQyxZQThCWTtBQUNaLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDYixhQUFXO0FBQ1gsZUFBYTtBQUNkO0FBQ0EsQ0FMQyxhQUthLENBQUM7QUFDZCxTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2Q7QUFDQSxDQVRDLGFBU2EsQ0FBQztBQUNkLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDZDtBQUNBLENBYkMsYUFhYSxDQUFDO0FBQ2QsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBQ0EsQ0FqQkMsYUFpQmEsQ0FBQztBQUNkLFNBQU8sSUFBSTtBQUNaO0FBQ0EsQ0FwQkMsYUFvQmEsQ0FBQztBQUNkLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsV0FBUyxJQUFJO0FBQ2IsZUFBYTtBQUNiLGlCQUFlO0FBQ2YsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBRUEsQ0FYQyxpQkFXaUI7QUFDakIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixXQUFTLElBQUk7QUFDYixlQUFhO0FBQ2Isb0JBQWtCLElBQUk7QUFDdEIsaUJBQWU7QUFDZixhQUFXLElBQUk7QUFDZixTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQVpDLGNBWWM7QUFDZCxvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLFdBQVMsSUFBSTtBQUNiLGVBQWE7QUFDYixvQkFBa0IsSUFBSTtBQUN0QixpQkFBZTtBQUNmLGFBQVcsSUFBSTtBQUNmLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDZDtBQUVBLENBWkMsT0FZTztBQUNQLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxhQUFXO0FBQ1gsT0FBSyxJQUFJO0FBQ1Y7QUFFQSxDQU5DLG1CQU1tQjtBQUNuQixXQUFTO0FBQ1Y7QUFFQSxDQUFDO0FBQ0EsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsb0JBQWtCLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGVBQWE7QUFDYixXQUFTO0FBQ1Y7QUFFQSxDQTdUQyxTQTZUUyxPQUFPLENBVmhCO0FBV0EsV0FBUztBQUNWO0FBRUEsQ0E1UzJCLGtCQTRTUixDQUFDLEtBQUssS0FBSztBQUM3QixXQUFTO0FBQ1QsU0FBTyxJQUFJLEdBQUcsRUFBRTtBQUNqQjs7O0FDMVVBLENBQUM7QUFDQSxZQUFVO0FBQ1YsV0FBUztBQUNULFNBQU87QUFDUjtBQUdBLENBQUM7QUFDQSxTQUFPO0FBQ1AsY0FBWTtBQUNaLFVBQVE7QUFDUixpQkFBZSxJQUFJLE1BQU0sSUFBSTtBQUM3QixpQkFBZTtBQUNmLFdBQVMsSUFBSTtBQUNiLG9CQUFrQjtBQUNsQixTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2IsYUFBVztBQUNYLGVBQWE7QUFDYixVQUFRO0FBQ1IsV0FBUztBQUNULGNBQVksYUFBYSxNQUFNLElBQUksRUFBRSxpQkFBaUIsTUFBTTtBQUM3RDtBQUVBLENBakJDLHFCQWlCcUI7QUFDckIsdUJBQXFCLElBQUk7QUFDekIsb0JBQWtCLElBQUk7QUFDdEIsY0FBWSxFQUFFLElBQUksRUFBRSxFQUFFLElBQUk7QUFDM0I7QUFHQSxDQUFDO0FBQ0EsU0FBTztBQUNQLGNBQVk7QUFDWixVQUFRO0FBQ1IsaUJBQWU7QUFDZixvQkFBa0I7QUFDbkI7QUFFQSxDQUFDO0FBQ0EsU0FBTztBQUNQLGNBQVk7QUFDWixvQkFBa0I7QUFDbkI7QUFFQSxDQU5DLHVCQU11QixDQUFDO0FBQ3hCLFVBQVE7QUFDUixXQUFTO0FBQ1Qsb0JBQWtCO0FBQ2xCLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzlCO0FBRUEsQ0FiQyx1QkFhdUIsQ0FBQztBQUN4QixXQUFTO0FBQ1QsdUJBQXFCLElBQUk7QUFDekIsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQW5CQyx1QkFtQnVCLENBQUM7QUFDeEIsV0FBUyxJQUFJO0FBQ2IsY0FBWTtBQUNaLGVBQWE7QUFDYixhQUFXO0FBQ1gsZUFBYTtBQUNkO0FBRUEsQ0EzQkMsdUJBMkJ1QixDQUFDO0FBQ3hCLFdBQVM7QUFDVjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTCxXQUFTLElBQUk7QUFDYixvQkFBa0IsSUFBSTtBQUN0QixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDbkIsY0FBWSxFQUFFLElBQUksSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFO0FBQ3BDLGFBQVc7QUFDWCxhQUFXO0FBQ1gsWUFBVTtBQUNWLFdBQVM7QUFDVjtBQUVBLENBZkMsdUJBZXVCO0FBQ3ZCLFVBQVE7QUFDUixXQUFTO0FBQ1QsV0FBUztBQUNULFVBQVEsSUFBSTtBQUNaLG9CQUFrQjtBQUNsQixjQUFZO0FBQ1osaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBekJDLHVCQXlCdUIsS0FBSztBQUM1QixXQUFTO0FBQ1QsV0FBUztBQUNULG9CQUFrQjtBQUNuQjtBQUVBLENBL0JDLHNCQStCc0IsS0FBSztBQUMzQixXQUFTO0FBQ1QsVUFBUTtBQUNSLFdBQVM7QUFDVCxvQkFBa0I7QUFDbEIsaUJBQWU7QUFDaEI7QUFHQSxDQUFDO0FBQ0QsQ0FBQztBQUNELENBQUM7QUFDRCxDQUFDO0FBQ0QsQ0FBQztBQUNBLFFBQU07QUFDTixXQUFTLElBQUk7QUFDYixVQUFRO0FBQ1IsaUJBQWU7QUFDZixvQkFBa0I7QUFDbEIsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNiLGFBQVcsSUFBSTtBQUNmLFdBQVM7QUFDVCxhQUFXO0FBQ1gsY0FBWSxpQkFBaUIsTUFBTTtBQUNwQztBQUVBLENBbEJDLG9CQWtCb0I7QUFDckIsQ0FsQkMsaUJBa0JpQjtBQUNsQixDQWxCQyxvQkFrQm9CO0FBQ3JCLENBbEJDLGlCQWtCaUI7QUFDbEIsQ0FsQkMsdUJBa0J1QjtBQUN2QixvQkFBa0IsSUFBSTtBQUN0QixjQUFZLE1BQU0sRUFBRSxFQUFFLEVBQUUsSUFBSSxJQUFJO0FBQ2pDO0FBRUEsQ0FBQztBQUNBLFdBQVMsSUFBSTtBQUNiLFVBQVE7QUFDUixpQkFBZTtBQUNmLG9CQUFrQjtBQUNsQixTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2IsYUFBVyxJQUFJO0FBQ2YsV0FBUztBQUNULFVBQVE7QUFDUixhQUFXO0FBQ1o7QUFFQSxDQWJDLHNCQWFzQjtBQUN0QixvQkFBa0IsSUFBSTtBQUN0QixjQUFZLE1BQU0sRUFBRSxFQUFFLEVBQUUsSUFBSSxJQUFJO0FBQ2pDO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsZUFBYTtBQUNkO0FBRUEsQ0FBQyxVQUFVLENBQUMsU0FBUyxLQUFLLENBQUMsZUFBZSxPQUFPLENBQUM7QUFDakQsV0FBUztBQUNWO0FBRUEsQ0FKMkIsZUFJWCxDQUFDLG1CQUFtQixPQUFPLENBSk87QUFLakQsV0FBUztBQUNWO0FBRUEsQ0FSa0Q7QUFTakQsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsU0FBTztBQUNQLFVBQVE7QUFDUixVQUFRO0FBQ1IsaUJBQWU7QUFDZixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWCxVQUFRO0FBQ1IsY0FBWSxJQUFJLE1BQU07QUFDdEIsZUFBYTtBQUNiLFdBQVM7QUFDVCxXQUFTO0FBQ1QsVUFBUTtBQUNUO0FBRUEsQ0ExQmtELGdCQTBCakM7QUFDaEIsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1gsV0FBUztBQUNWO0FBRUEsQ0FoQ2tELGdCQWdDakM7QUFDaEIsb0JBQWtCLElBQUk7QUFDdEIsYUFBVyxNQUFNO0FBQ2xCO0FBRUEsQ0FyQ2tELGlCQXFDaEM7QUFDakIsU0FBTztBQUNQLFVBQVE7QUFDVDtBQUdBLENBOU1DLGNBOE1jO0FBQ2Q7QUFBQSxJQUFZLGFBQWEsTUFBTSxJQUFJO0FBQUEsSUFBRSxpQkFBaUIsTUFBTSxJQUFJO0FBQUEsSUFDL0QsV0FBVyxNQUFNO0FBQ25CO0FBR0EsQ0FwTkMsY0FvTmMsS0FBSztBQUNwQixDQXJOQyxjQXFOYyxRQUFRO0FBQ3ZCLENBdE5DLGNBc05jLE1BQU07QUFDcEIsV0FBUztBQUNWO0FBR0EsQ0FBQyxtQkFBbUIsQ0FBQztBQUNyQixDQURDLG1CQUNtQixDQUFDO0FBQ3JCLENBRkMsbUJBRW1CLENBQUM7QUFDcEIsVUFBUTtBQUNSLGNBQVksaUJBQWlCLE1BQU0sSUFBSSxFQUFFLFVBQVUsTUFBTTtBQUN6RCxZQUFVO0FBQ1g7QUFFQSxDQVJDLG1CQVFtQixDQVJDLFNBUVM7QUFDOUIsQ0FUQyxtQkFTbUIsQ0FSQyxZQVFZO0FBQ2pDLENBVkMsbUJBVW1CLENBUkMsUUFRUTtBQUM1QixvQkFBa0IsSUFBSTtBQUN0QixhQUFXO0FBQ1o7QUFHQSxDQWhCQyxtQkFnQm1CLENBaEJDLFNBZ0JTLE1BQU07QUFDcEMsQ0FqQkMsbUJBaUJtQixDQWhCQyxZQWdCWSxNQUFNO0FBQ3ZDLENBbEJDLG1CQWtCbUIsQ0FoQkMsUUFnQlEsTUFBTTtBQUNsQyxXQUFTO0FBQ1Y7QUFHQSxDQUFDO0FBQ0EsVUFBUTtBQUNSLGNBQVksaUJBQWlCLE1BQU07QUFDcEM7QUFHQSxDQWpMQztBQWtMQSxhQUFXLFlBQVksTUFBTTtBQUM5QjtBQUVBLFdBSFk7QUFJWDtBQUNDLGFBQVM7QUFDVCxlQUFXLE1BQU07QUFDbEI7QUFDQTtBQUNDLGFBQVM7QUFDVCxlQUFXLE1BQU07QUFDbEI7QUFDRDtBQUdBLENBQUM7QUFDQSxjQUFZO0FBQ1osV0FBUztBQUNWO0FBR0EsT0FBTyxDQUFDLFNBQVMsRUFBRTtBQUNsQixHQWhLQTtBQUFBLEVBaUtBLENBaEtBO0FBQUEsRUFpS0EsQ0FoS0E7QUFBQSxFQWlLQSxDQS9KQTtBQWdLQyxlQUFXO0FBQ1gsZUFBVyxJQUFJO0FBQ2hCO0FBRUEsR0FoTkE7QUFpTkMsZUFBVztBQUNaO0FBQ0Q7QUFHQSxPQUFPLENBQUMsZ0JBQWdCLEVBQUU7QUFDekIsR0F2UkE7QUFBQSxFQXdSQSxDQXhQQSx1QkF3UHdCLENBbFBBO0FBbVB2Qix5QkFBcUI7QUFDdEI7QUFFQSxHQTVOQTtBQTZOQyxrQkFBYztBQUNmO0FBQ0Q7QUFHQSxPQUFPLENBQUMsc0JBQXNCLEVBQUU7QUFDL0IsR0ExU0EsY0EwU2U7QUFBQSxFQUNmLENBaEZBLG1CQWdGb0IsQ0FoRkE7QUFBQSxFQWlGcEIsQ0FqRkEsbUJBaUZvQixDQWhGQTtBQUFBLEVBaUZwQixDQWxGQSxtQkFrRm9CLENBaEZBO0FBQUEsRUFpRnBCLENBNURBO0FBQUEsRUE2REEsQ0E1SWlEO0FBNkloRCxnQkFBWTtBQUNiO0FBRUEsR0E1T0E7QUE2T0MsZUFBVztBQUNaO0FBQ0Q7QUFHQSxDQUFDO0FBQ0QsQ0FBQztBQUNBLFNBQU87QUFDUCxhQUFXO0FBQ1gsV0FBUyxJQUFJO0FBQ2IsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDYixhQUFXLElBQUk7QUFDZixXQUFTO0FBQ1QsY0FBWSxhQUFhLE1BQU0sSUFBSSxFQUFFLFdBQVcsTUFBTTtBQUN2RDtBQUVBLENBZkMsc0JBZXNCO0FBQ3ZCLENBZkMsZUFlZTtBQUNmLGdCQUFjLElBQUk7QUFDbEIsY0FBWSxFQUFFLEVBQUUsRUFBRSxJQUFJLElBQUk7QUFDM0I7QUFFQSxDQXJCQyxzQkFxQnNCO0FBQ3ZCLENBckJDLGVBcUJlO0FBQ2YsU0FBTyxJQUFJO0FBQ1o7OztBQy9VQSxDQUFDO0FBQ0EsWUFBVTtBQUNWLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsV0FBUyxJQUFJO0FBQ2IsY0FBWSxpQkFBaUIsS0FBSztBQUNuQztBQUVBLENBQUMsd0JBQXdCLENBQUMsU0FBUyxDQVJsQztBQVNBLGlCQUFlO0FBQ2YsZUFBYSxJQUFJO0FBQ2pCLGtCQUFnQixJQUFJO0FBQ3BCLE9BQUs7QUFDTjtBQUVBLENBUDBCLFNBT2hCLENBZlQ7QUFnQkEsT0FBSztBQUNOO0FBRUEsQ0FuQkMsY0FtQmM7QUFDZCxvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBdkJDLGNBdUJjLENBQUM7QUFDZixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBM0JDLGNBMkJjLENBQUM7QUFDZixXQUFTO0FBQ1Y7QUFHQSxDQWhDQyxlQWdDZSxFQUFFLEdBQUc7QUFDcEIsU0FBTztBQUNQLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSztBQUNOO0FBR0EsQ0FBQztBQUNBLGVBQWE7QUFDZDtBQUVBLENBcEMwQixTQW9DaEIsQ0E1Q1QsZUE0Q3lCLENBQUM7QUFDMUIsZUFBYSxJQUFJO0FBQ2xCO0FBRUEsQ0F4QzBCLFVBd0NmLENBQUM7QUFDWCxlQUFhLElBQUk7QUFDbEI7QUFHQSxDQVQyQjtBQVUxQixVQUFRO0FBQ1IsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsU0FBTztBQUNQLFVBQVE7QUFDUixlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQXBCMkIsa0JBb0JSO0FBQ2xCLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0E3RDBCLFNBNkRoQixDQXJFVCxlQXFFeUIsQ0FyQmQ7QUFzQlgsVUFBUTtBQUNSLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWCxTQUFPO0FBQ1AsVUFBUTtBQUNSLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2xCO0FBRUEsQ0F4RTBCLFNBd0VoQixDQWhGVCxlQWdGeUIsQ0FoQ2QsYUFnQzRCO0FBQ3ZDLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0E1RTBCLFNBNEVoQixDQXBGVCxlQW9GeUIsQ0FwQ2QsYUFvQzRCLENBQUM7QUFDeEMsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQUFDO0FBQ0EsYUFBVztBQUNYLGVBQWE7QUFDZDtBQUVBLENBOUZDLGNBOEZjLENBbkVDLFVBbUVVLENBTHpCO0FBTUEsbUJBQWlCO0FBQ2pCLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0FwR0MsZUFvR2UsQ0FBQztBQUNoQixXQUFTO0FBQ1QsYUFBVztBQUNYLGVBQWE7QUFDYixPQUFLLElBQUk7QUFDVCxjQUFZLElBQUksS0FBSztBQUN0QjtBQUdBLENBN0dDLGVBNkdlLENBVEMsK0JBUytCLENBQUM7QUFDaEQsa0JBQWdCO0FBQ2hCLGVBQWE7QUFDZDtBQUVBLENBbEhDLGVBa0hlLENBZEMsK0JBYytCLENBTEMsb0JBS29CLENBQUM7QUFDckUsUUFBTTtBQUNOLGFBQVc7QUFDWjtBQUVBLENBdkhDLGVBdUhlLENBbkJDLCtCQW1CK0IsQ0FWQyxvQkFVb0IsQ0FBQztBQUNyRSxlQUFhO0FBQ2IsY0FBWTtBQUNiO0FBR0EsQ0E3SEMsZUE2SGUsQ0F6QkMsK0JBeUIrQixDQUFDO0FBQ2hELGtCQUFnQjtBQUNoQixlQUFhO0FBQ2Q7QUFFQSxDQWxJQyxlQWtJZSxDQTlCQywrQkE4QitCLENBTEMsbUJBS21CLENBaEJFO0FBaUJyRSxTQUFPO0FBQ1I7QUFFQSxDQXRJQyxlQXNJZSxDQWxDQywrQkFrQytCLENBVEMsbUJBU21CLENBZkU7QUFnQnJFLGNBQVk7QUFDYjtBQUdBLENBcEJzRTtBQXFCckUsV0FBUztBQUNULE9BQUs7QUFDTCxjQUFZO0FBQ1osYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0E1QnNFLGFBNEJ4RDtBQUNiLFdBQVM7QUFDVjtBQUVBLENBQUMsYUFBYSxDQUFDO0FBQ2QsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBRUEsQ0FwSjBCLFNBb0poQixDQTVKVCxlQTRKeUIsQ0FBQztBQUMxQixXQUFTO0FBQ1QsV0FBUyxJQUFJO0FBQ2IsaUJBQWU7QUFDaEI7QUFFQSxDQUFDLGFBQWEsQ0FBQztBQUNkLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FKQyxhQUlhLENBQUM7QUFDZCxTQUFPLElBQUk7QUFDWjtBQUVBLENBUkMsYUFRYSxDQUFDO0FBQ2QsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQS9LQyxlQStLZSxDQUFDO0FBQ2hCLFdBQVM7QUFDVCxlQUFhO0FBQ2IsV0FBUyxJQUFJO0FBQ2IsZUFBYTtBQUNiLG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBRUEsQ0EzTEMsZUEyTGUsQ0FaQyxpQkFZaUI7QUFDakMsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQS9MQyxlQStMZSxDQUFDO0FBQ2hCLFdBQVM7QUFDVCxlQUFhO0FBQ2IsV0FBUyxJQUFJO0FBQ2IsZUFBYTtBQUNiLG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBRUEsQ0EzTUMsZUEyTWUsQ0FaQyxjQVljO0FBQzlCLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FoTkMsZUFnTmUsQ0FBQztBQUNoQixXQUFTO0FBQ1QsZUFBYTtBQUNiLFdBQVMsSUFBSTtBQUNiLGVBQWE7QUFDYixvQkFBa0IsSUFBSTtBQUN0QixpQkFBZTtBQUNmLGFBQVcsSUFBSTtBQUNmLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDZDtBQUVBLENBNU5DLGVBNE5lLENBWkMsT0FZTztBQUN2QixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUdBLENBMU5DO0FBNE5BLGNBQVk7QUFDWixTQUFPO0FBQ1I7QUFHQSxDQUFDO0FBQ0EsVUFBUTtBQUNSLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU87QUFDUCxVQUFRO0FBQ1IsU0FBTyxJQUFJO0FBQ1gsaUJBQWU7QUFDaEI7QUFFQSxDQVhDLGVBV2U7QUFDZixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBalBDLHVCQWlQdUI7QUFDdkIsV0FBUztBQUNWOzs7QUM3UEEsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsVUFBUTtBQUNSLFlBQVU7QUFDVixRQUFNO0FBQ1A7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULG1CQUFpQjtBQUNqQixlQUFhO0FBQ2IsV0FBUztBQUNULGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzlCO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDakI7QUFFQSxDQUFDO0FBQ0EsZUFBYTtBQUNiLGFBQVc7QUFDWjtBQUVBLENBQUM7QUFDQSxhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNiO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxPQUFLLElBQUk7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2xCO0FBRUEsQ0FBQztBQUNBLFVBQVE7QUFDUixXQUFTO0FBQ1QsY0FBWSxRQUFRLEtBQUs7QUFFekIsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDbEI7QUFFQSxDQVZDLGlCQVVpQjtBQUNqQixXQUFTO0FBQ1Y7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULFdBQVMsS0FBSztBQUNkLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLE9BQUs7QUFDTCxlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsUUFBTTtBQUNOLFdBQVMsSUFBSTtBQUNiLGlCQUFlO0FBQ2YsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNmLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNYLFVBQVE7QUFDUixVQUFRO0FBQ1Q7QUFFQSxDQVRDLGNBU2M7QUFDZCxvQkFBa0IsSUFBSTtBQUN2QjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsUUFBTTtBQUNOLFlBQVU7QUFDWDtBQUVBLENBQUM7QUFDQSxTQUFPO0FBQ1AsYUFBVztBQUNYLGdCQUFjLElBQUksTUFBTSxJQUFJO0FBQzVCLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsY0FBWTtBQUNaLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxXQUFTLEtBQUs7QUFDZCxjQUFZLElBQUk7QUFDaEIsZUFBYTtBQUNiLGNBQVksSUFBSSxNQUFNLElBQUk7QUFDM0I7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLGVBQWE7QUFDYixXQUFTO0FBQ1QsVUFBUTtBQUNSLGNBQVksaUJBQWlCLEtBQUs7QUFDbEMsWUFBVTtBQUNYO0FBRUEsQ0FYQyxTQVdTO0FBQ1QsV0FBUztBQUNULFlBQVU7QUFDVixVQUFRO0FBQ1IsUUFBTTtBQUNOLFNBQU87QUFDUCxVQUFRO0FBQ1Isb0JBQWtCO0FBQ2xCLGNBQVksaUJBQWlCLEtBQUs7QUFDbkM7QUFFQSxDQXRCQyxTQXNCUztBQUNULG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0ExQkMsU0EwQlMsQ0FBQyxNQUFNO0FBQ2hCLG9CQUFrQixJQUFJO0FBQ3RCLGFBQVcsWUFBWSxLQUFLLFNBQVM7QUFDdEM7QUFFQSxXQUhZO0FBSVg7QUFDQyxzQkFBa0IsSUFBSTtBQUN0QixhQUFTO0FBQ1Y7QUFDQTtBQUNDLHNCQUFrQixJQUFJO0FBQ3RCLGFBQVM7QUFDVjtBQUNEO0FBRUEsQ0ExQ0MsU0EwQ1MsQ0FBQyxXQUFXO0FBQ3JCLG9CQUFrQixJQUFJO0FBQ3RCLFdBQVM7QUFDVjtBQUVBLENBL0NDLFNBK0NTLENBQUMsUUFBUTtBQUNsQixvQkFBa0IsSUFBSTtBQUN0QixXQUFTO0FBQ1Y7QUFFQSxDQXBEQyxTQW9EUyxDQUFDLFNBQVM7QUFDbkIsb0JBQWtCLElBQUk7QUFDdEIsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQTlEQyxTQThEUyxDQXBCQyxZQW9CWSxDQUx0QjtBQU1BLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLGtCQUFnQixJQUFJO0FBQ3JCO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxlQUFhO0FBQ2IsV0FBUyxJQUFJO0FBQ2IsU0FBTyxJQUFJO0FBQ1gsa0JBQWdCO0FBQ2hCLGtCQUFnQjtBQUNqQjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLFdBQVMsSUFBSTtBQUNiLFVBQVE7QUFDUixlQUFhLElBQUksTUFBTTtBQUN2QixjQUFZLGlCQUFpQixLQUFLO0FBQ25DO0FBRUEsQ0FUQyxhQVNhO0FBQ2Isb0JBQWtCLElBQUk7QUFDdEIscUJBQW1CLElBQUk7QUFDeEI7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNaO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxvQkFBa0IsSUFBSTtBQUN0QixXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNmLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGNBQVk7QUFDWixXQUFTO0FBQ1QsU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNaLGFBQVc7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLFdBQVMsSUFBSTtBQUNiLFVBQVE7QUFDUixpQkFBZSxJQUFJLE1BQU0sSUFBSTtBQUM3QixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBVEMsb0JBU29CLENBQUM7QUFDckIsZ0JBQWM7QUFDZCxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNsQjtBQUVBLENBaEJDLG9CQWdCb0IsQ0FBQztBQUNyQixRQUFNO0FBQ04sZUFBYTtBQUNkO0FBRUEsQ0FyQkMsb0JBcUJvQixDQUFDO0FBQ3JCLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWCxvQkFBa0IsSUFBSTtBQUN0QixpQkFBZTtBQUNmLFVBQVEsSUFBSTtBQUNaLFNBQU8sSUFBSTtBQUNYLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2xCO0FBR0EsQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLENBbEMxQjtBQW1DQSxlQUFhLElBQUksTUFBTSxJQUFJO0FBQzVCO0FBRUEsQ0FKQyxpQkFJaUIsQ0FKQyxRQUlRLENBdEJMO0FBdUJyQixTQUFPLElBQUk7QUFDWjtBQUVBLENBUkMsaUJBUWlCLENBUkMsUUFRUSxDQXJCTDtBQXNCckIsb0JBQWtCLElBQUk7QUFDdEIsU0FBTztBQUNSO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDakI7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULFVBQVE7QUFDUixlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU8sSUFBSTtBQUNYLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxZQUFVO0FBQ1g7QUFFQSxDQUFDLFNBQ0EsQ0E5U0EsZUE4U2dCLEtBQUssQ0FMckIseUJBTUEsQ0F2U0E7QUF3U0EsZ0JBQWMsSUFBSTtBQUNuQjtBQUdBLENBUEMsU0FPUyxDQTVUVDtBQTZUQSxZQUFVO0FBQ1YsWUFBVTtBQUNYO0FBRUEsQ0FaQyxTQVlTLENBdk9UO0FBd09BLFlBQVU7QUFDVixRQUFNO0FBQ04sT0FBSztBQUNMLFVBQVE7QUFDUixXQUFTO0FBQ1Qsb0JBQWtCLElBQUk7QUFDdEIsU0FBTztBQUNQLGFBQVcsV0FBVztBQUN0QixjQUFZLFVBQVUsS0FBSztBQUMzQixnQkFBYyxJQUFJLE1BQU0sSUFBSTtBQUM3QjtBQUVBLENBekJDLFNBeUJTLENBcFBULG9CQW9QOEIsQ0FBQztBQUMvQixhQUFXLFdBQVc7QUFDdkI7QUFFQSxDQTdCQyxTQTZCUyxDQWpDVDtBQWtDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixnQkFBYztBQUNmO0FBRUEsQ0FwQ0MsU0FvQ1MsQ0FBQztBQUNWLFlBQVU7QUFDVixPQUFLO0FBQ0wsU0FBTztBQUNQLFdBQVM7QUFDVCxTQUFPO0FBQ1AsVUFBUTtBQUNSLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLGlCQUFlO0FBQ2Ysb0JBQWtCLElBQUk7QUFDdEIsY0FBWSxFQUFFLElBQUksSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFO0FBQ3JDO0FBR0EsQ0FwREMsU0FvRFMsQ0FBQyxxQkFBcUIsS0FBSyxDQS9RcEMsb0JBK1F5RCxDQTNCMUIsV0EyQnNDO0FBQ3JFLFdBQVM7QUFDVCxZQUFVO0FBQ1YsT0FBSztBQUNMLFFBQU07QUFDTixTQUFPO0FBQ1AsVUFBUTtBQUNSLG9CQUFrQixJQUFJO0FBQ3RCLFdBQVM7QUFDVCxXQUFTO0FBQ1QsY0FBWSxRQUFRLEtBQUs7QUFDMUI7OztBQ3BYQSxDQUFDLGlCQUFpQixDQUFDO0FBQ2xCLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsU0FBTztBQUNQLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLGtCQUFnQjtBQUNqQjtBQUVBLENBUkMsaUJBUWlCLENBUkMsd0JBUXdCLENBQUM7QUFDM0MsV0FBUztBQUNULG1CQUFpQjtBQUNqQixlQUFhO0FBQ2IsV0FBUyxJQUFJO0FBQ2IsaUJBQWU7QUFDaEI7QUFFQSxDQWhCQyxpQkFnQmlCLENBaEJDLHdCQWdCd0IsQ0FBQztBQUMzQyxlQUFhO0FBQ2IsV0FBUztBQUNULE9BQUs7QUFDTjtBQUVBLENBdEJDLGlCQXNCaUIsQ0F0QkMsd0JBc0J3QixDQUFDO0FBQzNDLGdCQUFjO0FBQ2Y7QUFFQSxDQTFCQyxpQkEwQmlCLENBMUJDLHdCQTBCd0IsQ0FBQztBQUMzQyxTQUFPLElBQUk7QUFDWjtBQUVBLENBOUJDLGlCQThCaUIsQ0E5QkMsd0JBOEJ3QixDQUFDO0FBQzNDLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSztBQUNOO0FBRUEsQ0FwQ0MsaUJBb0NpQixDQXBDQyx3QkFvQ3dCLENBQUM7QUFDM0MsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsU0FBTztBQUNQLFVBQVE7QUFDUixpQkFBZTtBQUNmLG9CQUFrQixJQUFJO0FBQ3RCLFVBQVE7QUFDUixXQUFTO0FBQ1QsY0FBWSxRQUFRLEtBQUs7QUFDMUI7QUFFQSxDQWpEQyxpQkFpRGlCLENBakRDLHdCQWlEd0IsQ0FiQyxnQkFhZ0I7QUFDM0QsV0FBUztBQUNULG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0F0REMsaUJBc0RpQixDQXREQyx3QkFzRHdCLENBQUM7QUFDM0MsV0FBUyxJQUFJO0FBQ2IsaUJBQWU7QUFDZixvQkFBa0IsSUFBSTtBQUN0QixVQUFRO0FBQ1IsYUFBVztBQUNYLGNBQVksaUJBQWlCLEtBQUs7QUFDbkM7QUFFQSxDQS9EQyxpQkErRGlCLENBL0RDLHdCQStEd0IsQ0FUQyxrQkFTa0I7QUFDN0Qsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQW5FQyxpQkFtRWlCLENBbkVDLHdCQW1Fd0IsQ0FBQztBQUMzQyxXQUFTO0FBQ1QseUJBQXVCLE9BQU8sQ0FBQyxFQUFFO0FBQ2pDLE9BQUs7QUFDTCxXQUFTLEVBQUU7QUFDWjtBQUVBLENBMUVDLGlCQTBFaUIsQ0ExRUMsd0JBMEV3QixDQUFDO0FBQzNDLGNBQVk7QUFDWixhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1gsV0FBUyxJQUFJO0FBQ2IsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDN0IsaUJBQWU7QUFDaEI7QUFFQSxDQW5GQyxpQkFvRkEsQ0FwRmtCLHdCQXFGbEIsQ0FYMkMsbUJBV3ZCLENBQUM7QUFDckIsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQTFGQyxpQkEwRmlCLENBMUZDLHVCQTBGdUIsQ0FBQyxjQUFjLENBdkJiO0FBd0IzQyx5QkFBdUIsT0FBTyxDQUFDLEVBQUU7QUFDbEM7QUFLQSxDQWpHQyxpQkFpR2lCLENBakdDLHdCQWlHd0IsQ0FBQztBQUMzQyxpQkFBZTtBQUNmLFdBQVM7QUFDVCxVQUFRO0FBQ1IsWUFBVTtBQUNWLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsY0FBWSxpQkFBaUIsS0FBSztBQUNsQyxVQUFRO0FBQ1IsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0E3R0MsaUJBNkdpQixDQTdHQyx3QkE2R3dCLENBWkMsWUFZWTtBQUN2RCxvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBakhDLGlCQWlIaUIsQ0FqSEMsd0JBaUh3QixDQWhCQyxZQWdCWSxDQUFDO0FBQ3hELG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FySEMsaUJBcUhpQixDQXJIQyx3QkFxSHdCLENBcEJDLFlBb0JZLENBQUM7QUFDeEQsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQTFIQyxpQkEwSGlCLENBMUhDLHdCQTBId0IsQ0F6QkMsWUF5QlksQ0FBQztBQUN4RCxTQUFPLElBQUk7QUFDWjtBQUVBLENBOUhDLGlCQThIaUIsQ0E5SEMsd0JBOEh3QixDQTdCQyxZQTZCWSxDQUFDO0FBQ3hELFdBQVM7QUFDVjtBQUVBLENBbElDLGlCQWtJaUIsQ0FsSUMsd0JBa0l3QixDQUFDO0FBQzNDLGNBQVk7QUFDWixhQUFXO0FBQ1gsZUFBYTtBQUNiLFdBQVM7QUFDVjtBQUVBLENBeklDLGlCQXlJaUIsQ0F6SUMsd0JBeUl3QixDQUFDO0FBQzNDLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNYLGlCQUFlO0FBQ2YsYUFBVztBQUNYLFdBQVMsSUFBSTtBQUNiLFVBQVEsSUFBSSxLQUFLO0FBQ2pCLGNBQVk7QUFDWixTQUFPO0FBQ1I7QUFFQSxDQXBKQyxpQkFvSmlCLENBcEpDLHdCQW9Kd0IsQ0FYQyxrQkFXa0IsQ0FBQztBQUM5RCxvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLE9BQU8sQ0FBQyxTQUFTLEVBQUU7QUFDbEIsR0FBQyxxQkFBcUIsS0FBSyxDQUFDLFlBQVksQ0FBQyxTQUN4QyxDQTNKaUIsd0JBNEpqQixDQUFDO0FBQ0QsYUFBUztBQUNWO0FBQ0Q7OztBQy9KQSxDQUFDO0FBQ0EsV0FBUztBQUNULGtCQUFnQjtBQUNoQixVQUFRO0FBQ1IsU0FBTztBQUNQLFlBQVU7QUFDVixRQUFNO0FBQ1A7QUFFQSxDQUFDLGdCQUFnQixLQUFLLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQztBQUM3QyxXQUFTO0FBQ1Y7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGtCQUFnQjtBQUNoQixRQUFNO0FBQ04sWUFBVTtBQUNYO0FBRUEsQ0FBQyxrQkFBa0IsQ0FBQztBQUNuQixTQUFPLElBQUk7QUFDWjtBQUVBLENBZjhDO0FBZ0I3QyxTQUFPLElBQUksS0FBSyxFQUFFO0FBQ2xCLGFBQVcsSUFBSSxLQUFLLEVBQUU7QUFDdEIsYUFBVztBQUNYLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsZ0JBQWMsSUFBSSxNQUFNLElBQUk7QUFDNUIsWUFBVTtBQUNYO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLFlBQVU7QUFDWDtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLGVBQWE7QUFDYixXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLFVBQVEsSUFBSTtBQUNiO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDYixhQUFXO0FBQ1o7QUFFQSxDQW5Db0I7QUFvQ25CLFVBQVE7QUFDUixTQUFPLElBQUk7QUFFWCxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNsQjtBQUVBLENBNUNvQixxQkE0Q0U7QUFDckIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsUUFBTTtBQUNOLGNBQVk7QUFDWixXQUFTLElBQUk7QUFFYixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUssSUFBSTtBQUNWO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsV0FBUyxJQUFJO0FBQ2IsVUFBUTtBQUNSLFlBQVU7QUFDVixpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0FUQyxhQVNhO0FBQ2Isb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQWJDLGFBYWEsQ0FBQztBQUNkLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDZDtBQUVBLENBQUM7QUFDQSxnQkFBYyxJQUFJO0FBQ2xCLFNBQU8sSUFBSTtBQUNYLFdBQVM7QUFDVCxlQUFhLElBQUk7QUFDbEI7QUFFQSxDQUFDO0FBQ0EsUUFBTTtBQUNOLGVBQWE7QUFDYixZQUFVO0FBQ1YsaUJBQWU7QUFDaEI7QUFFQSxDQUFDO0FBQ0EsZUFBYTtBQUNiLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWCxvQkFBa0IsSUFBSTtBQUN0QixpQkFBZTtBQUNmLFdBQVMsSUFBSTtBQUNkO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLGVBQWE7QUFDYixXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLFVBQVEsSUFBSTtBQUNiO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDYixhQUFXO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsUUFBTTtBQUNOLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixVQUFRO0FBQ1IsU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNaLFdBQVM7QUFDVjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLFdBQVMsSUFBSTtBQUNiLFVBQVE7QUFDUixpQkFBZSxJQUFJLE1BQU0sSUFBSTtBQUM3QixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBVEMsbUJBU21CLENBQUM7QUFDcEIsZ0JBQWM7QUFDZCxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNsQjtBQUVBLENBaEJDLG1CQWdCbUIsQ0FBQztBQUNwQixRQUFNO0FBQ04sZUFBYTtBQUNkO0FBRUEsQ0FyQkMsbUJBcUJtQixDQUFDO0FBQ3BCLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWCxvQkFBa0IsSUFBSTtBQUN0QixXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNmLFVBQVEsSUFBSTtBQUNaLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0FBQyxTQUFTLENBL0xUO0FBZ01BLFlBQVU7QUFDVixZQUFVO0FBQ1g7QUFFQSxDQUxDLFNBS1MsQ0EzTG9DO0FBNEw3QyxZQUFVO0FBQ1YsUUFBTTtBQUNOLE9BQUs7QUFDTCxVQUFRO0FBQ1IsV0FBUztBQUNULG9CQUFrQixJQUFJO0FBQ3RCLFNBQU87QUFDUCxhQUFXLFdBQVc7QUFDdEIsY0FBWSxVQUFVLEtBQUs7QUFDM0IsZ0JBQWMsSUFBSSxNQUFNLElBQUk7QUFDN0I7QUFFQSxDQWxCQyxTQWtCUyxDQXhNb0MsZ0JBd01uQixDQUFDO0FBQzNCLGFBQVcsV0FBVztBQUN2QjtBQUVBLENBdEJDLFNBc0JTLENBQUM7QUFDVixXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixnQkFBYztBQUNmO0FBRUEsQ0E3QkMsU0E2QlMsQ0FBQztBQUNWLGVBQWEsSUFBSTtBQUNqQixZQUFVO0FBQ1YsT0FBSyxJQUFJO0FBQ1QsU0FBTztBQUNQLFdBQVM7QUFDVCxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNsQjtBQUdBLENBekNDLFNBeUNTLENBeE9ULGNBd093QixLQUFLLENBL05nQixnQkErTkMsQ0F2Qm5CLFdBdUIrQjtBQUMxRCxXQUFTO0FBQ1QsWUFBVTtBQUNWLE9BQUs7QUFDTCxRQUFNO0FBQ04sU0FBTztBQUNQLFVBQVE7QUFDUixvQkFBa0IsSUFBSTtBQUN0QixXQUFTO0FBQ1QsV0FBUztBQUNULGNBQVksUUFBUSxLQUFLO0FBQzFCO0FBRUEsQ0F0REMsU0FzRFMsQ0E1TVQsbUJBNE02QixLQUFLLENBekJ4QjtBQTBCVixpQkFBZSxJQUFJO0FBQ3BCOzs7QUN2UEEsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsVUFBUTtBQUNSLFNBQU87QUFDUCxZQUFVO0FBQ1g7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGtCQUFnQjtBQUNoQixRQUFNO0FBQ04sWUFBVTtBQUNYO0FBRUEsQ0FBQztBQUNBLFNBQU8sSUFBSSxLQUFLLEVBQUU7QUFDbEIsYUFBVyxJQUFJLEtBQUssRUFBRTtBQUN0QixhQUFXO0FBQ1gsV0FBUztBQUNULGtCQUFnQjtBQUNoQixZQUFVO0FBQ1YsZ0JBQWMsSUFBSSxNQUFNLElBQUk7QUFDN0I7QUFFQSxDQUFDLFNBQVMsQ0FWVDtBQVdBLGFBQVc7QUFDWjtBQUVBLENBQUM7QUFDQSxRQUFNO0FBQ04sV0FBUztBQUNULGtCQUFnQjtBQUNoQixZQUFVO0FBQ1g7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULG1CQUFpQjtBQUNqQixlQUFhO0FBQ2IsV0FBUyxJQUFJLFlBQVksSUFBSTtBQUM3QixpQkFBZSxJQUFJLE1BQU0sSUFBSTtBQUM3QixVQUFRLElBQUk7QUFDYjtBQUVBLENBQUM7QUFDQSxlQUFhO0FBQ2IsYUFBVztBQUNaO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsZUFBYTtBQUNiLG1CQUFpQjtBQUVqQixPQUFLLElBQUk7QUFDVjtBQUVBLENBQUMsa0JBQWtCLENBQUM7QUFDbkIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDbEI7QUFFQSxDQVZvQjtBQVduQixVQUFRO0FBQ1IsU0FBTyxJQUFJO0FBRVgsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDbEI7QUFFQSxDQW5Cb0IseUJBbUJNO0FBQ3pCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixjQUFZO0FBQ1osV0FBUyxJQUFJLFlBQVksSUFBSTtBQUM5QjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLFVBQVE7QUFDUixpQkFBZSxJQUFJO0FBQ25CLFdBQVMsSUFBSTtBQUNkO0FBRUEsQ0FSQyxpQkFRaUI7QUFDakIsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQVpDLGlCQVlpQixDQUFDO0FBQ2xCLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLGdCQUFjO0FBQ2QsU0FBTyxJQUFJO0FBRVgsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDbEI7QUFFQSxDQUFDO0FBQ0EsUUFBTTtBQUNOLGVBQWE7QUFDYixZQUFVO0FBQ1YsaUJBQWU7QUFDaEI7QUFFQSxDQUFDO0FBQ0EsZUFBYTtBQUNiLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWCxvQkFBa0IsSUFBSTtBQUN0QixpQkFBZTtBQUNmLFdBQVMsSUFBSTtBQUNiLGVBQWE7QUFDYixjQUFZLGlCQUFpQixLQUFLLElBQUksRUFBRSxNQUFNLEtBQUs7QUFDcEQ7QUFHQSxDQVpDLGFBWWEsQ0FBQztBQUNkLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FoQkMsYUFnQmEsQ0FBQztBQUNkLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDZDtBQUVBLENBckJDLGFBcUJhLENBQUM7QUFDZCxpQkFBZSxJQUFJO0FBQ3BCO0FBR0EsQ0ExREMsaUJBMERpQixDQTlDQyxTQThDUyxDQTFCM0I7QUEyQkEsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQTlEQyxpQkE4RGlCLENBbERDLFNBa0RTLENBOUIzQixhQThCeUMsQ0FkM0I7QUFlZCxvQkFBa0IsS0FBSyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRTtBQUN2QztBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLGVBQWE7QUFDYixXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBQUM7QUFDQSxRQUFNO0FBQ04sV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLLElBQUk7QUFDVjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUVqQixTQUFPO0FBQ1I7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLLElBQUk7QUFDVjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUs7QUFDTCxjQUFZO0FBQ2I7QUFHQSxDQVJDLHlCQVF5QixDQUFDO0FBQzFCLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSztBQUNMLFNBQU87QUFDUjtBQUVBLENBZkMseUJBZXlCLENBQUM7QUFDMUIsUUFBTTtBQUNOLGFBQVc7QUFDWjtBQUVBLENBcEJDLHlCQW9CeUIsQ0FBQztBQUMxQixhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDYixhQUFXO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsUUFBTTtBQUNOLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixVQUFRO0FBQ1IsU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNaLFdBQVM7QUFDVjtBQUdBLENBbk5DLFNBbU5TLENBN05UO0FBOE5BLFlBQVU7QUFDVixRQUFNO0FBQ04sT0FBSztBQUNMLFVBQVE7QUFDUixXQUFTO0FBQ1Qsb0JBQWtCLElBQUk7QUFDdEIsU0FBTztBQUNQLGFBQVcsV0FBVztBQUN0QixjQUFZLFVBQVUsS0FBSztBQUMzQixnQkFBYyxJQUFJLE1BQU0sSUFBSTtBQUM3QjtBQUVBLENBaE9DLFNBZ09TLENBMU9ULG9CQTBPOEIsQ0FBQztBQUMvQixhQUFXLFdBQVc7QUFDdkI7QUFFQSxDQXBPQyxTQW9PUyxDQUFDO0FBQ1YsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsZ0JBQWM7QUFDZjtBQUVBLENBM09DLFNBMk9TLENBQUM7QUFDVixlQUFhLElBQUk7QUFDakIsWUFBVTtBQUNWLE9BQUssSUFBSTtBQUNULFNBQU87QUFDUCxXQUFTO0FBQ1QsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDbEI7QUFHQSxDQXZQQyxTQXVQUyxDQWhSVCxrQkFnUjRCLEtBQUssQ0FqUWpDLG9CQWlRc0QsQ0F2QnZCLFdBdUJtQztBQUNsRSxXQUFTO0FBQ1QsWUFBVTtBQUNWLE9BQUs7QUFDTCxRQUFNO0FBQ04sU0FBTztBQUNQLFVBQVE7QUFDUixvQkFBa0IsSUFBSTtBQUN0QixXQUFTO0FBQ1QsV0FBUztBQUNULGNBQVksUUFBUSxLQUFLO0FBQzFCO0FBR0EsQ0FyUUMsU0FxUVMsQ0E5UlQ7QUErUkEsWUFBVTtBQUNWLFlBQVU7QUFDWDtBQUVBLENBMVFDLFNBMFFTLENBL1BULHVCQStQaUMsS0FBSyxDQS9CNUI7QUFnQ1YsaUJBQWUsSUFBSTtBQUNwQjtBQUdBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDaEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLGNBQVksSUFBSTtBQUNoQixXQUFTLEtBQUs7QUFDZCxhQUFXO0FBQ1gsY0FBWTtBQUNaLFlBQVU7QUFDWDtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUs7QUFDTjtBQUdBLENBUEMsaUJBT2lCLEVBQUU7QUFDbkIsV0FBUztBQUNULHlCQUF1QixPQUFPLElBQUksRUFBRSxPQUFPO0FBQzNDLGVBQWE7QUFDYixjQUFZO0FBQ1osV0FBUyxJQUFJO0FBQ2Q7QUFHQSxDQWhCQyxpQkFnQmlCLEVBQUUsSUFBSSxFQUFFLEdBQUc7QUFDNUIsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNYLGVBQWE7QUFDYixlQUFhO0FBQ2IsWUFBVTtBQUNWLGlCQUFlO0FBQ2hCO0FBR0EsQ0ExQkMsaUJBMEJpQixFQUFFLElBQUksRUFBRSxHQUFHO0FBQzVCLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDYixlQUFhO0FBQ2IsY0FBWTtBQUNiO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU8sSUFBSSxXQUFXLEVBQUU7QUFDeEIsVUFBUSxJQUFJLFdBQVcsRUFBRTtBQUN6QixTQUFPLElBQUk7QUFDWCxVQUFRO0FBQ1IsaUJBQWUsSUFBSTtBQUNwQjtBQUNBLENBVkMsa0JBVWtCO0FBQ2xCLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWjs7O0FDL1ZBO0FBRUMsc0JBQW9CO0FBRXBCLHNCQUFvQixJQUFJO0FBQ3pCO0FBR0EsQ0FBQztBQUNBLFVBQVE7QUFDUixZQUFVO0FBQ1g7QUFFQSxDQUFDO0FBQ0EsV0FBUyxPQUFPO0FBQ2pCO0FBR0EsQ0FBQztBQUNBLFlBQVU7QUFDVixlQUFhO0FBQ2IsZ0JBQWM7QUFDZjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLFdBQVM7QUFDVCxnQkFBYyxLQUFLLEtBQUssSUFBSSxjQUFjLEVBQUUsR0FBRyxFQUFFLElBQUk7QUFDckQsVUFBUTtBQUNSLGlCQUFlLElBQUk7QUFDbkIsY0FBWSxpQkFBaUIsTUFBTTtBQUNuQyxZQUFVO0FBQ1g7QUFFQSxDQVhDLHlCQVd5QjtBQUN6QixvQkFBa0IsSUFBSTtBQUN2QjtBQUdBLENBdEJDLGlCQXNCaUIsQ0FBQyxZQUFZLEVBQUUsQ0FoQmhDO0FBaUJBLG9CQUFrQixJQUFJO0FBQ3ZCO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU87QUFDUCxVQUFRO0FBQ1IsZUFBYTtBQUNiLFVBQVE7QUFDUixTQUFPLElBQUk7QUFDWCxjQUFZLFVBQVUsTUFBTTtBQUM3QjtBQUVBLENBWkMsd0JBWXdCO0FBQ3hCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FoQkMseUJBZ0J5QjtBQUN6QixTQUFPO0FBQ1AsVUFBUTtBQUNUO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUCxlQUFhO0FBQ2Q7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsU0FBTztBQUNQLFVBQVE7QUFDUixnQkFBYztBQUNkLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixRQUFNO0FBQ04sYUFBVztBQUNYLE9BQUs7QUFDTjtBQUdBLENBQUM7QUFDQSxRQUFNO0FBQ04sYUFBVztBQUNYLFlBQVU7QUFDVixpQkFBZTtBQUNmLGVBQWE7QUFDZDtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTjtBQUVBLENBQUM7QUFDRCxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsYUFBVztBQUNYLFVBQVE7QUFDUixXQUFTLEVBQUU7QUFDWCxpQkFBZSxJQUFJO0FBQ25CLGFBQVcsSUFBSTtBQUNmLGVBQWE7QUFDZDtBQUVBLENBYkM7QUFjQSxvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2IsY0FBWSxpQkFBaUIsS0FBSyxJQUFJLEVBQUUsTUFBTSxLQUFLO0FBQ3BEO0FBRUEsQ0FuQkM7QUFvQkEsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNiLGNBQVksaUJBQWlCLEtBQUssSUFBSSxFQUFFLE1BQU0sS0FBSztBQUNwRDtBQUdBLENBNUJDLDhCQTRCOEIsQ0FBQztBQUNoQyxDQTVCQyw2QkE0QjZCLENBREU7QUFFL0IsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQWpDQyw4QkFpQzhCLENBQUM7QUFDaEMsQ0FqQ0MsNkJBaUM2QixDQURFO0FBRS9CLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDZDtBQUdBLENBcElDLGlCQW9JaUIsQ0E5R0MsWUE4R1ksQ0F6QzlCLDhCQXlDNkQsQ0FSOUI7QUFTaEMsQ0FySUMsaUJBcUlpQixDQS9HQyxZQStHWSxDQXpDOUIsNkJBeUM0RCxDQVQ3QjtBQVUvQixvQkFBa0IsSUFBSTtBQUN0QixXQUFTO0FBQ1Y7QUFHQSxDQUFDO0FBQ0EsWUFBVTtBQUNYO0FBR0EsQ0FoSkMsaUJBZ0ppQixDQUFDLFdBQVcsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBMUl0RCx5QkEwSWdGO0FBQ2hGLFdBQVM7QUFDVCxZQUFVO0FBQ1YsUUFBTSxLQUFLLE9BQU8sRUFBRSxDQUFDLElBQUksY0FBYyxFQUFFLEdBQUcsRUFBRSxJQUFJLG9CQUFvQixFQUFFO0FBQ3hFLE9BQUs7QUFDTCxVQUFRO0FBQ1IsU0FBTztBQUNQLGNBQVksSUFBSTtBQUNoQixXQUFTO0FBQ1Y7QUFFQSxDQUFDO0FBQ0EsWUFBVTtBQUNWLGNBQVksV0FBVyxLQUFLO0FBQzdCO0FBRUEsQ0FMQywwQkFLMEIsS0FBSyxDQUFDO0FBQ2hDLGNBQVk7QUFDYjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixXQUFTO0FBQ1QsU0FBTyxJQUFJO0FBQ1gsYUFBVyxJQUFJO0FBQ2hCO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU87QUFDUCxVQUFRO0FBQ1IsaUJBQWUsSUFBSTtBQUNuQixVQUFRO0FBQ1IsU0FBTyxJQUFJO0FBQ1gsY0FBWSxJQUFJLE1BQU07QUFDdkI7QUFFQSxDQVpDLHdCQVl3QjtBQUN4QixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBakJDLHlCQWlCeUI7QUFDekIsU0FBTztBQUNQLFVBQVE7QUFDVDtBQUdBLENBaE5DLHNCQWdOc0IsQ0FBQyxrQkFBa0IsQ0FoTXpDO0FBaU1BLFlBQVU7QUFDWDtBQUVBLENBcE5DLHNCQW9Oc0IsQ0FKQyxrQkFJa0IsQ0FwTXpDLHlCQW9NbUU7QUFDbkUsV0FBUztBQUNULFlBQVU7QUFDVixRQUFNO0FBQ04sT0FBSztBQUNMLGFBQVcsV0FBVztBQUN0QixTQUFPO0FBQ1AsVUFBUTtBQUNSLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBaE9DLHNCQWdPc0IsQ0FoQkMsa0JBZ0JrQixDQXROekMsaUJBc04yRCxDQWhNekMsWUFnTXNELENBaE54RSx5QkFnTmtHO0FBQ2xHLG9CQUFrQixJQUFJO0FBQ3RCLGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQXJPQyxzQkFxT3NCLENBckJDLGtCQXFCa0IsQ0EzTnpDLGlCQTJOMkQsQ0FyTXpDLFlBcU1zRCxDQXJOeEUseUJBcU5rRztBQUNsRyxXQUFTO0FBQ1QsWUFBVTtBQUNWLFFBQU07QUFDTixPQUFLO0FBQ0wsYUFBVyxXQUFXO0FBQ3RCLFNBQU87QUFDUCxVQUFRO0FBQ1IsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNYLGVBQWE7QUFDZDtBQUdBLENBQUMsV0FBVyxDQWpKWDtBQWtKQSxvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBSkMsV0FJVyxDQXBKWDtBQXFKQSxvQkFBa0IsSUFBSTtBQUN2QjtBQUdBLE9BQU8sQ0FBQyxTQUFTLEVBQUU7QUFDbEIsR0FoUEE7QUFpUEMsYUFBUyxTQUFTO0FBQ25CO0FBQ0Q7QUFHQSxXQUFXO0FBQ1Y7QUFDQyxhQUFTO0FBQ1QsZUFBVyxXQUFXO0FBQ3ZCO0FBQ0E7QUFDQyxhQUFTO0FBQ1QsZUFBVyxXQUFXO0FBQ3ZCO0FBQ0Q7QUFFQSxDQTVHQywyQkE0RzJCLEVBQUUsQ0F2UTdCO0FBd1FBLGFBQVcsVUFBVSxNQUFNO0FBQzVCOzs7QUM5UkEsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsVUFBUTtBQUNSLFNBQU87QUFDUCxZQUFVO0FBQ1g7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGtCQUFnQjtBQUNoQixRQUFNO0FBQ04sWUFBVTtBQUNYO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUCxhQUFXO0FBQ1gsYUFBVztBQUNYLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsZ0JBQWMsSUFBSSxNQUFNLElBQUk7QUFDNUIsWUFBVTtBQUNYO0FBRUEsQ0FBQyxTQUFTLENBVlQ7QUFXQSxhQUFXO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsUUFBTTtBQUNOLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsWUFBVTtBQUNYO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxtQkFBaUI7QUFDakIsZUFBYTtBQUNiLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0IsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDN0IsVUFBUSxJQUFJO0FBQ2I7QUFFQSxDQUFDO0FBQ0EsZUFBYTtBQUNiLGFBQVc7QUFDWjtBQUVBLENBQUM7QUFDQSxVQUFRO0FBQ1IsU0FBTyxJQUFJO0FBRVgsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDbEI7QUFFQSxDQVRDLHVCQVN1QjtBQUN2QixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxRQUFNO0FBQ04sY0FBWTtBQUNaLFdBQVMsSUFBSTtBQUNkO0FBR0EsQ0FBQztBQUNBLGFBQVc7QUFDWCxlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1gsa0JBQWdCO0FBQ2hCLFdBQVMsSUFBSSxJQUFJO0FBQ2pCLGNBQVk7QUFDWixrQkFBZ0I7QUFDakI7QUFFQSxDQVZDLDRCQVU0QjtBQUM1QixjQUFZO0FBQ2I7QUFHQSxDQUFDO0FBQ0EsZUFBYSxJQUFJO0FBQ2pCLFdBQVM7QUFDVCxlQUFhO0FBQ2IsV0FBUyxJQUFJO0FBQ2IsVUFBUTtBQUNSLGlCQUFlLElBQUk7QUFDbkIsaUJBQWU7QUFDaEI7QUFFQSxDQVZDLG1CQVVtQjtBQUNuQixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBZEMsbUJBY21CLENBQUM7QUFDcEIsb0JBQWtCLElBQUk7QUFDdkI7QUFHQSxDQW5CQyxtQkFtQm1CLENBQUMsb0JBQW9CLENBQUM7QUFDekMsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQXZCQyxtQkF1Qm1CLENBSkMsb0JBSW9CLENBQUM7QUFDekMsZUFBYTtBQUNkO0FBR0EsQ0E1QkMsbUJBNEJtQixLQUFLLENBVEoscUJBUzBCLENBVEw7QUFVekMsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQWIwQztBQWN6QyxnQkFBYztBQUNkLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2xCO0FBRUEsQ0FoQjBDO0FBaUJ6QyxRQUFNO0FBQ04sZUFBYTtBQUNiLFlBQVU7QUFDVixpQkFBZTtBQUNoQjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLFdBQVMsSUFBSTtBQUNiLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzlCO0FBRUEsQ0FqSEMsU0FpSFMsQ0FQVDtBQVFBLGtCQUFnQjtBQUNoQixlQUFhO0FBQ2Q7QUFFQSxDQUFDLHNCQUFzQjtBQUN0QixVQUFRLEVBQUUsRUFBRSxJQUFJO0FBQ2hCLFdBQVM7QUFDVjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWjtBQUVBLENBQUM7QUFDQSxVQUFRLEVBQUU7QUFDWDtBQUVBLENBQUM7QUFDQSxTQUFPLElBQUk7QUFDWjtBQUVBLENBSkMsZ0JBSWdCO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLG1CQUFpQjtBQUNsQjtBQUVBLENBQUM7QUFDQSxTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxjQUFZO0FBQ2I7QUFHQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLFdBQVMsSUFBSTtBQUNiLG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDbkIsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGVBQWEsSUFBSSxNQUFNLElBQUk7QUFDNUI7QUFFQSxDQUFDO0FBQ0EsVUFBUTtBQUNSLG1CQUFpQjtBQUNqQixTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQVBDLG9CQU9vQjtBQUNwQixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxRQUFNO0FBQ04sY0FBWTtBQUNaLFdBQVMsSUFBSTtBQUNkO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFVBQVE7QUFDUixTQUFPLElBQUk7QUFDWCxjQUFZO0FBQ1osV0FBUztBQUNULGNBQVk7QUFDYjtBQUdBLENBQUM7QUFDQSxjQUFZO0FBQ1osV0FBUztBQUNULG1CQUFpQjtBQUNsQjtBQUVBLENBQUM7QUFDRCxDQUFDO0FBQ0EsV0FBUyxJQUFJO0FBQ2IsaUJBQWUsSUFBSTtBQUNuQixVQUFRO0FBQ1IsYUFBVztBQUNYLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQVZDO0FBV0EsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQWRDLG1CQWNtQjtBQUNuQixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBbEJDO0FBbUJBLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0F0QkMsb0JBc0JvQjtBQUNwQixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQUxDLGVBS2U7QUFDZixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUdBLENBQUM7QUFDQSxjQUFZO0FBQ1osaUJBQWU7QUFDZixhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1gsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDN0Isa0JBQWdCO0FBQ2pCO0FBRUEsQ0FBQztBQUNBLGlCQUFlO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLGlCQUFlO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsaUJBQWU7QUFDZixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1gsaUJBQWU7QUFDaEI7QUFFQSxDQUFDO0FBQ0EsU0FBTztBQUNQLGlCQUFlLElBQUk7QUFDbkIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWCxhQUFXO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsY0FBWTtBQUNiO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUCxXQUFTO0FBQ1QsaUJBQWUsSUFBSTtBQUNuQixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDcEI7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULG1CQUFpQjtBQUNqQixjQUFZO0FBQ1osY0FBWSxJQUFJLE1BQU0sSUFBSTtBQUMxQixlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsV0FBUyxJQUFJO0FBQ2IsaUJBQWUsSUFBSTtBQUNuQixhQUFXO0FBQ1gsVUFBUTtBQUNSLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBQ0Esb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1gsZ0JBQWM7QUFDZjtBQUVBLENBTkMsMEJBTTBCO0FBQzFCLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FMQyx3QkFLd0I7QUFDeEIsb0JBQWtCLElBQUk7QUFDdkI7QUFHQSxDQTlVQyxTQThVUyxDQXZXVDtBQXdXQSxZQUFVO0FBQ1YsWUFBVTtBQUNYO0FBRUEsQ0FuVkMsU0FtVlMsQ0E3VlQ7QUE4VkEsWUFBVTtBQUNWLFFBQU07QUFDTixPQUFLO0FBQ0wsVUFBUTtBQUNSLFdBQVM7QUFDVCxvQkFBa0IsSUFBSTtBQUN0QixTQUFPO0FBQ1AsYUFBVyxXQUFXO0FBQ3RCLGNBQVksVUFBVSxLQUFLO0FBQzNCLGdCQUFjLElBQUksTUFBTSxJQUFJO0FBQzdCO0FBRUEsQ0FoV0MsU0FnV1MsQ0ExV1Qsa0JBMFc0QixDQUFDO0FBQzdCLGFBQVcsV0FBVztBQUN2QjtBQUVBLENBcFdDLFNBb1dTLENBQUM7QUFDVixXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixnQkFBYztBQUNmO0FBRUEsQ0EzV0MsU0EyV1MsQ0FBQztBQUNWLFlBQVU7QUFDVixPQUFLLElBQUk7QUFDVCxTQUFPO0FBQ1AsV0FBUztBQUNULFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2xCO0FBR0EsQ0F0WEMsU0FzWFMsQ0EvWVQsZ0JBK1kwQixLQUFLLENBaFkvQixrQkFnWWtELENBdEJyQixXQXNCaUM7QUFDOUQsV0FBUztBQUNULFlBQVU7QUFDVixPQUFLO0FBQ0wsUUFBTTtBQUNOLFNBQU87QUFDUCxVQUFRO0FBQ1Isb0JBQWtCLElBQUk7QUFDdEIsV0FBUztBQUNULFdBQVM7QUFDVCxjQUFZLFFBQVEsS0FBSztBQUMxQjs7O0FDM1pBLENBQUMsWUFBWSxDQUFDO0FBQ2IsU0FBTztBQUNQLFlBQVU7QUFDWDtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixpQkFBZTtBQUNmLFVBQVE7QUFDUixXQUFTO0FBRVQsY0FBWSxRQUFRLEtBQUs7QUFDMUI7QUFFQSxDQVhDLGdCQVdnQjtBQUNoQixXQUFTO0FBQ1Y7QUFFQSxDQXBCQyxZQW9CWSxDQXBCQyxVQW9CVSxDQUFDO0FBQ3hCLGVBQWE7QUFDZDtBQUdBLENBTHlCO0FBTXhCLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsV0FBUyxLQUFLLEVBQUUsS0FBSztBQUNyQixPQUFLO0FBQ047QUFFQSxDQUFDO0FBQ0EsVUFBUTtBQUNSLG9CQUFrQixJQUFJO0FBQ3RCLFVBQVEsSUFBSTtBQUNaLFdBQVM7QUFDVCxjQUFZO0FBQ2I7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixXQUFTLElBQUk7QUFDYixVQUFRO0FBQ1IsaUJBQWU7QUFDZixVQUFRLEVBQUU7QUFDVixjQUFZLGlCQUFpQixLQUFLO0FBQ25DO0FBRUEsQ0FWQyxnQkFVZ0I7QUFDaEIsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQWRDLGdCQWNnQixDQUFDO0FBQ2pCLGVBQWE7QUFDYiwrQkFBNkIsSUFBSTtBQUNqQyxnQkFBYyxJQUFJO0FBQ2xCLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGVBQWEsSUFBSTtBQUNqQixXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixnQkFBYyxJQUFJO0FBQ25CO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixhQUFXLElBQUk7QUFDZixlQUFhO0FBQ2IsWUFBVTtBQUNWLGlCQUFlO0FBQ2hCO0FBRUEsQ0FSQyxjQVFjLENBQUM7QUFDZixXQUFTO0FBQ1QsU0FBTztBQUNQLFlBQVU7QUFDVixVQUFRO0FBQ1Q7QUFFQSxDQXJGQyxZQXFGWSxDQXJGQyxVQXFGVSxDQTdDdkI7QUE4Q0EsV0FBUyxJQUFJO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFFYixjQUFZLE1BQU0sS0FBSyxXQUFXLEVBQUUsWUFBWSxLQUFLO0FBQ3REO0FBRUEsQ0E5RkMsWUE4RlksQ0E5RkMsVUE4RlUsQ0FoQ3ZCO0FBaUNBLGdCQUFjO0FBQ2Y7QUFHQSxDQUFDO0FBQ0EsUUFBTTtBQUNOLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsWUFBVTtBQUNWLGFBQVc7QUFDWCxjQUFZLE9BQU8sS0FBSztBQUN6QjtBQUVBLENBNUdDLFlBNEdZLENBNUdDLFVBNEdVLENBVHZCO0FBVUEsZUFBYTtBQUViLGNBQVksT0FBTyxLQUFLO0FBQ3pCO0FBR0EsQ0FBQyxpQkFBaUIsQ0FBQztBQUNsQixXQUFTLElBQUksWUFBWTtBQUN6QixjQUFZLFFBQVEsS0FBSztBQUMxQjtBQUVBLENBTEMsaUJBS2lCLENBQUM7QUFDbEIsV0FBUztBQUNULGtCQUFnQjtBQUNqQjtBQUVBLENBVkMsaUJBVWlCLENBVmpCLGlCQVVtQyxDQUFDO0FBQ3BDLFdBQVM7QUFDVCxlQUFhO0FBQ2IsV0FBUyxJQUFJO0FBQ2IsVUFBUTtBQUNSLGNBQVksaUJBQWlCLEtBQUs7QUFDbEMsaUJBQWU7QUFDZixVQUFRLEVBQUU7QUFDWDtBQUVBLENBcEJDLGlCQW9CaUIsQ0FWbUIsU0FVVDtBQUMzQixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBeEJDLGlCQXdCaUIsQ0FkbUIsU0FjVCxDQUFDO0FBQzVCLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0E1QkMsaUJBNEJpQixDQUFDO0FBQ2xCLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU87QUFDUCxVQUFRO0FBQ1IsZ0JBQWM7QUFDZCxTQUFPLElBQUk7QUFDWjtBQUVBLENBdENDLGlCQXNDaUIsQ0FBQztBQUNsQixRQUFNO0FBQ04sWUFBVTtBQUNWLGlCQUFlO0FBQ2YsZUFBYTtBQUNkO0FBRUEsQ0E3Q0MsaUJBNkNpQixDQUFDO0FBQ2xCLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2Isb0JBQWtCLElBQUk7QUFDdEIsV0FBUyxJQUFJO0FBQ2IsaUJBQWU7QUFDaEI7QUFFQSxDQXREQyxpQkFzRGlCLENBQUM7QUFDbkIsQ0F2REMsaUJBdURpQixDQUFDO0FBQ2xCLFNBQU87QUFDUCxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixnQkFBYztBQUNmO0FBRUEsQ0EvREMsaUJBK0RpQixDQVRDO0FBVWxCLFVBQVE7QUFDVDtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDN0IsV0FBUztBQUNULGVBQWE7QUFDYixlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGdCQUFjO0FBQ2Y7QUFFQSxDQUFDO0FBQ0EsZUFBYTtBQUNkO0FBSUEsQ0FBQyx1QkFBdUIsQ0F4RnZCO0FBeUZBLFdBQVM7QUFDVjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLFVBQVE7QUFDUixTQUFPO0FBQ1Asb0JBQWtCLElBQUk7QUFDdEIsY0FBWSxJQUFJLE1BQU0sSUFBSTtBQUMxQixTQUFPLElBQUk7QUFFWCxZQUFVO0FBQ1YsWUFBVTtBQUNYO0FBR0EsQ0E5TkM7QUErTkEsV0FBUztBQUNULGtCQUFnQjtBQUNoQixnQkFBYyxJQUFJLE1BQU0sSUFBSTtBQUM1QixvQkFBa0IsSUFBSTtBQUN0QixjQUFZO0FBRVosU0FBTztBQUNQLGNBQVksTUFBTSxLQUFLO0FBQ3ZCLFlBQVU7QUFDWDtBQUdBLENBeElDO0FBeUlBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsUUFBTTtBQUNOLGFBQVc7QUFDWCxVQUFRO0FBQ1IsWUFBVTtBQUNYO0FBR0EsQ0FyUEMsYUFxUGEsQ0FqT1c7QUFrT3hCLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsV0FBUyxJQUFJO0FBQ2IsVUFBUTtBQUNUO0FBR0EsQ0ExSW1CO0FBMklsQixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLFdBQVMsSUFBSTtBQUNiLGNBQVk7QUFDYjtBQUVBLENBNUltQjtBQTZJbEIsV0FBUztBQUNULGtCQUFnQjtBQUNqQjtBQUVBLENBdEpDLGlCQXNKaUIsQ0E1SW1CO0FBNklwQyxXQUFTO0FBQ1QsZUFBYTtBQUNiLFdBQVMsSUFBSTtBQUNiLFVBQVE7QUFDUixpQkFBZTtBQUNmLFVBQVEsSUFBSTtBQUNiO0FBRUEsQ0EvSkMsaUJBK0ppQixDQXJKbUIsU0FxSlQ7QUFDM0Isb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQW5LQyxpQkFtS2lCLENBekptQixTQXlKVCxDQTNJQztBQTRJNUIsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQXhLQyxpQkF3S2lCLENBbEhDO0FBbUhsQixTQUFPO0FBQ1AsVUFBUTtBQUNSLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLGdCQUFjO0FBQ2Y7QUFFQSxDQWpMQyxpQkFpTGlCLENBMUhDO0FBMkhsQixTQUFPO0FBQ1AsVUFBUTtBQUNSLGdCQUFjO0FBQ2Y7QUFFQSxDQXZMQyxpQkF1TGlCLENBM0pDO0FBNEpsQixnQkFBYztBQUNkLFNBQU87QUFDUCxVQUFRO0FBQ1IsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQWpNQyxpQkFpTWlCLENBM0pDO0FBNEpsQixRQUFNO0FBQ04sZUFBYTtBQUNiLFlBQVU7QUFDVixpQkFBZTtBQUNoQjtBQUVBLENBeE1DLGlCQXdNaUIsQ0EzSkM7QUE0SmxCLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWCxvQkFBa0IsSUFBSTtBQUN0QixpQkFBZTtBQUNmLFdBQVMsSUFBSTtBQUNiLGFBQVc7QUFDWCxjQUFZO0FBQ2I7QUFFQSxDQWxOQyxpQkFrTmlCLENBeE1tQixTQXdNVCxDQUFDLFNBQVMsRUFBRSxDQUFDO0FBQ3hDLFdBQVM7QUFDVjtBQUVBLENBdE5DLGlCQXNOaUIsQ0FKdUI7QUFLeEMsV0FBUztBQUNULGtCQUFnQjtBQUNoQixlQUFhO0FBQ2IsU0FBTztBQUNSO0FBR0EsQ0E5TkMsaUJBOE5pQixDQTFKakI7QUEySkEsV0FBUztBQUNULGVBQWE7QUFDYixXQUFTLEtBQUs7QUFDZCxpQkFBZSxJQUFJLE1BQU0sSUFBSTtBQUM3QixjQUFZO0FBQ2I7QUFFQSxDQXRPQyxpQkFzT2lCLENBQUM7QUFDbEIsYUFBVztBQUNYLGVBQWE7QUFDYixnQkFBYztBQUNkLFFBQU07QUFDUDtBQUVBLE9BQU8sT0FBTyxJQUFJLENBQUMsU0FBUyxFQUFFO0FBQzdCLEdBOU9BLGlCQThPa0IsQ0FSQTtBQVNqQixhQUFTO0FBQ1Y7QUFFQSxHQWxQQSxpQkFrUGtCLENBdEtsQjtBQXVLQyxVQUFNO0FBQ1A7QUFFQSxHQXRQQSxpQkFzUGtCLENBcEtsQjtBQXFLQyxVQUFNO0FBQ1A7QUFDRDtBQUVBLENBM1BDLGlCQTJQaUIsQ0FBQztBQUNsQixXQUFTO0FBQ1QsZUFBYTtBQUNiLGdCQUFjO0FBQ2Y7QUFFQSxDQWpRQyxpQkFpUWlCLENBQUM7QUFDbEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLFdBQVMsSUFBSTtBQUNiLFNBQU87QUFDUCxvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBelFDLGlCQXlRaUIsQ0FBQztBQUNsQixvQkFBa0IsSUFBSTtBQUN0QixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsV0FBUyxJQUFJO0FBQ2IsU0FBTyxJQUFJO0FBQ1gsVUFBUTtBQUNUO0FBRUEsQ0FsUkMsaUJBa1JpQixDQVRDLFlBU1k7QUFDOUIsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQXRSQyxpQkFzUmlCLENBYkMsWUFhWSxDQUFDO0FBQy9CLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQyxTQUFTLENBQUM7QUFDVixlQUFhO0FBQ2Q7QUFFQSxDQUFDLGVBQWUsQ0FKTDtBQUtWLFdBQVM7QUFDVjtBQUVBLENBSkMsZUFLQSxDQUFDLHFDQUFxQyxLQUFLLENBVGpDO0FBVVYsV0FBUztBQUNWO0FBRUEsQ0FBQyxnQkFDQSxDQUxDLHFDQUtxQyxLQUFLLENBZGpDO0FBZVYsV0FBUztBQUNWO0FBRUEsQ0E3U0MsaUJBNlNpQixDQUFDO0FBQ25CLENBQUMsb0JBQW9CLENBREY7QUFFbEIsU0FBTztBQUNQLFVBQVE7QUFDUixRQUFNO0FBQ04sV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDbEI7QUFFQSxDQTVCQyxTQTRCUyxDQUFDO0FBQ1Ysa0JBQWdCO0FBQ2pCO0FBRUEsV0FBVyxDQUFDLFNBQVMsRUFBRTtBQUN0QixHQWpDQSxTQWlDVSxDQWpDQTtBQWtDVCxhQUFTO0FBQ1Y7QUFDRDtBQUVBLENBcGJDLFlBb2JZLENBcGJDLFVBb2JVLENBaGFDO0FBaWF4QixhQUFXO0FBQ1o7QUFHQSxDQUFDO0FBQ0EsYUFBVztBQUNYLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxpQkFBZTtBQUNmLFdBQVM7QUFDVCxVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxjQUFZO0FBQ1osU0FBTyxJQUFJO0FBQ1gsVUFBUTtBQUNUO0FBRUEsQ0FBQztBQUNBLGlCQUFlO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxjQUFZO0FBQ2I7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsV0FBUyxJQUFJO0FBQ2IsVUFBUSxJQUFJO0FBQ1osY0FBWSxJQUFJO0FBQ2hCLGlCQUFlO0FBQ2YsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTjtBQUVBLENBQUM7QUFDQSxlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNaO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxPQUFLO0FBQ047QUFFQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLFNBQU8sSUFBSTtBQUNYLGNBQVk7QUFDWixXQUFTO0FBQ1QsVUFBUSxJQUFJLE9BQU8sSUFBSTtBQUN2QixpQkFBZTtBQUNmLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLE9BQUs7QUFDTCxjQUFZO0FBQ1osZUFBYTtBQUNiLGNBQVksSUFBSSxNQUFNLElBQUk7QUFDM0I7QUFHQSxDQUFDO0FBQ0EsY0FBWSxJQUFJO0FBQ2hCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWU7QUFDZixXQUFTO0FBQ1QsVUFBUSxLQUFLO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULG1CQUFpQjtBQUNqQixlQUFhO0FBQ2IsaUJBQWU7QUFDaEI7QUFFQSxDQUFDO0FBQ0EsZUFBYTtBQUNiLGFBQVc7QUFDWjtBQUVBLENBQUM7QUFDQSxTQUFPLElBQUk7QUFDWCxhQUFXO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ0wsaUJBQWU7QUFDaEI7QUFFQSxDQUFDO0FBQ0EsUUFBTTtBQUNOLFVBQVE7QUFDUixjQUFZLElBQUk7QUFDaEIsaUJBQWU7QUFDZixZQUFVO0FBQ1g7QUFFQSxDQUFDO0FBQ0EsVUFBUTtBQUNSLGNBQVksSUFBSTtBQUNoQixjQUFZLE1BQU0sS0FBSztBQUN4QjtBQUVBLENBQUM7QUFDQSxhQUFXO0FBQ1gsZUFBYTtBQUNiLGFBQVc7QUFDWCxjQUFZO0FBQ2I7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLO0FBQ047QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ0wsV0FBUztBQUNULGlCQUFlO0FBQ2YsY0FBWSxpQkFBaUIsS0FBSztBQUNuQztBQUVBLENBVEMsbUJBU21CLENBQUM7QUFDcEIsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FiQyxtQkFhbUIsQ0FBQztBQUNwQixjQUFZLElBQUk7QUFDaEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN2QjtBQUVBLENBbEJDLG1CQWtCbUIsQ0FBQztBQUNwQixjQUFZLElBQUk7QUFDaEIsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUCxVQUFRO0FBQ1IsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsY0FBWTtBQUNiO0FBRUEsQ0FUQyxtQkFTbUIsQ0FBQztBQUNwQixTQUFPLElBQUk7QUFDWjtBQUVBLENBYkMsbUJBYW1CLENBQUM7QUFDcEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQWpCQyxtQkFpQm1CLENBQUM7QUFDcEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsUUFBTTtBQUNQO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDYixpQkFBZTtBQUNoQjtBQUVBLENBQUM7QUFDQSxhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsU0FBTztBQUNQLFVBQVE7QUFDUixpQkFBZTtBQUNmLGNBQVksSUFBSTtBQUNoQixXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixhQUFXO0FBQ1gsZUFBYTtBQUNiLGNBQVk7QUFDYjtBQUVBLENBdkVDLG1CQXVFbUIsQ0E5REMsVUE4RFUsQ0FiOUI7QUFjQSxjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQTVFQyxtQkE0RW1CLENBL0RDLFFBK0RRLENBbEI1QjtBQW1CQSxjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLGdCQUFjO0FBQ2QsZUFBYSxJQUFJLE1BQU0sSUFBSTtBQUM1QjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTCxXQUFTLElBQUk7QUFDZDtBQUVBLENBQUM7QUFDQSxTQUFPO0FBQ1AsVUFBUTtBQUNSLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWjs7O0FDOXFCQSxDQUFDO0FBQ0Esa0JBQWdCO0FBQ2hCLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsVUFBUTtBQUNSLFlBQVU7QUFDVixhQUFXO0FBQ1o7QUFFQSxDQVRDLHdCQVN3QixDQUFDO0FBQ3pCLFdBQVM7QUFDVCxtQkFBaUI7QUFDakIsZUFBYTtBQUNiLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0IsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDN0IsZUFBYTtBQUNiLGlCQUFlO0FBQ2hCO0FBRUEsQ0FuQkMsd0JBbUJ3QixDQVZDLGdCQVVnQjtBQUN6QyxVQUFRLEVBQUUsSUFBSTtBQUNmO0FBRUEsQ0F2QkMsd0JBdUJ3QixDQUFDO0FBQzFCLENBeEJDLHdCQXdCd0IsQ0FBQztBQUN6QixXQUFTO0FBQ1QsT0FBSyxJQUFJO0FBQ1Y7QUFFQSxDQTdCQyx3QkE2QndCLENBTkMsYUFNYTtBQUN0QyxpQkFBZSxJQUFJO0FBRW5CLGtCQUFnQjtBQUNqQjtBQUVBLENBbkNDLHdCQW1Dd0IsQ0FYQyx1QkFXdUI7QUFDaEQsaUJBQWUsSUFBSTtBQUNuQixrQkFBZ0I7QUFDakI7QUFFQSxDQXhDQyx3QkF3Q3dCLENBaEJDLHVCQWdCdUIsTUFBTSxLQUFLLENBQUM7QUFDN0QsQ0F6Q0Msd0JBeUN3QixDQWxCQyxhQWtCYSxNQUFNLEtBQUssQ0FEVztBQUU1RCxjQUFZLElBQUk7QUFDaEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN2QjtBQUVBLENBOUNDLHdCQThDd0IsQ0FBQztBQUN6QixlQUFhLElBQUk7QUFDakIsYUFBVyxJQUFJO0FBQ2YsY0FBWTtBQUNaLGFBQVc7QUFFWCxhQUFXLElBQUksS0FBSyxFQUFFO0FBQ3RCLFlBQVU7QUFDVixpQkFBZTtBQUNmLGVBQWE7QUFDZDtBQUVBLENBMURDLHdCQTBEd0IsQ0FsQ0MsdUJBa0N1QixNQUFNLENBbEJNO0FBbUI1RCxvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWCxnQkFBYyxJQUFJO0FBQ25CO0FBRUEsQ0FoRUMsd0JBZ0V3QixDQUFDO0FBQ3pCLGFBQVc7QUFDWCxjQUFZO0FBQ1osV0FBUyxJQUFJO0FBQ2IsWUFBVTtBQUVWLFdBQVM7QUFDVCxrQkFBZ0I7QUFDakI7QUFJQSxDQTVFQyx3QkE0RXdCLENBQUM7QUFDekIsV0FBUztBQUNULHlCQUF1QixPQUFPLENBQUMsRUFBRTtBQUNqQyxjQUFZO0FBQ1osYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsV0FBUyxJQUFJLFlBQVk7QUFDekIsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDN0IsaUJBQWU7QUFDZixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBeEZDLHdCQXdGd0IsQ0FBQztBQUN6QixXQUFTLElBQUk7QUFDZDtBQUVBLENBNUZDLHdCQTRGd0IsQ0E1QkMsdUJBNEJ1QixDQUFDO0FBQ2pELFdBQVM7QUFFVjtBQUdBLENBbEdDLHdCQWtHd0IsQ0FBQztBQUN6QixXQUFTO0FBQ1QseUJBQXVCLE9BQU8sQ0FBQyxFQUFFO0FBQ2pDLGtCQUFnQixPQUFPLEtBQUssRUFBRTtBQUM5QixPQUFLO0FBQ0wsb0JBQWtCLElBQUk7QUFFdEIsVUFBUTtBQUNUO0FBRUEsQ0E1R0Msd0JBNEd3QixDQUFDO0FBRXpCLG9CQUFrQixJQUFJO0FBQ3RCLFdBQVMsSUFBSTtBQUViLFlBQVU7QUFDVixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLGFBQVc7QUFDWjtBQUVBLENBdkhDLHdCQXVId0IsQ0FYQyxpQkFXaUI7QUFDMUMsb0JBQWtCLElBQ2pCLElBQUksaUJBQWlCLEVBQ3JCLElBQUksaUJBQWlCLEVBQ3JCLElBQUksaUJBQWlCLEVBQ3JCO0FBRUY7QUFFQSxDQWhJQyx3QkFnSXdCLENBcEJDLGlCQW9CaUIsQ0FBQztBQUMzQyxvQkFBa0IsSUFBSTtBQUN0QixVQUFRLElBQUksTUFDWCxJQUFJLElBQUksV0FBVyxFQUFFLElBQUksV0FBVyxFQUFFLElBQUksV0FBVyxFQUFFO0FBQ3pEO0FBRUEsQ0F0SUMsd0JBc0l3QixDQTFCQyxpQkEwQmlCLENBTkMsU0FNUyxDQUFDO0FBQ3JELFNBQU8sSUFBSSxJQUFJLFdBQVcsRUFBRSxJQUFJLFdBQVcsRUFBRSxJQUFJLFdBQVcsRUFBRTtBQUMvRDtBQUVBLENBMUlDLHdCQTBJd0IsQ0FBQztBQUN6QixTQUFPO0FBQ1AsV0FBUztBQUNULGtCQUFnQjtBQUNoQixtQkFBaUI7QUFDakIsZUFBYTtBQUNiLE9BQUssSUFBSTtBQUNWO0FBRUEsQ0FuSkMsd0JBbUp3QixDQXZDQyxpQkF1Q2lCLEtBQUssQ0FuQko7QUFvQjNDLFdBQVM7QUFDVjtBQUVBLENBdkpDLHdCQXVKd0IsQ0EzQ0MsaUJBMkNpQixDQUFDO0FBQzNDLG9CQUFrQixJQUFJO0FBQ3RCLFdBQVM7QUFDVjtBQUVBLENBNUpDLHdCQTRKd0IsQ0FoREMsaUJBZ0RpQixDQUFDO0FBQzNDLG9CQUFrQixLQUNqQjtBQUVGO0FBRUEsQ0FsS0Msd0JBa0t3QixDQTVCNkI7QUE2QnJELGFBQVcsSUFBSTtBQUNmLGNBQVk7QUFDWixpQkFBZSxJQUFJO0FBQ25CLGVBQWE7QUFDYixjQUFZO0FBQ2I7QUFFQSxDQTFLQyx3QkEwS3dCLENBQUM7QUFDekIsYUFBVztBQUNYLFlBQVU7QUFDVixZQUFVO0FBQ1g7QUFFQSxDQWhMQyx3QkFnTHdCLENBQUM7QUFFekIsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1gsaUJBQWUsSUFBSTtBQUNuQixXQUFTLElBQUk7QUFDYixhQUFXLElBQUk7QUFDZixpQkFBZTtBQUNmLGlCQUFlO0FBQ2YsWUFBVTtBQUNWLGlCQUFlO0FBQ2YsZUFBYTtBQUNiLFVBQVE7QUFDUixXQUFTO0FBQ1Y7QUFFQSxDQWhNQyx3QkFnTXdCLENBaEJDLGNBZ0JjLEtBQUssQ0FBQztBQUM3QyxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLGVBQWE7QUFDZDtBQUVBLENBdE1DLHdCQXVNQSxDQXZCeUIsY0F1QlYsS0FBSyxDQVB5Qix3QkFPQSxDQUFDO0FBQzlDLFdBQVM7QUFDVjtBQUVBLENBM01DLHdCQTRNQSxDQTVCeUIsY0E0QlYsS0FBSyxDQVp5Qix3QkFZQSxDQUFDO0FBQzlDLFdBQVM7QUFDVjtBQUVBLENBaE5DLHdCQWdOd0IsQ0FoTnhCLHdCQWdOaUQsQ0FoQ3hCLGNBZ0N1QztBQUNoRSxXQUFTO0FBQ1Y7QUFFQSxDQXBOQyx3QkFvTndCLENBcENDLGNBb0NjLENBQUM7QUFDeEMsb0JBQWtCLEtBQ2pCO0FBRUQsbUJBQWlCO0FBQ2pCLFdBQVM7QUFDVjtBQUVBLENBNU5DLHdCQTROd0IsQ0E1Q0MsY0E0Q2MsQ0FBQztBQUV6QztBQUNBLENBL05DLHdCQStOd0IsQ0EvQ0MsY0ErQ2MsQ0FIQyxZQUdZLENBQUM7QUFJdEQ7QUFDQSxDQXBPQyx3QkFvT3dCLENBcERDLGNBb0RjLENBUkMsWUFRWSxDQUFDO0FBSXREO0FBS0EsQ0E3T0Msd0JBNk93QixDQTdEQyxjQTZEYyxDQWpDTztBQW9DOUMsWUFBVTtBQUNWLGlCQUFlO0FBQ2YsZUFBYTtBQUNiLFdBQVM7QUFDVCxTQUFPO0FBQ1AsY0FBWTtBQUNiO0FBR0EsQ0F6UEMsd0JBeVB3QixDQXpMQyx1QkF5THVCLENBQUM7QUFDakQsV0FBUztBQUNULGtCQUFnQjtBQUNoQixXQUFTO0FBQ1Y7QUFFQSxDQS9QQyx3QkErUHdCLENBQUM7QUFDekIsYUFBVztBQUVYLGNBQVksSUFBSSxNQUFNLElBQUk7QUFDMUIsY0FBWTtBQUNaLFdBQVMsSUFBSTtBQUNkO0FBRUEsQ0F2UUMsd0JBdVF3QixDQUFDO0FBWXpCLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSyxJQUFJO0FBQ1Y7QUFHQSxDQXpSQyx3QkF5UndCLENBQUM7QUFHekIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixZQUFVO0FBQ1YsV0FBUztBQUNULGtCQUFnQjtBQUloQixTQUFPO0FBQ1I7QUFHQSxDQXZTQyx3QkF1U3dCLENBQUM7QUFDekIsYUFBVyxJQUFJO0FBQ2YsZUFBYTtBQUNiLFdBQVMsSUFBSTtBQUNiLG9CQUFrQixLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFO0FBQ2pDO0FBRUEsQ0E5U0Msd0JBOFN3QixDQUFDO0FBQ3pCLGFBQVcsSUFBSTtBQUNmLFdBQVMsSUFBSTtBQUNiLGFBQVc7QUFFWCxlQUFhO0FBQ2IsYUFBVztBQUVYLGFBQVcsSUFBSTtBQUNmLFdBQVMsSUFBSTtBQUNiLGFBQVc7QUFDWCxlQUFhO0FBQ2IsYUFBVztBQUNYLFdBQVM7QUFDVCxlQUFhO0FBQ2Q7QUFHQSxDQWhVQyx3QkFnVXdCLENBaFFDLHVCQWdRdUIsQ0FBQztBQUNqRCxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLFdBQVM7QUFDVjtBQUVBLENBdFVDLHdCQXNVd0IsQ0FBQztBQUN6QixXQUFTO0FBRVQseUJBQXVCLE9BQU8sQ0FBQyxFQUFFO0FBQ2pDLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLGVBQWE7QUFDYixjQUFZO0FBQ1osb0JBQWtCLElBQUk7QUFDdEIsYUFBVyxJQUFJO0FBQ2hCO0FBRUEsQ0FqVkMsd0JBaVZ3QixDQUFDO0FBQ3pCLFdBQVMsSUFBSSxZQUFZO0FBQ3pCLGVBQWEsSUFBSSxNQUFNLElBQUk7QUFDNUI7QUFDQSxDQXJWQyx3QkFxVndCLENBSkMsb0JBSW9CO0FBQzdDLGVBQWE7QUFDZDtBQUNBLENBeFZDLHdCQXdWd0IsQ0FQQyxvQkFPb0IsQ0F4TkYsU0F3TlksQ0FsTkY7QUFtTnJELG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNYLGlCQUFlO0FBQ2YsV0FBUztBQUNULFNBQU87QUFDUCxVQUFRO0FBQ1IsZUFBYTtBQUNiLFVBQVE7QUFFUixVQUFRO0FBQ1IsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDbEI7QUFDQSxDQXZXQyx3QkF1V3dCLENBL1FDO0FBZ1J6QixhQUFXLElBQUk7QUFDZixTQUFPLElBQUk7QUFDWjtBQUNBLENBM1dDLHdCQTJXd0IsQ0FyTzZCO0FBc09yRCxhQUFXLElBQUk7QUFDaEI7QUFHQSxDQWhYQyx3QkFnWHdCLENBQUM7QUFFekIsYUFBVztBQUNYLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsY0FBWTtBQUNaLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzlCO0FBRUEsQ0F6WEMsd0JBeVh3QixDQUFDO0FBRXpCLGFBQVc7QUFDWCxXQUFTO0FBQ1QseUJBQXVCLE9BQU8sQ0FBQyxFQUFFO0FBQ2pDLHNCQUFvQjtBQUNwQixPQUFLO0FBQ0wsb0JBQWtCLElBQUk7QUFDdEIsY0FBWSxJQUFJLE1BQU0sSUFBSTtBQUMzQjtBQUVBLENBcFlDLHdCQW9Zd0IsQ0FBQztBQUV6QixvQkFBa0IsSUFBSTtBQUN0QixXQUFTLElBQUk7QUFFYixlQUFhO0FBQ2IsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLLElBQUk7QUFDVCxZQUFVO0FBQ1YsYUFBVztBQUNaO0FBRUEsQ0FqWkMsd0JBaVp3QixDQWJDLG1CQWFtQjtBQUU3QztBQUVBLENBclpDLHdCQXFad0IsQ0FqQkMsbUJBaUJtQixDQXpQRDtBQTBQM0Msb0JBQWtCLElBQUk7QUFDdkI7QUFHQSxDQTFaQyx3QkEwWndCLENBMVZDLHVCQTBWdUIsQ0FBQyxjQUFjLENBOVV0QztBQStVekIseUJBQXVCLE9BQU8sQ0FBQyxFQUFFO0FBQ2xDO0FBRUEsQ0E5WkMsd0JBOFp3QixDQTlWQyx1QkE4VnVCLENBSkMsY0FJYyxDQTVUdEM7QUE2VHpCLHlCQUF1QixPQUFPLENBQUMsRUFBRTtBQUNsQztBQUVBLENBbGFDLHdCQWthd0IsQ0FsV0MsdUJBa1d1QixDQVJDLGNBUWMsQ0E1RnRDO0FBNkZ6Qix5QkFBdUIsT0FBTyxDQUFDLEVBQUU7QUFDbEM7QUFFQSxDQXRhQyx3QkFzYXdCLENBdFdDLHVCQXNXdUIsQ0FaQyxjQVljLENBN0N0QztBQThDekIseUJBQXVCLE9BQU8sQ0FBQyxFQUFFO0FBQ2xDO0FBRUEsQ0ExYUMsd0JBMGF3QixDQTFXQyx1QkEwV3VCLENBaEJDLGNBZ0JjLENBQUM7QUFDaEUseUJBQXVCLE9BQU8sQ0FBQyxFQUFFO0FBQ2xDO0FBS0EsQ0FqYkMsd0JBaWJ3QixDQUFDO0FBSXpCLGFBQVc7QUFDWCxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUs7QUFDTjtBQUdBLENBNWJDLHdCQTRid0IsQ0E1UUMsY0E0UWMsQ0FyUE87QUFzUDlDLFdBQVM7QUFDVCxTQUFPO0FBQ1AsWUFBVTtBQUNWLFFBQU07QUFDTixPQUFLO0FBQ0wsVUFBUTtBQUNSLGlCQUFlO0FBQ2YsWUFBVTtBQUNWLGlCQUFlO0FBQ2YsZUFBYTtBQUNkO0FBWUEsQ0FuZEMsd0JBbWR3QixDQW5aQyx1QkFtWnVCLENBQUM7QUFDakQsV0FBUyxJQUFJO0FBQ2Q7QUFFQSxDQXZkQyx3QkF1ZHdCLENBQUM7QUFDekIsV0FBUztBQUNULHlCQUF1QixPQUN0QixRQUFRLEVBQ1IsT0FBTyxLQUFLLEVBQUU7QUFFZixPQUFLLElBQUk7QUFDVjtBQUVBLENBaGVDLHdCQWdld0IsQ0FBQztBQUN6QixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDbkIsb0JBQWtCLElBQUk7QUFDdEIsWUFBVTtBQUNYO0FBRUEsQ0F2ZUMsd0JBdWV3QixDQUFDO0FBQ3pCLGNBQVk7QUFDWixlQUFhLElBQUk7QUFDakIsV0FBUyxJQUFJO0FBQ2Isb0JBQWtCLElBQUk7QUFDdEIsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDOUI7QUFFQSxDQS9lQyx3QkErZXdCLENBQUM7QUFDekIsV0FBUyxJQUFJO0FBQ2Q7QUFFQSxDQW5mQyx3QkFtZndCLENBekV3QztBQTBFaEUsV0FBUztBQUNULHlCQUF1QixPQUFPLENBQUMsRUFBRTtBQUNqQyxPQUFLO0FBQ0wsY0FBWTtBQUNiO0FBRUEsQ0ExZkMsd0JBMGZ3QixDQUFDO0FBQ3pCLFdBQVM7QUFDVCxhQUFXLElBQUk7QUFDZixTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2Q7QUFDQSxDQWhnQkMsd0JBZ2dCd0IsQ0FBQztBQUN6QixrQkFBZ0IsSUFBSTtBQUNyQjtBQUVBLENBcGdCQyx3QkFvZ0J3QixDQUFDO0FBQ3pCLGFBQVcsSUFBSTtBQUNmLFdBQVM7QUFDVCxpQkFBZSxJQUFJO0FBQ25CLGVBQWE7QUFDZDtBQUVBLENBM2dCQyx3QkEyZ0J3QixDQVBDLGFBT2EsQ0FwWEs7QUFxWDNDLFNBQU8sSUFBSTtBQUNYLFdBQVM7QUFDVjtBQUVBLENBaGhCQyx3QkFnaEJ3QixDQVpDLGFBWWEsQ0FoWks7QUFpWjNDLGVBQWE7QUFDYixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBdGhCQyx3QkFzaEJ3QixDQWxCQyxhQWtCYSxDQUFDO0FBRXZDLGVBQWE7QUFHZDtBQWFBLENBQUM7QUFDQSxXQUFTO0FBQ1QsU0FBTztBQUNQLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsZUFBYSxJQUFJO0FBQ2pCLGtCQUFnQixJQUFJO0FBQ3BCLGdCQUFjLElBQUk7QUFDbEIsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBQUM7QUFDQSxTQUFPO0FBQ1AsV0FBUztBQUNULGtCQUFnQjtBQUNoQixtQkFBaUI7QUFDakIsZUFBYTtBQUNkO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDUDtBQUVBLENBOWpCQyx3QkE4akJ3QixLQUFLLENBOVhnQjtBQStYN0MsU0FBTztBQUNSO0FBRUEsQ0Fsa0JDLHdCQWtrQndCLENBQUM7QUFDekIsV0FBUztBQUNWO0FBR0EsQ0FBQztBQUVBLG9CQUFrQixJQUFJO0FBQ3RCLFVBQVEsSUFBSSxPQUFPLElBQUk7QUFDdkIsV0FBUztBQUNULGNBQVk7QUFDYjtBQUVBLENBQUM7QUFFQSxXQUFTO0FBQ1QsY0FBWSxJQUFJO0FBQ2hCLGFBQVcsT0FBTztBQUNsQixXQUFTO0FBQ1Y7QUFHQSxDQTlhMEIsMEJBOGFDLENBeGFEO0FBeWF6QixVQUFRO0FBQ1IsY0FBWSxVQUFVLEtBQUssSUFBSSxFQUFFLFdBQVcsS0FBSztBQUNsRDtBQUVBLENBbmIwQiwwQkFtYkMsQ0E3YUQsY0E2YWdCO0FBQ3pDLGFBQVcsV0FBVztBQUN0QixjQUFZLElBQUk7QUFDakI7QUFFQSxDQXhiMEIsMEJBd2JDLENBbGJELGNBa2JnQjtBQUN6QyxVQUFRO0FBQ1Q7QUFHQSxDQTdiMEI7QUE4YjFCLENBdkwwQjtBQXdMekIsY0FBWTtBQUNaLGlCQUFlLElBQUk7QUFDbkIsY0FBWSxpQkFBaUIsS0FBSztBQUNuQztBQUVBLFdBQVcsQ0FBQyxTQUFTLEVBQUU7QUFDdEIsR0EvbUJBLHdCQSttQnlCLENBdmxCQSx1QkF1bEJ3QjtBQUNoRCxhQUFTO0FBQ1Y7QUFFQSxHQTVsQnlCLGFBNGxCWCxDQUFDO0FBQ2QsYUFBUztBQUNWO0FBRUEsR0FobUJ5QixhQWdtQlgsQ0FBQztBQUNkLGFBQVM7QUFDVjtBQUVBLEdBM25CQSx3QkEybkJ5QixDQXpEQTtBQTBEeEIsYUFBUztBQUNWO0FBQ0Q7OztBQ2hvQkEsQ0FBQyx3QkFBd0IsQ0FBQywrQkFBK0I7QUFDeEQsd0JBQXNCO0FBQ3RCLHNCQUFvQjtBQUNwQixzQkFBb0I7QUFDcEIsb0JBQWtCO0FBQ25CO0FBRUEsQ0FQQyx3QkFPd0IsQ0FQQztBQVN6QixZQUFVO0FBQ1YsaUJBQWU7QUFDZixlQUFhO0FBQ2IsYUFBVztBQUNaO0FBRUEsQ0FmQyx3QkFld0IsQ0FBQyxxQkFBcUI7QUFDOUMsc0JBQW9CO0FBQ3BCLG9CQUFrQjtBQUNuQjs7O0FDakJBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUs7QUFDTCxrQkFBZ0I7QUFDaEIsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLFNBQU8sSUFBSTtBQUNYLFdBQVM7QUFDVCxhQUFXO0FBQ1gsV0FBUyxJQUFJO0FBQ2IsaUJBQWUsSUFBSTtBQUVuQixhQUFXO0FBQ1gsWUFBVTtBQUNWLGlCQUFlO0FBQ2YsZUFBYTtBQUNkO0FBR0EsQ0FBQztBQUNBLFlBQVU7QUFDWDs7O0FDekJBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLFVBQVE7QUFDUixTQUFPO0FBQ1AsWUFBVTtBQUNYO0FBRUEsQ0FBQztBQUNBLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLGVBQWE7QUFDYixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUs7QUFDTCxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLGVBQWE7QUFDZDtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTCxhQUFXO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ047QUFFQSxDQUFDO0FBQ0EsV0FBUyxJQUFJO0FBQ2IsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNYLFVBQVE7QUFDUixXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTCxhQUFXLElBQUk7QUFDaEI7QUFFQSxDQWJDLHFCQWFxQjtBQUNyQixvQkFBa0IsSUFBSTtBQUN0QixnQkFBYyxJQUFJO0FBQ25CO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSztBQUNOO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSztBQUNMLGFBQVcsSUFBSTtBQUNmLFNBQU8sSUFBSTtBQUNYLFVBQVE7QUFDVDtBQUVBLENBQUM7QUFDQSxVQUFRO0FBQ1Q7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLFdBQVMsSUFBSTtBQUNiLGFBQVcsSUFBSTtBQUNmLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixvQkFBa0IsSUFBSTtBQUN0QixnQkFBYztBQUNmO0FBRUEsQ0FWQyxzQkFVc0I7QUFDdEIsV0FBUztBQUNULGdCQUFjLElBQUk7QUFDbEIsY0FBWSxFQUFFLEVBQUUsRUFBRSxJQUFJLElBQUk7QUFDM0I7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGFBQVc7QUFDWCxjQUFZO0FBQ1osY0FBWTtBQUNaLFdBQVM7QUFDVCxPQUFLO0FBQ0wsVUFBUTtBQUdSLDhCQUE0QjtBQUU1Qix5QkFBdUI7QUFDdkIsb0JBQWtCLEVBQUU7QUFDcEIsbUJBQWlCO0FBQ2xCO0FBR0EsT0FBTyxDQUFDLEtBQUssRUFBRSxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUU7QUFDbkMsR0FuQkE7QUFvQkMsMkJBQXVCO0FBQ3ZCLHNCQUFrQjtBQUNuQjtBQUNEO0FBRUEsQ0FBQztBQUNBLFFBQU0sRUFBRSxFQUFFO0FBQ1YsV0FBUztBQUNULGtCQUFnQjtBQUNoQixvQkFBa0IsSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLFVBQVE7QUFDUixjQUFZO0FBQ1osWUFBVTtBQUVWLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFHdEIscUJBQW1CO0FBQ3BCO0FBR0EsT0FBTyxDQUFDLEtBQUssRUFBRSxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUU7QUFDbkMsR0FsQkE7QUFtQkMsdUJBQW1CO0FBQ3BCO0FBQ0Q7QUFFQSxDQUFDO0FBQ0EsV0FBUyxJQUFJO0FBQ2IsYUFBVyxJQUFJO0FBQ2YsZUFBYTtBQUNiLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLGVBQWE7QUFDYixlQUFhO0FBQ2IsWUFBVTtBQUNWLGlCQUFlO0FBRWYsa0JBQWdCO0FBRWhCLFdBQVM7QUFDVCxlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLGNBQVk7QUFDWixXQUFTO0FBQ1QsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLO0FBQ0wsb0JBQWtCLElBQUk7QUFFdEIsOEJBQTRCO0FBQzVCLHVCQUFxQjtBQUNyQixtQkFBaUI7QUFDbEI7QUFHQSxPQUFPLENBQUMsS0FBSyxFQUFFLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRTtBQUNuQyxHQWhCQTtBQWlCQyx5QkFBcUI7QUFDdEI7QUFDRDtBQUVBLENBQUM7QUFDQSxvQkFBa0IsSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLFdBQVMsS0FBSztBQUNkLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsYUFBVyxJQUFJO0FBQ2YsVUFBUTtBQUNSLGNBQVksV0FBVyxLQUFLLFdBQVcsRUFBRSxpQkFBaUIsS0FBSztBQUcvRCxhQUFXO0FBQ1gsY0FBWTtBQUNaLGVBQWE7QUFDYixpQkFBZTtBQUdmLGdCQUFjO0FBQ2QsZUFBYTtBQUNiLHVCQUFxQjtBQUNyQixvQkFBa0I7QUFDbEIsbUJBQWlCO0FBQ2xCO0FBRUEsQ0F2QkMsZUF1QmUsQ0FBQztBQUNoQixZQUFVO0FBQ1YsaUJBQWU7QUFDZixlQUFhO0FBRWIsYUFBVztBQUNaO0FBRUEsQ0EvQkMsY0ErQmM7QUFDZCxnQkFBYyxJQUFJO0FBQ2xCLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBcENDLGNBb0NjLENBQUM7QUFDZixvQkFBa0IsSUFBSTtBQUN0QixXQUFTO0FBQ1Y7QUFFQSxDQXpDQyxjQXlDYyxDQUxDLGVBS2UsQ0FsQmQ7QUFtQmhCLG1CQUFpQjtBQUNqQixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLGlCQUFlO0FBQ2hCO0FBRUEsQ0E3QmlCLHVCQTZCTyxDQUFDO0FBQ3hCLGlCQUFlO0FBQ2Ysb0JBQWtCO0FBQ2xCLHNCQUFvQjtBQUNyQjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsYUFBVztBQUNYLE9BQUssSUFBSTtBQUNULGFBQVcsSUFBSTtBQUNmLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FSQyx3QkFRd0IsQ0FBQztBQUMxQixDQVRDLHdCQVN3QixDQUFDO0FBQzFCLENBVkMsd0JBVXdCLENBQUM7QUFDekIsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ0wsV0FBUyxJQUFJO0FBQ2Isb0JBQWtCLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUVuQix1QkFBcUI7QUFDckIscUJBQW1CO0FBQ25CLGVBQWE7QUFDYixnQkFBYztBQUNmO0FBRUEsQ0F4QkMsd0JBd0J3QixDQUFDO0FBQ3pCLG9CQUFrQixLQUNqQjtBQUVELFNBQU8sSUFBSTtBQUNYLFdBQVMsSUFBSTtBQUNiLGlCQUFlLElBQUk7QUFDbkIsYUFBVyxLQUFLLElBQUksaUJBQWlCLEVBQUU7QUFDeEM7QUFFQSxDQWxDQyx3QkFrQ3dCLENBQUMsYUFBYSxDQUFDO0FBQ3ZDLFNBQU8sSUFBSTtBQUNYLG9CQUFrQixJQUFJO0FBQ3ZCO0FBQ0EsQ0F0Q0Msd0JBc0N3QixDQUpDLGFBSWEsQ0FBQztBQUN2QyxTQUFPLElBQUk7QUFDWCxvQkFBa0IsSUFBSTtBQUN2QjtBQUdBLENBNUNDLHdCQTRDd0IsQ0FsQ0MsYUFrQ2EsQ0FBQztBQUN2QyxTQUFPLElBQUk7QUFDWjtBQUNBLENBL0NDLHdCQStDd0IsQ0FyQ0MsYUFxQ2EsQ0FBQztBQUN2QyxTQUFPLElBQUk7QUFDWjtBQUNBLENBbERDLHdCQWtEd0IsQ0F4Q0MsYUF3Q2EsQ0FBQztBQUN2QyxTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2Q7QUFJQSxDQUFDO0FBR0EsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FBQztBQUVBLG9CQUFrQixJQUFJO0FBQ3RCLFVBQVEsSUFBSSxPQUFPLElBQUk7QUFDdkIsY0FBWTtBQUNiO0FBRUEsQ0FySkMsd0JBcUp3QixDQUFDO0FBR3pCLFdBQVMsSUFBSSxPQUFPLElBQUk7QUFDeEIsa0JBQWdCO0FBQ2pCO0FBRUEsQ0E1SkMsd0JBNEp3QixDQUFDO0FBRXpCLG9CQUFrQixJQUFJO0FBQ3ZCO0FBR0EsQ0FBQztBQUNBLGNBQVk7QUFDWixjQUFZLElBQUksT0FBTyxJQUFJO0FBRTNCLGNBQVksV0FBVyxLQUFLLFFBQVEsRUFBRSxXQUFXLEtBQUs7QUFDdkQ7QUFFQSxDQUFDO0FBQ0EsaUJBQWU7QUFDZixpQkFBZSxJQUFJLE9BQU8sSUFBSTtBQUU5QixjQUFZLGNBQWMsS0FBSyxRQUFRLEVBQUUsY0FBYyxLQUFLO0FBQzdEO0FBR0EsQ0FBQztBQUNBLFVBQVEsSUFBSSxPQUFPLElBQUk7QUFDdkIsY0FBWTtBQUNaLGNBQVk7QUFDWixjQUFZO0FBQ1osaUJBQWU7QUFDaEI7QUFHQSxDQXJLQztBQXVLQTtBQUFBLElBQVksT0FBTyxLQUFLLFFBQVE7QUFBQSxJQUFFLFFBQVEsS0FBSyxRQUFRO0FBQUEsSUFDdEQsT0FBTyxLQUFLLFFBQVE7QUFBQSxJQUFFLFVBQVUsS0FBSyxRQUFRO0FBQUEsSUFDN0MsV0FBVyxLQUFLLFdBQVc7QUFBQSxJQUFFLGlCQUFpQixLQUFLO0FBQ3JEO0FBRUEsQ0FBQztBQUNBLG9CQUFrQixLQUFLLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFO0FBQ2xDLFdBQVMsSUFBSSxPQUFPO0FBSXJCO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxjQUFZLElBQUksTUFBTSxJQUFJO0FBQzFCLGVBQWE7QUFDZDtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsY0FBWTtBQUNaLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxlQUFhO0FBQ2IsU0FBTztBQUNQLFdBQVMsSUFBSTtBQUNiLFVBQVE7QUFDUixvQkFBa0I7QUFDbEIsU0FBTyxJQUFJO0FBQ1gsaUJBQWUsSUFBSTtBQUNuQixVQUFRO0FBQ1IsYUFBVyxJQUFJO0FBQ2YsY0FBWTtBQUNaLGNBQVksaUJBQWlCLEtBQUssV0FBVyxFQUFFLE1BQU0sS0FBSztBQUMzRDtBQUVBLENBZEMseUJBY3lCO0FBQ3pCLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0FBQztBQUVBLGFBQVcsT0FBTztBQUNsQixXQUFTO0FBQ1QsY0FBWSxJQUFJO0FBQ2hCLFdBQVM7QUFDVjtBQUVBLENBQUM7QUFFQSxvQkFBa0IsSUFBSTtBQUN0QixVQUFRLElBQUksT0FBTyxJQUFJO0FBQ3ZCLFdBQVM7QUFDVjtBQUVBLENBMVFDO0FBNFFBLFVBQVE7QUFDVDtBQUVBLENBL1FDLHVCQStRdUI7QUFDdkIsVUFBUTtBQUNUOzs7QUNyWkEsQ0FBQztBQUNBLFdBQVM7QUFDVCxhQUFXO0FBQ1gsZUFBYTtBQUNiLE9BQUssSUFBSTtBQUNULFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0Isb0JBQWtCLElBQUk7QUFDdEIsY0FBWTtBQUVaLFFBQU07QUFDUDtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsYUFBVztBQUNYLE9BQUssSUFBSTtBQUNULFFBQU07QUFDUDtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUssSUFBSTtBQUNULGVBQWE7QUFDZDtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUssSUFBSTtBQUNULFdBQVMsSUFBSTtBQUNiLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixhQUFXLElBQUk7QUFDZixhQUFXLG1CQUFtQixNQUFNO0FBQ3BDLGNBQVksaUJBQWlCLElBQUksZ0JBQWdCLEVBQ2hELFVBQVUsSUFBSTtBQUNoQjtBQUVBLENBQUMsbUJBQW1CLENBQUMsY0FBYztBQUNsQyxvQkFBa0I7QUFDbkI7QUFFQSxDQWpCQyxXQWlCVztBQUNYLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxTQUFPLElBQUk7QUFDWjtBQUVBLENBakJDO0FBa0JBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU87QUFDUCxVQUFRO0FBQ1IsaUJBQWU7QUFDZixjQUFZO0FBQ1osVUFBUTtBQUNSLFdBQVM7QUFDVCxlQUFhLElBQUk7QUFDakIsVUFBUTtBQUNSLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWCxlQUFhO0FBQ2IsY0FBWSxpQkFBaUIsSUFBSSxnQkFBZ0IsRUFDaEQsTUFBTSxJQUFJO0FBQ1o7QUFFQSxDQXBDQyxrQkFvQ2tCO0FBQ2xCLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNsQjtBQUdBLENBQUM7QUFDRCxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixXQUFTLElBQUk7QUFDYixhQUFXLElBQUk7QUFDZixVQUFRO0FBQ1Q7QUFFQSxDQVRDO0FBVUEsT0FBSyxJQUFJO0FBQ1QsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsZUFBYSxJQUFJO0FBRWpCLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2xCO0FBR0EsQ0FBQztBQUNBLFlBQVU7QUFDVixTQUFPO0FBQ1Asb0JBQWtCLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixjQUFZLElBQUk7QUFDaEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixXQUFTLElBQUk7QUFDYixjQUFZO0FBQ1osV0FBUztBQUNULGtCQUFnQjtBQUNoQixXQUFTO0FBQ1QsYUFBVyxXQUFXO0FBQ3RCLGNBQVksUUFBUSxJQUFJLGtCQUFrQixFQUFFLFVBQVUsSUFBSTtBQUMxRCxZQUFVO0FBQ1g7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGFBQVcsV0FBVztBQUN2QjtBQUVBLENBQUM7QUFDQSxXQUFTLElBQUk7QUFDYixpQkFBZSxJQUFJLE1BQU0sSUFBSTtBQUM5QjtBQUVBLENBQUM7QUFDQSxTQUFPO0FBQ1AsV0FBUyxJQUFJO0FBQ2IsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLG9CQUFrQixJQUFJO0FBQ3RCLGFBQVcsSUFBSTtBQUNmLFdBQVM7QUFDVjtBQUVBLENBVkMsc0JBVXNCO0FBQ3RCLGdCQUFjLElBQUk7QUFDbEIsY0FBWSxFQUFFLEVBQUUsRUFBRSxJQUFJLElBQUk7QUFDM0I7QUFFQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0IsVUFBUTtBQUNSLGFBQVcsSUFBSTtBQUNmLFNBQU8sSUFBSTtBQUNYLGNBQVksaUJBQWlCLElBQUk7QUFDbEM7QUFFQSxDQVZDLG9CQVVvQjtBQUNwQixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxRQUFNO0FBQ1A7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNaO0FBRUEsQ0FMQywwQkFLMEIsQ0FBQztBQUMzQixnQkFBYyxJQUFJO0FBRWxCLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2xCO0FBRUEsQ0FBQztBQUNBLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLFVBQVE7QUFDUixvQkFBa0IsSUFBSTtBQUN0QixVQUFRLElBQUksWUFBWTtBQUN6QjtBQUVBLENBQUM7QUFDQSxXQUFTLElBQUk7QUFDYixjQUFZO0FBQ1osU0FBTyxJQUFJO0FBQ1gsYUFBVyxJQUFJO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQUFDO0FBQ0EsV0FBUyxJQUFJLFlBQVk7QUFDekIsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBRUEsQ0FBQztBQUNBLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0IsVUFBUTtBQUNSLGNBQVksaUJBQWlCLElBQUk7QUFDakMsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQVJDLDZCQVE2QjtBQUM3QixvQkFBa0IsSUFBSTtBQUN2QjtBQUdBLFdBbk1ZO0FBb01YO0FBQ0MsYUFBUztBQUNULGVBQVcsTUFBTTtBQUNsQjtBQUNBO0FBQ0MsYUFBUztBQUNULGVBQVcsTUFBTTtBQUNsQjtBQUNEO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxhQUFXLE1BQU07QUFDakIsY0FBWSxRQUFRLE1BQU0sUUFBUSxFQUFFLFVBQVUsTUFBTTtBQUNyRDs7O0FDeFBBLENBQUM7QUFDQSxTQUFPO0FBQ1AsVUFBUTtBQUNSLFlBQVU7QUFDVixZQUFVO0FBQ1Ysb0JBQWtCLElBQUk7QUFFdEIseUJBQXVCO0FBQ3ZCLHNCQUFvQjtBQUNwQixzQkFBb0I7QUFDcEIsc0JBQW9CO0FBRXBCLG9CQUFrQixJQUFJO0FBQ3RCLHNCQUFvQixJQUFJO0FBQ3hCLHFCQUFtQixJQUFJO0FBQ3ZCLHFCQUFtQixJQUFJO0FBQ3ZCLDJCQUF5QixJQUFJO0FBQzdCLDBCQUF3QixJQUFJO0FBQzVCLHVCQUFxQixJQUFJO0FBQzFCO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhLElBQUk7QUFDakIsYUFBVyxJQUFJO0FBQ2YsZUFBYTtBQUNkO0FBRUEsQ0FBQztBQUNBLFFBQU0sSUFBSTtBQUNWLFVBQVEsSUFBSTtBQUNaLGdCQUFjO0FBQ2Y7QUFFQSxDQUFDO0FBQ0EsUUFBTSxJQUFJO0FBQ1YsZUFBYTtBQUNkO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixVQUFRLElBQUk7QUFDWixnQkFBYztBQUNmO0FBRUEsQ0FBQztBQUNBLFVBQVEsSUFBSTtBQUNaLGdCQUFjO0FBQ2Qsb0JBQWtCLENBQUMsRUFBRTtBQUN0QjtBQUVBLENBQUM7QUFDQSxVQUFRO0FBQ1Q7QUFFQSxDQUFDO0FBQ0EsUUFBTSxJQUFJO0FBQ1YsVUFBUSxJQUFJO0FBQ1osZ0JBQWM7QUFDZCxjQUFZLEtBQUssS0FBSztBQUN2QjtBQUVBLENBWEMsZUFXZSxPQUFPLENBUHRCO0FBUUEsUUFBTSxJQUFJO0FBQ1g7QUFFQSxDQUFDO0FBQ0EsUUFBTSxJQUFJO0FBQ1YsVUFBUSxJQUFJO0FBQ1osZ0JBQWM7QUFDZjtBQUVBLENBQUM7QUFDQSxRQUFNLElBQUk7QUFDVixhQUFXLEtBQUssSUFBSSxpQkFBaUIsRUFBRTtBQUN2QyxrQkFBZ0I7QUFDaEIsZUFBYTtBQUNkO0FBRUEsQ0F4QkMsY0F3QmMsQ0FBQztBQUNmLFFBQU0sSUFBSTtBQUNWLFVBQVEsSUFBSTtBQUNiO0FBRUEsQ0E3QkMsY0E2QmMsQ0FBQztBQUNoQjtBQU1BLENBQUM7QUFDQSxZQUFVO0FBQ1YsT0FBSztBQUNMLFFBQU07QUFDTixTQUFPO0FBQ1AsV0FBUztBQUNULFVBQVEsSUFBSTtBQUNaLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLGVBQWE7QUFDYixvQkFBa0IsSUFBSTtBQUN0QixrQkFBZ0I7QUFDaEIsU0FBTztBQUNQLFlBQVU7QUFDWDtBQUVBLENBQUM7QUFDQSxZQUFVO0FBQ1YsVUFBUTtBQUNSLFNBQU87QUFDUjtBQUVBLENBTkMsZ0JBTWdCLENBQUM7QUFDakIsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDN0IsZUFBYTtBQUNkO0FBRUEsQ0FBQztBQUNBLFlBQVU7QUFDVixVQUFRO0FBQ1IsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsY0FBWTtBQUNaLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWCxnQkFBYyxJQUFJLE1BQU0sSUFBSTtBQUM1QixjQUFZO0FBQ1osb0JBQWtCLElBQUk7QUFDdEIsa0JBQWdCO0FBQ2pCO0FBRUEsQ0FBQztBQUNBLFlBQVU7QUFDVixZQUFVO0FBQ1YsVUFBUTtBQUNSLGVBQWEsSUFBSTtBQUNqQixjQUFZLEtBQUssSUFBSSx1QkFBdUIsRUFBRTtBQUMvQztBQUVBLENBQUM7QUFDQSxZQUFVO0FBQ1YsT0FBSyxJQUFJO0FBQ1QsUUFBTTtBQUNOLFVBQVEsS0FBSyxLQUFLLEVBQUUsSUFBSTtBQUN4QixhQUFXO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsWUFBVTtBQUNWLE9BQUs7QUFDTCxVQUFRO0FBQ1IsZ0JBQWMsSUFBSSxNQUFNLElBQUk7QUFDNUIsY0FBWTtBQUNiO0FBRUEsQ0FSQyxpQkFRaUIsQ0FBQztBQUNsQixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxZQUFVO0FBQ1YsUUFBTTtBQUNOLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLGNBQVk7QUFDWixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBUkMsY0FRYztBQUNkLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLFlBQVU7QUFDVixPQUFLLElBQUk7QUFDVCxRQUFNO0FBQ04sVUFBUSxLQUFLLEtBQUssRUFBRSxJQUFJO0FBQ3hCLGFBQVc7QUFDWCxrQkFBZ0I7QUFDakI7QUFFQSxDQUFDO0FBQ0EsWUFBVTtBQUNWLGNBQVk7QUFDWixrQkFBZ0I7QUFDaEIsVUFBUTtBQUNSLGNBQVksVUFBVSxLQUFLO0FBQzVCO0FBRUEsQ0FSQyxvQkFRb0I7QUFDcEIsV0FBUztBQUNULGFBQVcsV0FBVztBQUN2QjtBQUVBLENBM0lDLGNBMkljLENBQUM7QUFDZixvQkFBa0IsSUFBSTtBQUN0QixTQUFPO0FBQ1AsVUFBUTtBQUNSLGlCQUFlO0FBQ2YsYUFBVyxPQUFPO0FBQ2xCLE9BQUs7QUFDTCxjQUFZO0FBQ1osUUFBTTtBQUNOLGVBQWE7QUFDZDtBQUVBLENBQUM7QUFDQSxZQUFVO0FBQ1YsT0FBSztBQUNMLFFBQU07QUFDTixVQUFRO0FBQ1Isb0JBQWtCLElBQUk7QUFDdEIsV0FBUztBQUNWO0FBRUEsQ0EvSUM7QUFnSkEsWUFBVTtBQUNWLFFBQU0sS0FBSyxLQUFLLEVBQUU7QUFDbEIsT0FBSztBQUNMLGVBQWE7QUFDYixhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1gsZUFBYSxJQUFJO0FBQ2xCO0FBRUEsQ0E1Q0Msb0JBNENvQixDQUFDLGNBQWMsQ0F6Sm5DO0FBMEpBLFFBQU07QUFDTixTQUFPLEtBQUssS0FBSyxFQUFFO0FBQ25CLGNBQVk7QUFDYjtBQUVBLE9BQU8sQ0FBQyxTQUFTLEVBQUU7QUFDbEIsR0FuSEE7QUFvSEMsZUFBVztBQUNaO0FBRUEsR0FwS0E7QUFxS0MsZUFBVztBQUNaO0FBQ0Q7QUFFQSxDQWpQQztBQWtQQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLFVBQVE7QUFDUixZQUFVO0FBQ1YsWUFBVTtBQUNYO0FBRUEsQ0FBQztBQUNBLFVBQVE7QUFDUixlQUFhO0FBQ2IsWUFBVTtBQUNWLFlBQVU7QUFDVixpQkFBZSxJQUFJLE1BQU0sSUFBSTtBQUM3QixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1Y7QUFFQSxDQUFDO0FBQ0QsQ0FBQztBQUNELENBQUM7QUFDRCxDQUFDO0FBQ0EsVUFBUSxJQUFJO0FBQ1osZ0JBQWM7QUFDZjtBQUNBLENBUEM7QUFRQSxnQkFBYztBQUNmO0FBQ0EsQ0FQQztBQVFBLFVBQVEsSUFBSTtBQUNaLGdCQUFjO0FBQ2Qsb0JBQWtCLENBQUMsRUFBRTtBQUN0QjtBQUVBLENBQUM7QUFDRCxDQUFDO0FBQ0QsQ0FBQztBQUNBLGFBQVcsSUFBSTtBQUNmLFFBQU0sSUFBSTtBQUNWLGVBQWE7QUFDYixrQkFBZ0I7QUFDakI7QUFDQSxDQVJDO0FBU0EsZUFBYTtBQUNiLFFBQU0sSUFBSTtBQUNYO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxZQUFVO0FBQ1YsWUFBVTtBQUNYO0FBRUEsQ0FBQztBQUNBLFlBQVU7QUFDVixjQUFZLElBQUk7QUFDakI7QUFFQSxDQUFDO0FBQ0QsQ0FBQztBQUNBLFVBQVEsSUFBSTtBQUNaLGdCQUFjO0FBQ2Y7QUFDQSxDQUxDO0FBTUEsZ0JBQWM7QUFDZjtBQUNBLENBQUM7QUFDQSxVQUFRLElBQUk7QUFDWixnQkFBYztBQUNmO0FBRUEsQ0FBQztBQUNBLFVBQVEsSUFBSTtBQUNaLGdCQUFjO0FBQ2Qsb0JBQWtCLENBQUMsRUFBRTtBQUN0QjtBQUVBLENBOVFDO0FBK1FBLFVBQVE7QUFDVDtBQUVBLENBOVFDO0FBK1FBLFFBQU0sSUFBSTtBQUNWLFVBQVEsSUFBSTtBQUNaLGdCQUFjO0FBQ2QsY0FBWSxLQUFLLEtBQUs7QUFDdkI7QUFDQSxDQXhSQyxlQXdSZSxPQUFPLENBcFJ0QjtBQXFSQSxRQUFNLElBQUk7QUFDWDtBQUVBLENBN1FDO0FBOFFBLFFBQU0sSUFBSTtBQUNWLFVBQVEsSUFBSTtBQUNaLGdCQUFjO0FBQ2QsY0FBWSxLQUFLLEtBQUs7QUFDdkI7QUFDQSxDQWxTQyxlQWtTZSxPQUFPLENBblJ0QjtBQW9SQSxRQUFNLElBQUk7QUFDWDtBQUVBLENBdFNDLGVBc1NlLENBQUMsWUFBWSxDQWxTNUI7QUFtU0QsQ0F2U0MsZUF1U2UsQ0FEQyxZQUNZLENBeFI1QjtBQXlSQSxRQUFNLElBQUk7QUFDVixVQUFRLElBQUk7QUFDWixXQUFTO0FBQ1Y7QUFDQSxDQTVTQyxlQTRTZSxDQUFDLGlCQUFpQixDQXhTakM7QUF5U0QsQ0E3U0MsZUE2U2UsQ0FEQyxpQkFDaUIsQ0E5UmpDO0FBK1JBLFFBQU0sSUFBSTtBQUNWLFVBQVEsSUFBSTtBQUNaLFdBQVM7QUFDVCxtQkFBaUI7QUFDbEI7QUFDQSxDQW5UQyxlQW1UZSxDQUFDLGtCQUFrQixDQS9TbEM7QUFnVEQ7QUFFQSxDQUFDO0FBQ0Esa0JBQWdCO0FBQ2hCLFlBQVU7QUFDVixlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1gsYUFBVyxJQUFJO0FBQ2YsZUFBYTtBQUNiLFdBQVMsRUFBRTtBQUNYLGVBQWE7QUFDYixZQUFVO0FBQ1YsaUJBQWU7QUFFZixXQUFTO0FBQ1QsZUFBYTtBQUNiLFVBQVE7QUFDVDtBQUVBLENBZEMsMEJBYzBCO0FBQzFCLFVBQVE7QUFDVDtBQUVBLENBQUMsZ0NBQWdDO0FBQ2hDLHNCQUFvQjtBQUNwQixvQkFBa0I7QUFDbEIsdUJBQXFCO0FBQ3JCLHFCQUFtQjtBQUVuQixTQUFPLElBQUk7QUFDWCxhQUFXLElBQUk7QUFDZixlQUFhO0FBQ2IsV0FBUyxFQUFFO0FBQ1gsZUFBYTtBQUNiLFlBQVU7QUFDVixpQkFBZTtBQUVmLFdBQVM7QUFDVCxlQUFhO0FBQ2IsVUFBUTtBQUNUO0FBRUEsQ0FqV0MsZUFpV2UsQ0EzREMsWUEyRFksQ0FyQzVCO0FBc0NBLFNBQU8sSUFBSTtBQUNaO0FBQ0EsQ0FwV0MsZUFvV2UsQ0F4REMsaUJBd0RpQixDQXhDakM7QUF5Q0EsU0FBTyxJQUFJO0FBQ1gsbUJBQWlCO0FBQ2xCO0FBRUEsQ0FBQztBQUNBLFFBQU0sSUFBSTtBQUNYO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBRWpCLFNBQU87QUFFUCxnQkFBYyxJQUFJO0FBQ2xCLGlCQUFlLElBQUk7QUFFbkIsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQWJDLGtCQWFrQixDQUFDO0FBQ25CLFFBQU07QUFDUDtBQUVBLENBQUM7QUFDQSxZQUFVO0FBQ1YsT0FBSyxLQUFLLElBQUksRUFBRTtBQUNoQixhQUFXLFdBQVc7QUFDdEIsU0FBTztBQUNQLFVBQVE7QUFDUixvQkFBa0IsS0FBSyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRTtBQUN0QyxpQkFBZTtBQUNmLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsV0FBUztBQUNULGNBQVksUUFBUSxLQUFLO0FBQ3pCLFdBQVM7QUFDVjtBQUVBLENBZkMseUJBZXlCLENBQUM7QUFDMUIsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDUDtBQUVBLENBQUM7QUFDQSxTQUFPO0FBQ1I7QUFFQSxDQUFDO0FBQ0EsWUFBVTtBQUNWLE9BQUs7QUFDTCxVQUFRO0FBQ1IsU0FBTyxJQUFJO0FBQ1gsV0FBUztBQUNULGtCQUFnQjtBQUNoQixZQUFVO0FBQ1g7QUFFQSxDQUFDO0FBQ0EsUUFBTTtBQUNQO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUjtBQUVBLENBQUM7QUFDQSxZQUFVO0FBQ1YsUUFBTSxJQUFJO0FBQ1YsU0FBTyxJQUFJO0FBQ1gsVUFBUSxJQUFJO0FBQ1osaUJBQWU7QUFDZixvQkFBa0IsSUFBSTtBQUN0QixrQkFBZ0I7QUFDaEIsVUFBUTtBQUNUO0FBRUEsQ0FYQyxzQkFXc0I7QUFDdEIsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQTdlQyxzQkE2ZXNCLENBakN0QjtBQWtDQSxPQUFLLEtBQUssSUFBSSxlQUFlLEVBQUUsTUFBTSxFQUFFLElBQUksZUFBZSxFQUFFO0FBQzVELFVBQVE7QUFDVDtBQUVBLENBbGZDLHNCQWtmc0IsQ0F4QnRCO0FBeUJBLFNBQU87QUFDUjtBQUVBLENBOWFDLGlCQThhaUI7QUFDakIsVUFBUTtBQUNSLGVBQWEsSUFBSTtBQUNqQixlQUFhO0FBQ2IsWUFBVTtBQUNWLGlCQUFlO0FBQ2hCOzs7QUMzZkEsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsVUFBUTtBQUNSLFNBQU87QUFDUCxZQUFVO0FBQ1g7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGtCQUFnQjtBQUNoQixRQUFNO0FBQ04sWUFBVTtBQUNYO0FBRUEsQ0FBQztBQUNBLFNBQU8sSUFBSSxLQUFLLEVBQUU7QUFDbEIsYUFBVyxJQUFJLEtBQUssRUFBRTtBQUN0QixhQUFXO0FBQ1gsV0FBUztBQUNULGtCQUFnQjtBQUNoQixnQkFBYyxJQUFJLE1BQU0sSUFBSTtBQUM1QixZQUFVO0FBQ1g7QUFFQSxDQUFDLFNBQVMsQ0FWVDtBQVdBLGFBQVc7QUFDWjtBQUVBLENBQUM7QUFDQSxRQUFNO0FBQ04sV0FBUztBQUNULGtCQUFnQjtBQUNoQixZQUFVO0FBQ1g7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULG1CQUFpQjtBQUNqQixlQUFhO0FBQ2IsV0FBUyxJQUFJLFlBQVksSUFBSTtBQUM3QixpQkFBZSxJQUFJLE1BQU0sSUFBSTtBQUM3QixVQUFRLElBQUk7QUFDYjtBQUVBLENBQUM7QUFDQSxlQUFhO0FBQ2IsYUFBVztBQUNaO0FBRUEsQ0FBQyxrQkFBa0IsQ0FBQztBQUNuQixTQUFPLElBQUk7QUFDWjtBQUVBLENBSm9CO0FBS25CLFVBQVE7QUFDUixTQUFPLElBQUk7QUFFWCxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNsQjtBQUVBLENBYm9CLDhCQWFXO0FBQzlCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixjQUFZO0FBQ1osV0FBUyxJQUFJO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixXQUFTLElBQUk7QUFDYixVQUFRO0FBQ1IsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBUkMsdUJBUXVCO0FBQ3ZCLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FaQyx1QkFZdUIsQ0FBQztBQUN4QixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxnQkFBYztBQUNkLFNBQU8sSUFBSTtBQUVYLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2xCO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixlQUFhO0FBQ2IsWUFBVTtBQUNWLGlCQUFlO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDYixhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1gsb0JBQWtCLElBQUk7QUFDdEIsaUJBQWU7QUFDZixXQUFTLElBQUk7QUFDZDtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLGVBQWE7QUFDYixXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLFVBQVEsSUFBSTtBQUNiO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDYixhQUFXO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsUUFBTTtBQUNOLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixVQUFRO0FBQ1IsU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNaLFdBQVM7QUFDVjtBQUdBLENBM0hDLFNBMkhTLENBcklUO0FBc0lBLFlBQVU7QUFDVixRQUFNO0FBQ04sT0FBSztBQUNMLFVBQVE7QUFDUixXQUFTO0FBQ1Qsb0JBQWtCLElBQUk7QUFDdEIsU0FBTztBQUNQLGFBQVcsV0FBVztBQUN0QixjQUFZLFVBQVUsS0FBSztBQUMzQixnQkFBYyxJQUFJLE1BQU0sSUFBSTtBQUM3QjtBQUVBLENBeElDLFNBd0lTLENBbEpULHlCQWtKbUMsQ0FBQztBQUNwQyxhQUFXLFdBQVc7QUFDdkI7QUFFQSxDQTVJQyxTQTRJUyxDQUFDO0FBQ1YsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsZ0JBQWM7QUFDZjtBQUVBLENBbkpDLFNBbUpTLENBQUM7QUFDVixlQUFhLElBQUk7QUFDakIsWUFBVTtBQUNWLE9BQUssSUFBSTtBQUNULFNBQU87QUFDUCxXQUFTO0FBQ1QsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDbEI7QUFHQSxDQS9KQyxTQWdLQSxDQXpMQSx1QkF5THdCLEtBQ3ZCLENBM0tELHlCQTJLMkIsQ0F6QlMsV0EwQm5DO0FBQ0QsV0FBUztBQUNULFlBQVU7QUFDVixPQUFLO0FBQ0wsUUFBTTtBQUNOLFNBQU87QUFDUCxVQUFRO0FBQ1Isb0JBQWtCLElBQUk7QUFDdEIsV0FBUztBQUNULFdBQVM7QUFDVCxjQUFZLFFBQVEsS0FBSztBQUMxQjtBQUdBLENBaExDLFNBZ0xTLENBek1UO0FBME1BLFlBQVU7QUFDVixZQUFVO0FBQ1g7QUFFQSxDQXJMQyxTQXFMUyxDQTFLVCw0QkEwS3NDLEtBQUssQ0FsQ2pDO0FBbUNWLGlCQUFlLElBQUk7QUFDcEI7OztBQ2hOQSxDQUFDO0FBQ0EsU0FBTztBQUNQLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSztBQUNMLFVBQVE7QUFDUixZQUFVO0FBQ1g7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGtCQUFnQjtBQUNoQixVQUFRO0FBQ1IsWUFBVTtBQUNWLFlBQVU7QUFDVixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxTQUFPO0FBQ1AsbUJBQWlCO0FBQ2pCLGdCQUFjO0FBQ2QsYUFBVyxJQUFJO0FBQ2YsUUFBTTtBQUNOLGNBQVk7QUFFWixhQUFXO0FBQ1o7QUFHQSxDQUFDO0FBQ0EsUUFBTTtBQUNOLFlBQVU7QUFDVixjQUFZO0FBQ1osWUFBVTtBQUVWLGNBQVk7QUFDWixjQUFZO0FBRVosbUJBQWlCO0FBQ2xCO0FBR0EsQ0FBQztBQUNBLFlBQVU7QUFDVixPQUFLO0FBQ0wsV0FBUztBQUNULG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBRTdCLGFBQVc7QUFDWjtBQUVBLENBQUM7QUFDQSxVQUFRO0FBQ1Q7QUFFQSxDQUFDO0FBQ0EsV0FBUyxJQUFJO0FBQ2IsY0FBWTtBQUNaLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWCxnQkFBYyxJQUFJLE1BQU0sSUFBSTtBQUM1QixZQUFVO0FBQ1YsZUFBYTtBQUNiLG9CQUFrQixJQUFJO0FBRXRCLGVBQWE7QUFDZDtBQUVBLENBYkMsc0JBYXNCO0FBQ3RCLGdCQUFjO0FBQ2Y7QUFFQSxDQWpCQyxzQkFpQnNCLENBQUM7QUFDdkIsVUFBUTtBQUNUO0FBRUEsQ0FyQkMsc0JBcUJzQixDQUpDLFFBSVE7QUFDL0Isb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsT0FBSztBQUNOO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixZQUFVO0FBQ1YsaUJBQWU7QUFDZixlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLFdBQVM7QUFDVCxjQUFZLFFBQVE7QUFDcEIsV0FBUztBQUNULGVBQWE7QUFDYixTQUFPO0FBQ1AsVUFBUTtBQUNUO0FBRUEsQ0FWQyxvQkFVb0IsQ0FBQztBQUN0QixDQVhDLG9CQVdvQixDQUFDO0FBQ3JCLFdBQVM7QUFDVCxTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxZQUFVO0FBQ1YsT0FBSztBQUNMLFNBQU87QUFDUCxTQUFPO0FBQ1AsVUFBUTtBQUNSLFVBQVE7QUFDUixvQkFBa0I7QUFDbEIsY0FBWSxpQkFBaUI7QUFDOUI7QUFFQSxDQVhDLHdCQVd3QjtBQUN4QixvQkFBa0IsSUFBSTtBQUN2QjtBQUdBLENBQUM7QUFDQSxvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxVQUFRO0FBQ1IsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDN0IsY0FBWSxpQkFBaUI7QUFDOUI7QUFFQSxDQU5DLGNBTWM7QUFDZCxvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBVkMsY0FVYyxDQUFDO0FBQ2Ysb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQWRDLGNBY2M7QUFDZCxvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBbEJDLGNBa0JjLGdCQUFnQjtBQUM5QixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBdEJDLGNBc0JjLGdCQUFnQixDQVpmO0FBYWYsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBQ0EsV0FBUyxJQUFJO0FBQ2Isa0JBQWdCO0FBQ2hCLFlBQVU7QUFDVixpQkFBZTtBQUNmLGVBQWE7QUFDZDtBQUVBLENBUkMsZUFRZTtBQUNmLGdCQUFjO0FBQ2Y7QUFFQSxDQVpDLGVBWWUsQ0FBQztBQUNoQixXQUFTO0FBQ1Y7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ047QUFFQSxDQXZCQyxlQXVCZSxLQUFLLENBQUM7QUFDckIsZ0JBQWM7QUFDZjtBQUVBLENBckRDLGNBcURjLENBQUM7QUFDZixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBUnNCO0FBU3JCLFVBQVE7QUFDUixlQUFhO0FBQ2IsU0FBTztBQUNQLFVBQVE7QUFDUixXQUFTO0FBQ1QsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsaUJBQWU7QUFDZixhQUFXO0FBQ1gsY0FBWSxpQkFBaUI7QUFDOUI7QUFFQSxDQXRCc0IscUJBc0JBO0FBQ3JCLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FBQyx1QkFBdUIsQ0FqRHZCLGVBaUR1QztBQUN2QyxnQkFBYztBQUNmO0FBRUEsQ0FBQyx1QkFBdUIsQ0FyRHZCLGVBcUR1QztBQUN2QyxnQkFBYztBQUNmO0FBRUEsQ0FBQyx1QkFBdUIsQ0F6RHZCLGVBeUR1QztBQUN2QyxnQkFBYztBQUNmO0FBRUEsQ0FBQyx1QkFBdUIsQ0E3RHZCLGVBNkR1QztBQUN2QyxnQkFBYztBQUNmO0FBRUEsQ0FBQyx1QkFBdUIsQ0FqRXZCLGVBaUV1QztBQUN2QyxnQkFBYztBQUNmO0FBR0EsQ0FBQztBQUNBLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGNBQVk7QUFDWixTQUFPLElBQUk7QUFDWCx3QkFBc0I7QUFDdkI7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ047QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLFdBQVM7QUFDVCxlQUFhO0FBQ2IsU0FBTztBQUNQLFVBQVE7QUFDVDtBQUVBLENBQUM7QUFDQSxRQUFNO0FBQ04sWUFBVTtBQUNWLGlCQUFlO0FBQ2hCO0FBRUEsQ0FwQkMsaUJBb0JpQixDQUFDLFVBQVUsQ0FkNUI7QUFlQSxTQUFPLElBQUk7QUFDWjtBQUVBLENBeEJDLGlCQXdCaUIsQ0FBQyxZQUFZLENBbEI5QjtBQW1CQSxTQUFPLElBQUk7QUFDWjtBQUVBLENBNUJDLGlCQTRCaUIsQ0FBQyxVQUFVLENBdEI1QjtBQXVCQSxTQUFPLElBQUk7QUFDWjtBQUVBLENBaENDLGlCQWdDaUIsQ0FBQyxRQUFRLENBMUIxQjtBQTJCQSxTQUFPLElBQUk7QUFDWjtBQUVBLENBcENDLGlCQW9DaUIsQ0FBQyxZQUFZLENBOUI5QjtBQStCQSxTQUFPLElBQUk7QUFDWjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTjtBQUVBLENBTkMsbUJBTW1CLENBQUM7QUFDcEIsVUFBUTtBQUNSLFdBQVM7QUFDVCxpQkFBZTtBQUNmLGNBQVksaUJBQWlCO0FBQzlCO0FBRUEsQ0FiQyxtQkFhbUIsQ0FQQyxrQkFPa0I7QUFDdEMsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLFdBQVM7QUFDVCxlQUFhO0FBQ2IsU0FBTztBQUNQLFVBQVE7QUFDVDtBQUVBLENBUkMsd0JBUXdCLENBQUM7QUFDekIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQVpDLHdCQVl3QixDQUFDO0FBQ3pCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FoQkMsd0JBZ0J3QixDQUFDO0FBQ3pCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixZQUFVO0FBQ1YsaUJBQWU7QUFDaEI7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNiO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSztBQUNMLFVBQVE7QUFDUixjQUFZLGlCQUFpQjtBQUM3QixXQUFTO0FBQ1QsaUJBQWU7QUFDaEI7QUFFQSxDQVZDLGVBVWU7QUFDZixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxhQUFXLElBQUk7QUFDZixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxhQUFXLElBQUk7QUFDZixlQUFhO0FBQ2Q7QUFFQSxDQUxDLHdCQUt3QixDQUFDO0FBQ3pCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FUQyx3QkFTd0IsQ0FBQztBQUN6QixTQUFPLElBQUk7QUFDWjtBQUVBLENBYkMsd0JBYXdCLENBQUM7QUFDekIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQWpCQyx3QkFpQndCLENBQUM7QUFDekIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQXJCQyx3QkFxQndCLENBQUM7QUFDekIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNiO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxhQUFXO0FBQ1gsT0FBSztBQUNMLGVBQWE7QUFDZDtBQUVBLENBQUM7QUFDQSxvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWCxXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNmLGFBQVcsSUFBSTtBQUNmLGVBQWE7QUFDYixlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNiO0FBR0EsQ0FBQztBQUNELENBQUM7QUFDQSxVQUFRO0FBQ1IsY0FBWTtBQUNaLFdBQVM7QUFDVCxTQUFPO0FBQ1AsV0FBUztBQUNULFFBQU07QUFDTixTQUFPLElBQUk7QUFDWjtBQUVBLENBWEMscUJBV3FCO0FBQ3RCLENBWEMscUJBV3FCO0FBQ3JCLG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsV0FBUyxJQUFJO0FBQ2Q7QUFHQSxDQUFDO0FBQ0EsYUFBVztBQUNYLFdBQVM7QUFDVCxlQUFhO0FBQ2IsU0FBTztBQUNQLFVBQVE7QUFDVDtBQUVBLENBQUM7QUFDQSxVQUFRO0FBQ1Q7QUFFQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLFNBQU8sSUFBSTtBQUNYLGNBQVk7QUFDWixrQkFBZ0I7QUFDakI7QUFHQSxDQUFDO0FBQ0EsWUFBVTtBQUNWLE9BQUs7QUFDTCxRQUFNO0FBQ04sYUFBVyxVQUFVLElBQUksRUFBRTtBQUMzQixXQUFTO0FBQ1Qsb0JBQWtCLElBQUk7QUFDdEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLFNBQU8sSUFBSTtBQUNYLGFBQVcsSUFBSTtBQUNmLFdBQVM7QUFDVjtBQUdBLENBdGJDLFVBc2JVLENBQUM7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQTFiQyxVQTBiVSxDQUpDLFNBSVM7QUFDcEIsVUFBUTtBQUNUO0FBR0EsQ0FBQztBQUNBLGtCQUFnQjtBQUNoQixjQUFZO0FBQ2I7QUFHQSxPQUFPLENBQUMsU0FBUyxFQUFFO0FBQ2xCLEdBL2NBO0FBZ2RDLGVBQVcsSUFBSTtBQUNoQjtBQUVBLEdBOWJBO0FBK2JDLGdCQUFZO0FBQ2I7QUFFQSxHQTljQTtBQStjQyxlQUFXO0FBQ1o7QUFFQSxHQTNhQTtBQUFBLEVBNGFBLENBdlVBO0FBd1VDLGFBQVMsSUFBSTtBQUNkO0FBRUEsR0FyV0E7QUFzV0MsWUFBUTtBQUNUO0FBRUEsR0F4YkE7QUF5YkMsWUFBUTtBQUNUO0FBQ0Q7QUFHQSxDQUFDLFdBQVcsQ0ExZVg7QUEyZUEsZ0JBQWMsSUFBSTtBQUNuQjtBQUVBLENBSkMsV0FJVyxDQW5YWCxjQW1YMEI7QUFDMUIsb0JBQWtCLElBQUk7QUFDdkI7QUFHQSxPQUFPLENBQUMsZ0JBQWdCLEVBQUU7QUFDekIsR0FwZkE7QUFxZkMsa0JBQWM7QUFDZjtBQUVBLEdBeGNBO0FBQUEsRUF5Y0EsQ0FwV0E7QUFxV0Msa0JBQWM7QUFDZjtBQUVBLEdBbFlBO0FBbVlDLHlCQUFxQjtBQUN0QjtBQUNEO0FBR0EsT0FBTztBQUNOLEdBcGdCQTtBQXFnQkMsWUFBUTtBQUNSLGNBQVU7QUFDVixZQUFRO0FBQ1Q7QUFFQSxHQXhlQTtBQXllQyxjQUFVO0FBQ1g7QUFFQSxHQXZhQTtBQXdhQyxhQUFTO0FBQ1Y7QUFFQSxHQXRXcUI7QUF1V3BCLGFBQVM7QUFDVjtBQUNEO0FBR0EsQ0FBQztBQUNBLGtCQUFnQjtBQUNqQjtBQUVBLENBSkMsMEJBSTBCO0FBQzFCLFdBQVM7QUFDVCxVQUFRO0FBQ1IsY0FBWTtBQUNiO0FBR0EsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNoQixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsY0FBWSxFQUFFLElBQUksSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFO0FBQ3BDLFdBQVM7QUFDVCxhQUFXO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsV0FBUyxJQUFJO0FBQ2IsVUFBUTtBQUNSLGNBQVksaUJBQWlCLEtBQUs7QUFDbkM7QUFFQSxDQU5DLDRCQU00QjtBQUM1QixvQkFBa0IsSUFBSTtBQUN2QjtBQUdBLENBQUM7QUFDQSxVQUFRO0FBQ1IsY0FBWSxJQUFJO0FBQ2hCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWU7QUFDZixXQUFTLElBQUk7QUFDYixTQUFPO0FBQ1I7QUFFQSxDQVRDLHFCQVNxQjtBQUNyQixnQkFBYyxJQUFJO0FBQ25CO0FBRUEsQ0FiQyxxQkFhcUI7QUFDckIsZ0JBQWMsSUFBSTtBQUNsQixXQUFTO0FBQ1Y7QUFHQSxDQUFDO0FBQ0QsQ0FBQztBQUNELENBbE1DO0FBbU1BLGNBQVksSUFBSTtBQUNoQixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsV0FBUyxJQUFJO0FBQ2IsU0FBTztBQUNSO0FBRUEsQ0FWQyx3QkFVd0I7QUFDekIsQ0FWQyx3QkFVd0I7QUFDekIsQ0E1TUMscUJBNE1xQjtBQUNyQixnQkFBYyxJQUFJO0FBQ2xCLFdBQVM7QUFDVjtBQUdBLENBamVDLGNBaWVjLENBdmRDO0FBd2RmLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FyZUMsY0FxZWM7QUFDZCxvQkFBa0IsSUFBSTtBQUN2QjtBQUdBLE9BQU8sQ0FBQyxTQUFTLEVBQUU7QUFDbEIsR0E3bEJBO0FBOGxCQyxlQUFXO0FBQ1o7QUFFQSxJQUFFLENBQUM7QUFDRixlQUFXO0FBQ1gsZUFBVztBQUNYLFdBQU87QUFDUjtBQUVBLEdBQUM7QUFDQSxTQUFLO0FBQ047QUFFQSxHQXhjcUI7QUF5Y3BCLGtCQUFjO0FBQ2Y7QUFFQSxJQUFFLENBQUM7QUFDRixlQUFXO0FBQ1gsZUFBVztBQUNYLFdBQU87QUFDUjtBQUVBLEdBOWtCQTtBQUFBLEVBK2tCQSxDQTFlQTtBQTJlQyxhQUFTLElBQUk7QUFDZDtBQUNEO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxtQkFBaUI7QUFDakIsZUFBYTtBQUNiLFdBQVMsSUFBSTtBQUNiLG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLGlCQUFlLElBQUksSUFBSSxFQUFFO0FBQ3pCLGlCQUFlO0FBQ2YsZUFBYTtBQUNiLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTCxXQUFTLElBQUk7QUFDYixvQkFBa0IsSUFBSTtBQUN0QixpQkFBZTtBQUNmLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBQ0EsYUFBVyxJQUFJO0FBQ2YsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSztBQUNOO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSztBQUNMLFdBQVMsSUFBSTtBQUNiLG9CQUFrQixJQUFJO0FBQ3RCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWU7QUFDZixVQUFRO0FBQ1IsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsY0FBWSxJQUFJLEtBQUs7QUFFckIsY0FBWTtBQUNiO0FBRUEsQ0FoQkMsaUJBZ0JpQjtBQUNqQixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBcEJDLGlCQW9CaUI7QUFDakIsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQUFDLGFBQWEsQ0FBQztBQUNkLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNYLGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQUFDO0FBQ0QsQ0FBQztBQUNELENBQUM7QUFDQSxhQUFXO0FBQ1gsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDbEI7QUFFQSxDQUFDO0FBQ0QsQ0FBQztBQUNELENBQUM7QUFDQSxlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLGNBQVksVUFBVSxLQUFLO0FBQzVCO0FBR0EsQ0FBQztBQUNBLFlBQVU7QUFDWDtBQUVBLENBQUM7QUFDQSxZQUFVO0FBQ1YsT0FBSztBQUNMLFNBQU87QUFDUCxjQUFZO0FBQ1osb0JBQWtCLElBQUk7QUFDdEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLGNBQVksSUFBSTtBQUNoQixXQUFTO0FBQ1QsYUFBVztBQUNYLGNBQVk7QUFDWixjQUFZO0FBQ2I7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ0wsV0FBUyxJQUFJO0FBQ2IsVUFBUTtBQUNSLGNBQVksaUJBQWlCLEtBQUs7QUFDbkM7QUFFQSxDQVRDLGtCQVNrQjtBQUNsQixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxVQUFRO0FBQ1IsVUFBUTtBQUNUO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixhQUFXLElBQUk7QUFDZixTQUFPLElBQUk7QUFDWCxVQUFRO0FBQ1IsVUFBUTtBQUNUO0FBR0EsT0FBTyxDQUFDLFNBQVMsRUFBRTtBQUNsQixHQW5KQTtBQW9KQyxvQkFBZ0I7QUFDaEIsU0FBSztBQUNMLGlCQUFhO0FBQ2Q7QUFFQSxHQTVJQTtBQTZJQyxhQUFTO0FBQ1Y7QUFFQSxHQWhKQTtBQUFBLEVBaUpBLENBM0lBO0FBNElDLHFCQUFpQjtBQUNsQjtBQUVBLEdBdkhBO0FBd0hDLHFCQUFpQjtBQUNqQixlQUFXO0FBQ1o7QUFFQSxHQXRIQTtBQXVIQyxVQUFNO0FBQ04sZUFBVztBQUNYLHFCQUFpQjtBQUNsQjtBQUVBLEdBckVBO0FBc0VDLFdBQU87QUFDUCxVQUFNO0FBQ04sV0FBTztBQUNSO0FBQ0Q7QUFHQSxDQWhWQyxXQWdWVyxDQXJMWDtBQXNMQSxvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBcFZDLFdBb1ZXLENBakZYO0FBa0ZBLG9CQUFrQixJQUFJO0FBQ3RCLGdCQUFjLElBQUk7QUFDbkI7QUFHQSxDQUFDO0FBQ0Esb0JBQWtCLElBQUk7QUFDdEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLGNBQVksSUFBSTtBQUNoQixXQUFTO0FBQ1QsWUFBVTtBQUNWLGNBQVk7QUFDWixjQUFZO0FBQ1osYUFBVztBQUNaO0FBRUEsQ0FaQyx3QkFZd0IsQ0FBQztBQUN6QixXQUFTLElBQUk7QUFDYixVQUFRO0FBQ1IsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDN0IsY0FBWSxpQkFBaUI7QUFDN0IsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQXJCQyx3QkFxQndCLENBVEMsZUFTZTtBQUN4QyxpQkFBZTtBQUNoQjtBQUVBLENBekJDLHdCQXlCd0IsQ0FiQyxlQWFlO0FBQ3pDLENBMUJDLHdCQTBCd0IsQ0FkQyxlQWNlLENBenRCekI7QUEwdEJmLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0E5QkMsd0JBOEJ3QixDQWxCQyxlQWtCZSxDQTd0QnpCO0FBOHRCZixTQUFPLElBQUk7QUFDWjtBQUdBLENBdnJCZ0I7QUF3ckJmLGVBQWEsSUFBSSxNQUFNLElBQUk7QUFDNUI7QUFFQSxDQUFDLGtCQUFrQixDQXR0QmxCLGVBc3RCa0M7QUFDbEMsZUFBYTtBQUNkO0FBRUEsQ0FBQztBQUNBLGVBQWEsSUFBSSxNQUFNLElBQUk7QUFDNUI7QUFFQSxDQW5RRTtBQW9RRCxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTCxTQUFPO0FBQ1I7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ0wsZUFBYTtBQUNkO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDYixhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNiLFNBQU87QUFDUCxjQUFZO0FBQ2I7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGdCQUFjO0FBQ2QsZUFBYTtBQUNiLGVBQWE7QUFDYixlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsZ0JBQWM7QUFDZjtBQUVBLENBQUM7QUFDQSxRQUFNO0FBQ04sYUFBVztBQUNaO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2IsZUFBYTtBQUNkO0FBR0EsQ0F0c0JDLGlCQXNzQmlCLENBQUM7QUFDbEIsVUFBUTtBQUNSLFdBQVM7QUFDVCxpQkFBZTtBQUNmLGNBQVksaUJBQWlCO0FBQzlCO0FBRUEsQ0E3c0JDLGlCQTZzQmlCLENBUEMsZ0JBT2dCO0FBQ2xDLG9CQUFrQixJQUFJO0FBQ3ZCO0FBR0EsQ0F4cEJDLHdCQXdwQndCLENBQUM7QUFDekIsU0FBTyxJQUFJO0FBQ1gsVUFBUSxXQUFXO0FBQ3BCO0FBRUEsQ0E3cEJDLHdCQTZwQndCLENBQUM7QUFDekIsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQXR4QnNCLHFCQXN4QkEsQ0FBQztBQUN0QixXQUFTO0FBQ1QsY0FBWSxRQUFRLElBQUksRUFBRSxpQkFBaUI7QUFDNUM7QUFFQSxDQTN4QnNCLHFCQTJ4QkEsQ0FMQyxjQUtjO0FBQ3BDLFdBQVM7QUFDVjtBQUdBLENBdHdCQyx1QkFzd0J1QixDQXZ6QnZCLGVBdXpCdUM7QUFDeEMsQ0Fud0JDLHVCQW13QnVCLENBeHpCdkIsZUF3ekJ1QztBQUN4QyxDQWh3QkMsdUJBZ3dCdUIsQ0F6ekJ2QixlQXl6QnVDO0FBQ3hDLENBN3ZCQyx1QkE2dkJ1QixDQTF6QnZCLGVBMHpCdUM7QUFDeEMsQ0ExdkJDLHVCQTB2QnVCLENBM3pCdkIsZUEyekJ1QztBQUN2QyxnQkFBYztBQUNmOzs7QUN6OUJBLENBQUM7QUFDQSxVQUFRO0FBQ1IsV0FBUztBQUNULGtCQUFnQjtBQUNoQixZQUFVO0FBQ1YsY0FBWSxJQUFJO0FBQ2hCLFNBQU87QUFDUjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGNBQVksSUFBSTtBQUNoQixlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsYUFBVyxJQUFJO0FBQ2YsZUFBYSxJQUFJO0FBQ2pCLFNBQU8sSUFBSTtBQUNYLFVBQVE7QUFDVDtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUssSUFBSTtBQUNWO0FBRUEsQ0FBQztBQUNBLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0IsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWCxhQUFXLElBQUk7QUFDZixVQUFRO0FBQ1IsY0FBWSxhQUFhLEtBQUs7QUFDL0I7QUFFQSxDQVhDLHVCQVd1QjtBQUN2QixnQkFBYyxJQUFJO0FBQ25CO0FBRUEsQ0FmQyx1QkFldUI7QUFDdkIsZ0JBQWMsSUFBSTtBQUNsQixXQUFTO0FBQ1Y7QUFFQSxDQUFDO0FBQ0EsV0FBUyxJQUFJO0FBQ2IsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWCxVQUFRO0FBQ1IsY0FBWSxJQUFJLEtBQUs7QUFDckIsU0FBTztBQUNQLFVBQVE7QUFDUixXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNsQjtBQUVBLENBZkMsd0JBZXdCO0FBQ3hCLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWCxnQkFBYyxJQUFJO0FBQ25CO0FBR0EsQ0FBQztBQUNBLGVBQWE7QUFDYixpQkFBZSxJQUFJLE1BQU0sSUFBSTtBQUM5QjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QseUJBQXVCLElBQUk7QUFDM0Isc0JBQW9CLElBQUk7QUFDeEIsT0FBSztBQUNMLFFBQU07QUFDTixjQUFZLElBQUk7QUFDaEIsWUFBVTtBQUNYO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsY0FBWSxJQUFJO0FBQ2hCLGNBQVk7QUFDWixZQUFVO0FBQ1YsWUFBVTtBQUNYO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVjtBQUdBLENBZEMsbUJBY21CLENBL0ZuQjtBQWdHQSxXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGNBQVksSUFBSTtBQUNoQixpQkFBZSxJQUFJLE1BQU0sSUFBSTtBQUM3QixlQUFhO0FBQ2IsWUFBVTtBQUNWLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUssSUFBSTtBQUNULGlCQUFlLElBQUk7QUFDcEI7QUFFQSxDQUFDO0FBQ0EsYUFBVyxJQUFJO0FBQ2YsZUFBYTtBQUNiLFdBQVM7QUFDVjtBQUVBLENBcENDLG1CQW9DbUIsQ0E1R25CO0FBNkdBLGFBQVcsSUFBSTtBQUNmLGVBQWEsSUFBSTtBQUNqQixTQUFPLElBQUk7QUFDWCxVQUFRO0FBQ1Q7QUFFQSxDQUFDO0FBQ0EsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsaUJBQWUsSUFBSTtBQUNuQixlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsY0FBWSxJQUFJO0FBQ2hCLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0IsaUJBQWUsSUFBSTtBQUNuQixlQUFhLElBQUk7QUFDbEI7QUFHQSxDQUFDO0FBQ0EsUUFBTTtBQUNOLGNBQVk7QUFDWixXQUFTLElBQUk7QUFDYixjQUFZO0FBQ2I7QUFFQSxDQVBDLDBCQU8wQjtBQUMxQixTQUFPO0FBQ1I7QUFFQSxDQVhDLDBCQVcwQjtBQUMxQixjQUFZO0FBQ2I7QUFFQSxDQWZDLDBCQWUwQjtBQUMxQixjQUFZLElBQUk7QUFDaEIsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBcEJDLDBCQW9CMEIseUJBQXlCO0FBQ25ELGNBQVksSUFBSTtBQUNqQjtBQUVBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDaEIsVUFBUSxJQUFJLE9BQU8sSUFBSTtBQUN2QixpQkFBZSxJQUFJO0FBQ3BCO0FBR0EsQ0FBQywwQkFBMEIsQ0E1SzFCLGtCQTRLNkM7QUFDN0MsV0FBUztBQUNULFlBQVU7QUFDVixPQUFLO0FBQ0wsUUFBTTtBQUNOLFNBQU87QUFDUCxVQUFRO0FBQ1IsY0FBWSxJQUFJO0FBQ2hCLFdBQVM7QUFDVjtBQUVBLENBQUMsOEJBQThCLENBdkw5QixrQkF1TGlEO0FBQ2pELFdBQVM7QUFDVCxZQUFVO0FBQ1YsT0FBSztBQUNMLFFBQU07QUFDTixTQUFPO0FBQ1AsVUFBUTtBQUNSLGNBQVksSUFBSTtBQUNoQixXQUFTO0FBQ1Y7QUFFQSxDQUFDLDhCQUE4QixDQWxNOUIsa0JBa01pRDtBQUNqRCxXQUFTO0FBQ1QsWUFBVTtBQUNWLE9BQUs7QUFDTCxRQUFNO0FBQ04sU0FBTztBQUNQLFVBQVE7QUFDUixjQUFZLElBQUk7QUFDaEIsV0FBUztBQUNWO0FBRUEsQ0FBQyxrQ0FBa0MsQ0E3TWxDLGtCQTZNcUQ7QUFDckQsV0FBUztBQUNULFlBQVU7QUFDVixPQUFLO0FBQ0wsUUFBTTtBQUNOLFNBQU87QUFDUCxVQUFRO0FBQ1IsY0FBWSxJQUFJO0FBQ2hCLFdBQVM7QUFDVjtBQUdBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDaEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLGlCQUFlLElBQUk7QUFDbkIsV0FBUyxJQUFJO0FBQ2IsVUFBUTtBQUNSLGNBQVksSUFBSSxNQUFNO0FBQ3RCLFlBQVU7QUFDWDtBQUVBLENBWEMsZ0JBV2dCO0FBQ2hCLGNBQVksSUFBSTtBQUNoQixnQkFBYyxJQUFJO0FBQ2xCLGFBQVcsV0FBVztBQUN0QixjQUFZLElBQUk7QUFDakI7QUFFQSxDQWxCQyxnQkFrQmdCO0FBQ2hCLGFBQVcsV0FBVztBQUN2QjtBQUVBLENBdEJDLGdCQXNCZ0I7QUFDaEIsaUJBQWU7QUFDaEI7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsaUJBQWUsSUFBSTtBQUNuQixPQUFLLElBQUk7QUFDVjtBQUVBLENBQUM7QUFDQSxlQUFhO0FBQ2IsY0FBWTtBQUNiO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDYixXQUFTO0FBQ1QsY0FBWSxRQUFRLEtBQUs7QUFDMUI7QUFFQSxDQTlDQyxnQkE4Q2dCLE9BQU8sQ0FOdkI7QUFPQSxXQUFTO0FBQ1Y7QUFFQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLFVBQVE7QUFDUixXQUFTLElBQUk7QUFDYixpQkFBZSxJQUFJO0FBQ25CLFNBQU8sSUFBSTtBQUNYLFVBQVE7QUFDUixjQUFZLElBQUksS0FBSztBQUNyQixTQUFPO0FBQ1AsVUFBUTtBQUNSLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2xCO0FBRUEsQ0FmQyx5QkFleUI7QUFDekIsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0FBQztBQUNBLGlCQUFlLElBQUk7QUFDcEI7QUFFQSxDQUFDO0FBQ0EsYUFBVyxJQUFJO0FBQ2YsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNYLGlCQUFlLElBQUk7QUFDbkIsYUFBVztBQUNYLGVBQWEsSUFBSTtBQUNsQjtBQUVBLENBQUM7QUFDQSxhQUFXLElBQUk7QUFDZixlQUFhLElBQUk7QUFDakIsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxhQUFXO0FBQ1gsT0FBSyxJQUFJO0FBQ1QsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWCxXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGlCQUFlLElBQUk7QUFDbkIsYUFBVyxJQUFJO0FBQ2YsZUFBYSxJQUFJO0FBQ2pCLFVBQVEsSUFBSSxNQUFNO0FBQ2xCLGNBQVksSUFBSSxLQUFLO0FBQ3RCO0FBRUEsQ0FYQyxvQkFXb0I7QUFDcEIsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWCxnQkFBYyxJQUFJO0FBQ25CO0FBRUEsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWCxnQkFBYyxJQUFJO0FBQ25CO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLGFBQVcsSUFBSTtBQUNmLFNBQU8sSUFBSTtBQUNYLE9BQUssSUFBSTtBQUNWO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSyxJQUFJO0FBQ1QsY0FBWSxJQUFJO0FBQ2hCLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0IsaUJBQWUsSUFBSTtBQUNuQixlQUFhLElBQUk7QUFDbEI7QUFFQSxDQUFDO0FBQ0EsU0FBTztBQUNQLFVBQVE7QUFDUixXQUFTO0FBQ1Y7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsT0FBSyxJQUFJO0FBQ1QsV0FBUztBQUNULGNBQVksUUFBUSxLQUFLO0FBQzFCO0FBRUEsQ0F4S0MsZ0JBd0tnQixPQUFPLENBVHZCO0FBVUEsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUCxVQUFRO0FBQ1Q7QUFFQSxDQUFDO0FBQ0EsYUFBVyxJQUFJO0FBQ2YsYUFBVztBQUNYLFlBQVU7QUFDVixpQkFBZTtBQUNmLGVBQWE7QUFDZDtBQUVBLENBQUM7QUFDQSxTQUFPLElBQUk7QUFDWCxhQUFXLElBQUk7QUFDZixXQUFTO0FBQ1QsZUFBYSxJQUFJO0FBQ2xCO0FBR0EsQ0FBQztBQUNBLGVBQWEsSUFBSSxNQUFNLElBQUk7QUFDNUI7QUFFQSxDQUFDO0FBQ0EsZUFBYSxJQUFJLE1BQU0sSUFBSTtBQUM1QjtBQUVBLENBQUM7QUFDQSxlQUFhLElBQUksTUFBTSxJQUFJO0FBQzVCO0FBRUEsQ0FBQztBQUNBLGVBQWEsSUFBSSxNQUFNLElBQUk7QUFDNUI7QUFFQSxDQUFDO0FBQ0EsZUFBYSxJQUFJLE1BQU0sSUFBSTtBQUM1QjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsY0FBWSxJQUFJO0FBQ2hCLFVBQVEsSUFBSSxPQUFPLElBQUk7QUFDeEI7QUFFQSxDQUFDO0FBRUEsY0FBWSxJQUFJO0FBQ2pCO0FBR0EsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNoQixnQkFBYyxJQUFJO0FBQ2xCLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDaEIsV0FBUztBQUNULGdCQUFjLElBQUk7QUFDbkI7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULGtCQUFnQjtBQUNoQixlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFVBQVE7QUFDUixTQUFPLElBQUk7QUFDWCxjQUFZO0FBQ1osV0FBUyxJQUFJO0FBQ2IsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUCxVQUFRO0FBQ1IsaUJBQWUsSUFBSTtBQUNuQixXQUFTO0FBQ1QsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsYUFBVyxJQUFJO0FBQ2YsZUFBYTtBQUNiLGVBQWEsSUFBSTtBQUNsQjtBQUdBLE9BQU8sQ0FBQyxTQUFTLEVBQUU7QUFDbEIsR0E5WkE7QUErWkMsMkJBQXVCO0FBQ3ZCLHdCQUFvQixPQUFPLENBQUMsRUFBRTtBQUMvQjtBQUVBLEdBemVBO0FBMGVDLGFBQVMsSUFBSSxZQUFZLElBQUk7QUFDOUI7QUFFQSxHQTVaQSxtQkE0Wm9CLENBN2VwQjtBQThlQyxhQUFTLElBQUksWUFBWSxJQUFJO0FBQzlCO0FBRUEsR0F4UkE7QUF5UkMsYUFBUyxJQUFJO0FBQ2Q7QUFFQSxHQWpOQTtBQWtOQyxlQUFXLElBQUk7QUFDaEI7QUFFQSxHQXplQTtBQTBlQyxTQUFLLElBQUk7QUFDVjtBQUNEO0FBR0EsQ0F0U0MsZ0JBc1NnQjtBQUNoQixXQUFTLElBQUksTUFBTSxJQUFJO0FBQ3ZCLGtCQUFnQjtBQUNqQjtBQUVBLENBelBDLHlCQXlQeUI7QUFDekIsV0FBUyxJQUFJLE1BQU0sSUFBSTtBQUN2QixrQkFBZ0I7QUFDakI7QUFHQSxXQUFXO0FBQ1Y7QUFDQyxlQUFXLE1BQU07QUFDbEI7QUFDQTtBQUNDLGVBQVcsTUFBTTtBQUNsQjtBQUNBO0FBQ0MsZUFBVyxNQUFNO0FBQ2xCO0FBQ0Q7QUFFQSxDQUFDO0FBQ0EsYUFBVyxhQUFhLEtBQUs7QUFDOUI7QUFHQSxDQWxVQyxnQkFrVWdCLE9BQU8sQ0F2UHZCO0FBd1BBLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0F0VUMsZ0JBc1VnQixPQUFPLENBbFB2QjtBQW1QQSxXQUFTO0FBQ1Y7QUFHQSxDQXBRQztBQXFRQSxZQUFVO0FBQ1g7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULGtCQUFnQjtBQUNoQixlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFdBQVM7QUFDVCxTQUFPLElBQUk7QUFDWCxjQUFZO0FBQ2I7QUFFQSxDQUFDO0FBQ0EsaUJBQWU7QUFDaEI7QUFFQSxDQUFDO0FBQ0EsU0FBTztBQUNQLFVBQVE7QUFDUixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxhQUFXO0FBQ1gsV0FBUztBQUNWO0FBR0EsQ0FBQztBQUNBLFVBQVE7QUFDVDtBQUVBLENBSkMscUJBSXFCO0FBQ3JCLGtCQUFnQjtBQUNqQjtBQUVBLENBNUpDO0FBNkpBLFdBQVM7QUFDVCxjQUFZLElBQUk7QUFDaEIsVUFBUSxJQUFJLE9BQU8sSUFBSTtBQUN4QjtBQUVBLENBdEpDO0FBdUpBLGNBQVksRUFBRSxJQUFJLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUNyQyxhQUFXLE1BQU07QUFDakIsV0FBUztBQUNULGNBQVksSUFBSTtBQUNoQixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3ZCO0FBRUEsQ0F4SkM7QUF5SkEsV0FBUztBQUNULGNBQVksRUFBRSxLQUFLLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUN2QztBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsY0FBWSxJQUFJO0FBQ2hCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixjQUFZLEVBQUUsSUFBSSxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUU7QUFDdEM7QUFFQSxDQUFDO0FBQ0EsY0FBWSxJQUFJO0FBQ2hCLFVBQVEsSUFBSSxPQUFPLElBQUk7QUFDdkIsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBdmNDO0FBd2NBLGNBQVksSUFBSTtBQUNoQixVQUFRLElBQUksT0FBTyxJQUFJO0FBQ3ZCLGlCQUFlLElBQUk7QUFDbkIsY0FBWTtBQUNaLFlBQVU7QUFDWDtBQUVBLENBL2NDLHVDQStjdUM7QUFDdkMsV0FBUztBQUNULFlBQVU7QUFDVixPQUFLO0FBQ0wsUUFBTTtBQUNOLGFBQVcsVUFBVSxJQUFJLEVBQUU7QUFDM0IsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNYLGVBQWE7QUFDYixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLFdBQVM7QUFDVjtBQUdBLENBQUM7QUFDQSxZQUFVO0FBQ1YsT0FBSztBQUNMLFNBQU87QUFDUCxXQUFTO0FBQ1QsV0FBUztBQUNULGFBQVcsV0FBVztBQUN0QixjQUFZLElBQUksS0FBSztBQUNyQixrQkFBZ0I7QUFDakI7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGFBQVcsV0FBVztBQUN2QjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsYUFBVyxXQUFXO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSztBQUNMLFdBQVMsUUFBUTtBQUNqQixjQUFZLElBQUk7QUFDaEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLGNBQVksRUFBRSxJQUFJLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUNyQyxhQUFXO0FBQ1o7QUFFQSxDQUFDLDRCQUE0QixDQVo1QjtBQWFBLGNBQVksSUFBSTtBQUNoQixnQkFBYyxJQUFJO0FBQ2xCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLGVBQWE7QUFDZDtBQUdBLENBNWRDO0FBNmRBLGNBQVksSUFBSSxLQUFLO0FBQ3JCLFVBQVE7QUFDVDtBQUVBLENBamVDLGdCQWllZ0I7QUFDaEIsYUFBVyxXQUFXO0FBQ3RCLGNBQVksRUFBRSxJQUFJLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUN0QztBQUVBLENBdGVDLGdCQXNlZ0I7QUFDaEIsVUFBUTtBQUNUO0FBR0EsQ0E1UEM7QUE2UEEsV0FBUztBQUNULGtCQUFnQjtBQUNoQixlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFdBQVMsS0FBSztBQUNkLGNBQVk7QUFDWixTQUFPLElBQUk7QUFDWCxjQUFZO0FBQ1osVUFBUSxJQUFJLE9BQU8sSUFBSTtBQUN2QixpQkFBZSxJQUFJO0FBQ25CLFVBQVEsT0FBTztBQUNoQjtBQUVBLENBOVBDO0FBK1BBLGlCQUFlO0FBQ2YsV0FBUztBQUNWO0FBRUEsQ0EzUEM7QUE0UEEsYUFBVztBQUNYLGVBQWE7QUFDYixhQUFXO0FBQ1o7QUFHQSxXQUFXO0FBQ1Y7QUFDQyxlQUFXLE9BQU87QUFDbkI7QUFDQTtBQUNDLGVBQVcsT0FBTztBQUNuQjtBQUNEO0FBRUEsQ0FoTEMsb0JBZ0xvQjtBQUNwQixhQUFXLEtBQUssR0FBRyxPQUFPO0FBQzFCLG9CQUFrQjtBQUNuQjtBQUdBLE9BQU8sQ0FBQyxTQUFTLEVBQUU7QUFDbEIsR0EzR0E7QUE0R0MsU0FBSztBQUNMLFdBQU87QUFDUCxVQUFNO0FBQ04sZUFBVyxXQUFXO0FBQ3ZCO0FBRUEsR0F2R0E7QUF3R0MsZUFBVyxXQUFXO0FBQ3ZCO0FBRUEsR0F0R0E7QUF1R0MsZUFBVyxXQUFXO0FBQ3ZCO0FBRUEsR0FyR0E7QUFzR0MsZUFBVztBQUNYLFdBQU87QUFDUjtBQUNEO0FBR0EsQ0FBQyxXQUFXLENBelVYO0FBMFVBLGNBQVksSUFBSTtBQUNoQixjQUFZLEVBQUUsSUFBSSxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUU7QUFDdEM7QUFFQSxDQUxDLFdBS1csQ0EzS1g7QUE0S0EsY0FBWSxJQUFJO0FBQ2hCLGNBQVksRUFBRSxJQUFJLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUN0QztBQUVBLENBVkMsV0FVVyxDQXRIWDtBQXVIQSxjQUFZLEVBQUUsSUFBSSxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUU7QUFDdEM7QUFHQSxPQUFPLENBQUMsc0JBQXNCLEVBQUU7QUFDL0IsR0EzakJBO0FBQUEsRUE0akJBLENBbEpBO0FBQUEsRUFtSkEsQ0EzVkE7QUFBQSxFQTRWQSxDQXRWQTtBQXVWQyxnQkFBWTtBQUNaLGVBQVc7QUFDWjtBQUVBLEdBck9BLG9CQXFPcUI7QUFDcEIsZUFBVztBQUNaO0FBQ0Q7QUFHQSxDQUFDO0FBQ0EsUUFBTTtBQUNOLGNBQVk7QUFDWixjQUFZO0FBQ1osY0FBWTtBQUNaLG1CQUFpQjtBQUNqQixtQkFBaUIsSUFBSSw4QkFBOEI7QUFDcEQ7QUFFQSxDQVRDLDRCQVM0QjtBQUM1QixTQUFPO0FBQ1I7QUFFQSxDQWJDLDRCQWE0QjtBQUM1QixjQUFZO0FBQ2I7QUFFQSxDQWpCQyw0QkFpQjRCO0FBQzVCLGNBQVksSUFBSTtBQUNoQixpQkFBZTtBQUNoQjtBQUVBLENBdEJDLDRCQXNCNEIseUJBQXlCO0FBQ3JELGNBQVksSUFBSTtBQUNqQjtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLGVBQWE7QUFDYixtQkFBaUI7QUFDakIsV0FBUztBQUNULFNBQU8sSUFBSTtBQUNYLGNBQVksSUFBSSxNQUFNLElBQUk7QUFDMUIsY0FBWTtBQUNiO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVjtBQUVBLENBQUM7QUFDQSxpQkFBZTtBQUNmLFNBQU87QUFDUCxVQUFRO0FBQ1IsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQVJDLDhCQVE4QjtBQUM5QixhQUFXLEtBQUssR0FBRyxPQUFPO0FBQzNCO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxXQUFTO0FBQ1Y7QUFHQSxDQTd3QkM7QUE4d0JBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsVUFBUTtBQUNSLGNBQVk7QUFDWixjQUFZO0FBQ2I7QUFFQSxDQXp0QkM7QUEwdEJBLFFBQU07QUFDTixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUs7QUFDTCxXQUFTO0FBQ1Y7QUFHQSxDQTdFQztBQThFQSxtQkFBaUI7QUFDbEI7QUFHQSxDQW55QkMsa0JBbXlCa0IsQ0FBQyxhQUFhLENBdkRoQztBQXdEQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2pCO0FBR0EsQ0E3REM7QUE4REEsY0FBWTtBQUNaLGNBQVksUUFBUSxLQUFLO0FBQzFCO0FBR0EsQ0FudkJDLDBCQW12QjBCLE1BQU07QUFDaEMsV0FBUztBQUNULFdBQVM7QUFDVCxjQUFZO0FBQ2I7QUFHQSxDQWowQkM7QUFrMEJBLFdBQVM7QUFDVCx5QkFBdUIsT0FBTyxDQUFDLEVBQUU7QUFDakMsVUFBUSxLQUFLLE1BQU0sRUFBRTtBQUNyQixjQUFZO0FBQ2I7QUFHQSxPQUFPLENBQUMsU0FBUyxFQUFFO0FBQ2xCLEdBOUdBO0FBK0dDLGdCQUFZO0FBQ2I7QUFFQSxHQW4wQkE7QUFvMEJDLGdCQUFZO0FBQ2I7QUFDRDtBQUVBLE9BQU8sQ0FBQyxTQUFTLEVBQUU7QUFDbEIsR0F4SEE7QUF5SEMsZ0JBQVk7QUFDYjtBQUVBLEdBNzBCQTtBQTgwQkMsZ0JBQVk7QUFDWixnQkFBWTtBQUNiO0FBRUEsR0E3MUJBO0FBODFCQywyQkFBdUI7QUFDdkIsWUFBUTtBQUNUO0FBQ0Q7QUFHQSxDQTd4QkM7QUE4eEJBLFdBQVMsT0FBTztBQUNoQixlQUFhO0FBQ2Q7QUFFQSxDQXR0QkM7QUF1dEJBLFdBQVMsT0FBTyxNQUFNO0FBQ3ZCO0FBR0EsQ0FsSkMsNEJBa0o0QixDQUFDLFVBQVU7QUFDdkMsV0FBUztBQUNULFlBQVU7QUFDVixPQUFLO0FBQ0wsVUFBUTtBQUNSO0FBQUEsSUFBWTtBQUFBLE1BQ1gsR0FBRyxNQUFNO0FBQUEsTUFDVCxJQUFJLHFCQUFxQjtBQUFBLE1BQ3pCO0FBRUQsV0FBUztBQUNWO0FBRUEsQ0EvSkMsNEJBK0o0QixDQWJDLFVBYVU7QUFDdkMsV0FBUztBQUNULFlBQVU7QUFDVixVQUFRO0FBQ1IsVUFBUTtBQUNSO0FBQUEsSUFBWTtBQUFBLE1BQWdCLEdBQUcsR0FBRztBQUFBLE1BQUUsSUFBSSxxQkFBcUI7QUFBQSxNQUFFO0FBQy9ELFdBQVM7QUFDVjs7O0FDcjlCQSxDQUFDO0FBQ0EsU0FBTztBQUVQLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSztBQUNMLFdBQVM7QUFDVCxVQUFRO0FBQ1IsY0FBWTtBQUNiO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCx5QkFBdUIsT0FBTyxDQUFDLEVBQUUsT0FBTyxDQUFDLEVBQUU7QUFDM0MsT0FBSztBQUNMLFNBQU87QUFDUjtBQUdBLE9BQU8sT0FBTyxJQUFJLENBQUMsU0FBUyxFQUFFO0FBQzdCLEdBVEE7QUFVQyxhQUFTO0FBQ1QsU0FBSztBQUNOO0FBQ0Q7QUFHQSxPQUFPLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRTtBQUM3QixHQWpCQTtBQWtCQyxpQkFBYTtBQUNiLGtCQUFjO0FBQ2QsZUFBVztBQUNYLGFBQVM7QUFDVCxvQkFBZ0I7QUFDakI7QUFDRDtBQUdBLE9BQU8sT0FBTyxJQUFJLENBQUMsU0FBUyxFQUFFO0FBQzdCLEdBNUJBO0FBNkJDLGVBQVc7QUFDWjtBQUNEO0FBR0EsQ0FBQztBQUNBLFNBQU87QUFDUCxjQUFZO0FBQ2I7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULG1CQUFpQjtBQUNsQjtBQUdBLENBQUM7QUFDQSxVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDbkIsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1gsWUFBVTtBQUNWLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsU0FBTztBQUNQLFVBQVE7QUFDUixjQUFZO0FBQ2I7QUFFQSxDQWJDLFdBYVcsQ0FBQztBQUNaLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFdBQVMsT0FBTztBQUNoQixPQUFLO0FBRU47QUFFQSxDQXRCQyxXQXNCVyxDQUFDO0FBQ1osV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ0wsYUFBVyxJQUFJO0FBQ2YsZUFBYTtBQUNiLGFBQVc7QUFDWCxZQUFVO0FBQ1YsZUFBYTtBQUNiLGlCQUFlO0FBQ2hCO0FBRUEsQ0FBQyxVQUFVLENBQVYsVUFBcUI7QUFFckIsbUJBQWlCO0FBQ2pCLFVBQVE7QUFDVDtBQUVBLENBeENDLFdBd0NXLENBQUM7QUFDWixXQUFTLFFBQVE7QUFDakIsYUFBVztBQUVaO0FBR0EsQ0FBQyxpQkFBaUIsQ0FsQ0w7QUFxQ2I7QUFDQSxDQUpDLGlCQUlpQixDQUFDO0FBRW5CO0FBQ0EsQ0FQQyxpQkFPaUIsQ0FBQztBQUNsQixtQkFBaUI7QUFDakIsVUFBUTtBQUNSLGdCQUFjLElBQUk7QUFDbkI7QUFDQSxDQVpDLGlCQVlpQixDQW5CTDtBQXFCWixXQUFTLEtBQUssS0FBSztBQUNwQjtBQUdBLENBQUMsaUJBQWlCLENBekJMO0FBMEJaLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSztBQUNMLGVBQWE7QUFDZDtBQUVBLENBUEMsaUJBT2lCLENBQUM7QUFDbEIsZUFBYTtBQUNiLFVBQVE7QUFDUixTQUFPO0FBQ1AsZ0JBQWM7QUFDZCxXQUFTO0FBQ1QsVUFBUTtBQUNSLGlCQUFlLElBQUk7QUFDbkIsV0FBUztBQUNULG1CQUFpQjtBQUNqQixlQUFhO0FBQ2IsYUFBVztBQUNaO0FBRUEsQ0FyQkMsaUJBcUJpQixDQWRDO0FBZWxCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0F6QkMsaUJBeUJpQixDQWxCQyxpQkFrQmlCO0FBQ25DLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0E3QkMsaUJBNkJpQixDQUFDO0FBQ2xCLGFBQVcsSUFBSTtBQUNmLGVBQWE7QUFDZDtBQUVBLENBbENDLGlCQWtDaUIsQ0FBQztBQUNsQixhQUFXLElBQUk7QUFDZixTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQXhDQyxpQkF3Q2lCLENBQUM7QUFDbEIsV0FBUztBQUNULGtCQUFnQjtBQUNoQixlQUFhO0FBQ2IsY0FBWTtBQUNaLGFBQVc7QUFDWjtBQUNBLENBL0NDLGlCQStDaUIsQ0FQQyxXQU9XO0FBQzdCLGFBQVcsSUFBSTtBQUNmLGVBQWE7QUFDZDtBQUVBLENBcERDLGlCQW9EaUIsQ0FBQztBQUNsQixTQUFPO0FBQ1AsV0FBUztBQUNULGtCQUFnQjtBQUNoQixlQUFhO0FBQ2IsT0FBSztBQUNOO0FBR0EsT0FBTyxDQUFDLFNBQVMsRUFBRTtBQUVsQixHQS9EQSxpQkErRGtCLENBeEZOO0FBeUZYLG9CQUFnQjtBQUNoQixpQkFBYTtBQUNiLFNBQUs7QUFDTjtBQUNBLEdBcEVBLGlCQW9Fa0IsQ0FoQkE7QUFpQmpCLFdBQU87QUFDUCxlQUFXO0FBQ1gsaUJBQWE7QUFDZDtBQUNBLEdBekVBLGlCQXlFa0IsQ0FBQztBQUNsQixXQUFPO0FBQ1I7QUFDRDtBQUdBLENBQUMscUJBQXFCLENBbklUO0FBb0laLGtCQUFnQjtBQUNqQjtBQUNBLENBSEMscUJBR3FCLENBM0dUO0FBNEdaLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSztBQUNMLGVBQWE7QUFDZDtBQUVBLENBVkMscUJBVXFCLENBQUM7QUFDdEIsU0FBTztBQUNSO0FBRUEsQ0FkQyxxQkFjcUIsQ0FBQztBQUN0QixTQUFPO0FBQ1AsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLO0FBQ0wsZUFBYTtBQUNkO0FBRUEsQ0F0QkMscUJBc0JxQixDQUFDO0FBQ3RCLFNBQU87QUFDUCxpQkFBZTtBQUNmLFNBQU87QUFDUjtBQUdBLE9BQU8sQ0FBQyxTQUFTLEVBQUU7QUFDbEIsR0E5QkEscUJBOEJzQixDQXRJVjtBQXVJWCxvQkFBZ0I7QUFDaEIsaUJBQWE7QUFDYixxQkFBaUI7QUFDbEI7QUFDQSxHQW5DQSxxQkFtQ3NCLENBekJBO0FBMEJyQixXQUFPO0FBQ1AsZUFBVztBQUNYLGtCQUFjO0FBQ2Y7QUFDQSxHQXhDQSxxQkF3Q3NCLENBMUJBO0FBMkJyQixXQUFPO0FBQ1AsZUFBVztBQUNYLGlCQUFhO0FBQ2Q7QUFDRDtBQUdBLENBQUMsbUJBQW1CLENBbkxQO0FBb0xaLGtCQUFnQjtBQUNqQjtBQUNBLENBSEMsbUJBR21CLENBM0pQO0FBNEpaLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSztBQUNMLGVBQWE7QUFDYixlQUFhO0FBQ2Isa0JBQWdCO0FBQ2pCO0FBQ0EsQ0FYQyxtQkFXbUIsQ0FqREc7QUFrRHRCLFNBQU87QUFDUjtBQUNBLENBZEMsbUJBY21CLENBaERHO0FBaUR0QixTQUFPO0FBQ1AsV0FBUztBQUNULGtCQUFnQjtBQUNoQixlQUFhO0FBQ2IsT0FBSztBQUNOO0FBRUEsQ0F0QkMsbUJBc0JtQixDQUFDO0FBQ3BCLFdBQVM7QUFDVCxtQkFBaUI7QUFDakIsZUFBYTtBQUNiLGFBQVc7QUFDWCxXQUFTO0FBQ1QsU0FBTztBQUNQLGFBQVc7QUFDWCxVQUFRO0FBQ1IsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWCxVQUFRO0FBQ1IsaUJBQWUsSUFBSTtBQUNwQjtBQUNBLENBckNDLG1CQXFDbUIsQ0FmQyxvQkFlb0I7QUFDeEMsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQXpDQyxtQkF5Q21CLENBQUM7QUFDcEIsU0FBTztBQUNQLGFBQVc7QUFDWjtBQUNBLENBN0NDLG1CQTZDbUIsQ0FKQyxxQkFJcUIsQ0FBQztBQUMxQyxXQUFTO0FBQ1Y7QUFDQSxDQWhEQyxtQkFnRG1CLENBUEMscUJBT3FCLENBQUM7QUFDMUMsU0FBTztBQUNQLFdBQVM7QUFDVCxVQUFRO0FBQ1Q7QUFDQSxDQXJEQyxtQkFxRG1CLENBWkMscUJBWXFCLENBQUM7QUFDMUMsU0FBTztBQUNSO0FBRUEsQ0F6REMsbUJBeURtQixDQUFDLFdBQVcsQ0FBQztBQUNoQyxPQUFLLElBQUk7QUFDVjtBQUdBLE9BQU8sQ0FBQyxTQUFTLEVBQUU7QUFDbEIsR0EvREEsbUJBK0RvQixDQXZOUjtBQXdOWCxvQkFBZ0I7QUFDaEIsaUJBQWE7QUFDYixxQkFBaUI7QUFDbEI7QUFDQSxHQXBFQSxtQkFvRW9CLENBMUdFO0FBMkdyQixXQUFPO0FBQ1AsZUFBVztBQUNYLGtCQUFjO0FBQ2Y7QUFDQSxHQXpFQSxtQkF5RW9CLENBM0dFO0FBNEdyQixXQUFPO0FBQ1AsZUFBVztBQUNYLG9CQUFnQjtBQUNoQixpQkFBYTtBQUNiLFNBQUs7QUFDTjtBQUNBLEdBaEZBLG1CQWdGb0IsQ0ExREE7QUEyRG5CLFdBQU87QUFDUCxZQUFRO0FBQ1Q7QUFDQSxHQXBGQSxtQkFvRm9CLENBM0NBO0FBNENuQixXQUFPO0FBQ1AsZUFBVztBQUNaO0FBQ0Q7QUFHQSxDQUFDO0FBQ0EsU0FBTztBQUNQLFVBQVE7QUFDUixvQkFBa0IsSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLFlBQVU7QUFDVixZQUFVO0FBQ1g7QUFDQSxDQUFDO0FBQ0EsVUFBUTtBQUNSLG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDbkIsY0FBWSxNQUFNLEtBQUs7QUFDeEI7QUFDQSxDQWRDLHdCQWN3QixDQUFDLE9BQU8sQ0FBQztBQUNqQyxrQkFBZ0I7QUFDakI7QUFDQSxDQUhrQztBQUlqQyxZQUFVO0FBQ1YsT0FBSztBQUNMLFFBQU07QUFDTixTQUFPO0FBQ1AsVUFBUTtBQUNSLFdBQVM7QUFDVCxtQkFBaUI7QUFDakIsZUFBYTtBQUNiLGFBQVc7QUFDWCxlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1gsa0JBQWdCO0FBQ2hCLGVBQWE7QUFDZDtBQUdBLENBQUM7QUFDQSxTQUFPO0FBQ1I7QUFDQSxDQUFDLFdBQVcsQ0F2RXFCO0FBd0VoQyxXQUFTO0FBQ1QseUJBQXVCLE9BQU8sQ0FBQyxFQUFFO0FBQ2pDLE9BQUssSUFBSTtBQUNULGNBQVk7QUFDWixrQkFBZ0I7QUFDakI7QUFFQSxDQS9FcUIsV0ErRVQsQ0EvRXFCO0FBZ0ZoQyxXQUFTO0FBQ1QseUJBQXVCLE9BQU8sQ0FBQyxFQUFFO0FBQ2pDLE9BQUssSUFBSTtBQUNULGNBQVk7QUFDWixrQkFBZ0I7QUFDaEIsaUJBQWU7QUFDaEI7QUFFQSxDQUFDLFdBQVcsQ0F4RnFCO0FBeUZoQyxXQUFTO0FBQ1QseUJBQXVCLE9BQU8sRUFBRSxFQUFFO0FBQ2xDLE9BQUssSUFBSTtBQUNULGNBQVk7QUFDWixrQkFBZ0I7QUFDaEIsaUJBQWU7QUFDaEI7QUFFQSxDQUFDO0FBQ0EsaUJBQWUsSUFBSTtBQUNuQixXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLGVBQWE7QUFDYixVQUFRO0FBQ1IsZUFBYTtBQUNiLG9CQUFrQixLQUNqQjtBQUVELFVBQVEsSUFBSSxNQUFNO0FBQ25CO0FBR0EsQ0FBQztBQUVEO0FBQ0EsQ0FBQztBQUNBLGlCQUFlO0FBQ2hCO0FBR0EsQ0FoREMsV0FnRFcsQ0F0Qlg7QUF1QkEsU0FBTztBQUNQLFVBQVE7QUFDVDtBQUNBLENBMU51QixxQkEwTkQsQ0EzSEQsV0EySGEsQ0ExQmpDO0FBMkJBLFNBQU87QUFDUCxVQUFRO0FBQ1IsYUFBVztBQUNaO0FBRUEsQ0FqSXFCLFdBaUlULENBaENYO0FBaUNBLFNBQU87QUFDUCxVQUFRO0FBQ1IsYUFBVztBQUNaO0FBQ0EsQ0E5Q0MsV0E4Q1csQ0FyQ1g7QUFzQ0EsU0FBTztBQUNQLFVBQVE7QUFDUixhQUFXO0FBQ1o7QUFHQSxDQTVDQyxZQTRDWSxDQUFDO0FBRWQ7QUFDQSxDQS9DQyxZQStDWSxDQWhHYTtBQWlHekIsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQXBEQyxZQW9EWSxDQUFDLGtCQUFrQixLQUFLLENBQUM7QUFDckMsY0FBWTtBQUNaLFVBQVE7QUFDVDtBQUdBLENBMURDLFlBMERZLENBTkM7QUFPZCxDQTNEQyxZQTJEWSxDQUFDO0FBQ2Isb0JBQWtCLElBQUk7QUFDdEIsZ0JBQWMsSUFBSTtBQUNsQixTQUFPLElBQUk7QUFDWjtBQUNBLENBaEVDLFlBZ0VZLENBTEM7QUFNYixlQUFhO0FBQ2Q7QUFHQSxDQWpCc0M7QUFrQnJDLFNBQU87QUFDUCxVQUFRO0FBQ1IsV0FBUztBQUNULG1CQUFpQjtBQUNqQixlQUFhO0FBQ2Q7QUFDQSxDQXhCc0Msa0JBd0JuQjtBQUNsQixXQUFTO0FBQ1Y7QUFHQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLFdBQVMsS0FBSztBQUNkLFNBQU8sSUFBSTtBQUNaO0FBQ0EsQ0FMQyxrQkFLa0I7QUFDbEIsYUFBVyxJQUFJO0FBQ2YsZUFBYTtBQUNiLGlCQUFlO0FBQ2hCO0FBQ0EsQ0FWQyxrQkFVa0I7QUFDbEIsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUVULFVBQVE7QUFDUixlQUFhO0FBQ2IsY0FBWTtBQUNaLFNBQU8sSUFBSTtBQUNYLGNBQVk7QUFDWixnQkFBYztBQUNkLGVBQWE7QUFDZDtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLE9BQUs7QUFDTCxpQkFBZTtBQUNoQjtBQUNBLENBQUM7QUFDQSxXQUFTO0FBQ1QsYUFBVztBQUNYLE9BQUs7QUFDTjtBQUNBLENBTEMsb0JBS29CLENBQUM7QUFDckIsV0FBUyxRQUFRO0FBQ2pCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLGlCQUFlLElBQUk7QUFDbkIsVUFBUTtBQUNUO0FBQ0EsQ0FiQyxvQkFhb0IsQ0FSQyxVQVFVO0FBQy9CLGNBQVksSUFBSTtBQUNqQjtBQUNBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTjtBQUNBLENBTEMsa0JBS2tCLENBQUM7QUFDbkIsU0FBTyxJQUFJO0FBQ1gsYUFBVyxJQUFJO0FBQ2hCO0FBQ0EsQ0FUQyxrQkFTa0IsQ0FBQztBQUNuQixXQUFTO0FBQ1QsYUFBVztBQUNYLE9BQUs7QUFDTCxjQUFZO0FBQ1osa0JBQWdCO0FBQ2pCO0FBQ0EsQ0FoQkMsa0JBZ0JrQixDQUFDO0FBQ25CLFdBQVMsT0FBTztBQUNoQixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWCxpQkFBZSxJQUFJO0FBQ25CLFVBQVE7QUFDUixlQUFhO0FBQ2Q7QUFDQSxDQXpCQyxrQkF5QmtCLENBVEMsUUFTUSxDQUFDO0FBQzdCLENBMUJDLGtCQTBCa0IsQ0FWQyxRQVVRO0FBQzNCLGNBQVksSUFBSTtBQUNoQixnQkFBYyxJQUFJO0FBQ2xCLFNBQU8sSUFBSTtBQUNaO0FBQ0EsQ0FBQztBQUVBLGNBQVk7QUFDWixZQUFVO0FBQ1g7OztBQzFqQkE7QUFFQywwQkFBd0I7QUFDeEIsc0JBQW9CO0FBQ3BCLDRCQUEwQjtBQUMxQiwwQkFBd0I7QUFDeEIsd0JBQXNCO0FBQ3RCLHlCQUF1QjtBQUN2QiwwQkFBd0I7QUFDeEIscUJBQW1CO0FBQ25CLHNCQUFvQjtBQUNwQix5QkFBdUI7QUFDdkIseUJBQXVCO0FBQ3ZCLDRCQUEwQjtBQUMxQixxQkFBbUI7QUFDbkIscUJBQW1CO0FBQ25CLHFCQUFtQjtBQUNuQixxQkFBbUI7QUFDbkIsb0JBQWtCO0FBQ2xCLG9CQUFrQjtBQUNsQixtQkFBaUI7QUFDakIscUJBQW1CO0FBQ25CLHFCQUFtQjtBQUNuQix1QkFBcUI7QUFDckIsdUJBQXFCO0FBR3JCLHNCQUFvQjtBQUNwQix1QkFBcUI7QUFDckIsdUJBQXFCO0FBQ3JCLHVCQUFxQjtBQUNyQix3QkFBc0I7QUFFdEIsK0JBQTZCO0FBQzlCO0FBR0EsQ0FBQztBQUNBLDBCQUF3QjtBQUN4QixzQkFBb0I7QUFDcEIsNEJBQTBCO0FBQzFCLDBCQUF3QjtBQUN4Qix3QkFBc0I7QUFDdEIseUJBQXVCO0FBQ3ZCLDBCQUF3QjtBQUN4QixxQkFBbUI7QUFDbkIsc0JBQW9CO0FBQ3BCLHlCQUF1QjtBQUN2Qix5QkFBdUI7QUFDdkIsNEJBQTBCO0FBQzFCLHFCQUFtQjtBQUNuQixxQkFBbUI7QUFDbkIscUJBQW1CO0FBQ25CLHFCQUFtQjtBQUNuQixvQkFBa0I7QUFDbEIsb0JBQWtCO0FBQ2xCLG1CQUFpQjtBQUNqQixxQkFBbUI7QUFDbkIscUJBQW1CO0FBQ25CLHVCQUFxQjtBQUNyQix1QkFBcUI7QUFFckIsc0JBQW9CO0FBQ3BCLHVCQUFxQjtBQUNyQix1QkFBcUI7QUFDckIsdUJBQXFCO0FBQ3JCLHdCQUFzQjtBQUV0QiwrQkFBNkI7QUFDOUI7OztBQ3RFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJLEdBQUcsRUFBRTtBQUNqQjtBQUdBLENBTEMsOEJBSzhCLENBQUM7QUFFL0IsaUJBQWU7QUFDaEI7QUFFQSxDQVZDLDhCQVdBLENBTitCLFlBTWxCLEtBQUssQ0FBQyxzQkFDbkIsQ0FBQztBQUVELFNBQU87QUFDUjtBQUVBLENBakJDLDhCQWlCOEIsQ0FBQyxxQkFBcUIsS0FBSyxDQUFDO0FBQzNELENBbEJDLDhCQWtCOEIsQ0FEQyxxQkFDcUIsS0FBSyxDQUFDO0FBRTFELFNBQU87QUFDUjtBQUVBLENBdkJDLDhCQXVCOEIsQ0FBQztBQUUvQixhQUFXLElBQUk7QUFDZixTQUFPLElBQUk7QUFDWCxjQUFZO0FBQ2I7QUFHQSxDQUFDLHFCQUFxQixDQTFCVTtBQTJCL0IsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDN0IsV0FBUyxLQUFLO0FBQ2QsV0FBUztBQUNULGVBQWE7QUFDZDtBQUVBLENBUEMscUJBT3FCLENBMUJwQjtBQTJCRCxhQUFXO0FBQ1gsZ0JBQWM7QUFDZjtBQUVBLENBWkMscUJBWXFCLENBMUJVO0FBNEIvQixXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTjtBQUVBLENBbkJDLHFCQW1CcUIsQ0FqQ1UscUJBaUNZLENBQUM7QUFDNUMsV0FBUztBQUNULFVBQVE7QUFDVDtBQUVBLENBeEJDLHFCQXdCcUIsQ0FBQztBQUN2QixDQXpCQyxxQkF5QnFCLENBQUM7QUFFdEIsZUFBYTtBQUNkO0FBRUEsQ0E5QkMscUJBOEJxQixDQXhEVSxZQXdERztBQUNsQyxpQkFBZTtBQUNoQjtBQUdBLENBbkNDLHFCQW1DcUIsQ0FqRFUscUJBaURZLENBQUM7QUFDNUMsVUFBUTtBQUNUO0FBR0EsQ0FBQztBQUNBLFlBQVU7QUFDVixXQUFTO0FBQ1Qsb0JBQWtCLElBQUk7QUFDdEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLGNBQVksSUFBSTtBQUNoQixXQUFTO0FBQ1QsY0FBWTtBQUNaLFNBQU87QUFDUCxXQUFTO0FBQ1Qsa0JBQWdCO0FBRWhCLGNBQVk7QUFDYjtBQVdBLENBekJDLGFBeUJhLENBQUM7QUFDZCxTQUFPO0FBQ1AsV0FBUyxJQUFJO0FBQ2IsaUJBQWU7QUFDZixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDbkIsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNaLGVBQWE7QUFDZDtBQUVBLENBckNDLGFBcUNhLENBQUM7QUFDZCxhQUFXO0FBQ1gsY0FBWTtBQUNaLGNBQVk7QUFDWixXQUFTO0FBQ1QseUJBQXVCLE9BQU8sU0FBUyxFQUFFLE9BQU8sSUFBSSxFQUFFO0FBQ3RELE9BQUs7QUFFTjtBQUdBLENBaERDLGFBZ0RhLENBQUM7QUFDZCxXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLGVBQWE7QUFDYixXQUFTO0FBQ1QsaUJBQWUsSUFBSTtBQUNuQixVQUFRO0FBQ1Isb0JBQWtCLElBQUk7QUFDdEIsVUFBUSxJQUFJLE1BQU07QUFDbEIsY0FBWSxpQkFBaUIsS0FBSyxXQUFXLEVBQUUsYUFBYSxLQUFLO0FBQ2xFO0FBRUEsQ0E1REMsYUE0RGEsQ0FaQyxjQVljO0FBQzVCLG9CQUFrQixJQUFJO0FBQ3RCLGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQWpFQyxhQWlFYSxDQWpCQyxlQWlCZTtBQUM3QixTQUFPO0FBQ1AsVUFBUTtBQUNSLFNBQU8sSUFBSTtBQUNaOzs7QUMzSUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsVUFBUTtBQUNSLGFBQVcsSUFBSTtBQUNmLGVBQWEsSUFBSTtBQUNsQjtBQUVBLENBQUMsVUFBVSxDQUFDO0FBQ1gsd0JBQXNCLElBQUk7QUFDMUIsc0JBQW9CLElBQUk7QUFDekI7QUFFQSxDQWJDLG1CQWFtQixDQUFDLFdBQVc7QUFDL0Isb0JBQWtCLElBQUk7QUFDdkI7QUFHQSxDQVZDLFVBVVUsQ0FBQztBQUNYLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0FmQyxVQWVVLENBQUM7QUFDWCxTQUFPLElBQUk7QUFDWjtBQUdBLENBcEJDLFVBb0JVLENBQUM7QUFDWCxTQUFPLElBQUk7QUFDWjtBQUdBLENBekJDLFVBeUJVLENBQUM7QUFDWixDQTFCQyxVQTBCVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQS9CQyxVQStCVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQXBDQyxVQW9DVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQXpDQyxVQXlDVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQTlDQyxVQThDVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQW5EQyxVQW1EVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQXhEQyxVQXdEVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQTdEQyxVQTZEVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQWxFQyxVQWtFVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQXZFQyxVQXVFVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQTVFQyxVQTRFVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQWpGQyxVQWlGVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQXRGQyxVQXNGVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQTNGQyxVQTJGVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQWhHQyxVQWdHVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQXJHQyxVQXFHVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQTFHQyxVQTBHVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQS9HQyxVQStHVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQXBIQyxVQW9IVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQXpIQyxVQXlIVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQTlIQyxVQThIVSxDQUFDO0FBQ1osQ0EvSEMsVUErSFUsQ0FBQztBQUNaLENBaElDLFVBZ0lVLENBQUM7QUFDWixDQWpJQyxVQWlJVSxDQUFDO0FBQ1osQ0FsSUMsVUFrSVUsQ0FBQztBQUNaLENBbklDLFVBbUlVLENBQUM7QUFDWixDQXBJQyxVQW9JVSxDQUFDO0FBQ1osQ0FySUMsVUFxSVUsQ0FBQztBQUNaLENBdElDLFVBc0lVLENBQUM7QUFDWixDQXZJQyxVQXVJVSxDQUFDO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULFNBQU87QUFDUCxVQUFRO0FBQ1IsaUJBQWU7QUFDZixvQkFBa0IsSUFBSTtBQUN0QixnQkFBYztBQUNkLGtCQUFnQjtBQUNqQjtBQUVBLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FWcEI7QUFXQSxXQUFTO0FBQ1Y7QUFFQSxHQUFHLEVBQUUsQ0FKQyxlQUllLENBQUM7QUFDckIsdUJBQXFCO0FBQ3RCOzs7QUM5SkEsQ0FBQztBQUNBLGtCQUFnQjtBQUNoQixzQkFBb0I7QUFDcEIsdUJBQXFCO0FBQ3JCLHdCQUFzQixJQUFJO0FBQzFCLDhCQUE0QjtBQUM1QiwyQkFBeUIsSUFBSSxNQUFNLGFBQWEsR0FBRyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUU7QUFHN0QsZUFBYSxFQUFFLElBQUksSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRTtBQUNyQyxlQUFhLEVBQUUsSUFBSSxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLElBQUksSUFBSSxLQUFLLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRTtBQUN0RSxlQUFhLEVBQUUsSUFBSSxJQUFJLEtBQUssSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLElBQUksSUFBSSxLQUFLLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRTtBQUN6RSxlQUFhLEVBQUUsS0FBSyxLQUFLLEtBQUssSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLElBQUksSUFBSSxLQUFLLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRTtBQUM1RTtBQUdBLENBaEJDLGdCQWdCZ0IsQ0FBQztBQUNqQixvQkFBa0IsSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLGFBQVcsSUFBSTtBQUNmLGNBQVksSUFBSTtBQUNoQixVQUFRO0FBQ1IsV0FBUztBQUNULGtCQUFnQjtBQUNoQixZQUFVO0FBQ1YsWUFBVTtBQUNWLGNBQVk7QUFDYjtBQUdBLENBOUJDO0FBK0JBLFVBQVE7QUFDUixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FyQ0MsZ0JBcUNnQixDQUFDO0FBQ2pCLFVBQVE7QUFDUixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2pCO0FBR0EsQ0E1Q0MsZ0JBNENnQixDQUFDO0FBQ2pCLFdBQVMsS0FBSyxJQUFJLHNCQUFzQixFQUFFLEdBQUcsSUFBSSxzQkFBc0IsSUFBSSxZQUFZLElBQUk7QUFDM0YsY0FBWTtBQUNiO0FBR0EsQ0FsREMsZ0JBa0RnQixDQU5DLGlCQU1pQjtBQUNsQyxXQUFTO0FBQ1Y7QUFFQSxDQXREQyxnQkFzRGdCLENBQUM7QUFDakIsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNYLFVBQVE7QUFDVDtBQUdBLENBN0RDLGdCQTZEZ0IsQ0FBQztBQUNqQixRQUFNO0FBQ04sV0FBUyxJQUFJO0FBQ2IsY0FBWTtBQUNaLGNBQVk7QUFDWixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLGVBQWE7QUFDZDtBQUdBLENBeEVDLGdCQXdFZ0IsQ0FBQztBQUNqQixXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGNBQVksSUFBSTtBQUNoQixjQUFZO0FBQ1osY0FBWSxFQUFFLEtBQUssS0FBSyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFO0FBQ3RDLGVBQWE7QUFDYixZQUFVO0FBQ1YsY0FBWSxJQUFJLEtBQUs7QUFDdEI7QUFHQSxDQW5GQyxnQkFtRmdCLENBWEMsaUJBV2lCO0FBQ2xDLFdBQVM7QUFDVCxZQUFVO0FBQ1YsT0FBSztBQUNMLFFBQU07QUFDTixTQUFPO0FBQ1AsVUFBUTtBQUNSO0FBQUEsSUFBWTtBQUFBLE1BQWdCLEdBQUcsR0FBRztBQUFBLE1BQUUsSUFBSSxxQkFBcUI7QUFBQSxNQUFFO0FBQy9ELFdBQVM7QUFDVCxrQkFBZ0I7QUFDakI7QUFFQSxDQS9GQyxnQkErRmdCLENBQUM7QUFDakIsV0FBUztBQUNULE9BQUssSUFBSTtBQUNULG1CQUFpQjtBQUNqQixlQUFhO0FBQ2IsWUFBVTtBQUNWLFdBQVM7QUFDVjtBQUdBLENBekdDLGdCQXlHZ0IsQ0FBQztBQUNqQixXQUFTO0FBQ1QsT0FBSyxJQUFJO0FBQ1QsZUFBYTtBQUNkO0FBRUEsQ0EvR0MsZ0JBK0dnQixDQUFDO0FBQ2pCLFdBQVM7QUFDVCxPQUFLLElBQUk7QUFDVCxlQUFhO0FBQ2IsZUFBYTtBQUNkO0FBR0EsQ0F2SEMsZ0JBdUhnQixDQXhCQyxtQkF3Qm1CO0FBQ3BDLGNBQVk7QUFDWixXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGlCQUFlLElBQUk7QUFDbkIsZUFBYTtBQUNiLGNBQVksSUFBSSxLQUFLLGFBQWEsR0FBRyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUU7QUFDL0MsWUFBVTtBQUNWLFlBQVU7QUFDWDtBQUVBLENBaklDLGdCQWlJZ0IsQ0FsQ0MsbUJBa0NtQixNQUFNLEtBQUssQ0FBQyxRQUFRO0FBQ3hELGFBQVcsV0FBVztBQUN2QjtBQUdBLENBdElDLGdCQXNJZ0IsQ0F2Q0MsbUJBdUNtQixNQUFNO0FBQzFDLFdBQVM7QUFDVCxZQUFVO0FBQ1YsT0FBSztBQUNMLFFBQU07QUFDTixTQUFPO0FBQ1AsVUFBUTtBQUNSLGlCQUFlO0FBQ2YsY0FBWSxLQUFLLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFO0FBQ2hDLGFBQVcsVUFBVSxJQUFJLEVBQUU7QUFDM0IsY0FBWSxNQUFNLElBQUksRUFBRSxPQUFPO0FBQ2hDO0FBRUEsQ0FuSkMsZ0JBbUpnQixDQXBEQyxtQkFvRG1CLE1BQU0sT0FBTztBQUNqRCxTQUFPO0FBQ1AsVUFBUTtBQUNUO0FBTUEsQ0E1SkMsZ0JBNEpnQixDQUFDO0FBQ2pCLFdBQVM7QUFDVCx5QkFBdUIsSUFBSTtBQUMzQixPQUFLLElBQUk7QUFDVCxjQUFZLElBQUk7QUFDakI7QUFHQSxDQXBLQyxnQkFvS2dCLENBQUM7QUFDakIsY0FBWSxJQUFJO0FBQ2hCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixXQUFTLElBQUk7QUFDYixjQUFZLElBQUk7QUFDakI7QUFFQSxDQTVLQyxnQkE0S2dCLENBQUM7QUFDakIsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLLElBQUk7QUFDVCxpQkFBZSxJQUFJO0FBQ25CLGtCQUFnQixJQUFJO0FBQ3BCLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzlCO0FBRUEsQ0FyTEMsZ0JBcUxnQixDQUFDO0FBQ2pCLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWjtBQUVBLENBMUxDLGdCQTBMZ0IsQ0FBQztBQUNqQixXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUssSUFBSTtBQUNULFFBQU07QUFDUDtBQUVBLENBak1DLGdCQWlNZ0IsQ0FQQyxtQkFPbUI7QUFDcEMsVUFBUTtBQUNSLGFBQVc7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQXZNQyxnQkF1TWdCLENBQUM7QUFDakIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQTNNQyxnQkEyTWdCLENBQUM7QUFDakIsYUFBVztBQUNYLGlCQUFlLElBQUk7QUFDcEI7QUFFQSxDQWhOQyxnQkFnTmdCLENBQUM7QUFDakIsY0FBWTtBQUNaLFdBQVM7QUFDVCxVQUFRO0FBQ1IsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLLElBQUk7QUFDVjtBQUVBLENBek5DLGdCQXlOZ0IsQ0FUQyw0QkFTNEI7QUFDN0MsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLLElBQUk7QUFDVCxTQUFPLElBQUk7QUFDWCxhQUFXO0FBQ1o7QUFFQSxDQWpPQyxnQkFpT2dCLENBQUM7QUFDakIsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBR0EsQ0F2T0MsZ0JBdU9nQixDQUFDO0FBQ2pCLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSyxJQUFJO0FBQ1Y7QUFHQSxDQTlPQyxnQkE4T2dCLENBQUM7QUFDakIsY0FBWSxJQUFJO0FBQ2hCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixXQUFTLElBQUk7QUFDYixVQUFRO0FBQ1IsY0FBWSxJQUFJO0FBQ2hCLGNBQVksSUFBSTtBQUNoQixZQUFVO0FBQ1YsWUFBVTtBQUNYO0FBR0EsQ0EzUEMsZ0JBMlBnQixDQWJDLDBCQWEwQixDQUFDO0FBQzVDLGdCQUFjLElBQUk7QUFDbEI7QUFBQSxJQUFZO0FBQUEsTUFDWCxNQUFNO0FBQUEsTUFDTixLQUFLLElBQUkseUJBQXlCLEVBQUUsTUFBTSxFQUFFO0FBQUEsTUFDNUMsSUFBSSxzQkFBc0I7QUFFM0IsY0FBWSxJQUFJLFlBQVksRUFBRSxFQUFFLEVBQUUsRUFBRSxJQUFJLEtBQUssSUFBSSx5QkFBeUIsRUFBRTtBQUM3RTtBQUVBLENBclFDLGdCQXFRZ0IsQ0F2QkMsMEJBdUIwQjtBQUMzQyxhQUFXLFdBQVc7QUFDdEIsY0FBWSxJQUFJO0FBQ2hCLGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQTNRQyxnQkEyUWdCLENBN0JDLDBCQTZCMEIsTUFBTTtBQUNqRCxhQUFXLE9BQU87QUFDbkI7QUFHQSxDQWhSQyxnQkFnUmdCLENBQUM7QUFDakI7QUFBQSxJQUFZO0FBQUEsTUFDWCxNQUFNO0FBQUEsTUFDTixJQUFJLHNCQUFzQixFQUFFO0FBQUEsTUFDNUIsSUFBSSx3QkFBd0I7QUFFOUI7QUFFQSxDQXhSQyxnQkF3UmdCLENBUkMsNEJBUTRCO0FBQzdDLGFBQVcsT0FBTztBQUNuQjtBQUdBLENBN1JDLGdCQTZSZ0IsQ0FBQztBQUNqQixXQUFTO0FBQ1Y7QUFFQSxDQWpTQyxnQkFpU2dCLENBSkMsMEJBSTBCO0FBQzNDLFdBQVM7QUFDVjtBQUdBLENBdFNDLGdCQXNTZ0IsQ0FBQztBQUNqQixXQUFTO0FBQ1QsZUFBYTtBQUNiLGlCQUFlLElBQUk7QUFDcEI7QUFFQSxDQTVTQyxnQkE0U2dCLENBQUM7QUFDakIsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQWxUQyxnQkFrVGdCLENBQUMsb0JBQW9CO0FBQ3JDLFVBQVEsRUFBRSxFQUFFLElBQUksWUFBWTtBQUM1QixhQUFXO0FBQ1gsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0F6VEMsZ0JBeVRnQixDQVBDLG9CQU9vQixFQUFFO0FBQ3ZDLFVBQVEsRUFBRSxFQUFFLElBQUksWUFBWTtBQUM1QixTQUFPLElBQUk7QUFDWCxhQUFXO0FBQ1gsZUFBYTtBQUNkO0FBRUEsQ0FoVUMsZ0JBZ1VnQixDQUFDO0FBQ2pCLGNBQVk7QUFDWixXQUFTO0FBQ1QsVUFBUSxJQUFJLFlBQVksRUFBRSxFQUFFO0FBQzVCLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSyxJQUFJO0FBQ1Y7QUFFQSxDQXpVQyxnQkF5VWdCLENBVEMscUJBU3FCO0FBQ3RDLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSyxJQUFJO0FBQ1QsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNaO0FBRUEsQ0FqVkMsZ0JBaVZnQixDQWpCQyxxQkFpQnFCLENBQUM7QUFDdkMsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBRUEsQ0F0VkMsZ0JBc1ZnQixDQUFDO0FBQ2pCLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSyxJQUFJO0FBQ1QsY0FBWSxJQUFJO0FBQ2hCLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0IsY0FBWSxJQUFJO0FBQ2hCLGlCQUFlLElBQUk7QUFDbkIsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FsV0MsZ0JBa1dnQixDQVpDLGlCQVlpQixDQUFDO0FBQ25DLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDZDtBQUdBLE9BQU8sQ0FBQyxTQUFTLEVBQUU7QUFDbEIsR0F6V0EsZ0JBeVdpQixDQTdNQTtBQThNaEIsMkJBQXVCO0FBQ3hCO0FBQ0Q7QUFNQSxDQWxYQyxnQkFrWGdCLENBQUM7QUFDakIsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLLElBQUk7QUFDVjtBQUVBLENBeFhDLGdCQXdYZ0IsQ0FBQztBQUNqQixXQUFTO0FBQ1QseUJBQXVCLE9BQU8sUUFBUSxFQUFFLE9BQU8sS0FBSyxFQUFFO0FBQ3RELE9BQUssSUFBSTtBQUNULFVBQVEsSUFBSSxzQkFBc0I7QUFDbkM7QUFFQSxDQS9YQyxnQkErWGdCLENBQUM7QUFDakIsV0FBUztBQUNULE9BQUssSUFBSTtBQUNULFdBQVMsSUFBSTtBQUNiLGNBQVksSUFBSTtBQUNoQixpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0F2WUMsZ0JBdVlnQixDQXREdUI7QUF1RHZDLGFBQVc7QUFDWCxlQUFhO0FBQ2IsZUFBYTtBQUNkO0FBRUEsQ0E3WUMsZ0JBNllnQixDQUFDO0FBQ2pCLGNBQVk7QUFDWixXQUFTLElBQUk7QUFDYixjQUFZLElBQUk7QUFDaEIsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBcFpDLGdCQW9aZ0IsQ0FBQztBQUNqQixTQUFPLElBQUk7QUFDWCxhQUFXO0FBQ1gsZUFBYTtBQUNiLFVBQVE7QUFDVDtBQU1BLENBL1pDLGdCQStaZ0IsQ0FBQztBQUNqQixXQUFTO0FBQ1QseUJBQXVCLE9BQU8sUUFBUSxFQUFFLE9BQU8sS0FBSyxFQUFFO0FBQ3RELE9BQUssSUFBSTtBQUNULFVBQVEsSUFBSSxzQkFBc0I7QUFDbkM7QUFFQSxDQXRhQyxnQkFzYWdCLENBQUM7QUFDakIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLFdBQVMsSUFBSTtBQUNiLFVBQVE7QUFDUixjQUFZLElBQUk7QUFDaEIsY0FBWSxJQUFJO0FBQ2hCLFlBQVU7QUFDVixZQUFVO0FBQ1YsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FsYkMsZ0JBa2JnQixDQVpDLGVBWWUsQ0FBQztBQUNqQyxnQkFBYyxJQUFJO0FBQ2xCLGFBQVcsV0FBVztBQUN0QixjQUFZLElBQUk7QUFDakI7QUFFQSxDQXhiQyxnQkF3YmdCLENBbEJDLGVBa0JlLENBQUM7QUFDakMsZ0JBQWMsSUFBSTtBQUNsQixjQUFZLElBQUk7QUFDaEIsY0FBWSxFQUFFLEVBQUUsRUFBRSxJQUFJLEtBQUssSUFBSSx5QkFBeUIsRUFBRTtBQUMzRDtBQUVBLENBeEJrQixnQkF3QkQsQ0FBQztBQUNqQixXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUssSUFBSTtBQUNULGlCQUFlLElBQUk7QUFDcEI7QUFFQSxDQS9Ca0IsZ0JBK0JELENBQUM7QUFDakIsYUFBVztBQUNYLGVBQWE7QUFDYixlQUFhO0FBQ2Q7QUFFQSxDQXJDa0IsZ0JBcUNELENBQUM7QUFDakIsVUFBUTtBQUNSLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQTVDa0IsZ0JBNENELENBQUM7QUFDakIsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNYLGVBQWE7QUFDYixVQUFRLEVBQUUsRUFBRSxJQUFJLFlBQVk7QUFDN0I7QUFFQSxDQW5Ea0IsZ0JBbURELENBQUM7QUFDakIsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0F2RGtCLGdCQXVERCxDQUpDLGNBSWM7QUFDL0IsVUFBUTtBQUNSLGdCQUFjLElBQUk7QUFDbEIsY0FBWTtBQUNiO0FBRUEsQ0E3RGtCLGdCQTZERCxDQVZDLGNBVWM7QUFDL0IsWUFBVTtBQUNWLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWCxlQUFhO0FBQ2IsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBckVrQixnQkFxRUQsQ0FsQkMsY0FrQmMsRUFBRTtBQUNqQyxXQUFTO0FBQ1QsU0FBTyxJQUFJO0FBQ1gsWUFBVTtBQUNWLFFBQU0sS0FBSyxHQUFHLEVBQUUsSUFBSTtBQUNwQixlQUFhO0FBQ2Q7QUFFQSxDQTdFa0IsZ0JBNkVELENBQUM7QUFDakIsWUFBVTtBQUNWLE9BQUssSUFBSTtBQUNULFNBQU8sSUFBSTtBQUNYLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWCxXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGlCQUFlLElBQUk7QUFDbkIsYUFBVztBQUNYLGVBQWE7QUFDYixrQkFBZ0I7QUFDaEIsa0JBQWdCO0FBQ2pCO0FBTUEsQ0FyZ0JDLGdCQXFnQmdCLENBQUM7QUFDakIsU0FBTztBQUNQLGFBQVc7QUFDWCxpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0EzZ0JDLGdCQTJnQmdCLENBQUM7QUFDakIsZUFBYSxJQUFJO0FBQ2pCLGVBQWE7QUFDZDtBQUVBLENBaGhCQyxnQkFnaEJnQixDQUFDO0FBQ2pCLFNBQU87QUFDUCxhQUFXO0FBQ1gsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBdGhCQyxnQkFzaEJnQixDQUFDO0FBQ2pCLFNBQU87QUFDUCxhQUFXO0FBQ1gsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBNWhCQyxnQkE0aEJnQixDQUFDO0FBQ2pCLFNBQU87QUFDUCxhQUFXO0FBQ1gsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBbGlCQyxnQkFraUJnQixDQUFDO0FBQ2pCLGNBQVk7QUFDWixXQUFTO0FBQ1QsVUFBUTtBQUNSLGNBQVksSUFBSTtBQUNoQixpQkFBZSxJQUFJO0FBQ25CLFdBQVMsSUFBSTtBQUNkO0FBRUEsQ0EzaUJDLGdCQTJpQmdCLENBVEMsc0JBU3NCO0FBQ3ZDLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSyxJQUFJO0FBQ1QsV0FBUyxJQUFJLFlBQVk7QUFDekIsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNaO0FBRUEsQ0FwakJDLGdCQW9qQmdCLENBQUM7QUFDakIsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBRUEsQ0F6akJDLGdCQXlqQmdCLENBQUM7QUFDakIsV0FBUztBQUNULHlCQUF1QixPQUFPLFFBQVEsRUFBRSxPQUFPLEtBQUssRUFBRTtBQUN0RCxPQUFLLElBQUk7QUFDVjtBQUVBLENBL2pCQyxnQkErakJnQixDQUFDO0FBQ2pCLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsZUFBYTtBQUNiLFdBQVMsSUFBSTtBQUNiLGNBQVksSUFBSTtBQUNoQixpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0F4a0JDLGdCQXdrQmdCLENBQUM7QUFDakIsYUFBVztBQUNYLGlCQUFlLElBQUk7QUFDcEI7QUFFQSxDQTdrQkMsZ0JBNmtCZ0IsQ0FBQztBQUNqQixhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNiO0FBRUEsQ0FubEJDLGdCQW1sQmdCLENBQUM7QUFDakIsY0FBWTtBQUNaLFdBQVM7QUFDVCxVQUFRO0FBQ1IsY0FBWSxJQUFJO0FBQ2hCLGlCQUFlLElBQUk7QUFDbkIsV0FBUyxJQUFJO0FBQ2Q7QUFFQSxDQTVsQkMsZ0JBNGxCZ0IsQ0FUQyxzQkFTc0I7QUFDdkMsV0FBUztBQUNULG1CQUFpQjtBQUNqQixXQUFTLElBQUksWUFBWTtBQUN6QixhQUFXO0FBQ1gsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDOUI7QUFFQSxDQXBtQkMsZ0JBb21CZ0IsQ0FqQkMsc0JBaUJzQixFQUFFO0FBQ3pDLGlCQUFlO0FBQ2hCO0FBRUEsQ0F4bUJDLGdCQXdtQmdCLENBQUM7QUFDakIsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBRUEsQ0E3bUJDLGdCQTZtQmdCLENBQUM7QUFDakIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQWpuQkMsZ0JBaW5CZ0IsQ0FBQztBQUNqQixTQUFPO0FBQ1AsYUFBVztBQUNYLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBdm5CQyxnQkF1bkJnQixDQUFDO0FBQ2pCLFNBQU87QUFDUCxhQUFXO0FBQ1gsY0FBWTtBQUNaLFdBQVMsSUFBSTtBQUNiLGNBQVksSUFBSTtBQUNoQixpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0Fob0JDLGdCQWdvQmdCLENBQUM7QUFDakIsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNYLFVBQVE7QUFDUixjQUFZO0FBQ2I7QUFHQSxDQXhvQkMsZ0JBd29CZ0IsQ0FBQztBQUNqQixTQUFPO0FBQ1AsYUFBVztBQUNYLFVBQVEsSUFBSSxzQkFBc0I7QUFDbEMsV0FBUyxJQUFJO0FBQ2IsY0FBWSxJQUFJO0FBQ2hCLGlCQUFlLElBQUk7QUFDcEI7QUFFQSxDQWpwQkMsZ0JBaXBCZ0IsQ0FBQztBQUNqQixVQUFRLElBQUksWUFBWTtBQUN4QixXQUFTLElBQUk7QUFDYixjQUFZLElBQUk7QUFDaEIsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBeHBCQyxnQkF3cEJnQixDQUFDO0FBQ2pCLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSyxJQUFJO0FBQ1QsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBL3BCQyxnQkErcEJnQixDQUFDO0FBQ2pCLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWjtBQUVBLENBcHFCQyxnQkFvcUJnQixDQUFDO0FBQ2pCLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQTFxQkMsZ0JBMHFCZ0IsQ0FBQztBQUNsQixDQUFDLGlCQUFpQixDQURBO0FBRWpCLFdBQVM7QUFDVjtBQUVBLENBL3FCQyxnQkErcUJnQixDQUFDO0FBQ2pCLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWCxnQkFBYyxJQUFJO0FBQ2xCLFdBQVM7QUFDVjtBQUVBLENBdHJCQyxnQkFzckJnQixDQUFDO0FBQ2pCLGNBQVk7QUFDWixXQUFTO0FBQ1QsVUFBUSxJQUFJLFlBQVksRUFBRSxFQUFFLElBQUk7QUFDakM7QUFFQSxDQTVyQkMsZ0JBNHJCZ0IsQ0FOQyxzQkFNc0I7QUFDdkMsV0FBUztBQUNULGVBQWE7QUFDYixXQUFTLElBQUksWUFBWTtBQUN6QixTQUFPLElBQUk7QUFDWCxhQUFXO0FBQ1o7QUFFQSxDQXBzQkMsZ0JBb3NCZ0IsQ0FBQztBQUNqQixjQUFZLElBQUk7QUFDaEIsV0FBUyxJQUFJO0FBQ2IsY0FBWSxLQUFLLElBQUksaUJBQWlCLEVBQUU7QUFDeEMsaUJBQWUsSUFBSTtBQUNuQixXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUssSUFBSTtBQUNWO0FBRUEsQ0E5c0JDLGdCQThzQmdCLENBQUM7QUFDakIsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNYLFdBQVM7QUFDVCxtQkFBaUI7QUFDakIsZUFBYTtBQUNkO0FBRUEsQ0F0dEJDLGdCQXN0QmdCLENBQUM7QUFDakIsU0FBTyxJQUFJO0FBQ1gsYUFBVyxJQUFJO0FBQ2YsZUFBYTtBQUNkO0FBTUEsQ0FodUJDLGdCQWd1QmdCLENBQUM7QUFDakIsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBcHVCQyxnQkFvdUJnQixDQUFDO0FBQ2pCLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWCxlQUFhO0FBQ2IsVUFBUTtBQUNUO0FBRUEsQ0EzdUJDLGdCQTJ1QmdCLENBQUM7QUFDakIsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBL3VCQyxnQkErdUJnQixDQUFDO0FBQ2pCLGNBQVksSUFBSTtBQUNoQixpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0FwdkJDLGdCQW92QmdCLENBTEMsZUFLZTtBQUNoQyxjQUFZLElBQUk7QUFDaEIsV0FBUyxJQUFJLFlBQVksSUFBSTtBQUM3QixpQkFBZSxJQUFJO0FBQ25CLGVBQWEsSUFBSTtBQUNqQixhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1gsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixXQUFTO0FBQ1QsVUFBUSxJQUFJLFlBQVk7QUFDekI7QUFFQSxDQWh3QkMsZ0JBZ3dCZ0IsQ0FBQyxjQUFjO0FBQy9CLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWCxjQUFZLElBQUk7QUFDaEIsV0FBUztBQUNWO0FBRUEsQ0F2d0JDLGdCQXV3QmdCLENBQUM7QUFDakIsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0Ezd0JDLGdCQTJ3QmdCLENBQUMsWUFBWTtBQUM5QixDQTV3QkMsZ0JBNHdCZ0IsQ0FBQztBQUNqQixjQUFZO0FBQ1osVUFBUTtBQUNSLGNBQVksSUFBSTtBQUNoQixpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0FueEJDLGdCQW14QmdCLENBUkMsWUFRWTtBQUM5QixDQXB4QkMsZ0JBb3hCZ0IsQ0FSQyxhQVFhO0FBQzlCLFdBQVM7QUFDVCxlQUFhO0FBQ2IsV0FBUyxJQUFJLFlBQVk7QUFDekIsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0E1eEJDLGdCQTR4QmdCLENBakJDLFlBaUJZO0FBQzdCLGNBQVksSUFBSTtBQUNoQixXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGlCQUFlLElBQUk7QUFDbkIsZUFBYSxJQUFJO0FBQ2pCLGdCQUFjLElBQUk7QUFDbEIsYUFBVztBQUNYLGNBQVk7QUFDYjtBQUVBLENBdHlCQyxnQkFzeUJnQixDQUFDO0FBQ2pCLFdBQVMsSUFBSTtBQUNiLGNBQVksSUFBSTtBQUNoQixpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0E1eUJDLGdCQTR5QmdCLENBQUM7QUFDakIsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLFVBQVE7QUFDUixXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGlCQUFlLElBQUk7QUFDbkIsVUFBUTtBQUNSLGVBQWE7QUFDYixjQUFZLElBQUk7QUFDaEIsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0F4ekJDLGdCQXd6QmdCLENBWkMsV0FZVztBQUM1QixjQUFZLElBQUk7QUFDakI7QUFFQSxDQTV6QkMsZ0JBNHpCZ0IsQ0FBQztBQUNqQixjQUFZLElBQUk7QUFDakI7QUFFQSxDQWgwQkMsZ0JBZzBCZ0IsQ0FBQztBQUNqQixXQUFTLElBQUk7QUFDYixpQkFBZSxJQUFJO0FBQ25CLGFBQVc7QUFDWCxpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0F2MEJDLGdCQXUwQmdCLENBQUM7QUFDakIsY0FBWSxLQUFLLElBQUksa0JBQWtCLEVBQUU7QUFDekMsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBNzBCQyxnQkE2MEJnQixDQUFDO0FBQ2pCLGNBQVksS0FBSyxJQUFJLGdCQUFnQixFQUFFO0FBQ3ZDLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQW4xQkMsZ0JBbTFCZ0IsQ0FBQztBQUNqQixjQUFZLEtBQUssSUFBSSxtQkFBbUIsRUFBRTtBQUMxQyxVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0F6MUJDLGdCQXkxQmdCLENBQUM7QUFDakIsY0FBWSxLQUFLLElBQUksaUJBQWlCLEVBQUU7QUFDeEMsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBLzFCQyxnQkErMUJnQixDQUFDO0FBQ2pCLGNBQVk7QUFDWixXQUFTO0FBQ1QsVUFBUTtBQUNSLGNBQVksSUFBSTtBQUNoQixpQkFBZSxJQUFJO0FBQ25CLFdBQVMsSUFBSTtBQUNkO0FBRUEsQ0F4MkJDLGdCQXcyQmdCLENBVEMsZUFTZTtBQUNoQyxXQUFTO0FBQ1QsZUFBYTtBQUNiLFdBQVMsSUFBSSxZQUFZO0FBQ3pCLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWjtBQUVBLENBaDNCQyxnQkFnM0JnQixDQWpCQyxlQWlCZTtBQUNoQyxjQUFZLElBQUk7QUFDaEIsV0FBUyxJQUFJLFlBQVksSUFBSTtBQUM3QixpQkFBZSxJQUFJO0FBQ25CLGVBQWEsSUFBSTtBQUNqQixnQkFBYyxJQUFJO0FBQ2xCLGFBQVc7QUFDWCxhQUFXO0FBQ1o7QUFNQSxDQTkzQkMsZ0JBODNCZ0IsQ0FBQztBQUNqQixjQUFZO0FBQ1osaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBbjRCQyxnQkFtNEJnQixDQUFDO0FBQ2pCLGFBQVc7QUFDWCxpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0F4NEJDLGdCQXc0QmdCLENBQUM7QUFDakIsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNYLFVBQVE7QUFDVDtBQUVBLENBOTRCQyxnQkE4NEJnQixDQUFDO0FBQ2pCLGlCQUFlLElBQUk7QUFDcEI7QUFFQSxDQWw1QkMsZ0JBazVCZ0IsQ0FBQztBQUNqQixXQUFTLElBQUk7QUFDYixjQUFZLElBQUk7QUFDaEIsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBeDVCQyxnQkF3NUJnQixDQUFDO0FBQ2pCLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSyxJQUFJO0FBQ1QsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBLzVCQyxnQkErNUJnQixDQUFDO0FBQ2pCLGFBQVc7QUFDWjtBQUVBLENBbjZCQyxnQkFtNkJnQixDQUFDO0FBQ2pCLGFBQVc7QUFDWCxlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQXo2QkMsZ0JBeTZCZ0IsQ0FBQztBQUNqQixTQUFPLElBQUk7QUFDWCxhQUFXO0FBQ1gsVUFBUTtBQUNUO0FBRUEsQ0EvNkJDLGdCQSs2QmdCLENBQUM7QUFDakIsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLLElBQUk7QUFDVjtBQUVBLENBcjdCQyxnQkFxN0JnQixDQUFDO0FBQ2pCLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSyxJQUFJO0FBQ1QsV0FBUyxJQUFJO0FBQ2IsY0FBWSxJQUFJO0FBQ2hCLGlCQUFlLElBQUk7QUFDcEI7QUFFQSxDQTk3QkMsZ0JBODdCZ0IsQ0FBQztBQUNqQixjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1gsU0FBTztBQUNQLFVBQVE7QUFDUixpQkFBZTtBQUNmLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLGFBQVc7QUFDWCxlQUFhO0FBQ2IsZUFBYTtBQUNkO0FBRUEsQ0E1OEJDLGdCQTQ4QmdCLENBQUM7QUFDakIsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNYLGVBQWE7QUFDZDtBQUVBLENBbDlCQyxnQkFrOUJnQixDQUFDO0FBQ2pCLGNBQVk7QUFDWixXQUFTO0FBQ1QsVUFBUTtBQUNUO0FBRUEsQ0F4OUJDLGdCQXc5QmdCLENBTkMsZ0JBTWdCO0FBQ2pDLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSyxJQUFJO0FBQ1QsV0FBUyxJQUFJO0FBQ2IsY0FBWSxJQUFJO0FBQ2hCLGlCQUFlLElBQUk7QUFDbkIsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBbCtCQyxnQkFrK0JnQixDQUFDO0FBQ2pCLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDYixlQUFhO0FBQ2Q7QUFFQSxDQXgrQkMsZ0JBdytCZ0IsQ0FBQztBQUNqQixTQUFPLElBQUk7QUFDWCxhQUFXO0FBQ1gsZUFBYTtBQUNkO0FBRUEsQ0E5K0JDLGdCQTgrQmdCLENBQUM7QUFDakIsV0FBUztBQUNULHlCQUF1QixPQUFPLFFBQVEsRUFBRSxPQUFPLEtBQUssRUFBRTtBQUN0RCxPQUFLLElBQUk7QUFDVjtBQUVBLENBcC9CQyxnQkFvL0JnQixDQUFDO0FBQ2pCLFdBQVM7QUFDVCxPQUFLLElBQUk7QUFDVCxXQUFTLElBQUk7QUFDYixjQUFZLElBQUk7QUFDaEIsaUJBQWUsSUFBSTtBQUNuQixjQUFZLElBQUk7QUFDakI7QUFFQSxDQTcvQkMsZ0JBNi9CZ0IsQ0FBQztBQUNqQixVQUFRO0FBQ1Q7QUFFQSxDQWpnQ0MsZ0JBaWdDZ0IsQ0FKQyxrQkFJa0I7QUFDbkMsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FyZ0NDLGdCQXFnQ2dCLENBQUM7QUFDakIsYUFBVztBQUNYLGVBQWE7QUFDZDtBQUVBLENBMWdDQyxnQkEwZ0NnQixDQUFDO0FBQ2pCLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWCxlQUFhO0FBQ2IsVUFBUSxFQUFFLEVBQUUsSUFBSSxZQUFZO0FBQzdCO0FBRUEsQ0FqaENDLGdCQWloQ2dCLENBQUM7QUFDakIsV0FBUztBQUNULE9BQUssSUFBSTtBQUNULG1CQUFpQjtBQUNsQjtBQUVBLENBdmhDQyxnQkF1aENnQixDQUFDO0FBQ2pCLGNBQVksSUFBSTtBQUNoQixVQUFRO0FBQ1IsU0FBTyxJQUFJO0FBQ1gsV0FBUyxJQUFJLFlBQVksSUFBSTtBQUM3QixpQkFBZSxJQUFJO0FBQ25CLFVBQVE7QUFDUixhQUFXO0FBQ1gsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FsaUNDLGdCQWtpQ2dCLENBQUMsaUJBQWlCO0FBQ2xDLGNBQVksSUFBSTtBQUNoQixTQUFPO0FBQ1I7QUFFQSxDQXZpQ0MsZ0JBdWlDZ0IsQ0FBQyxpQkFBaUI7QUFDbEMsY0FBWSxJQUFJO0FBQ2hCLFNBQU87QUFDUjtBQUVBLENBNWlDQyxnQkE0aUNnQixDQUFDO0FBQ2pCLGNBQVk7QUFDWixXQUFTLElBQUk7QUFDYixjQUFZLElBQUk7QUFDaEIsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBbmpDQyxnQkFtakNnQixDQUFDO0FBQ2pCLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWCxVQUFRLEVBQUUsRUFBRSxJQUFJLFlBQVk7QUFDN0I7QUFFQSxDQXpqQ0MsZ0JBeWpDZ0IsQ0FiQyxnQkFhZ0I7QUFDakMsU0FBTyxJQUFJO0FBQ1gsbUJBQWlCO0FBQ2xCO0FBRUEsQ0E5akNDLGdCQThqQ2dCLENBbEJDLGdCQWtCZ0IsQ0FBQztBQUNsQyxtQkFBaUI7QUFDbEI7QUFFQSxDQWxrQ0MsZ0JBa2tDZ0IsQ0FBQztBQUNqQixjQUFZO0FBQ1osV0FBUyxJQUFJO0FBQ2Q7QUFFQSxDQXZrQ0MsZ0JBdWtDZ0IsQ0FBQztBQUNqQixTQUFPLElBQUk7QUFDWCxhQUFXO0FBQ1gsY0FBWTtBQUNaLFVBQVE7QUFDVDtBQU1BLE9BQU8sQ0FBQyxTQUFTLEVBQUU7QUFDbEIsR0FubENBO0FBb2xDQyxvQkFBZ0I7QUFDaEIsd0JBQW9CO0FBQ3BCLHlCQUFxQjtBQUN0QjtBQUVBLEdBemxDQSxnQkF5bENpQixDQTFyQkE7QUEyckJoQiwyQkFBdUI7QUFDeEI7QUFFQSxHQTdsQ0EsZ0JBNmxDaUIsQ0FydUJBO0FBc3VCaEIsMkJBQXVCO0FBQ3hCO0FBRUEsR0FqbUNBLGdCQWltQ2lCLENBeGlCQTtBQXlpQmhCLDJCQUF1QixPQUFPLFFBQVEsRUFBRSxPQUFPLEtBQUssRUFBRTtBQUN2RDtBQUVBLEdBcm1DQSxnQkFxbUNpQixDQXZIQTtBQXdIaEIsMkJBQXVCO0FBQ3hCO0FBRUEsR0F6bUNBLGdCQXltQ2lCLENBeEZBO0FBeUZoQixvQkFBZ0I7QUFDakI7QUFFQSxHQTdtQ0EsZ0JBNm1DaUIsQ0E5Z0NBO0FBK2dDaEIsZUFBVztBQUNYLHFCQUFpQjtBQUNsQjtBQUdBLEdBQUM7QUFBQSxFQUNELENBQUM7QUFDQSwyQkFBdUI7QUFDeEI7QUFFQSxHQUFDO0FBQ0EsWUFBUTtBQUNUO0FBRUEsR0FBQztBQUNBLFlBQVE7QUFDVDtBQUVBLEdBQUM7QUFBQSxFQUNELENBQUM7QUFDQSxhQUFTLElBQUk7QUFDZDtBQUdBLEdBQUM7QUFDQSxlQUFXO0FBQ1gsYUFBUyxFQUFFLElBQUk7QUFDaEI7QUFFQSxHQUFDO0FBQ0EsYUFBUyxJQUFJLFlBQVksSUFBSTtBQUM5QjtBQUdBLEdBaHBDQSxnQkFncENpQixDQXhrQ0E7QUF5a0NoQixhQUFTLElBQUksWUFBWSxJQUFJO0FBQzlCO0FBRUEsR0FwcENBLGdCQW9wQ2lCLENBcmpDQTtBQXNqQ2hCLFNBQUssSUFBSTtBQUNWO0FBRUEsR0F4cENBLGdCQXdwQ2lCLENBempDQSxtQkF5akNvQjtBQUNwQyxhQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGVBQVc7QUFDWjtBQUNEO0FBT0EsQ0FBQyxXQUFXLENBQVgsV0FBdUIsQ0FucUN2QixnQkFtcUN3QyxDQTNsQ3ZCO0FBNGxDakIsY0FBWSxFQUFFLEtBQUssS0FBSyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFO0FBQ3ZDO0FBRUEsQ0FKQyxXQUlXLENBSlgsV0FJdUIsQ0F2cUN2QixnQkF1cUN3QyxDQS9sQ3ZCLGlCQStsQ3lDO0FBQzFEO0FBQUEsSUFBWTtBQUFBLE1BQWdCLEdBQUcsR0FBRztBQUFBLE1BQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxJQUFJO0FBQUEsTUFBRTtBQUN6RDtBQU1BLENBL3FDQyxnQkErcUNnQixDQWxuQ0M7QUFtbkNqQixhQUFXLFNBQVMsS0FBSztBQUMxQjtBQUVBLFdBSFk7QUFJWDtBQUNDLGFBQVM7QUFDVCxlQUFXLFdBQVc7QUFDdkI7QUFDQTtBQUNDLGFBQVM7QUFDVCxlQUFXLFdBQVc7QUFDdkI7QUFDRDtBQUVBLENBOXJDQyxnQkE4ckNnQixDQXh4QkMsZUF3eEJlLENBdHdCQztBQXV3QmpDLGFBQVcsV0FBVyxLQUFLO0FBQzVCO0FBRUEsV0FIWTtBQUlYO0FBQ0MsZUFBVyxNQUFNO0FBQ2xCO0FBQ0E7QUFDQyxlQUFXLE1BQU07QUFDbEI7QUFDQTtBQUNDLGVBQVcsTUFBTTtBQUNsQjtBQUNEO0FBTUEsQ0FBQztBQUNBLGlCQUFlLElBQUk7QUFDcEI7QUFFQSxDQW5HRTtBQW9HRCxXQUFTO0FBQ1QseUJBQXVCLE9BQU8sUUFBUSxFQUFFLE9BQU8sS0FBSyxFQUFFO0FBQ3RELE9BQUssSUFBSTtBQUNULFVBQVEsSUFBSSxzQkFBc0I7QUFDbkM7QUFFQSxDQTd0Q0MsZ0JBNnRDZ0IsQ0E3RmY7QUE4RkQsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLFdBQVMsSUFBSTtBQUNiLFVBQVE7QUFDUixjQUFZLElBQUk7QUFDaEIsY0FBWSxJQUFJO0FBQ2hCLFlBQVU7QUFDVixZQUFVO0FBQ1YsV0FBUztBQUNULGtCQUFnQjtBQUNqQjtBQUVBLENBMUdFLFNBMEdRO0FBQ1QsZ0JBQWMsSUFBSTtBQUNsQixjQUFZLElBQUk7QUFDaEIsYUFBVyxXQUFXO0FBQ3ZCO0FBRUEsQ0FoSEUsU0FnSFEsQ0FyL0JtQztBQXMvQjVDLGdCQUFjLElBQUk7QUFDbEIsY0FBWSxJQUFJO0FBQ2hCLGNBQVksRUFBRSxFQUFFLEVBQUUsSUFBSSxLQUFLLElBQUkseUJBQXlCLEVBQUU7QUFDM0Q7QUFFQSxDQUFDO0FBQ0EsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBQUM7QUFDQSxhQUFXO0FBQ1gsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNYLGlCQUFlLElBQUk7QUFDcEI7QUFFQSxDQUFDO0FBQ0EsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0E3SUU7QUE4SUQsY0FBWSxJQUFJO0FBQ2hCLGlCQUFlLElBQUk7QUFDbkIsaUJBQWUsSUFBSTtBQUNuQixXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixTQUFPLElBQUk7QUFDWCxhQUFXO0FBQ1gsWUFBVTtBQUNWLFlBQVU7QUFDWDtBQUVBLENBQUMsWUFBWSxDQTFKWDtBQTJKRDtBQUFBLElBQVk7QUFBQSxNQUFnQixNQUFNO0FBQUEsTUFBRSxJQUFJLHdCQUF3QixFQUFFO0FBQUEsTUFBRSxJQUFJLDZCQUE2QjtBQUN0RztBQUVBLENBQUMsWUFBWSxDQTlKWDtBQStKRCxjQUFZLElBQUk7QUFDaEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxTQUFPLElBQUk7QUFDWCxhQUFXO0FBQ1gsZUFBYTtBQUNiLGNBQVk7QUFDYjtBQUdBLENBQUM7QUFDQSxhQUFXO0FBQ1gsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNYLGlCQUFlLElBQUk7QUFDbkIsY0FBWTtBQUNiO0FBRUEsQ0FBQztBQUNBLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWCxpQkFBZSxJQUFJO0FBQ25CLGNBQVk7QUFDWixlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0QsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNoQixjQUFZO0FBQ2I7QUFFQSxDQU5DLFVBTVU7QUFDWCxDQU5DLGVBTWU7QUFDZixVQUFRO0FBQ1IsYUFBVztBQUNaO0FBTUEsQ0FBQztBQUNBLGlCQUFlLElBQUk7QUFDcEI7QUFFQSxDQW5ORTtBQW9ORCxXQUFTO0FBQ1QseUJBQXVCLE9BQU8sUUFBUSxFQUFFLE9BQU8sS0FBSyxFQUFFO0FBQ3RELE9BQUssSUFBSTtBQUNULFVBQVEsSUFBSSxzQkFBc0I7QUFDbkM7QUFFQSxDQTdNRTtBQThNRCxVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDbkIsV0FBUyxJQUFJO0FBQ2IsVUFBUTtBQUNSLGNBQVksSUFBSTtBQUNoQixjQUFZLElBQUk7QUFDaEIsWUFBVTtBQUNWLFlBQVU7QUFDVixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2pCO0FBRUEsQ0ExTkUsY0EwTmE7QUFDZCxnQkFBYyxJQUFJO0FBQ2xCLGNBQVksSUFBSTtBQUNoQixhQUFXLFdBQVc7QUFDdkI7QUFFQSxDQWhPRSxjQWdPYSxDQXRtQzhCO0FBdW1DNUMsZ0JBQWMsSUFBSTtBQUNsQixjQUFZLElBQUk7QUFDaEIsY0FBWSxFQUFFLEVBQUUsRUFBRSxJQUFJLEtBQUssSUFBSSx5QkFBeUIsRUFBRTtBQUMzRDtBQUVBLENBQUM7QUFDQSxpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1gsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDakI7QUFFQSxDQTFQRTtBQTJQRCxVQUFRO0FBQ1IsY0FBWSxJQUFJO0FBQ2hCLGlCQUFlLElBQUk7QUFDbkIsaUJBQWUsSUFBSTtBQUNuQixXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixTQUFPLElBQUk7QUFDWCxZQUFVO0FBQ1g7QUFHQSxDQUFDLHFCQUFxQixDQXZRcEI7QUF3UUQsV0FBUztBQUNULHlCQUF1QixJQUFJLElBQUk7QUFDL0IsT0FBSztBQUNMLFdBQVMsSUFBSTtBQUNkO0FBRUEsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNoQixpQkFBZTtBQUNmLFVBQVE7QUFDVDtBQUVBLENBTkMscUJBTXFCLENBQUM7QUFDdEIsY0FBWSxJQUFJO0FBQ2hCLFdBQVM7QUFDVjtBQUVBLENBQUMsaUJBQWlCLENBelJoQjtBQTBSRCxXQUFTLElBQUk7QUFDZDtBQUVBLENBQUM7QUFDQSxTQUFPO0FBQ1AsVUFBUTtBQUNSLGNBQVksSUFBSTtBQUNoQixXQUFTO0FBQ1QsaUJBQWU7QUFDaEI7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNYLGVBQWE7QUFDYixjQUFZO0FBQ2I7QUFPQSxDQUFDO0FBQ0EsU0FBTztBQUNQLGFBQVcsSUFBSSxLQUFLLEVBQUU7QUFDdEIsVUFBUSxFQUFFO0FBQ1g7QUFFQSxDQXhTRTtBQXlTRCxXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGNBQVk7QUFDWixTQUFPO0FBQ1I7QUFFQSxDQUFDO0FBQ0EsaUJBQWUsSUFBSTtBQUNuQixlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBRUEsYUFBVyxNQUFNLElBQUksRUFBRSxHQUFHLEVBQUU7QUFDNUIsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNYLGlCQUFlLElBQUk7QUFDbkIsZUFBYTtBQUNkO0FBRUEsQ0FBQztBQUVBLGFBQVcsTUFBTSxNQUFNLEVBQUUsR0FBRyxFQUFFO0FBQzlCLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWCxpQkFBZSxJQUFJO0FBQ25CLGVBQWE7QUFDZDtBQUVBLENBQUM7QUFDRCxDQUFDO0FBRUEsYUFBVyxNQUFNLElBQUksRUFBRSxHQUFHLEVBQUU7QUFDNUIsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNiLGlCQUFlLElBQUk7QUFDcEI7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULFdBQVM7QUFDVCxVQUFRLEtBQUs7QUFDYixhQUFXLFdBQVc7QUFDdEI7QUFBQSxJQUFZLFFBQVEsS0FBSyxhQUFhLEdBQUcsRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLEVBQUU7QUFBQSxJQUNyRCxPQUFPLEtBQUssYUFBYSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFO0FBQUEsSUFDeEMsVUFBVSxLQUFLLGFBQWEsR0FBRyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUU7QUFDekMsWUFBVTtBQUNYO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxVQUFRLEtBQUs7QUFDYixhQUFXLFdBQVc7QUFDdkI7QUFHQSxDQUFDO0FBQ0EsU0FBTztBQUNSO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsV0FBUztBQUNULGFBQVcsWUFBWSxHQUFHO0FBQzFCLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDYixrQkFBZ0I7QUFDakI7QUFFQSxXQU5ZO0FBT1g7QUFDQyxhQUFTO0FBQ1Y7QUFDQTtBQUNDLGFBQVM7QUFDVjtBQUNEO0FBR0EsQ0FBQztBQUNBLGFBQVcsZUFBZSxLQUFLO0FBQ2hDO0FBRUEsV0FIWTtBQUlYO0FBQ0MsYUFBUztBQUNWO0FBQ0E7QUFDQyxhQUFTO0FBQ1Y7QUFDQTtBQUNDLGFBQVM7QUFDVjtBQUNEO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxhQUFXLFdBQVc7QUFDdEIsY0FBWSxRQUFRLEtBQUssUUFBUSxFQUFFLFVBQVUsS0FBSztBQUNsRCxrQkFBZ0I7QUFDakI7QUFHQSxDQXhaRTtBQXlaRCxhQUFXLGlCQUFpQixLQUFLO0FBQ2pDLHVCQUFxQjtBQUNyQixTQUFPO0FBQ1I7QUFFQSxXQUxZO0FBTVg7QUFDQyxhQUFTO0FBQ1QsZUFBVyxXQUFXO0FBQ3ZCO0FBQ0E7QUFDQyxhQUFTO0FBQ1QsZUFBVyxXQUFXO0FBQ3ZCO0FBQ0Q7QUFHQSxDQTdZQyxXQTZZVyxDQWxIWDtBQW1IQSxTQUFPLElBQUk7QUFDWCxlQUFhLEVBQUUsRUFBRSxLQUFLLEtBQUssSUFBSSx5QkFBeUIsRUFBRTtBQUMzRDtBQUVBLENBbFpDLFdBa1pXLENBaEZYO0FBa0ZBLGVBQWEsRUFBRSxFQUFFLElBQUksS0FBSyxJQUFJLHlCQUF5QixFQUFFO0FBQzFEO0FBR0EsQ0FoYkU7QUFpYkQsYUFBVyxhQUFhLEtBQUs7QUFDOUI7QUFFQSxXQUhZO0FBSVg7QUFDQyxhQUFTO0FBQ1QsZUFBVyxXQUFXO0FBQ3ZCO0FBQ0E7QUFDQyxhQUFTO0FBQ1QsZUFBVyxXQUFXO0FBQ3ZCO0FBQ0Q7QUFHQSxDQUFDO0FBQ0EsY0FBWSxJQUFJO0FBQ2hCLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUssSUFBSTtBQUNULFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0I7QUFBQSxJQUFZO0FBQUEsTUFDWCxNQURXO0FBQUEsTUFFWCxLQUFLLElBQUkseUJBQXlCLEVBQUUsTUFBTSxFQUYvQjtBQUFBLE1BR1gsS0FBSyxJQUFJLHlCQUF5QixFQUFFLE1BQU07QUFFM0MsVUFBUSxJQUFJLE1BQU0sS0FBSyxJQUFJLHlCQUF5QixFQUFFO0FBQ3RELGlCQUFlLElBQUk7QUFDbkIsY0FBWSxJQUFJO0FBQ2hCLGNBQVksSUFBSSxNQUFNLGFBQWEsR0FBRyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUU7QUFDakQ7QUFFQSxDQWhCQyx5QkFnQnlCLENBQUM7QUFDMUIsYUFBVztBQUNYLGVBQWE7QUFDYixhQUFXLFFBQVEsS0FBSyxZQUFZO0FBQ3JDO0FBRUEsQ0F0QkMseUJBc0J5QixDQUFDO0FBQzFCLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxXQVRZO0FBVVg7QUFFQyxlQUFXLE1BQU07QUFDakIsYUFBUztBQUNWO0FBQ0E7QUFDQyxlQUFXLE1BQU07QUFDakIsYUFBUztBQUNWO0FBQ0Q7QUFHQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsbUJBQWlCO0FBQ2xCO0FBRUEsQ0FQQyxvQkFPb0IsQ0FBQztBQUNyQixpQkFBZSxJQUFJO0FBQ25CLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWjtBQUVBLENBYkMsb0JBYW9CLENBQUM7QUFFckIsYUFBVyxNQUFNLE1BQU0sRUFBRSxLQUFLLEVBQUU7QUFDaEMsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDZDtBQUVBLENBckJDLG9CQXFCb0IsQ0FBQztBQUN0QixDQXRCQyxvQkFzQm9CLENBQUM7QUFFckIsYUFBVyxNQUFNLElBQUksRUFBRSxHQUFHLEVBQUU7QUFDNUIsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNkO0FBRUEsQ0E3QkMsb0JBNkJvQixDQUFDO0FBRXJCLGFBQVcsTUFBTSxNQUFNLEVBQUUsS0FBSyxFQUFFO0FBQ2hDLGVBQWE7QUFDYixjQUFZLElBQUk7QUFDaEIsV0FBUyxJQUFJLFlBQVksSUFBSTtBQUM3QixpQkFBZSxJQUFJO0FBQ25CO0FBQUEsSUFBWTtBQUFBLE1BQ1gsTUFEVztBQUFBLE1BRVgsS0FBSyxJQUFJLHlCQUF5QixFQUFFLE1BQU0sRUFGL0I7QUFBQSxNQUdYLEtBQUssSUFBSSx5QkFBeUIsRUFBRSxNQUFNO0FBRTNDLGVBQWEsSUFBSSxNQUFNLElBQUk7QUFDM0IsZUFBYTtBQUNkO0FBRUEsQ0E3Q0Msb0JBNkNvQixDQUFDO0FBQ3JCLFNBQU8sSUFBSTtBQUNYLHFCQUFtQixJQUFJO0FBQ3ZCO0FBQUEsSUFBWTtBQUFBLE1BQ1gsTUFEVztBQUFBLE1BRVgsS0FBSyxJQUFJLGtCQUFrQixFQUFFLE1BQU0sRUFGeEI7QUFBQSxNQUdYLEtBQUssSUFBSSxrQkFBa0IsRUFBRSxNQUFNO0FBRXJDO0FBRUEsQ0F2REMsb0JBdURvQixDQUFDO0FBQ3JCLFNBQU8sSUFBSTtBQUNYLHFCQUFtQixJQUFJO0FBQ3hCO0FBT0EsQ0FBQztBQUNBLFdBQVM7QUFDVCx5QkFBdUIsT0FBTyxRQUFRLEVBQUUsT0FBTyxLQUFLLEVBQUU7QUFDdEQsT0FBSyxJQUFJO0FBQ1QsVUFBUSxJQUFJLFlBQVk7QUFDekI7QUFFQSxDQUFDO0FBQ0EsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLFdBQVMsSUFBSTtBQUNiLFVBQVE7QUFDUixjQUFZLElBQUk7QUFDaEIsY0FBWSxJQUFJO0FBQ2hCLFlBQVU7QUFDVixZQUFVO0FBQ1YsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FaQyxlQVllO0FBQ2YsZ0JBQWMsSUFBSTtBQUNsQixhQUFXLFdBQVc7QUFDdEIsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FsQkMsZUFrQmUsQ0F4OUM2QjtBQXk5QzVDLGdCQUFjLElBQUk7QUFDbEIsY0FBWSxJQUFJO0FBQ2hCLGNBQVksRUFBRSxFQUFFLEVBQUUsSUFBSSxLQUFLLElBQUkseUJBQXlCLEVBQUU7QUFDM0Q7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLLElBQUk7QUFDVCxpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0FBQztBQUNBLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWCxXQUFTO0FBQ1Y7QUFFQSxDQUFDO0FBQ0EsUUFBTTtBQUNQO0FBRUEsQ0FBQztBQUNBLFVBQVE7QUFDUixhQUFXO0FBQ1gsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxjQUFZLElBQUk7QUFDaEIsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDZDtBQUVBLENBQUM7QUFDQSxZQUFVO0FBQ1YsT0FBSyxJQUFJO0FBQ1QsU0FBTyxJQUFJO0FBQ1gsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0IsaUJBQWUsSUFBSTtBQUNuQixhQUFXO0FBQ1gsZUFBYTtBQUNiLGtCQUFnQjtBQUNoQixrQkFBZ0I7QUFDakI7QUFFQSxDQUFDO0FBQ0EsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNoQixpQkFBZSxJQUFJO0FBQ25CLGlCQUFlLElBQUk7QUFDbkIsY0FBWTtBQUNaLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFlBQVU7QUFDWDtBQUVBLENBQUM7QUFDQSxTQUFPLElBQUk7QUFDWCxhQUFXO0FBQ1gsZUFBYTtBQUNiLFVBQVEsRUFBRSxFQUFFLElBQUksWUFBWTtBQUM3QjtBQUVBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDakI7QUFFQSxDQUpDLHlCQUl5QjtBQUN6QixVQUFRO0FBQ1IsZ0JBQWMsSUFBSTtBQUNsQixjQUFZO0FBQ2I7QUFFQSxDQVZDLHlCQVV5QjtBQUN6QixZQUFVO0FBQ1YsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNYLGVBQWE7QUFDYixpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0FsQkMseUJBa0J5QixFQUFFO0FBQzNCLFdBQVM7QUFDVCxTQUFPLElBQUk7QUFDWCxZQUFVO0FBQ1YsUUFBTSxLQUFLLEdBQUcsRUFBRSxJQUFJO0FBQ3BCLGVBQWE7QUFDZDtBQUdBLENBQUM7QUFDQSxjQUFZO0FBQ1osV0FBUztBQUNULFVBQVE7QUFDUixjQUFZLElBQUk7QUFDaEIsaUJBQWUsSUFBSTtBQUNuQixXQUFTLElBQUk7QUFDZDtBQUVBLENBbDhDa0I7QUFtOENqQixXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUssSUFBSTtBQUNULFdBQVMsSUFBSSxZQUFZO0FBQ3pCLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWjtBQUVBLENBQUM7QUFDQSxTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2IsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDUDtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0IsaUJBQWUsSUFBSTtBQUNuQixhQUFXO0FBQ1gsZUFBYTtBQUNiLGtCQUFnQjtBQUNoQixjQUFZLElBQUk7QUFDakI7QUFFQSxDQUFDO0FBQ0EsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBQ0EsY0FBWSxLQUFLLElBQUksa0JBQWtCLEVBQUU7QUFDekMsU0FBTyxJQUFJO0FBQ1gsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxjQUFZLEtBQUssSUFBSSxtQkFBbUIsRUFBRTtBQUMxQyxTQUFPLElBQUk7QUFDWCxVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLGNBQVksS0FBSyxJQUFJLGlCQUFpQixFQUFFO0FBQ3hDLFNBQU8sSUFBSTtBQUNYLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBQ0EsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLFVBQVE7QUFDVDtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsT0FBSyxJQUFJO0FBQ1QsV0FBUyxJQUFJO0FBQ2IsaUJBQWUsSUFBSTtBQUNuQixVQUFRLElBQUksTUFBTTtBQUNsQixjQUFZLElBQUk7QUFDakI7QUFFQSxDQUFDO0FBQ0EsZUFBYTtBQUNiLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2xCO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDUDtBQUVBLENBQUM7QUFDQSxlQUFhO0FBQ2IsaUJBQWUsSUFBSTtBQUNuQixhQUFXO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLGVBQWE7QUFDZDtBQUVBLENBQUM7QUFDQSxjQUFZLEtBQUssSUFBSSxpQkFBaUIsRUFBRTtBQUN4QyxnQkFBYyxJQUFJO0FBQ25CO0FBRUEsQ0FMQyxzQkFLc0IsQ0EzQnRCO0FBNEJBLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FUQyxzQkFTc0IsQ0FwQnRCO0FBcUJELENBVkMsc0JBVXNCLENBZnRCO0FBZ0JBLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGNBQVksS0FBSyxJQUFJLGtCQUFrQixFQUFFO0FBQ3pDLGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQUxDLHlCQUt5QixDQXpDekI7QUEwQ0EsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQVRDLHlCQVN5QixDQWxDekI7QUFtQ0QsQ0FWQyx5QkFVeUIsQ0E3QnpCO0FBOEJBLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGNBQVksS0FBSyxJQUFJLG1CQUFtQixFQUFFO0FBQzFDLGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQUxDLHlCQUt5QixDQXZEekI7QUF3REEsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQVRDLHlCQVN5QixDQWhEekI7QUFpREQsQ0FWQyx5QkFVeUIsQ0EzQ3pCO0FBNENBLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGNBQVksS0FBSyxJQUFJLGdCQUFnQixFQUFFO0FBQ3ZDLGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQUxDLHVCQUt1QixDQXJFdkI7QUFzRUEsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQVRDLHVCQVN1QixDQTlEdkI7QUErREQsQ0FWQyx1QkFVdUIsQ0F6RHZCO0FBMERBLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxPQUFLLElBQUk7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFVBQVEsSUFBSSxZQUFZO0FBQ3pCO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsZUFBYTtBQUNiLE9BQUssSUFBSTtBQUNWO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUCxVQUFRO0FBQ1IsaUJBQWU7QUFDZixjQUFZLElBQUk7QUFDaEIsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FSQyxZQVFZLENBQUM7QUFDYixjQUFZLElBQUk7QUFDaEIsYUFBVyxNQUFNO0FBQ2pCLGNBQVksRUFBRSxFQUFFLEVBQUUsSUFBSSxLQUFLLElBQUkseUJBQXlCLEVBQUU7QUFDM0Q7QUFFQSxDQWRDLFlBY1ksQ0FBQztBQUNiLGNBQVksSUFBSTtBQUNoQixXQUFTO0FBQ1Y7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDZDs7O0FDbGdFQSxDQUFDO0FBQ0EsWUFBVTtBQUNYO0FBRUEsQ0FKQyxjQUljO0FBQ2QsV0FBUztBQUNULFlBQVU7QUFDVixPQUFLO0FBQ0wsUUFBTTtBQUNOLFNBQU87QUFDUCxVQUFRO0FBQ1Isa0JBQWdCO0FBQ2hCLFdBQVM7QUFDVCxvQkFBa0I7QUFDbEIsbUJBQWlCO0FBQ2pCLHVCQUFxQjtBQUNyQixxQkFBbUI7QUFDbkIsV0FBUztBQUNWO0FBRUEsQ0FwQkMsZUFvQmUsRUFBRTtBQUNqQixZQUFVO0FBQ1YsV0FBUztBQUNWOzs7QUN2QkEsR0FBRyxDQUFDLHFDQUF1QyxDQUFDO0FBQzNDLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsVUFBUTtBQUNSLFNBQU87QUFDUCxvQkFBa0IsSUFBSTtBQUN0QixZQUFVO0FBQ1YsZUFBYSxJQUFJO0FBQ2pCLFdBQVM7QUFDVjtBQUdBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FBQztBQUMzQyxXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLGVBQWE7QUFDYixXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCO0FBQUEsSUFBWTtBQUFBLE1BQ1gsTUFBTTtBQUFBLE1BQ04sSUFBSSx3QkFBd0IsRUFBRTtBQUFBLE1BQzlCLElBQUksNkJBQTZCO0FBRWxDLGVBQWE7QUFDYixtQkFBaUIsS0FBSztBQUN0QiwyQkFBeUIsS0FBSztBQUMvQjtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FBQztBQUMzQyxlQUFhO0FBQ2IsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLLElBQUk7QUFDVjtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FBQztBQUMzQyxXQUFTO0FBQ1QsT0FBSyxJQUFJO0FBQ1Y7QUFFQSxHQUFHLENBQUMscUNBQXVDLENBQUM7QUFDM0MsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsU0FBTyxJQUFJO0FBQ1gsVUFBUSxJQUFJO0FBQ1osaUJBQWUsSUFBSTtBQUNuQixVQUFRO0FBQ1IsU0FBTyxJQUFJO0FBQ1gsb0JBQWtCO0FBQ2xCLGNBQVksSUFBSSxLQUFLO0FBQ3RCO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQWJDLFlBYVk7QUFDdkQsU0FBTyxJQUFJO0FBQ1gsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxHQUFHLENBQUMscUNBQXVDLENBbEJDLFlBa0JZLENBQUM7QUFDeEQsU0FBTyxJQUFJO0FBQ1gsb0JBQWtCLElBQUk7QUFDdkI7QUFHQSxHQUFHLENBQUMscUNBQXVDLENBQUM7QUFDM0MsUUFBTTtBQUNOLGNBQVk7QUFDWixXQUFTLElBQUksWUFBWTtBQUN6QixZQUFVO0FBQ1g7QUFFQSxHQUFHLENBQUMscUNBQ0osQ0FSNEMsZ0JBUTNCLENBQUMsV0FDbEIsQ0FBQyxtQkFBbUIsS0FBSyxDQUFDO0FBQ3pCLFdBQVM7QUFDVCxrQkFBZ0I7QUFDakI7QUFFQSxHQUFHLENBQUMscUNBQXVDLENBQUM7QUFDM0MsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsVUFBUTtBQUNSLFNBQU8sSUFBSTtBQUNYLGNBQVk7QUFDWixjQUFZO0FBQ1osV0FBUyxJQUFJO0FBQ2Q7QUFHQSxHQUFHLENBQUMscUNBQXVDLENBakIxQztBQWtCQSxpQkFBZSxJQUFJO0FBQ25CLFlBQVU7QUFDVixpQkFBZSxJQUFJO0FBQ25CLGNBQVksSUFBSSxLQUFLO0FBQ3RCO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQXhCMUMsbUJBd0I4RCxDQXhCckM7QUF5QnpCLG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDbkIsVUFBUSxFQUFFLElBQUksWUFBWSxJQUFJO0FBQzlCLFdBQVMsSUFBSTtBQUNiLGNBQVksSUFBSTtBQUNoQixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3ZCO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQUFDO0FBQzNDLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0IsZUFBYTtBQUNiLGFBQVcsSUFBSTtBQUNmLFNBQU8sSUFBSTtBQUNYLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLGlCQUFlLElBQUk7QUFDbkIsWUFBVTtBQUNWLE9BQUs7QUFDTCxvQkFBa0IsSUFBSTtBQUN0QixXQUFTO0FBQ1Y7QUFFQSxHQUFHLENBQUMscUNBQ0osQ0FsREMsbUJBa0RtQixDQWxETSxTQW1EMUIsQ0FsQjRDO0FBbUIzQyxpQkFBZSxJQUFJO0FBQ25CLFVBQVEsRUFBRSxFQUFFLElBQUksWUFBWTtBQUM3QjtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FBQztBQUMzQyxhQUFXLElBQUk7QUFDZixTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2Q7QUFHQSxHQUFHLENBQUMscUNBQXVDLENBQUM7QUFDM0MsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLLElBQUk7QUFDVCxXQUFTLEVBQUUsSUFBSTtBQUNoQjtBQUdBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FBQztBQUMzQyxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUssSUFBSTtBQUNULFdBQVMsSUFBSTtBQUNiLGlCQUFlLElBQUk7QUFDbkIsVUFBUTtBQUNSLFlBQVU7QUFDVixVQUFRLElBQUksTUFBTTtBQUNsQixpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQVpDLGNBWWM7QUFDekQsb0JBQWtCLElBQUk7QUFDdEIsZ0JBQWMsSUFBSTtBQUNsQixjQUFZLEVBQUUsSUFBSSxJQUFJLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUU7QUFDcEMsYUFBVyxXQUFXO0FBQ3ZCO0FBRUEsR0FBRyxDQUFDLHFDQUNKLENBcEI0QyxjQW9CN0IsTUFBTSxLQUFLLENBQUMsdUJBQXVCO0FBQ2pELGFBQVc7QUFDWjtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0F4QkMsY0F3QmMsQ0FBQztBQUMxRCxXQUFTO0FBQ1Y7QUFFQSxHQUFHLENBQUMscUNBQ0osQ0E3QjRDLGNBNkI3QixDQUw0QyxhQU0zRCxDQUFDO0FBQ0EsbUJBQWlCO0FBQ2pCLFNBQU8sSUFBSTtBQUNaO0FBR0EsR0FBRyxDQUFDLHFDQUF1QyxDQUFDO0FBQzNDLGFBQVcsSUFBSTtBQUNmLFNBQU8sSUFBSTtBQUNYLGVBQWEsSUFBSTtBQUNqQixhQUFXO0FBQ1gsY0FBWTtBQUNaLGNBQVk7QUFDWixlQUFhO0FBQ2Isb0JBQWtCLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGVBQWE7QUFDYixZQUFVO0FBQ1g7QUFHQSxHQUFHLENBQUMscUNBQXVDLENBaEJDLG1CQWdCbUIsQ0FBQztBQUMvRCxvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxHQUFHLENBQUMscUNBQXVDLENBdEJDLG1CQXNCbUIsQ0FBQztBQUMvRDtBQUFBLElBQVk7QUFBQSxNQUFnQixNQUFNO0FBQUEsTUFBRSxJQUFJLHNCQUFzQixFQUFFO0FBQUEsTUFBRSxJQUFJLDRCQUE0QjtBQUNsRyxTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2IsYUFBVztBQUNYLFlBQVU7QUFDVixhQUFXLGFBQWEsR0FBRyxZQUFZO0FBQ3hDO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQS9CQyxtQkErQm1CLENBVEMseUJBU3lCO0FBQ3hGLFdBQVM7QUFDVCxZQUFVO0FBQ1YsT0FBSztBQUNMLFNBQU87QUFDUCxhQUFXO0FBQ1gsb0JBQWtCLElBQUk7QUFDdEIsaUJBQWU7QUFDZixhQUFXO0FBQ1gsVUFBUTtBQUNSLFdBQVMsRUFBRTtBQUNYLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsY0FBWSxFQUFFLElBQUksSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFO0FBQ3BDLGVBQWE7QUFDYixlQUFhO0FBQ2Q7QUFHQSxHQUFHLENBQUMscUNBQXVDLENBcERDLG1CQW9EbUIsQ0E5QkMseUJBOEJ5QixDQUFDLGNBQWM7QUFDdkcsV0FBUyxLQUFLO0FBQ2Y7QUFFQSxHQUFHLENBQUMscUNBQXVDLENBeERDLG1CQXdEbUIsQ0FBQztBQUMvRCxvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0E3REMsbUJBNkRtQixDQUFDO0FBQy9EO0FBQUEsSUFBWTtBQUFBLE1BQWdCLE1BQU07QUFBQSxNQUFFLElBQUksZUFBZSxFQUFFO0FBQUEsTUFBRSxJQUFJLHNCQUFzQjtBQUNyRixTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2IsYUFBVztBQUNaO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQXBFQyxtQkFvRW1CLENBQUM7QUFDL0Qsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1gsY0FBWTtBQUNaLGFBQVc7QUFDWjtBQUdBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FBQztBQUMzQyxpQkFBZSxJQUFJO0FBQ25CLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixvQkFBa0IsSUFBSTtBQUN0QixZQUFVO0FBQ1g7QUFFQSxHQUFHLENBQUMscUNBQXVDLENBQUM7QUFDM0MsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLLElBQUk7QUFDVCxXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzlCO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQUFDO0FBQzNDLGFBQVcsSUFBSTtBQUNmLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDZDtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FBQztBQUMzQyxXQUFTLElBQUk7QUFDZDtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0EzSUMsY0EySWMsQ0FBQztBQUMxRCxpQkFBZSxJQUFJO0FBQ25CLFdBQVMsSUFBSTtBQUNiLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FuSkMsY0FtSmMsQ0FSQyxzQkFRc0I7QUFDaEYsaUJBQWU7QUFDaEI7QUFHQSxHQUFHLENBQUMscUNBQXVDLENBQUM7QUFDM0MsY0FBWSxJQUFJO0FBQ2hCLGVBQWEsSUFBSTtBQUNqQixjQUFZLElBQUksT0FBTyxJQUFJO0FBQzVCO0FBSUEsR0FBRyxDQUFDLHFDQUF1QyxDQVJDLDJCQVEyQixDQWhLM0IsZUFnSzJDLENBNUgzQztBQTZIM0MsV0FBUztBQUNWO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQUFDO0FBQzNDLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSyxJQUFJO0FBQ1QsaUJBQWUsSUFBSTtBQUNuQixXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDcEI7QUFFQSxHQUFHLENBQUMscUNBQXVDLENBQUM7QUFDM0MsYUFBVyxJQUFJO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsZUFBYTtBQUNiLGNBQVk7QUFDYjtBQUdBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FBQztBQUMzQyxRQUFNO0FBQ04sV0FBUztBQUNULGVBQWE7QUFDYixPQUFLLElBQUk7QUFDVCxhQUFXO0FBQ1o7QUFFQSxHQUFHLENBQUMscUNBQXVDLENBMUtoQjtBQTJLMUIsV0FBUztBQUNULGVBQWE7QUFDYixjQUFZO0FBQ2I7QUFFQSxHQUFHLENBQUMscUNBQ0osQ0FqTDJCLHdCQWtMM0IsS0FBSyxDQUFDO0FBQ0wsVUFBUTtBQUNSLFVBQVE7QUFDVDtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0E3SzFDO0FBOEtBLFFBQU07QUFDTixhQUFXLElBQUk7QUFDZixlQUFhO0FBQ2IsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSyxJQUFJO0FBQ1Y7QUFFQSxHQUFHLENBQUMscUNBQXVDLENBQUM7QUFDM0MsYUFBVyxJQUFJO0FBQ2YsZUFBYTtBQUNiLGNBQVk7QUFDYjtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FBQztBQUMzQyxRQUFNO0FBQ04sY0FBWTtBQUNiO0FBR0EsR0FBRyxDQUFDLHFDQUF1QyxDQUFDO0FBQzNDLFdBQVM7QUFDVCxPQUFLLElBQUk7QUFDVCxXQUFTO0FBQ1QsY0FBWSxRQUFRLEtBQUs7QUFDMUI7QUFFQSxHQUFHLENBQUMscUNBQ0osQ0ExTzRDLGNBME83QixPQUNmLENBVDRDO0FBVTNDLFdBQVM7QUFDVjtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FBQztBQUMzQyxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixTQUFPLElBQUk7QUFDWCxVQUFRLElBQUk7QUFDWixpQkFBZSxJQUFJO0FBQ25CLFVBQVE7QUFDUixTQUFPLElBQUk7QUFDWCxvQkFBa0I7QUFDbEIsY0FBWSxJQUFJLEtBQUs7QUFDdEI7QUFFQSxHQUFHLENBQUMscUNBQXVDLENBYkMscUJBYXFCO0FBQ2hFLFNBQU8sSUFBSTtBQUNYLG9CQUFrQixJQUFJO0FBQ3ZCO0FBR0EsR0FBRyxDQUFDLHFDQUF1QyxDQUFDO0FBQzNDLGVBQWE7QUFDYixjQUFZLElBQUksTUFBTSxJQUFJO0FBQzFCLG9CQUFrQixJQUFJO0FBQ3RCLFdBQVMsSUFBSTtBQUNiLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSyxJQUFJO0FBQ1Qsa0JBQWdCLElBQUk7QUFDcEIsWUFBVTtBQUNWLGNBQVksSUFBSSxNQUFNLGFBQWEsR0FBRyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUU7QUFDaEQsWUFBVTtBQUNYO0FBR0EsR0FBRyxDQUFDLHFDQUF1QyxDQWZDLG9CQWVvQixDQUFDO0FBQ2hFLFdBQVM7QUFDVCxPQUFLO0FBQ0wsVUFBUTtBQUNUO0FBRUEsR0FBRyxDQUFDLHFDQUNKLENBdEI0QyxvQkFzQnZCLENBUDRDLGFBUWpFLENBQUM7QUFDRCxHQUFHLENBQUMscUNBQ0osQ0F6QjRDLG9CQXlCdkIsQ0FWNEMsYUFXakUsQ0FBQztBQUNELEdBQUcsQ0FBQyxxQ0FDSixDQTVCNEMsb0JBNEJ2QixDQWI0QyxhQWNqRSxDQUFDO0FBQ0EsV0FBUztBQUNWO0FBR0EsR0FBRyxDQUFDLHFDQUF1QyxDQWxDQyxvQkFrQ29CLENBQUM7QUFDaEUsWUFBVTtBQUNYO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQXRDQyxvQkFzQ29CLENBQUM7QUFDaEUsWUFBVTtBQUNYO0FBR0EsR0FBRyxDQUFDLHFDQUF1QyxDQUFDO0FBQzNDLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFdBQVMsSUFBSSxZQUFZLElBQUk7QUFDN0Isb0JBQWtCLElBQUk7QUFDdEIsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDN0IsVUFBUTtBQUNSLGNBQVksaUJBQWlCLE1BQU07QUFDcEM7QUFFQSxHQUFHLENBQUMscUNBQXVDLENBWEMsNEJBVzRCO0FBQ3ZFLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQUFDO0FBQzNDLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU8sSUFBSTtBQUNYLFVBQVEsSUFBSTtBQUNaLGlCQUFlLElBQUk7QUFDbkIsU0FBTyxJQUFJO0FBQ1gsY0FBWSxJQUFJLE1BQU07QUFDdEIsVUFBUTtBQUNUO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQVpDLG9CQVlvQjtBQUMvRCxTQUFPLElBQUk7QUFDWCxvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FBQztBQUMzQyxRQUFNO0FBQ04sZUFBYTtBQUNiLGFBQVcsSUFBSTtBQUNmLFNBQU8sSUFBSTtBQUNYLGVBQWEsSUFBSTtBQUNsQjtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FBQztBQUMzQyxXQUFTO0FBQ1QsT0FBSyxJQUFJO0FBQ1Y7QUFFQSxHQUFHLENBQUMscUNBQXVDLENBQUM7QUFDNUMsR0FBRyxDQUFDLHFDQUF1QyxDQUFDO0FBQzNDLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU8sSUFBSTtBQUNYLFVBQVEsSUFBSTtBQUNaLGlCQUFlLElBQUk7QUFDbkIsU0FBTyxJQUFJO0FBQ1gsVUFBUTtBQUNSLGNBQVksSUFBSSxNQUFNO0FBQ3ZCO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQWJDLHVCQWF1QjtBQUNuRSxHQUFHLENBQUMscUNBQXVDLENBYkMsc0JBYXNCO0FBQ2pFLFNBQU8sSUFBSTtBQUNYLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQW5CQyx1QkFtQnVCO0FBQ2xFLFNBQU8sSUFBSTtBQUNaO0FBR0EsR0FBRyxDQUFDLHFDQUF1QyxDQXpGMUM7QUEwRkEsV0FBUztBQUNULG1CQUFpQjtBQUNqQixlQUFhO0FBQ2IsT0FBSyxJQUFJO0FBQ1QsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FBQztBQUMzQyxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUssSUFBSTtBQUNWO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQUFDO0FBQzNDLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU8sSUFBSTtBQUNYLFVBQVEsSUFBSTtBQUNaLGlCQUFlLElBQUk7QUFDbkIsU0FBTyxJQUFJO0FBQ1gsVUFBUTtBQUNSLGNBQVksSUFBSSxNQUFNO0FBQ3ZCO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQVpDLHdCQVl3QjtBQUNuRSxTQUFPLElBQUk7QUFDWCxvQkFBa0IsSUFBSTtBQUN2QjtBQUdBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FsQkMseUJBa0J5QjtBQUNwRSxjQUFZLFVBQVUsTUFBTTtBQUM3QjtBQUVBLEdBQUcsQ0FBQyxxQ0FDSixDQXJKNEMsb0JBcUp2QixDQXRJNEMsYUF1SWpFLENBeEI0Qyx5QkF5QjVDO0FBQ0MsYUFBVyxPQUFPO0FBQ25CO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQUFDO0FBQzNDLGVBQWE7QUFDYixhQUFXLElBQUk7QUFDZixTQUFPLElBQUk7QUFDWjtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FBQztBQUMzQyxhQUFXLElBQUk7QUFDZixTQUFPLElBQUk7QUFDWCxjQUFZO0FBQ1osV0FBUyxJQUFJLFlBQVksSUFBSTtBQUM3QixvQkFBa0IsSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLGNBQVk7QUFDYjtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FqSjFDO0FBa0pBLGNBQVk7QUFDWixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDbkIsb0JBQWtCLElBQUk7QUFDdEIsV0FBUyxJQUFJO0FBQ2IsZUFBYSxJQUFJO0FBQ2pCLGFBQVcsSUFBSTtBQUNmLFVBQVE7QUFDUixjQUFZLElBQUksS0FBSztBQUN0QjtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0E3SjFDLGtCQTZKNkQ7QUFDN0QsZ0JBQWMsSUFBSTtBQUNsQixjQUFZLEVBQUUsRUFBRSxFQUFFLElBQUksS0FBSyxJQUFJLHlCQUF5QixFQUFFO0FBQzNEO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQWxLMUMsbUJBa0s4RCxDQUFDO0FBQy9ELG9CQUFrQjtBQUNsQixVQUFRO0FBQ1IsV0FBUztBQUNWO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQXhLMUMsbUJBd0s4RCxDQUFDO0FBQy9ELFdBQVM7QUFDVjtBQUVBLEdBQUcsQ0FBQyxxQ0FDSixDQTdLQyxtQkE4S0QsQ0FaZ0UsU0FZdEQsQ0FOc0Q7QUFPL0QsV0FBUztBQUNWO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQS9LMUM7QUFnTEEsV0FBUztBQUNULE9BQUssSUFBSTtBQUNULG1CQUFpQjtBQUNsQjtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FBQztBQUM1QyxHQUFHLENBQUMscUNBQXVDLENBQUM7QUFDM0MsV0FBUyxJQUFJLFlBQVksSUFBSTtBQUM3QixpQkFBZSxJQUFJO0FBQ25CLGFBQVcsSUFBSTtBQUNmLGVBQWE7QUFDYixVQUFRO0FBQ1IsVUFBUTtBQUNSLGNBQVksSUFBSSxLQUFLO0FBQ3JCLGNBQVksRUFBRSxJQUFJLElBQUksS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUNyQztBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FaQztBQWEzQyxvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FqQkMsaUJBaUJpQjtBQUM1RCxvQkFBa0IsSUFBSTtBQUN0QixhQUFXLFdBQVc7QUFDdEIsY0FBWSxFQUFFLElBQUksSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFO0FBQ3JDO0FBRUEsR0FBRyxDQUFDLHFDQUF1QyxDQXRCQztBQXVCM0Msb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxHQUFHLENBQUMscUNBQXVDLENBM0JDLGVBMkJlO0FBQzFELG9CQUFrQixJQUFJO0FBQ3RCLGFBQVcsV0FBVztBQUN0QixjQUFZLEVBQUUsSUFBSSxJQUFJLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUU7QUFDckM7QUFHQSxPQUFPLENBQUMsU0FBUyxFQUFFO0FBQ2xCLEtBQUcsQ0FBQyxxQ0FBdUMsQ0E5bkJBO0FBK25CMUMsYUFBUyxJQUFJLFlBQVksSUFBSTtBQUM5QjtBQUVBLEtBQUcsQ0FBQyxxQ0FBdUMsQ0F6bUJBO0FBMG1CMUMsU0FBSyxJQUFJO0FBQ1Y7QUFFQSxLQUFHLENBQUMscUNBQXVDLENBeG1CQTtBQXltQjFDLFdBQU8sSUFBSTtBQUNYLFlBQVEsSUFBSTtBQUNiO0FBRUEsS0FBRyxDQUFDLHFDQUF1QyxDQTdnQkE7QUE4Z0IxQyxhQUFTLEVBQUUsSUFBSTtBQUNoQjtBQUVBLEtBQUcsQ0FBQyxxQ0FBdUMsQ0F6Z0JBO0FBMGdCMUMsYUFBUyxJQUFJO0FBQ2Q7QUFFQSxLQUFHLENBQUMscUNBQXVDLENBM1FBO0FBNFExQyxhQUFTLElBQUk7QUFDZDtBQUVBLEtBQUcsQ0FBQyxxQ0FDSixDQWhSMkMsb0JBZ1J0QixDQWpRMkM7QUFrUS9ELGFBQVM7QUFDVjtBQUVBLEtBQUcsQ0FBQyxxQ0FBdUMsQ0ExUDNDO0FBMlBDLGdCQUFZO0FBQ2I7QUFFQSxLQUFHLENBQUMscUNBQXVDLENBN09BO0FBOE8xQyxhQUFTLElBQUksWUFBWSxJQUFJO0FBQzlCO0FBRUEsS0FBRyxDQUFDLHFDQUF1QyxDQXBNQTtBQUFBLEVBcU0zQyxHQUFHLENBQUMscUNBQXVDLENBcE1BO0FBcU0xQyxXQUFPLElBQUk7QUFDWCxZQUFRLElBQUk7QUFDYjtBQUNEO0FBR0EsR0FBRyxDQUFDLHFDQUNKLENBdm5CNEMsZ0JBdW5CM0I7QUFDaEIsU0FBTztBQUNSO0FBRUEsR0FBRyxDQUFDLHFDQUNKLENBNW5CNEMsZ0JBNG5CM0I7QUFDaEIsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxHQUFHLENBQUMscUNBQ0osQ0Fqb0I0QyxnQkFpb0IzQjtBQUNoQixvQkFBa0IsSUFBSTtBQUN0QixpQkFBZTtBQUNoQjtBQUVBLEdBQUcsQ0FBQyxxQ0FDSixDQXZvQjRDLGdCQXVvQjNCLHlCQUF5QjtBQUN6QyxvQkFBa0IsSUFBSTtBQUN2QjtBQUdBLFdBQVc7QUFDVjtBQUNDLGFBQVM7QUFDVCxlQUFXLFdBQVc7QUFDdkI7QUFDQTtBQUNDLGFBQVM7QUFDVCxlQUFXLFdBQVc7QUFDdkI7QUFDRDtBQUVBLFdBdmdCWTtBQXdnQlg7QUFDQyxnQkFBWSxFQUFFLEVBQUUsRUFBRSxFQUFFLEtBQUssSUFBSSx5QkFBeUIsRUFBRTtBQUN6RDtBQUNBO0FBQ0MsZ0JBQVksRUFBRSxFQUFFLEVBQUUsSUFBSSxLQUFLLElBQUkseUJBQXlCLEVBQUU7QUFDM0Q7QUFDRDtBQUdBLEdBQUcsQ0FBQyxxQ0FBdUMsQ0FqcUJDLGdCQWlxQmdCLENBenBCMUM7QUEwcEJqQixZQUFVO0FBQ1g7QUFFQSxHQUFHLENBQUMscUNBQ0osQ0F0cUI0QyxnQkFzcUIzQixDQTlwQkMsVUE4cEJVO0FBQzNCLFdBQVM7QUFDVCxZQUFVO0FBQ1YsT0FBSztBQUNMLFFBQU07QUFDTixTQUFPO0FBQ1AsVUFBUTtBQUNSO0FBQUEsSUFBWTtBQUFBLE1BQ1gsR0FBRyxNQURRO0FBQUEsTUFFWCxLQUFLLElBQUkseUJBQXlCLEVBQUUsS0FBSyxFQUY5QjtBQUFBLE1BR1gsS0FBSyxJQUFJLHlCQUF5QixFQUFFLEtBQUssR0FIOUI7QUFBQSxNQUlYLEtBQUssSUFBSSx5QkFBeUIsRUFBRSxLQUFLO0FBRTFDLGtCQUFnQjtBQUNoQixXQUFTO0FBQ1Y7QUFFQSxHQUFHLENBQUMscUNBQ0osQ0F4ckI0QyxnQkF3ckIzQixDQWhyQkMsV0FpckJsQixDQWhyQkMsbUJBZ3JCbUIsQ0FockJNO0FBaXJCekIsWUFBVTtBQUNWLFdBQVM7QUFDVjtBQUdBLEdBQUcsQ0FBQyxxQ0FDSixDQXBaNEMsNEJBcVo1QyxDQUFDO0FBQ0EsVUFBUTtBQUNSLFdBQVM7QUFDVCxhQUFXO0FBQ1gsZUFBYTtBQUNkO0FBRUEsR0FBRyxDQUFDLHFDQUNKLENBN1o0Qyw0QkE4WjVDLENBVEMsZUFVRDtBQUNDLFVBQVE7QUFDUixXQUFTO0FBQ1QsYUFBVztBQUNYLGVBQWE7QUFDZDtBQUVBLEdBQUcsQ0FBQyxxQ0FDSixDQXZhNEMsNEJBd2E1QyxDQW5CQyxlQW9CRDtBQUNBLEdBQUcsQ0FBQyxxQ0FDSixDQTNhNEMsNEJBNGE1QyxDQXZCQyxlQXdCRDtBQUNBLEdBQUcsQ0FBQyxxQ0FDSixDQS9hNEMsNEJBZ2I1QyxDQTNCQyxlQTRCRDtBQUNDLGFBQVc7QUFDWjtBQUVBLEdBQUcsQ0FBQyxxQ0FDSixDQXRiNEMsNEJBdWI1QyxDQWxDQyxlQW1DRDtBQUNDLFNBQU8sSUFBSTtBQUNYLG1CQUFpQjtBQUNsQjtBQUVBLEdBQUcsQ0FBQyxxQ0FDSixDQTliNEMsNEJBK2I1QyxDQTFDQyxlQTJDRCxDQUFDO0FBQ0EsbUJBQWlCO0FBQ2xCO0FBRUEsR0FBRyxDQUFDLHFDQUNKLENBcmM0Qyw0QkFzYzVDLENBakRDLGVBa0REO0FBQ0EsR0FBRyxDQUFDLHFDQUNKLENBemM0Qyw0QkEwYzVDLENBckRDLGVBc0REO0FBQ0MsVUFBUTtBQUNSLGdCQUFjLElBQUk7QUFDbkI7QUFFQSxHQUFHLENBQUMscUNBQ0osQ0FqZDRDLDRCQWtkNUMsQ0E3REMsZUE4REQ7QUFDQyxVQUFRO0FBQ1IsV0FBUztBQUNWOzs7QUNwMEJBLENBQUM7QUFDQSxjQUFZO0FBQ2I7QUFFQSxDQUFDLGFBQWEsQ0FBQztBQUNkLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxhQUFXO0FBQ1gsZUFBYTtBQUNiLGlCQUFlO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLGlCQUFlO0FBQ2YsV0FBUztBQUNULG1CQUFpQjtBQUNqQixlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLGNBQVk7QUFDWixpQkFBZTtBQUNmLGNBQVksRUFBRSxJQUFJLElBQUksS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUNyQztBQUVBLENBQUM7QUFDQSxjQUFZO0FBQ1osU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsVUFBUTtBQUNUO0FBR0EsQ0FBQyx5QkFBeUIsQ0FBQztBQUMxQixXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLE9BQUs7QUFDTjs7O0FDM0NBLENBQUMsb0JBQW9CLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQztBQUN6QyxxQkFBbUI7QUFDbkIsdUJBQXFCLElBQUk7QUFDMUI7QUFFQSxDQUFDLFVBQVUsQ0FMVixvQkFLK0IsQ0FMVixRQUttQixDQUxWLFVBS3FCLENBTFY7QUFNekMsdUJBQXFCO0FBQ3RCO0FBRUEsQ0FBQyxvQkFBb0IsQ0FBQztBQUNyQixXQUFTO0FBQ1QsWUFBVTtBQUNWLG9CQUFrQixJQUFJO0FBQ3RCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixXQUFTLElBQUk7QUFDYixjQUFZLElBQUk7QUFDakI7QUFFQSxDQW5CMEM7QUFvQnpDLFNBQU87QUFDUjtBQUVBLENBQUM7QUFDQSxVQUFRO0FBQ1IsYUFBVyxJQUFJO0FBQ2YsV0FBUztBQUNULGNBQVksUUFBUSxLQUFLO0FBQzFCO0FBRUEsQ0FQQyxrQkFPa0I7QUFDbEIsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLFdBQVMsSUFBSTtBQUNiLGFBQVc7QUFDWCxjQUFZO0FBQ1osWUFBVTtBQUNYO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSyxJQUFJO0FBQ1QsV0FBUyxJQUFJO0FBQ2IsVUFBUTtBQUNUO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsaUJBQWUsSUFBSTtBQUNwQjtBQUVBLENBQUM7QUFDQSxhQUFXLElBQUk7QUFDZixlQUFhLElBQUk7QUFDakIsaUJBQWUsSUFBSTtBQUNuQixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLGNBQVksSUFBSTtBQUNoQixPQUFLLElBQUk7QUFDVjtBQUVBLENBQUM7QUFDQSxXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLGFBQVcsSUFBSTtBQUNmLGlCQUFlLElBQUk7QUFDbkIsVUFBUTtBQUNUO0FBRUEsQ0FyREMsa0JBcURrQixDQUFDO0FBQ25CLFNBQU87QUFDUCxXQUFTLElBQUk7QUFDYixXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLGVBQWE7QUFDZDtBQUdBLENBNUVDLHFCQTRFcUIsQ0FBQztBQUN0QixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLFNBQU87QUFDUjtBQUVBLENBbEZDLHFCQWtGcUIsQ0FBQztBQUN0QixXQUFTO0FBQ1QsaUJBQWUsSUFBSTtBQUNuQixPQUFLLElBQUk7QUFDVjtBQUVBLENBeEZDLHFCQXdGcUIsQ0FBQztBQUN0QixXQUFTLElBQUksWUFBWSxJQUFJO0FBQzdCLFVBQVE7QUFDUixVQUFRO0FBQ1IsY0FBWTtBQUNaLGFBQVcsSUFBSTtBQUNmLFNBQU8sSUFBSTtBQUNYLGlCQUFlO0FBQ2YsY0FBWSxNQUFNLEtBQUssSUFBSSxFQUFFLGFBQWEsS0FBSztBQUNoRDtBQUVBLENBbkdDLHFCQW1HcUIsQ0FYQyxVQVdVO0FBQ2hDLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0F2R0MscUJBdUdxQixDQWZDLFVBZVUsQ0FBQztBQUNqQyxTQUFPLElBQUk7QUFDWCxlQUFhLElBQUk7QUFDakIsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQTdHQyxxQkE2R3FCLENBQUM7QUFDdEIsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLLElBQUk7QUFDVjtBQUVBLENBbkhDLHFCQW1IcUIsQ0FOQyxRQU1RLENBWkc7QUFhakMsV0FBUztBQUNWO0FBRUEsQ0F2SEMscUJBdUhxQixDQUFDO0FBQ3ZCLENBQUMsbUJBQW1CLENBREc7QUFFdEIsV0FBUztBQUNULGtCQUFnQjtBQUNoQixtQkFBaUI7QUFFakIsaUJBQWUsSUFBSTtBQUNuQixjQUFZLElBQUk7QUFDakI7QUFFQSxDQWpJQyxxQkFpSXFCLENBQUM7QUFDdkIsQ0FWQyxtQkFVbUIsQ0FERztBQUV0QixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLG1CQUFpQjtBQUVqQixPQUFLLElBQUk7QUFDVjtBQUVBLENBMUlDLHFCQTBJcUIsQ0FBQztBQUN2QixDQW5CQyxtQkFtQm1CLENBREc7QUFFdEIsV0FBUztBQUNWO0FBRUEsQ0FBQyxhQUFhLENBL0diO0FBZ0hBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSyxJQUFJO0FBQ1Y7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLLElBQUk7QUFDVjtBQUVBLENBTkMsd0JBTXdCLENBQUM7QUFDekIsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLLElBQUk7QUFDVjs7O0FDeEtBLENBQUMsZUFBZSxDQUFDO0FBQ2hCLGNBQVk7QUFDYjtBQUVBLENBSkMsZUFJZSxDQUpDLHNCQUlzQixDQUFDO0FBQ3ZDLFNBQU87QUFDUCxhQUFXO0FBQ1gsWUFBVTtBQUNYO0FBRUEsQ0FWQyxlQVVlLENBVkMsc0JBVXNCLENBTkMsYUFNYSxDQUFDO0FBQ3JELFdBQVMsSUFBSTtBQUNiLG1CQUFpQjtBQUNqQixTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2IsY0FBWSxNQUFNLEtBQUssV0FBVyxFQUFFLFlBQVksS0FBSztBQUN0RDtBQUVBLENBbEJDLGVBa0JlLENBbEJDLHNCQWtCc0IsQ0FkQyxhQWNhLENBQUM7QUFDckQsZUFBYTtBQUNkO0FBRUEsQ0F0QkMsZUFzQmUsQ0F0QkMsc0JBc0JzQixDQWxCQyxhQWtCYSxDQVpDO0FBYXJELFdBQVMsSUFBSTtBQUNiLG1CQUFpQjtBQUNqQixTQUFPLElBQUk7QUFDWCxlQUFhO0FBRWIsY0FBWSxNQUFNLEtBQUssV0FBVyxFQUFFLFlBQVksS0FBSztBQUN0RDtBQUVBLENBL0JDLGVBK0JlLENBL0JDLHNCQStCc0IsQ0EzQkMsYUEyQmEsQ0FBQztBQUNyRCxnQkFBYztBQUNmO0FBRUEsQ0FuQ0MsZUFtQ2UsQ0FuQ0Msc0JBbUNzQixDQUFDO0FBQ3ZDLGNBQVk7QUFDYjtBQUVBLENBdkNDLGVBdUNlLENBQUM7QUFDaEIsUUFBTTtBQUNOLFVBQVE7QUFDVDtBQUVBLENBNUNDLGVBNENlLENBQUM7QUFDaEIsU0FBTztBQUNSO0FBRUEsQ0FoREMsZUFnRGUsQ0FKQyxxQkFJcUIsQ0FBQyx3QkFBd0IsQ0FBQztBQUMvRCxXQUFTO0FBQ1QseUJBQXVCLE9BQU8sQ0FBQyxFQUFFO0FBQ2pDLE9BQUs7QUFDTCxXQUFTLEVBQUU7QUFDWjtBQUVBLENBdkRDLGVBd0RBLENBWmdCLHFCQWFoQixDQVRzQyx3QkFVdEMsQ0FBQztBQUNELGNBQVk7QUFDWixhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1gsV0FBUyxJQUFJO0FBQ2IsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDN0IsaUJBQWU7QUFDaEI7QUFFQSxDQW5FQyxlQW9FQSxDQXhCZ0IscUJBeUJoQixDQXJCc0Msd0JBc0J0QyxDQVpDLG1CQVltQixDQUFDO0FBQ3JCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0ExRUMsZUEwRWUsQ0E5QkMscUJBOEJxQixDQTFCQyx3QkEwQndCLENBQUM7QUFDL0QsZ0JBQWM7QUFDZCxpQkFBZTtBQUNmLFdBQVM7QUFDVCxVQUFRO0FBQ1IsWUFBVTtBQUNWLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsY0FBWSxpQkFBaUIsS0FBSztBQUNuQztBQUVBLENBckZDLGVBc0ZBLENBMUNnQixxQkEyQ2hCLENBdkNzQyx3QkF3Q3RDLENBZCtELFlBY2xEO0FBQ2Isb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQTVGQyxlQTZGQSxDQWpEZ0IscUJBa0RoQixDQTlDc0Msd0JBK0N0QyxDQXJCK0QsWUFxQmxELENBQUM7QUFDZCxvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBbkdDLGVBb0dBLENBeERnQixxQkF5RGhCLENBckRzQyx3QkFzRHRDLENBNUIrRCxZQTRCbEQsQ0FBQztBQUNkLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0EzR0MsZUE0R0EsQ0FoRWdCLHFCQWlFaEIsQ0E3RHNDLHdCQThEdEMsQ0FwQytELFlBb0NsRCxDQUFDO0FBQ2QsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQWxIQyxlQW1IQSxDQXZFZ0IscUJBd0VoQixDQXBFc0Msd0JBcUV0QyxDQTNDK0QsWUEyQ2xELENBQUM7QUFDZCxXQUFTO0FBQ1Y7QUFFQSxDQXpIQyxlQTBIQSxDQTlFZ0IscUJBK0VoQixDQTNFc0Msd0JBNEV0QyxDQUFDO0FBQ0QsY0FBWTtBQUNaLGFBQVc7QUFDWCxlQUFhO0FBQ2IsV0FBUztBQUNWO0FBRUEsQ0FuSUMsZUFvSUEsQ0F4RmdCLHFCQXlGaEIsQ0FyRnNDLHdCQXNGdEMsQ0FBQztBQUNELG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNYLGlCQUFlO0FBQ2YsYUFBVztBQUNYLFdBQVMsSUFBSTtBQUNiLFVBQVEsSUFBSTtBQUNaLGNBQVk7QUFDWixTQUFPO0FBQ1I7QUFFQSxDQWpKQyxlQWtKQSxDQXRHZ0IscUJBdUdoQixDQW5Hc0Msd0JBb0d0QyxDQWRDLGtCQWNrQixDQUFDO0FBQ3BCLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0F6SkMsZUF5SmUsQ0FBQztBQUNoQixVQUFRO0FBQ1IsY0FBWTtBQUNiO0FBRUEsQ0E5SkMsZUErSkEsQ0EvSmdCLHFCQStKTSxLQUFLLENBQUMsWUFBWSxDQUFDLFNBQ3pDLENBQUM7QUFDRCxXQUFTO0FBQ1Y7QUFFQSxDQXBLQyxlQXFLQSxDQXJLZ0IscUJBcUtNLEtBQUssQ0FOQyxZQU1ZLENBTkMsU0FPekMsQ0FBQztBQUNELFdBQVM7QUFDVjtBQUVBLENBMUtDLGVBMEtlLENBQUM7QUFDaEIsVUFBUTtBQUNUO0FBRUEsQ0E5S0MsZUE4S2UsQ0FBQztBQUNoQixVQUFRO0FBQ1Q7QUFFQSxDQUFDLFVBQVUsQ0FsTE07QUFtTGhCLGNBQVk7QUFDYjtBQUdBLENBQUM7QUFDQSxZQUFVO0FBQ1YsT0FBSztBQUNMLFNBQU87QUFDUCxjQUFZLElBQUk7QUFDaEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLFdBQVMsS0FBSztBQUNkLGFBQVc7QUFDWCxjQUFZLElBQUk7QUFDaEIsV0FBUztBQUNULFVBQVE7QUFDUixhQUFXLGFBQWEsS0FBSztBQUM5QjtBQUVBLENBZkMsK0JBZStCO0FBQy9CLFdBQVM7QUFDVjtBQUVBLENBbkJDLGdDQW1CZ0MsQ0FBQztBQUNqQyxhQUFXO0FBQ1gsaUJBQWU7QUFDaEI7QUFFQSxDQXhCQyxnQ0F3QmdDLENBQUMsY0FBYyxDQUFDO0FBQ2hELGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWCxpQkFBZTtBQUNoQjtBQUVBLENBOUJDLGdDQThCZ0MsQ0FOQyxjQU1jLENBQUM7QUFDaEQsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDZDtBQUVBLFdBeEJZO0FBeUJYO0FBQ0MsZUFBVyxXQUFXO0FBQ3RCLGFBQVM7QUFDVjtBQUNBO0FBQ0MsZUFBVyxXQUFXO0FBQ3RCLGFBQVM7QUFDVjtBQUNEOzs7QUNuT0EsQ0FBQztBQUNBLFVBQVE7QUFDUixZQUFVO0FBQ1YsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLFVBQVE7QUFDUixXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLGNBQVksSUFBSSxNQUFNLElBQUk7QUFDM0I7QUFFQSxDQUFDLFlBQVksQ0FiWjtBQWNBLFdBQVM7QUFDVjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsVUFBUTtBQUNSLFNBQU87QUFDUCxZQUFVO0FBQ1g7QUFHQSxDQUFDO0FBQ0EsU0FBTztBQUNQLGFBQVc7QUFDWCxhQUFXO0FBQ1gsb0JBQWtCLElBQUk7QUFDdEIsZ0JBQWMsSUFBSSxNQUFNLElBQUk7QUFDNUIsV0FBUztBQUNULGtCQUFnQjtBQUNoQixZQUFVO0FBQ1g7QUFFQSxDQUFDO0FBQ0EsVUFBUTtBQUNSLFdBQVM7QUFDVCxrQkFBZ0I7QUFDakI7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzlCO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU87QUFDUCxXQUFTO0FBQ1QsY0FBWTtBQUNaLFVBQVE7QUFDUixpQkFBZTtBQUNmLFVBQVE7QUFDUixjQUFZLGlCQUFpQjtBQUM5QjtBQUVBLENBYkMseUJBYXlCO0FBQ3pCLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSztBQUNOO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUCxVQUFRO0FBQ1IsaUJBQWU7QUFDZixXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixTQUFPO0FBQ1I7QUFFQSxDQVZDLGVBVWU7QUFDZixTQUFPO0FBQ1AsVUFBUTtBQUNUO0FBRUEsQ0FBQztBQUNBLGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLFNBQU8sSUFBSTtBQUNaO0FBR0EsQ0FBQztBQUNBLFNBQU87QUFDUCxjQUFZO0FBQ1osV0FBUztBQUNULG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNYLFVBQVE7QUFDUixpQkFBZTtBQUNmLGVBQWE7QUFDYixXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixPQUFLO0FBQ0wsVUFBUTtBQUNSLGNBQVksaUJBQWlCO0FBQzlCO0FBRUEsQ0FqQkMsZUFpQmU7QUFDZixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1Y7QUFHQSxDQUFDO0FBQ0EsUUFBTTtBQUNOLGNBQVk7QUFDWixXQUFTLElBQUk7QUFDYixlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsV0FBUyxJQUFJO0FBQ2Q7QUFFQSxDQUpDLG1CQUltQixFQUFFLENBSnJCO0FBS0EsY0FBWSxJQUFJLE1BQU0sSUFBSTtBQUMzQjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNoQjtBQUVBLENBUkMsa0JBUWtCO0FBQ2xCLGFBQVc7QUFDWCxlQUFhO0FBQ2Isa0JBQWdCO0FBQ2hCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSztBQUNOO0FBRUEsQ0FBQztBQUNELENBQUM7QUFDRCxDQUFDO0FBQ0EsVUFBUTtBQUNSLFNBQU8sSUFBSTtBQUNYLGNBQVksTUFBTTtBQUNsQixXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixTQUFPO0FBQ1AsVUFBUTtBQUNUO0FBRUEsQ0FiQyxrQkFha0I7QUFDbkIsQ0FiQyxtQkFhbUI7QUFDcEIsQ0FiQyxrQkFha0I7QUFDbEIsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQUFDO0FBQ0EsV0FBUyxFQUFFO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ0wsV0FBUyxJQUFJO0FBQ2IsaUJBQWU7QUFDZixVQUFRO0FBQ1IsY0FBWSxpQkFBaUI7QUFDN0IsWUFBVTtBQUNYO0FBRUEsQ0FYQyxrQkFXa0I7QUFDbEIsb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQWZDLGtCQWVrQixDQUFDO0FBQ25CLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUCxVQUFRO0FBQ1IsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQTVCQyxrQkE0QmtCLENBYkMsVUFhVSxDQVQ3QjtBQVVBLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0Esb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNYLGVBQWE7QUFDYixXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNmLGFBQVc7QUFDWCxjQUFZO0FBQ2I7QUFHQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLGNBQVk7QUFDWixXQUFTLEVBQUU7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTCxXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNmLFVBQVE7QUFDUixjQUFZLGlCQUFpQjtBQUM5QjtBQUVBLENBVkMsZUFVZTtBQUNmLG9CQUFrQixJQUFJO0FBQ3ZCO0FBRUEsQ0FkQyxlQWNlLENBdkRJO0FBd0RuQixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxTQUFPO0FBQ1AsVUFBUTtBQUNSLGlCQUFlO0FBQ2YsZUFBYTtBQUNkO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUCxVQUFRO0FBQ1IsVUFBUSxNQUFNLE9BQU8sSUFBSTtBQUN6QixpQkFBZTtBQUNoQjtBQUVBLENBQUM7QUFDQSxRQUFNO0FBQ04sYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGVBQWE7QUFDYixZQUFVO0FBQ1YsaUJBQWU7QUFDaEI7QUFFQSxDQUFDLGVBQWUsQ0FUZjtBQVVBLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWjtBQUdBLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FuRDdCO0FBb0RBLGNBQVksSUFBSSxNQUFNO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU87QUFDUCxVQUFRO0FBQ1IsZ0JBQWM7QUFDZCxVQUFRO0FBQ1IsU0FBTyxJQUFJO0FBQ1gsY0FBWSxVQUFVLE1BQU07QUFDNUIsZUFBYTtBQUNkO0FBRUEsQ0FiQyxrQkFha0I7QUFDbEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQWpCQyxtQkFpQm1CO0FBQ25CLFNBQU87QUFDUCxVQUFRO0FBQ1Q7QUFFQSxDQUFDO0FBQ0EsU0FBTztBQUNQLFVBQVE7QUFDUixnQkFBYztBQUNkLGVBQWE7QUFDZDtBQUdBLENBbENDLGVBa0NlLENBbENDLGFBa0NhLENBckY3QixlQXFGNkMsQ0FBQztBQUM5QyxnQkFBYztBQUNmO0FBRUEsQ0F0Q0MsZUFzQ2UsQ0F0Q0MsYUFzQ2EsQ0F6RjdCLGVBeUY2QyxDQUFDO0FBQzlDLGdCQUFjO0FBQ2Y7QUFFQSxDQTFDQyxlQTBDZSxDQTFDQyxhQTBDYSxDQTdGN0IsZUE2RjZDLENBQUM7QUFDOUMsZ0JBQWM7QUFDZjtBQUdBLENBL0NDLGVBK0NlLENBL0NDLGFBK0NhLENBbEc3QixlQWtHNkM7QUFDN0MsV0FBUztBQUNULFlBQVU7QUFDVixRQUFNO0FBQ04sT0FBSztBQUNMLFVBQVE7QUFDUixTQUFPO0FBQ1AsY0FBWSxJQUFJO0FBQ2hCLFdBQVM7QUFDVCxjQUFZLFFBQVE7QUFDckI7QUFFQSxDQTNEQyxlQTJEZSxDQTNEQyxhQTREakIsQ0EvR0MsZUErR2UsQ0FBQyxXQUFXLEtBQUssQ0FBQyxnQkFBZ0IsTUFBTTtBQUN2RCxXQUFTO0FBQ1Y7QUFHQSxDQXBIQyxlQW9IZSxDQUFDLFdBQVcsQ0FwRjNCO0FBcUZBLGNBQVk7QUFDWixXQUFTO0FBQ1Y7QUFFQSxDQXpIQyxlQXlIZSxDQUxDLFdBS1csQ0F2RzNCO0FBd0dBLFdBQVM7QUFDVjtBQUVBLENBN0hDLGVBNkhlLENBVEMsVUFTVTtBQUMxQixvQkFBa0IsSUFBSTtBQUN2QjtBQUdBLENBQUM7QUFDQSxRQUFNO0FBQ04sV0FBUztBQUNULGtCQUFnQjtBQUNoQixZQUFVO0FBQ1g7QUFHQSxDQUFDO0FBQ0EsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDN0Isb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsVUFBUTtBQUNSLFdBQVMsRUFBRTtBQUNYLE9BQUs7QUFDTjtBQUVBLENBQUM7QUFDQSxRQUFNLEVBQUUsRUFBRTtBQUNYO0FBRUEsQ0FBQztBQUNBLFlBQVU7QUFDVixXQUFTO0FBQ1QsZUFBYTtBQUViLGFBQVc7QUFDWCxRQUFNO0FBQ1A7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ047QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULG9CQUFrQixJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSztBQUNMLFdBQVMsSUFBSTtBQUNiLGNBQVk7QUFDWixVQUFRO0FBQ1IsaUJBQWU7QUFDZixhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1gsVUFBUTtBQUNSLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBZEMsV0FjVztBQUNYLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FsQkMsV0FrQlcsQ0E5T1E7QUErT25CLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNYLGNBQVksRUFBRSxJQUFJLElBQUksS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUNyQztBQUVBLENBQUM7QUFDQSxTQUFPO0FBQ1AsVUFBUTtBQUNSLFdBQVM7QUFDVCxlQUFhO0FBQ2Q7QUFFQSxDQUFDO0FBQ0EsU0FBTztBQUNQLFVBQVE7QUFDUixvQkFBa0IsSUFBSTtBQUN2QjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTCxXQUFTLElBQUk7QUFDYixjQUFZO0FBQ1osVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWCxVQUFRO0FBQ1IsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FkQyxhQWNhO0FBQ2Isb0JBQWtCLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBQ0EsU0FBTztBQUNQLFVBQVE7QUFDUixXQUFTO0FBQ1Y7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ047QUFFQSxDQUFDO0FBQ0EsWUFBVTtBQUNWLFNBQU87QUFDUCxVQUFRO0FBQ1IsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsaUJBQWU7QUFDZixTQUFPLElBQUk7QUFDWCxVQUFRO0FBQ1IsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FiQyxrQkFha0I7QUFDbEIsb0JBQWtCLElBQUk7QUFDdEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsWUFBVTtBQUNWLE9BQUs7QUFDTCxTQUFPO0FBQ1Asb0JBQWtCLElBQUk7QUFDdEIsU0FBTztBQUNQLGFBQVc7QUFDWCxlQUFhO0FBQ2IsV0FBUyxJQUFJO0FBQ2IsaUJBQWU7QUFDZixhQUFXO0FBQ1gsY0FBWTtBQUNiO0FBR0EsQ0FBQztBQUNBLFFBQU07QUFDTixZQUFVO0FBQ1g7QUFFQSxDQUxDLGNBS2MsQ0FBQztBQUNoQixDQU5DLGNBTWMsQ0FBQztBQUNmLFdBQVM7QUFDVjtBQUdBLENBQUM7QUFDRCxDQUFDO0FBQ0QsQ0FBQztBQUNELENBQUM7QUFDQSxVQUFRO0FBQ1Q7QUFHQSxPQUFPLENBQUMsU0FBUyxFQUFFO0FBQ2xCLEdBMWdCQSx1QkEwZ0J3QixLQUFLLENBQUM7QUFDN0IsV0FBTztBQUNSO0FBRUEsR0ExSUE7QUEySUMsYUFBUztBQUNWO0FBRUEsR0F4SkE7QUF5SkMsVUFBTTtBQUNQO0FBRUEsR0FoS0EsWUFnS2EsQ0FBQztBQUNiLFdBQU87QUFDUjtBQUNEO0FBR0EsT0FBTyxDQUFDLFNBQVMsRUFBRTtBQUVsQixHQTloQkEsdUJBOGhCd0IsQ0FwQk07QUFxQjdCLFdBQU87QUFDUCxlQUFXO0FBQ1o7QUFHQSxHQUFDO0FBQ0EsV0FBTztBQUNQLFlBQVE7QUFDVDtBQUdBLEdBN0xBO0FBOExDLGFBQVMsRUFBRTtBQUNaO0FBR0EsR0FyS0E7QUFzS0MsYUFBUztBQUNWO0FBR0EsR0ExTEE7QUEyTEMsVUFBTTtBQUNOLGVBQVcsS0FBSyxNQUFNLEVBQUU7QUFDekI7QUFDRDtBQUdBLENBM2pCQztBQTRqQkE7QUFBQSxJQUFZLE1BQU0sS0FBSyxJQUFJO0FBQUEsSUFBRSxVQUFVLEtBQUssSUFBSTtBQUFBLElBQUUsVUFBVSxLQUFLO0FBQ2xFO0FBR0EsQ0Foa0JDLHVCQWdrQnVCLENBQUM7QUFFekIsQ0FBQyxxQkFBcUIsQ0Fsa0JyQjtBQW1rQkEsU0FBTztBQUNQLGFBQVc7QUFDWCxhQUFXO0FBQ1o7QUFHQSxDQUFDO0FBQ0EsVUFBUTtBQUNSLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsZUFBYTtBQUNiLE9BQUs7QUFDTCxXQUFTLElBQUk7QUFDZDtBQUVBLENBQUM7QUFDQSxTQUFPO0FBQ1AsVUFBUTtBQUNSLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLGlCQUFlLElBQUk7QUFDbkIsU0FBTyxJQUFJO0FBQ1gsVUFBUTtBQUNSLGNBQVksaUJBQWlCLE1BQU0sSUFBSSxFQUFFLE1BQU0sTUFBTTtBQUN0RDtBQUVBLENBWkMsV0FZVztBQUNYLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FqQkMsWUFpQlk7QUFDWixTQUFPO0FBQ1AsVUFBUTtBQUNUO0FBR0EsQ0F2QkMsV0F1QlcsQ0FwYlE7QUFxYm5CLG9CQUFrQixJQUFJO0FBQ3RCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLFlBQVU7QUFDWDtBQUVBLENBSkMsT0FJTztBQUNQLFdBQVM7QUFDVCxhQUFXO0FBQ1gsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLGdCQUFjO0FBQ2QsaUJBQWU7QUFDZixlQUFhO0FBQ2IsZUFBYTtBQUNiLFlBQVU7QUFDVixPQUFLO0FBQ0wsU0FBTztBQUNQLGlCQUFlO0FBQ2Ysa0JBQWdCO0FBQ2hCLGVBQWE7QUFDZDtBQUdBLENBQUM7QUFDQSxZQUFVO0FBQ1YsT0FBSztBQUNMLFFBQU07QUFDTixTQUFPO0FBQ1AsVUFBUTtBQUNSLG9CQUFrQixLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFO0FBQ2hDLFdBQVM7QUFDVCxXQUFTO0FBQ1QsY0FBWSxRQUFRLEtBQUs7QUFDekIsa0JBQWdCO0FBQ2pCO0FBRUEsQ0FBQyxZQUFZLENBYlo7QUFjQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2pCO0FBR0EsQ0F2cEJDLHVCQXVwQnVCLENBN0lPO0FBOEk5QixZQUFVO0FBQ1YsT0FBSztBQUNMLFFBQU07QUFDTixVQUFRO0FBQ1IsU0FBTztBQUNQLGFBQVc7QUFDWCxhQUFXO0FBQ1gsV0FBUztBQUNULGFBQVcsV0FBVztBQUN0QixjQUFZLFVBQVUsS0FBSyxhQUFhLEdBQUcsRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFO0FBQ3JELGNBQVksSUFBSSxFQUFFLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUN0QztBQUdBLENBckJDLFlBcUJZLENBdHFCWix1QkFzcUJvQyxDQTVKTjtBQTZKOUIsYUFBVyxXQUFXO0FBQ3ZCO0FBR0EsQ0EzcUJDLHVCQTJxQnVCLENBaktPLGlCQWlLVyxDQWhxQnpDLFVBZ3FCb0QsQ0EzRzVCO0FBNEd4QixXQUFTO0FBQ1QsU0FBTztBQUNSO0FBR0EsQ0FqckJDLHVCQWlyQnVCLENBdktPLGlCQXVLVyxDQXhHekM7QUF5R0EsV0FBUztBQUNWO0FBR0EsQ0FBQyxVQUFVLENBM3FCVjtBQTRxQkEsU0FBTztBQUNQLGNBQVk7QUFDWixjQUFZO0FBQ2I7QUFFQSxDQU5DLFVBTVUsQ0EzcUJWO0FBNHFCQSxXQUFTO0FBQ1QsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDOUI7QUFHQSxDQVpDLFVBWVUsQ0F4bEJWO0FBeWxCQSxjQUFZO0FBQ1osY0FBWSxLQUNYLE1BQU0sRUFBRTtBQUVWO0FBRUEsQ0FuQkMsVUFtQlUsQ0F4bEJWO0FBeWxCQSxXQUFTO0FBQ1QsY0FBWTtBQUNiO0FBR0EsQ0F6QkMsVUF5QlUsQ0F0bEJWO0FBdWxCQSxXQUFTO0FBQ1QsY0FBWTtBQUNiO0FBRUEsQ0E5QkMsVUE4QlUsQ0E5aUJWO0FBK2lCRCxDQS9CQyxVQStCVSxDQXZmVjtBQXdmQSxXQUFTLEtBQUs7QUFDZCxhQUFXO0FBQ1o7QUFFQSxDQXBDQyxVQW9DVSxDQTFvQlY7QUEyb0JBLFdBQVM7QUFDVCxhQUFXO0FBQ1o7QUFFQSxDQXpDQyxVQXlDVSxDQTdqQlY7QUE4akJBLFdBQVM7QUFDVCxtQkFBaUI7QUFDbEI7QUFFQSxDQTlDQyxVQThDVSxJQUFJLENBOWhCZDtBQStoQkEsV0FBUztBQUNWO0FBR0EsQ0FuREMsVUFtRFUsQ0Fua0JWO0FBb2tCRCxDQXBEQyxVQW9EVSxDQTVnQlY7QUE2Z0JELENBckRDLFVBcURVLENBcGVWO0FBcWVBLGNBQVk7QUFDYjtBQUdBLENBL0ZDLFlBK0ZZLENBaFpaO0FBaVpBLGtCQUFnQjtBQUNqQjtBQUdBLENBak5FO0FBa05ELFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU87QUFDUCxVQUFRO0FBQ1IsaUJBQWU7QUFDZixTQUFPLElBQUk7QUFDWCxVQUFRO0FBQ1IsY0FBWSxpQkFBaUIsTUFBTSxJQUFJLEVBQUUsTUFBTSxNQUFNO0FBQ3JELGdCQUFjO0FBQ2QsZUFBYTtBQUNkO0FBRUEsQ0EvTkUsbUJBK05rQjtBQUNuQixvQkFBa0IsSUFBSTtBQUN0QixTQUFPLElBQUk7QUFDWjtBQUVBLENBcE9FLG9CQW9PbUI7QUFDcEIsU0FBTztBQUNQLFVBQVE7QUFDVDtBQUdBLENBeFpDO0FBeVpBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSztBQUNOO0FBR0EsQ0FyeEJDLHVCQXF4QnVCLENBM1FPLGlCQTRRL0IsRUFBRSxDQXRiRCxxQkF1YkQsQ0FBQztBQUNBLFdBQVM7QUFDVjtBQUdBLENBNXhCQyx1QkE0eEJ1QixDQWxSTyxnQkFrUlUsQ0FBQztBQUN6QyxRQUFNO0FBQ04sU0FBTztBQUNQLGFBQVcsV0FBVztBQUN0QixjQUFZLEtBQUssRUFBRSxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUU7QUFDdkM7QUFFQSxDQWxKQyxZQWtKWSxDQW55QlosdUJBbXlCb0MsQ0F6Uk4sZ0JBeVJ1QixDQVBaO0FBUXpDLGFBQVcsV0FBVztBQUN2QjtBQUVBLENBbnpCQyxZQW16QlksS0FBSyxDQUFDO0FBQ2xCLGdCQUFjO0FBQ2QsaUJBQWU7QUFDZixlQUFhO0FBQ2Q7QUFFQSxDQU5tQixxQkFNRyxDQUFDO0FBQ3RCLFNBQU87QUFDUjtBQUdBLFdBQVc7QUFDVjtBQUNDLGVBQVcsV0FBVztBQUN0QixhQUFTO0FBQ1Y7QUFDQTtBQUNDLGVBQVcsV0FBVztBQUN0QixhQUFTO0FBQ1Y7QUFDRDtBQUVBLFdBQVc7QUFDVjtBQUNDLGVBQVcsV0FBVztBQUN0QixhQUFTO0FBQ1Y7QUFDQTtBQUNDLGVBQVcsV0FBVztBQUN0QixhQUFTO0FBQ1Y7QUFDRDtBQUdBLENBQUM7QUFDQSxZQUFVO0FBQ1YsY0FBWSxJQUFJLElBQUksbUJBQW1CLEVBQUU7QUFDekMsaUJBQWU7QUFDZixVQUFRO0FBQ1IsU0FBTztBQUNQLE9BQUs7QUFDTCxVQUFRO0FBQ1IsVUFBUSxLQUFLO0FBQ2IsYUFBVyxhQUFhLFNBQVMsR0FBRyxPQUFPO0FBQzVDO0FBRUEsV0FIWTtBQUlYO0FBQ0MsZ0JBQVksSUFBSSxJQUFJLG1CQUFtQixFQUFFO0FBQ3pDLFdBQU87QUFDUjtBQUNBO0FBQ0MsZ0JBQVksSUFBSSxJQUFJLG1CQUFtQixFQUFFO0FBQ3pDLFdBQU87QUFDUjtBQUNEOzs7QUNyM0JBO0FBRUMsa0JBQWdCLEVBQUUsSUFBSSxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFO0FBQ3hDLGVBQWEsRUFBRSxJQUFJLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsSUFBSSxJQUFJLEtBQUssSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFO0FBQ3RFLGtCQUFnQixFQUFFLElBQUksSUFBSSxLQUFLLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxJQUFJLElBQUksS0FBSyxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUU7QUFDNUUsa0JBQWdCLEVBQUUsS0FBSyxLQUFLLEtBQUssSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLElBQUksSUFBSSxLQUFLLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRTtBQUM5RSxrQkFBZ0IsRUFBRSxLQUFLLEtBQUssS0FBSyxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFO0FBRy9FLHdCQUFzQixNQUFNLGFBQWEsR0FBRyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUU7QUFDdEQsd0JBQXNCLE1BQU0sYUFBYSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRTtBQUN0RCx3QkFBc0IsTUFBTSxhQUFhLEdBQUcsRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFO0FBR3RELGtCQUFnQjtBQUNoQixlQUFhO0FBQ2Isa0JBQWdCO0FBQ2hCLGtCQUFnQjtBQUNoQixvQkFBa0I7QUFDbkI7QUFHQSxDQUFDO0FBQ0EsVUFBUTtBQUNSLGNBQVk7QUFDWixXQUFTO0FBQ1QsYUFBVyxPQUFPLElBQUk7QUFDdkI7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLFVBQVEsRUFBRTtBQUNYO0FBRUEsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNoQixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDbkIsaUJBQWU7QUFDZixXQUFTLEtBQUs7QUFDZCxjQUFZLElBQUksSUFBSTtBQUNwQixZQUFVO0FBQ1YsWUFBVTtBQUNYO0FBRUEsQ0FYQyxjQVdjO0FBQ2QsV0FBUztBQUNULFlBQVU7QUFDVixRQUFNO0FBQ04sT0FBSztBQUNMLFVBQVE7QUFDUixTQUFPO0FBQ1AsY0FBWTtBQUNaLGNBQVksV0FBVyxJQUFJO0FBQzVCO0FBRUEsQ0F0QkMsY0FzQmM7QUFDZCxjQUFZLElBQUk7QUFDaEIsYUFBVyxXQUFXO0FBQ3RCLGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQTVCQyxjQTRCYyxNQUFNO0FBQ3BCLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBaENDLGNBZ0NjLENBQUM7QUFDZixXQUFTO0FBQ1QsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FyQ0MsY0FxQ2MsQ0FBQyxVQUFVO0FBQ3pCLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBQUM7QUFDQSxjQUFZO0FBQ1osV0FBUyxLQUFLO0FBQ2QsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNaO0FBR0EsQ0FBQztBQUNBLFVBQVE7QUFDUixjQUFZO0FBQ1osV0FBUztBQUNULGFBQVcsT0FBTyxJQUFJO0FBQ3ZCO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxVQUFRLEVBQUU7QUFDWDtBQUVBLENBQUM7QUFDQSxpQkFBZTtBQUNmLGNBQVksSUFBSTtBQUNoQixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDbkIsWUFBVTtBQUNWLGNBQVksSUFBSSxJQUFJO0FBQ3JCO0FBRUEsQ0FUQyxpQkFTaUI7QUFDakIsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FBQztBQUNBLFdBQVMsS0FBSztBQUNkLGNBQVksSUFBSTtBQUNoQixpQkFBZSxJQUFJLE1BQU0sSUFBSTtBQUM3QixlQUFhO0FBQ2IsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFVBQVE7QUFDUixjQUFZLFdBQVcsSUFBSTtBQUM1QjtBQUVBLENBZEMsd0JBY3dCO0FBQ3hCLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBbEJDLHdCQWtCd0I7QUFDeEIsV0FBUztBQUNULFdBQVM7QUFDVCxnQkFBYztBQUNkLGNBQVksVUFBVSxJQUFJO0FBQzFCLGFBQVc7QUFDWjtBQUVBLENBdkNDLGlCQXVDaUIsQ0FBQyxZQUFZLENBMUI5Qix3QkEwQnVEO0FBQ3ZELGFBQVcsT0FBTztBQUNuQjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1Y7QUFFQSxDQUFDO0FBQ0EsV0FBUyxRQUFRO0FBQ2pCLFVBQVE7QUFDUixpQkFBZSxJQUFJO0FBQ25CLGNBQVksSUFBSSxJQUFJO0FBQ3BCLFlBQVU7QUFDVixnQkFBYztBQUNmO0FBRUEsQ0FUQyxjQVNjO0FBQ2QsV0FBUztBQUNULFlBQVU7QUFDVixRQUFNO0FBQ04sT0FBSztBQUNMLGFBQVcsV0FBVztBQUN0QixTQUFPO0FBQ1AsVUFBUTtBQUNSLGNBQVksSUFBSTtBQUNoQixpQkFBZSxJQUFJO0FBQ3BCO0FBRUEsQ0FyQkMsY0FxQmM7QUFDZCxjQUFZLElBQUk7QUFDakI7QUFFQSxDQUFDO0FBQ0EsY0FBWTtBQUNaLFdBQVMsS0FBSztBQUNkLFNBQU8sSUFBSTtBQUNYLGFBQVc7QUFDWjtBQUdBLENBQUM7QUFDQSxZQUFVO0FBQ1YsU0FBTztBQUNQLE9BQUs7QUFDTCxVQUFRO0FBQ1IsU0FBTztBQUNQLGNBQVksSUFBSTtBQUNoQixlQUFhLElBQUksTUFBTSxJQUFJO0FBQzNCLGNBQVksSUFBSTtBQUNoQixjQUFZLE1BQU0sSUFBSTtBQUN0QixXQUFTO0FBQ1QsY0FBWTtBQUNaLFdBQVM7QUFDVCxrQkFBZ0I7QUFDakI7QUFFQSxDQWhCQyxrQkFnQmtCLENBQUM7QUFDbkIsU0FBTztBQUNSO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxpQkFBZSxJQUFJLE1BQU0sSUFBSTtBQUM3QixXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNsQjtBQUVBLENBQUM7QUFDQSxhQUFXO0FBQ1gsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUCxVQUFRO0FBQ1IsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsaUJBQWUsSUFBSTtBQUNuQixVQUFRO0FBQ1IsY0FBWSxXQUFXLElBQUk7QUFDM0IsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQVpDLGtCQVlrQjtBQUNsQixjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLGlCQUFlO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1gsaUJBQWU7QUFDZixrQkFBZ0I7QUFDaEIsa0JBQWdCO0FBQ2pCO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsT0FBSztBQUNOO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsV0FBUyxPQUFPO0FBQ2hCLGlCQUFlLElBQUk7QUFDbkIsVUFBUTtBQUNSLGNBQVksV0FBVyxJQUFJO0FBQzVCO0FBRUEsQ0FUQyxhQVNhO0FBQ2IsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FiQyxhQWFhLENBQUM7QUFDZCxjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsZ0JBQWM7QUFDZjtBQUdBLENBQUM7QUFDQSxTQUFPO0FBQ1AsV0FBUyxPQUFPO0FBQ2hCLGNBQVksSUFBSTtBQUNoQixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlLElBQUk7QUFDbkIsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNYLGNBQVksSUFBSSxJQUFJO0FBQ3BCLFVBQVE7QUFDVDtBQUVBLENBWkMsYUFZYTtBQUNiLGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQWhCQyxhQWdCYTtBQUNiLFdBQVM7QUFDVCxnQkFBYyxJQUFJO0FBQ2xCLGNBQVksRUFBRSxFQUFFLEVBQUUsSUFBSSxJQUFJO0FBQzNCO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxhQUFXO0FBQ1gsT0FBSztBQUNMLFdBQVMsT0FBTztBQUNqQjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTCxXQUFTLFNBQVM7QUFDbEIsY0FBWSxJQUFJO0FBQ2hCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixhQUFXO0FBQ1gsVUFBUTtBQUNSLGNBQVksSUFBSSxJQUFJO0FBQ3JCO0FBRUEsQ0FiQyxVQWFVO0FBQ1YsY0FBWSxJQUFJO0FBQ2pCO0FBRUEsQ0FqQkMsVUFpQlUsQ0F4REk7QUF5RGQsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGtCQUFnQjtBQUNoQixPQUFLO0FBQ047QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixPQUFLO0FBQ047QUFFQSxDQU5DLGtCQU1rQjtBQUNsQixhQUFXO0FBQ1gsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLFFBQU07QUFDTixXQUFTLE9BQU87QUFDaEIsY0FBWSxJQUFJO0FBQ2hCLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixTQUFPLElBQUk7QUFDWCxhQUFXO0FBQ1gsY0FBWSxJQUFJLElBQUk7QUFDckI7QUFFQSxDQVhDLGlCQVdpQjtBQUNqQixnQkFBYyxJQUFJO0FBQ25CO0FBRUEsQ0FmQyxpQkFlaUI7QUFDakIsV0FBUztBQUNULGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULE9BQUs7QUFDTCxjQUFZO0FBQ1osZUFBYTtBQUNiLGNBQVksSUFBSSxNQUFNLElBQUk7QUFDM0I7QUFFQSxDQVJDLHNCQVFzQjtBQUN0QixRQUFNO0FBQ1A7QUFFQSxDQUFDO0FBQ0EsU0FBTztBQUNQLFVBQVE7QUFDUixpQkFBZSxJQUFJO0FBQ25CLGVBQWE7QUFDZDtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLGVBQWE7QUFDYixtQkFBaUI7QUFDakIsVUFBUTtBQUNSLE9BQUs7QUFDTjtBQUVBLENBQUM7QUFDQSxTQUFPO0FBQ1AsVUFBUTtBQUNSLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsb0JBQWtCLElBQUk7QUFDdEIsaUJBQWUsSUFBSTtBQUNuQixhQUFXLEtBQUssR0FBRyxPQUFPO0FBQzNCO0FBRUEsV0FIWTtBQUlYO0FBQ0MsZUFBVyxPQUFPO0FBQ25CO0FBQ0Q7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1gsYUFBVztBQUNaO0FBR0EsQ0FBQztBQUNBLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixVQUFRO0FBQ1IsV0FBUztBQUNULGNBQVk7QUFDYjtBQUVBLENBQUM7QUFDQSxTQUFPO0FBQ1AsVUFBUTtBQUNSLGlCQUFlO0FBQ2YsU0FBTyxJQUFJO0FBQ1gsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLGFBQVc7QUFDWCxlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1gsaUJBQWU7QUFDaEI7QUFFQSxDQUFDO0FBQ0EsU0FBTyxJQUFJO0FBQ1gsaUJBQWU7QUFDZixhQUFXO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsV0FBUyxRQUFRO0FBQ2pCLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWCxVQUFRO0FBQ1IsaUJBQWUsSUFBSTtBQUNuQixlQUFhO0FBQ2IsVUFBUTtBQUNSLGNBQVksSUFBSSxJQUFJO0FBQ3JCO0FBRUEsQ0FYQyxrQkFXa0I7QUFDbEIsY0FBWSxJQUFJO0FBQ2hCLGFBQVcsV0FBVztBQUN0QixjQUFZLElBQUk7QUFDakI7QUFHQSxDQUFDO0FBQ0EsWUFBVTtBQUNWLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWCxXQUFTLE9BQU87QUFDaEIsaUJBQWUsSUFBSTtBQUNuQixhQUFXO0FBQ1gsY0FBWSxJQUFJO0FBQ2hCLFdBQVM7QUFDVCxrQkFBZ0I7QUFDaEIsV0FBUztBQUNULGFBQVcsV0FBVztBQUN0QixjQUFZLElBQUksSUFBSTtBQUNyQjtBQUVBLENBZkMsYUFlYSxDQUFDO0FBQ2QsV0FBUztBQUNULGFBQVcsV0FBVztBQUN2QjtBQUdBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDaEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZSxJQUFJO0FBQ25CLFdBQVM7QUFDVCxpQkFBZTtBQUNmLGNBQVksSUFBSSxJQUFJO0FBQ3JCO0FBRUEsQ0FUQyxVQVNVO0FBQ1YsY0FBWSxJQUFJO0FBQ2hCLGdCQUFjLElBQUk7QUFDbkI7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsaUJBQWU7QUFDZixrQkFBZ0I7QUFDaEIsaUJBQWUsSUFBSSxNQUFNLElBQUk7QUFDOUI7QUFFQSxDQUFDO0FBQ0EsYUFBVztBQUNYLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsT0FBSztBQUNOO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUCxVQUFRO0FBQ1IsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsaUJBQWUsSUFBSTtBQUNuQixVQUFRO0FBQ1IsY0FBWSxJQUFJLElBQUk7QUFDcEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQVpDLGlCQVlpQjtBQUNqQixjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1o7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsT0FBSztBQUNMLFdBQVMsU0FBUztBQUNsQixhQUFXO0FBQ1gsZUFBYTtBQUNiLGlCQUFlLElBQUk7QUFDbkIsVUFBUTtBQUNSLFVBQVE7QUFDUixjQUFZLElBQUksSUFBSTtBQUNwQixZQUFVO0FBQ1YsWUFBVTtBQUNYO0FBRUEsQ0FoQkMsWUFnQlk7QUFDWixXQUFTO0FBQ1QsWUFBVTtBQUNWLE9BQUs7QUFDTCxRQUFNO0FBQ04sU0FBTztBQUNQLFVBQVE7QUFDUixpQkFBZSxJQUFJO0FBQ25CLGNBQVksS0FBSyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRTtBQUNoQyxhQUFXLFVBQVUsSUFBSSxFQUFFO0FBQzNCLGNBQVksTUFBTSxJQUFJLHFCQUFxQixFQUMzQyxPQUFPLElBQUk7QUFDWjtBQUVBLENBOUJDLFlBOEJZLE9BQU87QUFDbkIsU0FBTztBQUNQLFVBQVE7QUFDVDtBQUVBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUxDLG9CQUtvQjtBQUNwQixjQUFZLElBQUk7QUFDaEIsYUFBVyxXQUFXO0FBQ3RCLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ1gsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN2QjtBQUVBLENBTkMsc0JBTXNCO0FBQ3RCLGNBQVksSUFBSTtBQUNoQixnQkFBYyxJQUFJO0FBQ25CO0FBRUEsQ0FBQztBQUNBLGNBQVk7QUFDWixTQUFPLElBQUk7QUFDWjtBQUVBLENBTEMsa0JBS2tCO0FBQ2xCLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDaEIsU0FBTztBQUNSO0FBRUEsQ0FMQyxtQkFLbUI7QUFDbkIsY0FBWTtBQUNaLGFBQVcsV0FBVztBQUN0QixjQUFZLElBQUk7QUFDakI7QUFHQSxXQTFrQlk7QUEya0JYO0FBQ0MsYUFBUztBQUNULGVBQVcsV0FBVztBQUN2QjtBQUNBO0FBQ0MsYUFBUztBQUNULGVBQVcsV0FBVztBQUN2QjtBQUNEO0FBRUEsV0FBVztBQUNWO0FBQ0MsZUFBVyxXQUFXO0FBQ3ZCO0FBQ0E7QUFDQyxlQUFXLFdBQVc7QUFDdkI7QUFDRDtBQUVBLFdBQVc7QUFDVjtBQUNDLGVBQVcsV0FBVztBQUN2QjtBQUNBO0FBQ0MsZUFBVyxXQUFXO0FBQ3ZCO0FBQ0Q7QUFFQSxXQUFXO0FBQ1Y7QUFFQyxhQUFTO0FBQ1Y7QUFDQTtBQUNDLGFBQVM7QUFDVjtBQUNEO0FBR0EsT0FBTyxDQUFDLFNBQVMsRUFBRTtBQUNsQixHQXZuQkE7QUFBQSxFQXduQkEsQ0EzakJBO0FBNGpCQyxhQUFTO0FBQ1Y7QUFFQSxHQW5lQTtBQW9lQyxXQUFPO0FBQ1AsV0FBTztBQUNSO0FBQ0Q7QUFFQSxPQUFPLENBQUMsU0FBUyxFQUFFO0FBQ2xCLEdBdm5CQTtBQXduQkMsYUFBUyxRQUFRO0FBQ2xCO0FBRUEsR0FqakJBO0FBa2pCQyxhQUFTLFFBQVE7QUFDbEI7QUFFQSxHQS9MQTtBQWdNQyxhQUFTO0FBQ1Y7QUFDRDtBQUdBLENBQUM7QUFDQSxrQkFBZ0IsRUFBRSxJQUFJLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUU7QUFDeEMsZUFBYSxFQUFFLElBQUksSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxJQUFJLElBQUksS0FBSyxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUU7QUFDdEUsa0JBQWdCLEVBQUUsSUFBSSxJQUFJLEtBQUssSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLElBQUksSUFBSSxLQUFLLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRTtBQUM1RSxrQkFBZ0IsRUFBRSxLQUFLLEtBQUssS0FBSyxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsSUFBSSxJQUFJLEtBQUssSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFO0FBQzlFLGtCQUFnQixFQUFFLEtBQUssS0FBSyxLQUFLLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUU7QUFDaEY7QUFFQSxDQVJDLFdBUVcsQ0E3TVgsVUE2TXNCO0FBQ3ZCLENBVEMsV0FTVyxDQTlvQlgsY0E4b0IwQjtBQUMzQixDQVZDLFdBVVcsQ0FsbEJYLGlCQWtsQjZCO0FBQzdCLGNBQVksRUFBRSxFQUFFLEVBQUUsSUFBSSxJQUFJLHFCQUFxQixFQUMvQyxJQUFJO0FBQ0w7QUFHQSxDQUFDO0FBQ0EsU0FBTztBQUNQLFVBQVE7QUFDUixjQUFZLElBQUk7QUFDaEIsaUJBQWUsSUFBSTtBQUNuQixZQUFVO0FBQ1YsVUFBUSxPQUFPO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLFVBQVE7QUFDUixjQUFZLElBQUk7QUFDaEIsaUJBQWUsSUFBSTtBQUNuQixjQUFZLE1BQU0sSUFBSTtBQUN0QixZQUFVO0FBQ1YsWUFBVTtBQUNYO0FBRUEsQ0FUQyxrQkFTa0I7QUFDbEIsV0FBUztBQUNULFlBQVU7QUFDVixPQUFLO0FBQ0wsUUFBTTtBQUNOLFNBQU87QUFDUCxVQUFRO0FBQ1I7QUFBQSxJQUFZO0FBQUEsTUFDWCxLQUFLO0FBQUEsTUFDTCxXQUFXO0FBQUEsTUFDWCxLQUFLLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUk7QUFBQSxNQUN4QjtBQUVELGFBQVcsUUFBUSxHQUFHO0FBQ3ZCO0FBRUEsV0FIWTtBQUlYO0FBQ0MsZUFBVyxXQUFXO0FBQ3ZCO0FBQ0E7QUFDQyxlQUFXLFdBQVc7QUFDdkI7QUFDRDtBQUdBLENBQUM7QUFDQSxXQUFTO0FBQ1QsZUFBYTtBQUNiLFdBQVMsUUFBUTtBQUNqQixhQUFXO0FBQ1gsZUFBYTtBQUNiLGlCQUFlLElBQUk7QUFDbkIsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLFVBQVEsSUFBSSxNQUFNLElBQUk7QUFDdEIsZ0JBQWM7QUFDZCxjQUFZLElBQUksSUFBSTtBQUNyQjtBQUVBLENBZEMsU0FjUztBQUNULGNBQVksSUFBSTtBQUNoQixnQkFBYyxJQUFJO0FBQ25CO0FBRUEsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWCxnQkFBYyxJQUFJO0FBQ25CO0FBRUEsQ0FBQztBQUNBLGNBQVk7QUFDWixTQUFPO0FBQ1AsZ0JBQWM7QUFDZjtBQUVBLENBQUM7QUFDQSxjQUFZO0FBQ1osU0FBTztBQUNQLGdCQUFjO0FBQ2Y7QUFFQSxDQUFDO0FBQ0EsY0FBWSxJQUFJO0FBQ2hCLFNBQU87QUFDUCxnQkFBYyxJQUFJO0FBQ25CO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLE9BQUssSUFBSTtBQUNWOzs7QUNueEJBLENBQUM7QUFDQSxXQUFTO0FBQ1Qsa0JBQWdCO0FBQ2hCLFVBQVE7QUFDUixZQUFVO0FBQ1g7QUFHQSxDQUFDO0FBQ0EsV0FBUztBQUNULGVBQWE7QUFDYixtQkFBaUI7QUFDakIsV0FBUyxLQUFLO0FBQ2QsY0FBWSxJQUFJO0FBQ2hCLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzdCLGNBQVk7QUFDWixPQUFLO0FBQ0wsZUFBYTtBQUNkO0FBRUEsQ0FaQyxrQkFZa0IsQ0FBQztBQUNuQixXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTCxhQUFXO0FBQ1o7QUFFQSxDQW5CQyxrQkFtQmtCLENBQUM7QUFDbkIsYUFBVztBQUNYLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2Q7QUFFQSxDQTFCQyxrQkEwQmtCLENBQUM7QUFDbkIsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLFdBQVMsSUFBSTtBQUNiLGNBQVksSUFBSTtBQUNoQixpQkFBZTtBQUNmLGVBQWE7QUFDZDtBQUVBLENBbkNDLGtCQW1Da0IsQ0FBQztBQUNuQixRQUFNO0FBQ04sV0FBUztBQUNULG1CQUFpQjtBQUNqQixhQUFXO0FBQ1gsVUFBUSxFQUFFO0FBQ1g7QUFFQSxDQTNDQyxrQkEyQ2tCLENBQUM7QUFDbkIsU0FBTztBQUNSO0FBRUEsQ0EvQ0Msa0JBK0NrQixDQUFDO0FBQ25CLFNBQU87QUFDUCxXQUFTLElBQUk7QUFDYixjQUFZLElBQUk7QUFDaEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWCxjQUFZLElBQUksS0FBSztBQUN0QjtBQUVBLENBMURDLGtCQTBEa0IsQ0FYQyxZQVdZO0FBQy9CLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0E5REMsa0JBOERrQixDQWZDLFlBZVk7QUFDL0IsV0FBUztBQUNULGdCQUFjLElBQUk7QUFDbEIsY0FBWSxFQUFFLEVBQUUsRUFBRSxJQUFJLEtBQUssSUFBSSx5QkFBeUIsRUFBRTtBQUMzRDtBQUVBLENBcEVDLGtCQW9Fa0IsQ0FBQztBQUNuQixXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUs7QUFDTjtBQUVBLENBMUVDLGtCQTBFa0IsQ0FBQztBQUNwQixDQTNFQyxrQkEyRWtCLENBQUM7QUFDcEIsQ0E1RUMsa0JBNEVrQixDQUFDO0FBQ25CLFdBQVM7QUFDVCxlQUFhO0FBQ2IsbUJBQWlCO0FBQ2pCLFNBQU87QUFDUCxVQUFRO0FBQ1IsaUJBQWU7QUFDZixjQUFZO0FBQ1osU0FBTyxJQUFJO0FBQ1gsVUFBUTtBQUNSLGNBQVksSUFBSSxLQUFLO0FBQ3RCO0FBRUEsQ0F6RkMsa0JBeUZrQixDQWZDLGVBZWU7QUFDbkMsQ0ExRkMsa0JBMEZrQixDQWZDLFdBZVc7QUFDL0IsQ0EzRkMsa0JBMkZrQixDQWZDLGFBZWE7QUFDaEMsY0FBWSxJQUFJO0FBQ2hCLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FoR0Msa0JBZ0drQixDQXRCQyxlQXNCZTtBQUNuQyxDQWpHQyxrQkFpR2tCLENBdEJDLFdBc0JXO0FBQy9CLENBbEdDLGtCQWtHa0IsQ0F0QkMsYUFzQmE7QUFDaEMsYUFBVyxNQUFNO0FBQ2xCO0FBRUEsQ0F0R0Msa0JBc0drQixDQTVCQyxnQkE0QmdCO0FBQ3BDLENBdkdDLGtCQXVHa0IsQ0E1QkMsWUE0Qlk7QUFDaEMsQ0F4R0Msa0JBd0drQixDQTVCQyxjQTRCYztBQUNqQyxTQUFPO0FBQ1AsVUFBUTtBQUNUO0FBR0EsQ0FBQztBQUNBLFFBQU07QUFDTixjQUFZO0FBQ1osY0FBWSxJQUFJO0FBQ2pCO0FBR0EsT0FBTyxDQUFDLFNBQVMsRUFBRTtBQUNsQixHQXRIQTtBQXVIQyxlQUFXO0FBQ1gsYUFBUyxJQUFJO0FBQ2Q7QUFFQSxHQTNIQSxrQkEySG1CLENBL0dBO0FBZ0hsQixlQUFXO0FBQ1o7QUFFQSxHQS9IQSxrQkErSG1CLENBNUZBO0FBNkZsQixXQUFPO0FBQ1AsV0FBTztBQUNQLGVBQVc7QUFDWCxnQkFBWTtBQUNiO0FBRUEsR0F0SUEsa0JBc0ltQixDQW5IQTtBQW9IbEIsZUFBVztBQUNaO0FBQ0Q7OztBQ25KQSxDQUFDO0FBQ0EsWUFBVTtBQUNWLFdBQVM7QUFDVjtBQUVBLENBQUM7QUFDQSxjQUFZLElBQUk7QUFDaEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLGNBQVksRUFBRSxJQUFJLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUNyQyxhQUFXO0FBQ1gsYUFBVztBQUNYLGFBQVcsZ0JBQWdCLEtBQUs7QUFDakM7QUFFQSxXQUhZO0FBSVg7QUFDQyxhQUFTO0FBQ1QsZUFBVyxXQUFXO0FBQ3ZCO0FBQ0E7QUFDQyxhQUFTO0FBQ1QsZUFBVyxXQUFXO0FBQ3ZCO0FBQ0Q7QUFFQSxDQUFDO0FBQ0QsQ0FEQyxnQkFDZ0I7QUFDaEIsWUFBVTtBQUNWLFNBQU87QUFDUCxVQUFRO0FBQ1IsY0FBWTtBQUNiO0FBRUEsQ0FSQztBQVNBLGNBQVk7QUFDYjtBQUVBLENBWkMsZ0JBWWdCO0FBQ2hCLGNBQVk7QUFDWixXQUFTO0FBQ1QsYUFBVyxPQUFPO0FBQ2xCLGNBQVksSUFBSTtBQUNoQixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3ZCO0FBR0EsQ0ExQ0Msa0JBMENrQixDQUFDLDRCQUE4QixDQXJCakQ7QUFzQkEsVUFBUTtBQUNUO0FBRUEsQ0E5Q0Msa0JBOENrQixDQUFDLDRCQUE4QixDQXpCakQsZ0JBeUJrRTtBQUNsRSxjQUFZO0FBQ1osZUFBYTtBQUNkO0FBRUEsQ0FuREMsa0JBbURrQixDQUFDLCtCQUFpQyxDQTlCcEQ7QUErQkEsT0FBSztBQUNOO0FBRUEsQ0F2REMsa0JBdURrQixDQUFDLCtCQUFpQyxDQWxDcEQsZ0JBa0NxRTtBQUNyRSxnQkFBYztBQUNkLGlCQUFlO0FBQ2hCO0FBRUEsQ0E1REMsa0JBNERrQixDQUFDLDZCQUErQixDQXZDbEQ7QUF3Q0EsU0FBTztBQUNSO0FBRUEsQ0FoRUMsa0JBZ0VrQixDQUFDLDZCQUErQixDQTNDbEQsZ0JBMkNtRTtBQUNuRSxpQkFBZTtBQUNmLGVBQWE7QUFDZDtBQUVBLENBckVDLGtCQXFFa0IsQ0FBQyw4QkFBZ0MsQ0FoRG5EO0FBaURBLFFBQU07QUFDUDtBQUVBLENBekVDLGtCQXlFa0IsQ0FBQyw4QkFBZ0MsQ0FwRG5ELGdCQW9Eb0U7QUFDcEUsY0FBWTtBQUNaLGdCQUFjO0FBQ2Y7QUFFQSxDQUFDO0FBQ0EsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLGlCQUFlO0FBQ2Ysa0JBQWdCO0FBQ2hCLGlCQUFlLElBQUksTUFBTSxJQUFJO0FBQzlCO0FBRUEsQ0FOQyxrQkFNa0I7QUFDbEIsVUFBUTtBQUNSLGFBQVc7QUFDWCxlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsaUJBQWU7QUFDaEI7QUFFQSxDQUpDLG1CQUltQjtBQUNuQixXQUFTO0FBQ1QsaUJBQWU7QUFDZixhQUFXO0FBQ1gsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNYLGtCQUFnQjtBQUNoQixrQkFBZ0I7QUFDakI7QUFFQSxDQUFDO0FBQ0EsU0FBTztBQUNQLFdBQVMsSUFBSTtBQUNiLGNBQVksSUFBSTtBQUNoQixVQUFRLElBQUksTUFBTSxJQUFJO0FBQ3RCLGlCQUFlO0FBQ2YsYUFBVztBQUNYLFNBQU8sSUFBSTtBQUNYLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBWEMsZ0JBV2dCO0FBQ2hCLFdBQVM7QUFDVCxnQkFBYyxJQUFJO0FBQ2xCLGNBQVksRUFBRSxFQUFFLEVBQUUsSUFBSSxJQUFJO0FBQzNCO0FBRUEsQ0FqQkMsZ0JBaUJnQixDQUFDO0FBQ2pCLGdCQUFjLElBQUk7QUFDbEIsYUFBVyxNQUFNO0FBQ2xCO0FBRUEsV0FIWTtBQUlYO0FBRUMsZUFBVyxXQUFXO0FBQ3ZCO0FBQ0E7QUFDQyxlQUFXLFdBQVc7QUFDdkI7QUFDQTtBQUNDLGVBQVcsV0FBVztBQUN2QjtBQUNEO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCx5QkFBdUIsT0FBTyxDQUFDLEVBQUU7QUFDakMsT0FBSztBQUNOO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUCxVQUFRO0FBQ1IsaUJBQWU7QUFDZixVQUFRO0FBQ1IsY0FBWSxJQUFJO0FBQ2hCLFVBQVEsSUFBSSxNQUFNO0FBQ2xCLFlBQVU7QUFDWDtBQUVBLENBVkMsZUFVZTtBQUNmLGFBQVcsTUFBTTtBQUNsQjtBQUVBLENBZEMsZUFjZSxDQUFDO0FBQ2hCLGdCQUFjLElBQUk7QUFDbEIsY0FBWSxFQUFFLEVBQUUsRUFBRSxJQUFJLElBQUk7QUFDM0I7QUFFQSxDQW5CQyxlQW1CZSxDQUxDLFdBS1c7QUFDM0IsV0FBUztBQUNULFlBQVU7QUFDVixPQUFLO0FBQ0wsUUFBTTtBQUNOLGFBQVcsVUFBVSxJQUFJLEVBQUU7QUFDM0IsU0FBTztBQUNQLGFBQVc7QUFDWCxlQUFhO0FBQ2IsZUFBYSxFQUFFLElBQUksSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFO0FBQ3RDO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxtQkFBaUI7QUFDakIsT0FBSztBQUNMLGNBQVk7QUFDWixlQUFhO0FBQ2IsY0FBWSxJQUFJLE1BQU0sSUFBSTtBQUMzQjtBQUVBLENBQUM7QUFDQSxXQUFTLElBQUk7QUFDYixpQkFBZTtBQUNmLGFBQVc7QUFDWCxlQUFhO0FBQ2IsVUFBUTtBQUNSLGNBQVksSUFBSTtBQUNoQixVQUFRO0FBQ1IsV0FBUztBQUNWO0FBRUEsQ0FBQztBQUNBLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWjtBQUVBLENBTEMsaUJBS2lCO0FBQ2pCLGNBQVksSUFBSTtBQUNqQjtBQUVBLENBQUM7QUFDQSxjQUFZO0FBQ1osU0FBTyxJQUFJO0FBQ1gsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN2QjtBQUVBLENBTkMsbUJBTW1CO0FBQ25CLGNBQVksSUFBSTtBQUNoQixTQUFPLElBQUk7QUFDWjtBQUdBLENBQUM7QUFFRDtBQUVBLENBSkMsaUJBSWlCLENBQUMsY0FBYztBQUNoQyxpQkFBZTtBQUNmLGFBQVc7QUFDWCxlQUFhO0FBQ2IsU0FBTyxJQUFJO0FBQ1o7QUFFQSxDQUFDO0FBQ0EsaUJBQWU7QUFDaEI7QUFFQSxDQUpDLGlCQUlpQjtBQUNqQixXQUFTO0FBQ1QsaUJBQWU7QUFDZixhQUFXO0FBQ1gsZUFBYTtBQUNiLFNBQU8sSUFBSTtBQUNaO0FBRUEsQ0FBQztBQUNBLFNBQU87QUFDUCxXQUFTLEtBQUs7QUFDZCxjQUFZLElBQUk7QUFDaEIsVUFBUSxJQUFJLE1BQU0sSUFBSTtBQUN0QixpQkFBZTtBQUNmLGFBQVc7QUFDWCxTQUFPLElBQUk7QUFDWCxjQUFZLElBQUk7QUFDakI7QUFFQSxDQVhDLGNBV2M7QUFDZCxXQUFTO0FBQ1QsZ0JBQWMsSUFBSTtBQUNsQixjQUFZLEVBQUUsRUFBRSxFQUFFLElBQUksSUFBSTtBQUMzQjtBQUVBLENBakJDLGNBaUJjLENBeElHO0FBeUlqQixnQkFBYyxJQUFJO0FBQ2xCLGFBQVcsTUFBTTtBQUNsQjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QseUJBQXVCLE9BQU8sQ0FBQyxFQUFFO0FBQ2pDLE9BQUs7QUFDTjtBQUVBLENBQUM7QUFDQSxTQUFPO0FBQ1AsVUFBUTtBQUNSLGlCQUFlO0FBQ2YsVUFBUTtBQUNSLGNBQVksSUFBSTtBQUNoQixVQUFRLElBQUksTUFBTTtBQUNsQixZQUFVO0FBQ1g7QUFFQSxDQVZDLHFCQVVxQjtBQUNyQixhQUFXLE1BQU07QUFDbEI7QUFFQSxDQWRDLHFCQWNxQixDQTNITDtBQTRIaEIsZ0JBQWMsSUFBSTtBQUNsQixjQUFZLEVBQUUsRUFBRSxFQUFFLElBQUksSUFBSTtBQUMzQjtBQUVBLENBbkJDLHFCQW1CcUIsQ0FoSUwsV0FnSWlCO0FBQ2pDLFdBQVM7QUFDVCxZQUFVO0FBQ1YsT0FBSztBQUNMLFFBQU07QUFDTixhQUFXLFVBQVUsSUFBSSxFQUFFO0FBQzNCLFNBQU87QUFDUCxhQUFXO0FBQ1gsZUFBYTtBQUNiLGVBQWEsRUFBRSxJQUFJLElBQUksS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUN0QztBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsY0FBWSxJQUFJO0FBQ2hCLGlCQUFlO0FBQ2hCO0FBRUEsQ0FBQztBQUNBLFdBQVM7QUFDVCxlQUFhO0FBQ2IsT0FBSztBQUNMLFdBQVM7QUFDVCxjQUFZLElBQUk7QUFDaEIsaUJBQWU7QUFDaEI7QUFFQSxDQVRDLHdCQVN3QixDQUFDO0FBQ3pCLFNBQU87QUFDUCxVQUFRO0FBQ1IsaUJBQWU7QUFDZixlQUFhO0FBQ2Q7QUFFQSxDQWhCQyx3QkFnQndCLENBQUM7QUFDekIsYUFBVztBQUNYLGVBQWE7QUFDYixTQUFPLElBQUk7QUFDWjtBQUVBLENBQUM7QUFDQSxXQUFTO0FBQ1QsbUJBQWlCO0FBQ2pCLE9BQUs7QUFDTCxXQUFTO0FBQ1QsY0FBWSxJQUFJLE1BQU0sSUFBSTtBQUMzQjtBQUVBLENBUkMsZ0JBUWdCLENBdEpoQjtBQXVKQSxXQUFTLEtBQUs7QUFDZCxhQUFXO0FBQ1o7IiwKICAibmFtZXMiOiBbXQp9Cg== */ +/*# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsic3JjL3N0eWxlcy9wcm9ncmVzc2Jhci5jc3MiLCAic3JjL3N0eWxlcy90YXNrLXRpbWVyLmNzcyIsICJzcmMvc3R5bGVzL3NldHRpbmcuY3NzIiwgInNyYy9zdHlsZXMvc2V0dGluZy12Mi5jc3MiLCAic3JjL3N0eWxlcy9iZXRhLXdhcm5pbmcuY3NzIiwgInNyYy9zdHlsZXMvc2V0dGluZ3Mtc2VhcmNoLmNzcyIsICJzcmMvc3R5bGVzL3NldHRpbmdzLW1pZ3JhdGlvbi5jc3MiLCAic3JjL3N0eWxlcy93b3Jrc3BhY2Utc2V0dGluZ3Mtc2VsZWN0b3IuY3NzIiwgInNyYy9zdHlsZXMvbW9kYWwuY3NzIiwgInNyYy9zdHlsZXMvbGF5b3V0LXBsYWNlbWVudC5jc3MiLCAic3JjL3N0eWxlcy9vbmJvYXJkaW5nLWNvbXBvbmVudHMuY3NzIiwgInNyYy9zdHlsZXMvZmlsZS1maWx0ZXItc2V0dGluZ3MuY3NzIiwgInNyYy9zdHlsZXMvdGFzay1kZXRhaWxzLmNzcyIsICJzcmMvc3R5bGVzL29uQ29tcGxldGlvbi5jc3MiLCAic3JjL3N0eWxlcy91bml2ZXJzYWwtc3VnZ2VzdC5jc3MiLCAic3JjL3N0eWxlcy9oYWJpdC1lZGl0LWRpYWxvZy5jc3MiLCAic3JjL3N0eWxlcy9oYWJpdC1saXN0LmNzcyIsICJzcmMvc3R5bGVzL2ljcy1zZXR0aW5ncy5jc3MiLCAic3JjL3N0eWxlcy90YXNrLWZpbHRlci5jc3MiLCAic3JjL3N0eWxlcy9nbG9iYWwtZmlsdGVyLmNzcyIsICJzcmMvc3R5bGVzL3ZpZXctc2V0dGluZy10YWIuY3NzIiwgInNyYy9zdHlsZXMvbWNwLWludGVncmF0aW9uLmNzcyIsICJzcmMvc3R5bGVzL3dvcmtmbG93LmNzcyIsICJzcmMvc3R5bGVzL2RhdGUtcGlja2VyLmNzcyIsICJzcmMvc3R5bGVzL3F1aWNrLWNhcHR1cmUuY3NzIiwgInNyYy9zdHlsZXMvdGFzay1saXN0LmNzcyIsICJzcmMvc3R5bGVzL2lubGluZS1lZGl0b3IuY3NzIiwgInNyYy9zdHlsZXMvdHJlZS12aWV3LmNzcyIsICJzcmMvc3R5bGVzL2ZvcmVjYXN0LmNzcyIsICJzcmMvc3R5bGVzL2NhbGVuZGFyLmNzcyIsICJzcmMvc3R5bGVzL3RhZy12aWV3LmNzcyIsICJzcmMvc3R5bGVzL3Byb2plY3Qtdmlldy5jc3MiLCAic3JjL3N0eWxlcy9wcm9qZWN0LXRyZWUuY3NzIiwgInNyYy9zdHlsZXMvcmV2aWV3LXZpZXcuY3NzIiwgInNyYy9zdHlsZXMvdmlldy5jc3MiLCAic3JjL3N0eWxlcy9jYWxlbmRhci92aWV3LmNzcyIsICJzcmMvc3R5bGVzL2NhbGVuZGFyL2V2ZW50LmNzcyIsICJzcmMvc3R5bGVzL2NhbGVuZGFyL2JhZGdlLmNzcyIsICJzcmMvc3R5bGVzL2thbmJhbi9rYW5iYW4uY3NzIiwgInNyYy9jb21wb25lbnRzL2ZlYXR1cmVzL3Rhc2svZmlsdGVyL2luLXZpZXcvZmlsdGVyLmNzcyIsICJzcmMvc3R5bGVzL2dhbnR0L2dhbnR0LmNzcyIsICJzcmMvc3R5bGVzL3Byb3BlcnR5LXZpZXcuY3NzIiwgInNyYy9zdHlsZXMvdGFibGUuY3NzIiwgInNyYy9zdHlsZXMvcXVhZHJhbnQvcXVhZHJhbnQuY3NzIiwgInNyYy9zdHlsZXMvaGFiaXQuY3NzIiwgInNyYy9zdHlsZXMvZ2xvYmFsLmNzcyIsICJzcmMvc3R5bGVzL3ZpZXctY29uZmlnLmNzcyIsICJzcmMvc3R5bGVzL3Rhc2stc3RhdHVzLmNzcyIsICJzcmMvc3R5bGVzL29uYm9hcmRpbmcuY3NzIiwgInNyYy9zdHlsZXMvbm9pc2UuY3NzIiwgInNyYy9zdHlsZXMvdGltZWxpbmUtc2lkZWJhci5jc3MiLCAic3JjL3N0eWxlcy9yZXdhcmQuY3NzIiwgInNyYy9zdHlsZXMvdGFzay1ndXR0ZXIuY3NzIiwgInNyYy9zdHlsZXMvYmFzZS12aWV3LmNzcyIsICJzcmMvZXhwZXJpbWVudGFsL3YyL3N0eWxlcy92Mi5jc3MiLCAic3JjL2V4cGVyaW1lbnRhbC92Mi9zdHlsZXMvdjItZW5oYW5jZWQuY3NzIiwgInNyYy9leHBlcmltZW50YWwvdjIvc3R5bGVzL3YyLWNvbnRlbnQtaGVhZGVyLmNzcyIsICJzcmMvc3R5bGVzL3YyLXByb2plY3QtcG9wb3Zlci5jc3MiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qIFNldCBEZWZhdWx0IFByb2dyZXNzIEJhciBGb3IgUGx1Z2luICovXHJcbi5jbS10YXNrLXByb2dyZXNzLWJhciB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtYXJnaW4tbGVmdDogNXB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDFweDtcclxufVxyXG5cclxuLm5vLXByb2dyZXNzLWJhciAuY20tdGFzay1wcm9ncmVzcy1iYXIge1xyXG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLkh5cGVyTUQtaGVhZGVyIC5jbS10YXNrLXByb2dyZXNzLWJhciB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtYXJnaW4tbGVmdDogNXB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDVweDtcclxufVxyXG5cclxuLnByb2dyZXNzLWJhci1pbmxpbmUge1xyXG5cdGhlaWdodDogOHB4O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLyogUHJvZ3Jlc3MgYmFyIGNvbG9ycyBmb3IgZGlmZmVyZW50IHBlcmNlbnRhZ2VzIG9mIGNvbXBsZXRpb24gKi9cclxuLnByb2dyZXNzLWJhci1pbmxpbmUtZW1wdHkge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByb2dyZXNzLWJhY2tncm91bmQtY29sb3IpO1xyXG59XHJcblxyXG4ucHJvZ3Jlc3MtYmFyLWlubGluZS0wIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcm9ncmVzcy0wLWNvbG9yKTtcclxufVxyXG5cclxuLnByb2dyZXNzLWJhci1pbmxpbmUtMSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJvZ3Jlc3MtMjUtY29sb3IpO1xyXG59XHJcblxyXG4ucHJvZ3Jlc3MtYmFyLWlubGluZS0yIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcm9ncmVzcy01MC1jb2xvcik7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1iYXItaW5saW5lLTMge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByb2dyZXNzLTc1LWNvbG9yKTtcclxufVxyXG5cclxuLnByb2dyZXNzLWJhci1pbmxpbmUtY29tcGxldGUge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByb2dyZXNzLTEwMC1jb2xvcik7XHJcbn1cclxuXHJcbi8qIENvbG9ycyBmb3IgZGlmZmVyZW50IHRhc2sgc3RhdHVzZXMgKi9cclxuLnByb2dyZXNzLWNvbXBsZXRlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFzay1jb21wbGV0ZWQtY29sb3IpO1xyXG5cdHotaW5kZXg6IDM7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1pbi1wcm9ncmVzcyB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFzay1pbi1wcm9ncmVzcy1jb2xvcik7XHJcblx0ei1pbmRleDogMjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdGhlaWdodDogMTAwJTtcclxufVxyXG5cclxuLnByb2dyZXNzLWFiYW5kb25lZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFzay1hYmFuZG9uZWQtY29sb3IpO1xyXG5cdHotaW5kZXg6IDE7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1wbGFubmVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YXNrLXBsYW5uZWQtY29sb3IpO1xyXG5cdHotaW5kZXg6IDE7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1iYXItaW5saW5lLWJhY2tncm91bmQge1xyXG5cdGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJvZ3Jlc3MtYmFja2dyb3VuZC1jb2xvcik7XHJcblx0Ym9yZGVyLXJhZGl1czogMTBweDtcclxuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHdpZHRoOiA4NXB4O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ucHJvZ3Jlc3MtYmFyLWlubGluZS1iYWNrZ3JvdW5kLmhpZGRlbiB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLyogU3RhdHVzIGluZGljYXRvcnMgaW4gdGhlIHRhc2sgbnVtYmVyIGRpc3BsYXkgKi9cclxuLmNtLXRhc2stcHJvZ3Jlc3MtYmFyIC50YXNrLXN0YXR1cy1pbmRpY2F0b3Ige1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRtYXJnaW4tcmlnaHQ6IDJweDtcclxufVxyXG5cclxuLmNtLXRhc2stcHJvZ3Jlc3MtYmFyIC5jb21wbGV0ZWQtaW5kaWNhdG9yIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1jb21wbGV0ZWQtY29sb3IpO1xyXG59XHJcblxyXG4uY20tdGFzay1wcm9ncmVzcy1iYXIgLmluLXByb2dyZXNzLWluZGljYXRvciB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2staW4tcHJvZ3Jlc3MtY29sb3IpO1xyXG59XHJcblxyXG4uY20tdGFzay1wcm9ncmVzcy1iYXIgLmFiYW5kb25lZC1pbmRpY2F0b3Ige1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLWFiYW5kb25lZC1jb2xvcik7XHJcbn1cclxuXHJcbi5jbS10YXNrLXByb2dyZXNzLWJhciAucGxhbm5lZC1pbmRpY2F0b3Ige1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLXBsYW5uZWQtY29sb3IpO1xyXG59XHJcblxyXG4vKiBTZXQgRGVmYXVsdCBQcm9ncmVzcyBCYXIgV2l0aCBOdW1iZXIgRm9yIFBsdWdpbiAqL1xyXG4uY20tdGFzay1wcm9ncmVzcy1iYXIud2l0aC1udW1iZXIge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5IeXBlck1ELWhlYWRlclxyXG5cdC5jbS10YXNrLXByb2dyZXNzLWJhci53aXRoLW51bWJlclxyXG5cdC5wcm9ncmVzcy1iYXItaW5saW5lLWJhY2tncm91bmQsXHJcbi5IeXBlck1ELWhlYWRlciAuY20tdGFzay1wcm9ncmVzcy1iYXIud2l0aC1udW1iZXIgLnByb2dyZXNzLXN0YXR1cyB7XHJcblx0bWFyZ2luLWJvdHRvbTogNXB4O1xyXG59XHJcblxyXG4uY20tdGFzay1wcm9ncmVzcy1iYXIud2l0aC1udW1iZXIgLnByb2dyZXNzLWJhci1pbmxpbmUtYmFja2dyb3VuZCB7XHJcblx0bWFyZ2luLWJvdHRvbTogLTJweDtcclxuXHR3aWR0aDogNDJweDtcclxufVxyXG5cclxuLmNtLXRhc2stcHJvZ3Jlc3MtYmFyLndpdGgtbnVtYmVyIC5wcm9ncmVzcy1zdGF0dXMge1xyXG5cdGZvbnQtc2l6ZTogMTNweDtcclxuXHRtYXJnaW4tbGVmdDogM3B4O1xyXG59XHJcblxyXG4vKiBBZGFwdGF0aW9ucyBmb3IgZGFyayB0aGVtZSAqL1xyXG4udGhlbWUtZGFyayAucHJvZ3Jlc3MtY29tcGxldGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YXNrLWNvbXBsZXRlZC1jb2xvcik7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC5wcm9ncmVzcy1pbi1wcm9ncmVzcyB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFzay1pbi1wcm9ncmVzcy1jb2xvcik7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC5wcm9ncmVzcy1hYmFuZG9uZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhc2stYWJhbmRvbmVkLWNvbG9yKTtcclxufVxyXG5cclxuLnRoZW1lLWRhcmsgLnByb2dyZXNzLXBsYW5uZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhc2stcGxhbm5lZC1jb2xvcik7XHJcbn1cclxuXHJcbi50YXNrLXByb2dyZXNzLWJhci1wb3BvdmVyIHtcclxuXHR3aWR0aDogNDAwcHg7XHJcbn1cclxuIiwgIi8qIFRhc2sgVGltZXIgV2lkZ2V0IFN0eWxlcyAtIFNpbXBsZSBUZXh0LUJhc2VkICovXHJcblxyXG4udGFzay10aW1lci13aWRnZXQge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1hcmdpbjogNHB4IDA7XHJcblx0cGFkZGluZzogMnB4IDA7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG5cclxuLyogU3RhcnQgYnV0dG9uIGFuZCBhY3Rpb24gbGlua3MgKi9cclxuLnRhc2stdGltZXItc3RhcnQsXHJcbi50YXNrLXRpbWVyLWFjdGlvbiB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi50YXNrLXRpbWVyLXN0YXJ0OmhvdmVyLFxyXG4udGFzay10aW1lci1hY3Rpb246aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudC1ob3Zlcik7XHJcbn0iLCAiLyogRXhwZXJpbWVudGFsIFNldHRpbmdzICovXHJcbi5leHBlcmltZW50YWwtc2V0dGluZ3Mtc2VjdGlvbiB7XHJcblx0bWFyZ2luOiAyMHB4IDA7XHJcbn1cclxuXHJcbi5leHBlcmltZW50YWwtc2VjdGlvbi1oZWFkaW5nIHtcclxuXHRtYXJnaW46IDIwcHggMCAxMHB4IDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmV4cGVyaW1lbnRhbC1zdWJzZWN0aW9uLWhlYWRpbmcge1xyXG5cdG1hcmdpbjogMTVweCAwIDhweCAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4uZXhwZXJpbWVudGFsLXdhcm5pbmcge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0cGFkZGluZzogMTJweDtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0bWFyZ2luOiAxMHB4IDAgMjBweCAwO1xyXG5cdGJvcmRlci1sZWZ0OiA0cHggc29saWQgdmFyKC0tY29sb3ItcmVkKTtcclxufVxyXG5cclxuLmV4cGVyaW1lbnRhbC1kYXRhZmxvdy1zZWN0aW9uIHtcclxuXHRtYXJnaW46IDE1cHggMDtcclxuXHRwYWRkaW5nOiAxNXB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcbn1cclxuXHJcbi5leHBlcmltZW50YWwtaW5mbyB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG5cdG1hcmdpbi10b3A6IDhweDtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG59XHJcblxyXG4uZXhwZXJpbWVudGFsLXJlc3RhcnQtbm90aWNlIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWZvcm0tZmllbGQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRwYWRkaW5nOiA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdG1hcmdpbi10b3A6IDEwcHg7XHJcblx0Zm9udC1zaXplOiAwLjg1ZW07XHJcbn1cclxuXHJcbi8qIENoZWNrYm94IFN0YXR1cyBDeWNsZSBtYW5hZ2VtZW50IFVJICovXHJcbi50YXNrLXN0YXRlcy1jb250YWluZXIge1xyXG5cdG1hcmdpbjogMTBweCAwO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA1cHg7XHJcblx0cGFkZGluZzogMTBweDtcclxufVxyXG5cclxuLnRhc2stc3RhdGUtcm93IHtcclxuXHRtYXJnaW4tYm90dG9tOiA4cHg7XHJcbn1cclxuXHJcbi50YXNrLXN0YXRlLXJvdyAuc2V0dGluZy1pdGVtIHtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0cGFkZGluZzogNnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxufVxyXG5cclxuLnRhc2stc3RhdGUtcm93IC5zZXR0aW5nLWl0ZW0taW5mbyB7XHJcblx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG59XHJcblxyXG4udGFzay1zdGF0ZS1yb3cgLnNldHRpbmctaXRlbS1jb250cm9sIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRmbGV4LXdyYXA6IG5vd3JhcDtcclxufVxyXG5cclxuLnRhc2stc3RhdGUtcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XHJcbn1cclxuXHJcbi50YXNrLXN0YXRlLXJvdyAuZXh0cmEtc2V0dGluZy1idXR0b24ge1xyXG5cdHBhZGRpbmc6IDRweDtcclxuXHR3aWR0aDogMjRweDtcclxuXHRoZWlnaHQ6IDI0cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdG1hcmdpbi1sZWZ0OiA0cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4udGFzay1zdGF0ZS1yb3cgLnNldHRpbmctaXRlbS1jb250cm9sIGJ1dHRvbiB7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLnRhc2stc3RhdGUtY29udGFpbmVyIHtcclxuXHRtYXJnaW4taW5saW5lLXN0YXJ0OiBjYWxjKHZhcigtLWNoZWNrYm94LXNpemUpICogLTEpO1xyXG59XHJcblxyXG4udGFzay1zdGF0ZS1jb250YWluZXIgLnRhc2stc3RhdGUge1xyXG5cdHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1zaXplLTItMSk7XHJcblx0cGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1zaXplLTItMik7XHJcblxyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi8qIEV4cGVyaW1lbnRhbCBTZXR0aW5ncyAqL1xyXG4uZXhwZXJpbWVudGFsLXNldHRpbmdzLXNlY3Rpb24ge1xyXG5cdG1hcmdpbjogMjBweCAwO1xyXG59XHJcblxyXG4uZXhwZXJpbWVudGFsLXNlY3Rpb24taGVhZGluZyB7XHJcblx0bWFyZ2luOiAyMHB4IDAgMTBweCAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5leHBlcmltZW50YWwtc3Vic2VjdGlvbi1oZWFkaW5nIHtcclxuXHRtYXJnaW46IDE1cHggMCA4cHggMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLmV4cGVyaW1lbnRhbC13YXJuaW5nIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdHBhZGRpbmc6IDEycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdG1hcmdpbjogMTBweCAwIDIwcHggMDtcclxuXHRib3JkZXItbGVmdDogNHB4IHNvbGlkIHZhcigtLWNvbG9yLXJlZCk7XHJcbn1cclxuXHJcbi5leHBlcmltZW50YWwtZGF0YWZsb3ctc2VjdGlvbiB7XHJcblx0bWFyZ2luOiAxNXB4IDA7XHJcblx0cGFkZGluZzogMTVweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG59XHJcblxyXG4uZXhwZXJpbWVudGFsLWluZm8ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxuXHRtYXJnaW4tdG9wOiA4cHg7XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG5cclxuLmV4cGVyaW1lbnRhbC1yZXN0YXJ0LW5vdGljZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1mb3JtLWZpZWxkKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0cGFkZGluZzogOHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG59XHJcblxyXG4vKiBDaGVja2JveCBTdGF0dXMgQ3ljbGUgbWFuYWdlbWVudCBVSSAqL1xyXG4udGFzay1zdGF0ZXMtY29udGFpbmVyIHtcclxuXHRtYXJnaW46IDEwcHggMDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNXB4O1xyXG5cdHBhZGRpbmc6IDEwcHg7XHJcbn1cclxuXHJcbi50YXNrLXN0YXRlLXJvdyB7XHJcblx0bWFyZ2luLWJvdHRvbTogOHB4O1xyXG59XHJcblxyXG4udGFzay1zdGF0ZS1yb3cgLnNldHRpbmctaXRlbSB7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdHBhZGRpbmc6IDZweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcbn1cclxuXHJcbi50YXNrLXN0YXRlLXJvdyAuc2V0dGluZy1pdGVtLWluZm8ge1xyXG5cdG1hcmdpbi1yaWdodDogMTBweDtcclxufVxyXG5cclxuLnRhc2stc3RhdGUtcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0ZmxleC13cmFwOiBub3dyYXA7XHJcbn1cclxuXHJcbi50YXNrLXN0YXRlLXJvdyAuc2V0dGluZy1pdGVtLWNvbnRyb2wgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG59XHJcblxyXG4udGFzay1zdGF0ZS1yb3cgLmV4dHJhLXNldHRpbmctYnV0dG9uIHtcclxuXHRwYWRkaW5nOiA0cHg7XHJcblx0d2lkdGg6IDI0cHg7XHJcblx0aGVpZ2h0OiAyNHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRtYXJnaW4tbGVmdDogNHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLnRhc2stc3RhdGUtcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCBidXR0b24ge1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi50YXNrLXN0YXRlLWNvbnRhaW5lciB7XHJcblx0bWFyZ2luLWlubGluZS1zdGFydDogY2FsYyh2YXIoLS1jaGVja2JveC1zaXplKSAqIC0xKTtcclxufVxyXG5cclxuLnRhc2stc3RhdGUtY29udGFpbmVyIC50YXNrLXN0YXRlIHtcclxuXHRwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdHBhZGRpbmctaW5saW5lLWVuZDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcclxuXHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4vKiBDYXRlZ29yaXplZCB0YWJzIGNvbnRhaW5lciAqL1xyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYnMtY2F0ZWdvcml6ZWQtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC02KTtcclxufVxyXG5cclxuLyogQ2F0ZWdvcnkgc2VjdGlvbiAqL1xyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLWNhdGVnb3J5LXNlY3Rpb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLyogQ2F0ZWdvcnkgaGVhZGVyICovXHJcbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtY2F0ZWdvcnktaGVhZGVyIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcclxuXHRwYWRkaW5nOiAwIHZhcigtLXNpemUtNC0yKTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTQtMSk7XHJcbn1cclxuXHJcbi8qIENhdGVnb3J5IHRhYnMgY29udGFpbmVyICovXHJcbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtY2F0ZWdvcnktdGFicyB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCBtaW5tYXgoMjAwcHgsIDFmcikpO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcblx0LnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy1jYXRlZ29yeS10YWJzIHtcclxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgyMDBweCwgMWZyKSk7XHJcblx0fVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQudGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLWNhdGVnb3J5LXRhYnMge1xyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcblx0fVxyXG59XHJcblxyXG4vKiBMZWdhY3kgdGFicyBjb250YWluZXIgKGZhbGxiYWNrKSAqL1xyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYnMtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XHJcblx0Z3JpZC1hdXRvLXJvd3M6IHZhcigtLXNpemUtNC0xOCk7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC00KTtcclxuXHRoZWlnaHQ6IGZpdC1jb250ZW50O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTQpO1xyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQudGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYnMtY29udGFpbmVyIHtcclxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XHJcblx0fVxyXG59XHJcblxyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYiB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpIHZhcigtLXNpemUtNC00KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtaW4taGVpZ2h0OiB2YXIoLS1zaXplLTQtMTIpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtdGFiOjphZnRlciB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAxMHB4O1xyXG5cdHJpZ2h0OiAtODBweDtcclxuXHR3aWR0aDogMjAwcHg7XHJcblx0aGVpZ2h0OiAyMDBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xyXG5cdHRyYW5zZm9ybTogcm90YXRlWigtMTVkZWcpO1xyXG5cdHotaW5kZXg6IDA7XHJcblx0b3BhY2l0eTogMC43O1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYjpob3Zlcjo6YWZ0ZXIge1xyXG5cdHRyYW5zZm9ybTogcm90YXRlWigtMTBkZWcpO1xyXG5cdG9wYWNpdHk6IDAuOTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWItYWN0aXZlOjphZnRlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRvcGFjaXR5OiAwLjM7XHJcbn1cclxuXHJcbi8qIFRhYiBjb250ZW50IHN0eWxpbmcgKi9cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWItaWNvbixcclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWIgc3BhbixcclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWItbGFiZWwge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR6LWluZGV4OiAxO1xyXG59XHJcblxyXG4vKiBFbmhhbmNlZCB0YWIgaWNvbiBzdHlsaW5nIGZvciBjYXRlZ29yaXplZCBsYXlvdXQgKi9cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy1jYXRlZ29yeS10YWJzIC5zZXR0aW5ncy10YWItaWNvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtNCk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtY2F0ZWdvcnktdGFicyAuc2V0dGluZ3MtdGFiLWljb24gc3ZnIHtcclxuXHR3aWR0aDogdmFyKC0taWNvbi1zKTtcclxuXHRoZWlnaHQ6IHZhcigtLWljb24tcyk7XHJcbn1cclxuXHJcbi8qIEVuaGFuY2VkIHRhYiBsYWJlbCBzdHlsaW5nIGZvciBjYXRlZ29yaXplZCBsYXlvdXQgKi9cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy1jYXRlZ29yeS10YWJzIC5zZXR0aW5ncy10YWItbGFiZWwge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcblx0ZmxleDogMTtcclxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG4vKiBFbmhhbmNlZCBob3ZlciBhbmQgYWN0aXZlIHN0YXRlcyBmb3IgY2F0ZWdvcml6ZWQgdGFicyAqL1xyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLWNhdGVnb3J5LXRhYnMgLnNldHRpbmdzLXRhYjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1tKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy1jYXRlZ29yeS10YWJzIC5zZXR0aW5ncy10YWItYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1tKTtcclxuXHRmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLWNhdGVnb3J5LXRhYnMgLnNldHRpbmdzLXRhYi1hY3RpdmU6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxufVxyXG5cclxuLyogTGVnYWN5IHRhYiBzdHlsZXMgKGZhbGxiYWNrKSAqL1xyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtdGFiLWFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYi1zZWN0aW9ucyB7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWItc2VjdGlvbiB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWItc2VjdGlvbi1hY3RpdmUge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYi1zZWN0aW9uLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWItc2VjdGlvbi1oZWFkZXIgLmhlYWRlci1idXR0b24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRnYXA6IDRweDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYi1zZWN0aW9uLWhlYWRlciAuaGVhZGVyLWJ1dHRvbi1pY29uIHtcclxuXHQtLWljb24tc2l6ZTogMTZweDtcclxuXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4vKiBUYWIgc2VjdGlvbiBoZWFkZXIgdmlzaWJpbGl0eSBydWxlcyAqL1xyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYltkYXRhLXRhYi1pZD1cImdlbmVyYWxcIl0ge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIEhpZGUgY2F0ZWdvcml6ZWQgdGFicyBjb250YWluZXIgd2hlbiBhbnkgbm9uLWdlbmVyYWwgdGFiIGlzIGFjdGl2ZSAqL1xyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYnMtY2F0ZWdvcml6ZWQtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtc2V0dGluZ3M6aGFzKFxyXG5cdFx0LnNldHRpbmdzLXRhYi1zZWN0aW9uLWFjdGl2ZTpub3QoW2RhdGEtdGFiLWlkPVwiZ2VuZXJhbFwiXSlcclxuXHQpXHJcblx0LnNldHRpbmdzLXRhYnMtY2F0ZWdvcml6ZWQtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiBMZWdhY3kgdGFicyBjb250YWluZXIgdmlzaWJpbGl0eSAoZmFsbGJhY2spICovXHJcbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtdGFicy1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIFNob3cgbGVnYWN5IHRhYnMgd2hlbiBnZW5lcmFsIHRhYiBpcyBhY3RpdmUgKGZhbGxiYWNrIGJlaGF2aW9yKSAqL1xyXG4udGFzay1nZW5pdXMtc2V0dGluZ3M6aGFzKC5zZXR0aW5ncy10YWItYWN0aXZlW2RhdGEtdGFiLWlkPVwiZ2VuZXJhbFwiXSlcclxuXHQuc2V0dGluZ3MtdGFicy1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcbn1cclxuXHJcbi8qIFNldHRpbmdzIGhlYWRlciB2aXNpYmlsaXR5IC0gaGlkZSB3aGVuIG5vbi1nZW5lcmFsIHRhYiBpcyBhY3RpdmUgKi9cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzLWhlYWRlciB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1zZXR0aW5nczpoYXMoXHJcblx0XHQuc2V0dGluZ3MtdGFiLXNlY3Rpb24tYWN0aXZlOm5vdChbZGF0YS10YWItaWQ9XCJnZW5lcmFsXCJdKVxyXG5cdClcclxuXHQudGFzay1nZW5pdXMtc2V0dGluZ3MtaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiBFeHByZXNzaW9uIGV4YW1wbGVzIGluIHNldHRpbmdzICovXHJcbi5leHByZXNzaW9uLWV4YW1wbGVzIHtcclxuXHRtYXJnaW4tdG9wOiA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNXB4O1xyXG59XHJcblxyXG4uZXhwcmVzc2lvbi1leGFtcGxlLWl0ZW0ge1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1zaXplLTQtMyk7XHJcblx0cGFkZGluZy1yaWdodDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHQvKiBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpOyAqL1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDZweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5leHByZXNzaW9uLWV4YW1wbGUtbmFtZSB7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi5leHByZXNzaW9uLWV4YW1wbGUtY29kZSB7XHJcblx0cGFkZGluZzogNHB4IDhweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xyXG5cdHVzZXItc2VsZWN0OiB0ZXh0O1xyXG59XHJcblxyXG4uZXhwcmVzc2lvbi1leGFtcGxlLXVzZSB7XHJcblx0YWxpZ24tc2VsZjogZmxleC1lbmQ7XHJcblx0bWFyZ2luLXRvcDogNHB4O1xyXG59XHJcblxyXG4uY3VzdG9tLWZvcm1hdC10ZXh0YXJlYSB7XHJcblx0aGVpZ2h0OiAyMDBweDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG5cdHJlc2l6ZTogdmVydGljYWw7XHJcbn1cclxuXHJcbi5jdXN0b20tZm9ybWF0LXByZXZpZXctY29udGFpbmVyIHtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4uY3VzdG9tLWZvcm1hdC1wcmV2aWV3LWxhYmVsIHtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4uY3VzdG9tLWZvcm1hdC1wcmV2aWV3LWNvbnRlbnQge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1pbnRlcmZhY2UpO1xyXG59XHJcblxyXG4uY3VzdG9tLWZvcm1hdC1wbGFjZWhvbGRlci1pbmZvIHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG5cclxuXHR1c2VyLXNlbGVjdDogdGV4dDtcclxufVxyXG5cclxuLmN1c3RvbS1mb3JtYXQtcHJldmlldy1lcnJvcixcclxuLmV4cHJlc3Npb24tcHJldmlldy1lcnJvciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4vKiBcdTg4NjhcdThGQkVcdTVGMEZcdTc5M0FcdTRGOEJcdTk4ODRcdTg5QzhcdTY4MzdcdTVGMEYgKi9cclxuLmV4cHJlc3Npb24tZXhhbXBsZS1wcmV2aWV3IHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4ucHJlc2V0LWZpbHRlcnMtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdHBhZGRpbmc6IDhweDtcclxuXHRib3JkZXItcmFkaXVzOiA1cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4ucHJlc2V0LWZpbHRlci1yb3cge1xyXG5cdG1hcmdpbi1ib3R0b206IDVweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0cGFkZGluZy10b3A6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5wcmVzZXQtZmlsdGVyLXJvdzpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcclxufVxyXG5cclxuLm5vLXByZXNldHMtbWVzc2FnZSB7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMTVweDtcclxufVxyXG5cclxuLnByZXNldC1zYXZlZC1tZXNzYWdlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiA1cHg7XHJcblx0bWFyZ2luLXRvcDogNXB4O1xyXG5cdGFuaW1hdGlvbjogZmFkZUluIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1zYXZlLXByZXNldCB7XHJcblx0bWFyZ2luLXRvcDogMTVweDtcclxuXHRwYWRkaW5nOiAxMHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xyXG59XHJcblxyXG4udGctbW9kYWwtYnV0dG9uLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdGdhcDogMTBweDtcclxuXHRtYXJnaW4tdG9wOiAyMHB4O1xyXG59XHJcblxyXG4udGctbW9kYWwtYnV0dG9uLWNvbnRhaW5lciBidXR0b24ge1xyXG5cdHBhZGRpbmc6IDZweCAxMnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi50Zy1tb2RhbC1idXR0b24tY29udGFpbmVyIGJ1dHRvbi5tb2Qtd2FybmluZyB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XHJcblx0ZnJvbSB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdH1cclxuXHR0byB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxufVxyXG5cclxuLm1vZGFsLXdvcmtmbG93LWRlZmluaXRpb24ge1xyXG5cdG1heC13aWR0aDogODAwcHg7XHJcblx0d2lkdGg6IDkwdnc7XHJcbn1cclxuXHJcbi5tb2RhbC1zdGFnZS1kZWZpbml0aW9uIHtcclxuXHRtYXgtd2lkdGg6IDgwMHB4O1xyXG5cdHdpZHRoOiA5MHZ3O1xyXG59XHJcblxyXG4vKiBXb3JrZmxvdyBzZXR0aW5ncyBwYW5lbCBpbXByb3ZlbWVudHMgKi9cclxuLndvcmtmbG93LWNvbnRhaW5lciB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHRwYWRkaW5nOiAxNXB4O1xyXG5cdG1heC1oZWlnaHQ6IDUwMHB4O1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3gtc2hhZG93OiAwIDFweCA0cHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcclxufVxyXG5cclxuLndvcmtmbG93LXJvdyB7XHJcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHRwYWRkaW5nOiAxMnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xyXG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLndvcmtmbG93LXJvdyAuc2V0dGluZy1pdGVtIHtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0cGFkZGluZzogMDtcclxufVxyXG5cclxuLndvcmtmbG93LXJvdyAuc2V0dGluZy1pdGVtLWluZm8ge1xyXG5cdHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLndvcmtmbG93LXJvdyAuc2V0dGluZy1pdGVtLW5hbWUge1xyXG5cdGZvbnQtc2l6ZTogMTZweDtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1yb3cgLnNldHRpbmctaXRlbS1kZXNjcmlwdGlvbiB7XHJcblx0Zm9udC1zaXplOiAxM3B4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tdG9wOiA0cHg7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZXMtaW5mbyB7XHJcblx0bWFyZ2luLXRvcDogMTJweDtcclxuXHRwYWRkaW5nOiA4cHggMCAwIDA7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlcy1saXN0IHtcclxuXHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0cGFkZGluZzogMDtcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS1pdGVtIHtcclxuXHRwYWRkaW5nOiA0cHggOHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRmb250LXNpemU6IDEycHg7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS1jeWNsZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFzay1pbi1wcm9ncmVzcy1jb2xvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLXRlcm1pbmFsIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YXNrLWNvbXBsZXRlZC1jb2xvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLm5vLXdvcmtmbG93cy1tZXNzYWdlIHtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAxNXB4O1xyXG59XHJcblxyXG4vKiBXb3JrZmxvdyBtb2RhbCBzdHlsZXMgKi9cclxuLndvcmtmbG93LWZvcm0ge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZXMtc2VjdGlvbiB7XHJcblx0bWFyZ2luLXRvcDogMjBweDtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmctdG9wOiAxNXB4O1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2VzLXNlY3Rpb24gaDIge1xyXG5cdG1hcmdpbi10b3A6IDA7XHJcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHRmb250LXNpemU6IDEuM2VtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZXMtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAxNXB4O1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2VzLWNvbnRhaW5lciAud29ya2Zsb3ctc3RhZ2VzLWxpc3Qge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdGZsZXgtd3JhcDogdW5zZXQ7XHJcblx0Z2FwOiB1bnNldDtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlcy1jb250YWluZXIgLndvcmtmbG93LXN0YWdlLWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0cGFkZGluZzogMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLndvcmtmbG93LWJ1dHRvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRnYXA6IDEwcHg7XHJcblx0bWFyZ2luLXRvcDogMjBweDtcclxuXHRwYWRkaW5nLXRvcDogMTBweDtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc2F2ZS1idXR0b24sXHJcbi53b3JrZmxvdy1jYW5jZWwtYnV0dG9uLFxyXG4ud29ya2Zsb3ctYWRkLXN0YWdlLWJ1dHRvbiB7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLndvcmtmbG93LXNhdmUtYnV0dG9uLm1vZC1jdGEge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLndvcmtmbG93LWNhbmNlbC1idXR0b24ge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctYWRkLXN0YWdlLWJ1dHRvbiB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdG1hcmdpbi10b3A6IDEwcHg7XHJcbn1cclxuXHJcbi5uby1zdGFnZXMtbWVzc2FnZSB7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMTVweDtcclxufVxyXG5cclxuLyogU3RhZ2UgZWRpdGluZyBzdHlsZXMgKi9cclxuLndvcmtmbG93LXN0YWdlLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRwYWRkaW5nOiA4cHggMTJweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxuXHRib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2UtbmFtZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRmbGV4OiAxO1xyXG5cdG1hcmdpbi1yaWdodDogMTBweDtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLWFjdGlvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiA1cHg7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS1lZGl0LFxyXG4ud29ya2Zsb3ctc3RhZ2UtbW92ZS11cCxcclxuLndvcmtmbG93LXN0YWdlLW1vdmUtZG93bixcclxuLndvcmtmbG93LXN0YWdlLWRlbGV0ZSB7XHJcblx0cGFkZGluZzogM3B4IDhweDtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IDEycHg7XHJcblx0Ym9yZGVyOiBub25lO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2UtZWRpdDpob3ZlcixcclxuLndvcmtmbG93LXN0YWdlLW1vdmUtdXA6aG92ZXIsXHJcbi53b3JrZmxvdy1zdGFnZS1tb3ZlLWRvd246aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLWRlbGV0ZTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLXR5cGUtYmFkZ2Uge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRwYWRkaW5nOiAycHggNnB4O1xyXG5cdG1hcmdpbi1sZWZ0OiA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdGZvbnQtc2l6ZTogMTBweDtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS10eXBlLWxpbmVhciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2UtdHlwZS1jeWNsZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFzay1pbi1wcm9ncmVzcy1jb2xvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLXR5cGUtdGVybWluYWwge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhc2stY29tcGxldGVkLWNvbG9yKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBTdWJzdGFnZSBzdHlsZXMgKi9cclxuLndvcmtmbG93LXN1YnN0YWdlcy1saXN0IHtcclxuXHRwYWRkaW5nOiAwIDAgMCB2YXIoLS1zaXplLTQtNik7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxuXHRib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnN1YnN0YWdlLXNldHRpbmdzLWNvbnRhaW5lciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIFN0YWdlIGVkaXQgbW9kYWwgKi9cclxuLnN0YWdlLXR5cGUtc2V0dGluZ3Mge1xyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRwYWRkaW5nOiAxNXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi5zdWJzdGFnZXMtc2VjdGlvbixcclxuLmNhbi1wcm9jZWVkLXRvLXNlY3Rpb24ge1xyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0cGFkZGluZy10b3A6IDE1cHg7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnN1YnN0YWdlcy1jb250YWluZXIsXHJcbi5jYW4tcHJvY2VlZC10by1jb250YWluZXIge1xyXG5cdG1hcmdpbi10b3A6IDE1cHg7XHJcblx0cGFkZGluZzogMTBweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcbn1cclxuXHJcbi5zdWJzdGFnZXMtbGlzdCxcclxuLmNhbi1wcm9jZWVkLWxpc3Qge1xyXG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1hcmdpbjogMDtcclxufVxyXG5cclxuLnN1YnN0YWdlLW5hbWUtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogMTBweDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGZsZXg6IDE7XHJcbn1cclxuXHJcbi5zdWJzdGFnZS1uYW1lLWNvbnRhaW5lciBpbnB1dCB7XHJcblx0cGFkZGluZzogNHB4IDhweDtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi5zdWJzdGFnZS1uZXh0LWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNXB4O1xyXG5cdG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG59XHJcblxyXG4uc3Vic3RhZ2UtcmVtb3ZlLWJ1dHRvbixcclxuLmNhbi1wcm9jZWVkLXJlbW92ZS1idXR0b24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdHBhZGRpbmc6IDJweCA1cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlcjogbm9uZTtcclxufVxyXG5cclxuLnN1YnN0YWdlLXJlbW92ZS1idXR0b246aG92ZXIsXHJcbi5jYW4tcHJvY2VlZC1yZW1vdmUtYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4uYWRkLXN1YnN0YWdlLWJ1dHRvbixcclxuLmFkZC1jYW4tcHJvY2VlZC1idXR0b24ge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRwYWRkaW5nOiA0cHggMTBweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0bWFyZ2luLXRvcDogMTBweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyOiBub25lO1xyXG59XHJcblxyXG4uYWRkLWNhbi1wcm9jZWVkLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDEwcHg7XHJcblx0YWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG59XHJcblxyXG4uYWRkLWNhbi1wcm9jZWVkLXNlbGVjdCB7XHJcblx0ZmxleDogMTtcclxuXHRwYWRkaW5nOiA0cHggOHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5zdGFnZS1idXR0b25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0Z2FwOiAxMHB4O1xyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0cGFkZGluZy10b3A6IDEwcHg7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnN0YWdlLXNhdmUtYnV0dG9uLFxyXG4uc3RhZ2UtY2FuY2VsLWJ1dHRvbiB7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRib3JkZXI6IG5vbmU7XHJcbn1cclxuXHJcbi5zdGFnZS1zYXZlLWJ1dHRvbi5tb2QtY3RhIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5zdGFnZS1jYW5jZWwtYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnN0YWdlLWVycm9yLW1lc3NhZ2Uge1xyXG5cdGNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0bWFyZ2luLXRvcDogMTBweDtcclxuXHRwYWRkaW5nOiA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG59XHJcblxyXG4vKiBXb3JrZmxvdyB0YXNrIGluIGVkaXRvci9wcmV2aWV3IG1vZGUgc3R5bGVzICovXHJcbi50YXNrLXdvcmtmbG93LXRhZyB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdHBhZGRpbmc6IDJweCA1cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdG1hcmdpbi1sZWZ0OiA1cHg7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7XHJcbn1cclxuXHJcbi50YXNrLXdvcmtmbG93LXN0YWdlIHtcclxuXHRtYXJnaW4tbGVmdDogNXB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi50YXNrLXdvcmtmbG93LXN1YnN0YWdlIHtcclxuXHRmb250LXNpemU6IDExcHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4udGFzay13b3JrZmxvdy1oaXN0b3J5IHtcclxuXHRtYXJnaW4tbGVmdDogMjBweDtcclxuXHRmb250LXNpemU6IDEycHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4udGFzay13b3JrZmxvdy10aW1lc3RhbXAge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcclxufVxyXG5cclxuLyogV29ya2Zsb3cgc2V0dGluZ3MgZGlzcGxheSBlbmhhbmNlbWVudHMgKi9cclxuLnNldHRpbmctaXRlbS1jb250cm9sIHNwYW5bY2xhc3NePVwid29ya2Zsb3ctc3RhZ2UtbmFtZS1cIl0ge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRwYWRkaW5nOiAycHggNnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRmb250LXNpemU6IDEycHg7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRtYXJnaW4tcmlnaHQ6IDVweDtcclxufVxyXG5cclxuLnNldHRpbmctaXRlbS1jb250cm9sIC53b3JrZmxvdy1zdGFnZS1uYW1lLWN5Y2xlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YXNrLWluLXByb2dyZXNzLWNvbG9yKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4uc2V0dGluZy1pdGVtLWNvbnRyb2wgLndvcmtmbG93LXN0YWdlLW5hbWUtdGVybWluYWwge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhc2stY29tcGxldGVkLWNvbG9yKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2UtaXRlbSB7XHJcblx0bWFyZ2luLXJpZ2h0OiA0cHg7XHJcbn1cclxuXHJcbi8qIFdvcmtmbG93RGVmaW5pdGlvbk1vZGFsIGhlYWRlciBlbmhhbmNlbWVudHMgKi9cclxuLndvcmtmbG93LXN0YWdlcy1jb250YWluZXIgLndvcmtmbG93LXN0YWdlLWhlYWRlciB7XHJcblx0cGFkZGluZzogOHB4IDEycHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlcy1jb250YWluZXIgLndvcmtmbG93LXN0YWdlLXR5cGUtYmFkZ2Uge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRwYWRkaW5nOiAycHggNnB4O1xyXG5cdG1hcmdpbi1sZWZ0OiA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdGZvbnQtc2l6ZTogMTBweDtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdWJzdGFnZXMtbGlzdCB7XHJcblx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG5cdHBhZGRpbmc6IDAgMCAwIDIwcHg7XHJcblx0bWFyZ2luOiA1cHggMCAxMHB4IDA7XHJcblx0Ym9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi8qIEJldHRlciBidXR0b25zIGluIHdvcmtmbG93IHBhbmVscyAqL1xyXG4ud29ya2Zsb3ctYWRkLXN0YWdlLWJ1dHRvbixcclxuLnN0YWdlLXNhdmUtYnV0dG9uLm1vZC1jdGEsXHJcbi53b3JrZmxvdy1zYXZlLWJ1dHRvbi5tb2QtY3RhIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0cGFkZGluZzogNnB4IDE1cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctYWRkLXN0YWdlLWJ1dHRvbjpob3ZlcixcclxuLnN0YWdlLXNhdmUtYnV0dG9uLm1vZC1jdGE6aG92ZXIsXHJcbi53b3JrZmxvdy1zYXZlLWJ1dHRvbi5tb2QtY3RhOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG5cdGJveC1zaGFkb3c6IDAgM3B4IDZweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLW1vdmUtdXAsXHJcbi53b3JrZmxvdy1zdGFnZS1tb3ZlLWRvd24sXHJcbi53b3JrZmxvdy1zdGFnZS1lZGl0LFxyXG4ud29ya2Zsb3ctc3RhZ2UtZGVsZXRlIHtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmc6IDNweCA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLW1vdmUtdXA6aG92ZXIsXHJcbi53b3JrZmxvdy1zdGFnZS1tb3ZlLWRvd246aG92ZXIsXHJcbi53b3JrZmxvdy1zdGFnZS1lZGl0OmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS1kZWxldGU6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIFN1YnRhc2sgc3R5bGluZyBpbXByb3ZlbWVudHMgKi9cclxuLnN1YnN0YWdlLWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDZweCAwO1xyXG5cdG1hcmdpbi1ib3R0b206IDVweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcbn1cclxuXHJcbi5zdWJzdGFnZS1uYW1lLWNvbnRhaW5lciBpbnB1dCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0cGFkZGluZzogNHB4IDhweDtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0Zm9udC1zaXplOiAxM3B4O1xyXG59XHJcblxyXG4uc3Vic3RhZ2UtbmFtZS1jb250YWluZXIgaW5wdXQ6Zm9jdXMge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4ubm8tc3RhZ2VzLW1lc3NhZ2UsXHJcbi5uby13b3JrZmxvd3MtbWVzc2FnZSxcclxuLm5vLXN1YnN0YWdlcy1tZXNzYWdlLFxyXG4ubm8tY2FuLXByb2NlZWQtbWVzc2FnZSB7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRwYWRkaW5nOiAxNXB4O1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHRtYXJnaW46IDEwcHggMDtcclxufVxyXG5cclxuLyogU1RBUlQ6IFJld2FyZCBTZXR0aW5ncyBTdHlsZXMgKi9cclxuLnJld2FyZHMtbGV2ZWxzLWNvbnRhaW5lcixcclxuLnJld2FyZHMtaXRlbXMtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdHBhZGRpbmc6IDE1cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNXB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi5yZXdhcmRzLWxldmVsLXJvdyAuc2V0dGluZy1pdGVtLWluZm8sXHJcbi5yZXdhcmRzLWl0ZW0tcm93IC5zZXR0aW5nLWl0ZW0taW5mbyB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLnJld2FyZHMtaXRlbS1yb3cuc2V0dGluZy1pdGVtIHtcclxuXHRib3JkZXItdG9wOiAwO1xyXG59XHJcblxyXG4ucmV3YXJkcy1sZXZlbC1yb3cgLnNldHRpbmctaXRlbS1jb250cm9sLFxyXG4ucmV3YXJkcy1pdGVtLXJvdyAuc2V0dGluZy1pdGVtLWNvbnRyb2wge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC13cmFwOiB3cmFwOyAvKiBBbGxvdyB3cmFwcGluZyBvbiBzbWFsbGVyIHNjcmVlbnMgKi9cclxuXHRnYXA6IDEwcHg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLnJld2FyZHMtbGV2ZWwtcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcblx0ZmxleDogMTtcclxuXHRtaW4td2lkdGg6IDEwMHB4OyAvKiBFbnN1cmUgcmVhc29uYWJsZSBtaW5pbXVtIHdpZHRoICovXHJcbn1cclxuXHJcbi5yZXdhcmRzLWl0ZW0tcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCAuaW5wdXQtY29udGFpbmVyIHtcclxuXHQvKiBPYnNpZGlhbiB1c2VzIHRoaXMgY2xhc3MgZm9yIHRleHQvdGV4dGFyZWEgKi9cclxuXHRmbGV4OiAxO1xyXG5cdG1pbi13aWR0aDogMTUwcHg7XHJcbn1cclxuXHJcbi5yZXdhcmRzLWl0ZW0tcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCB0ZXh0YXJlYSB7XHJcblx0d2lkdGg6IDEwMCU7IC8qIE1ha2UgdGV4dGFyZWEgdGFrZSBmdWxsIHdpZHRoIHdpdGhpbiBpdHMgY29udGFpbmVyICovXHJcblx0bWluLWhlaWdodDogNDBweDsgLyogRW5zdXJlIGl0J3MgdGFsbCBlbm91Z2ggZm9yIGEgY291cGxlIGxpbmVzICovXHJcblx0cmVzaXplOiB2ZXJ0aWNhbDtcclxufVxyXG5cclxuLnJld2FyZHMtaXRlbS1yb3cgLnNldHRpbmctaXRlbS1jb250cm9sIC5kcm9wZG93biB7XHJcblx0bWluLXdpZHRoOiAxMjBweDtcclxufVxyXG5cclxuLnJld2FyZHMtbGV2ZWwtcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCBidXR0b24sXHJcbi5yZXdhcmRzLWl0ZW0tcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCBidXR0b24ge1xyXG5cdG1hcmdpbi1sZWZ0OiBhdXRvOyAvKiBQdXNoIGRlbGV0ZSBidXR0b24gdG8gdGhlIHJpZ2h0ICovXHJcbn1cclxuXHJcbi5yZXdhcmRzLWl0ZW0tZGl2aWRlciB7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGhlaWdodDogMXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRtYXJnaW4tdG9wOiAxNXB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbn1cclxuXHJcbi5zZXR0aW5nLWl0ZW0uc29ydC1jcml0ZXJpb24tcm93IC5zZXR0aW5nLWl0ZW0taW5mbyB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLnNldHRpbmctaXRlbS5zb3J0LWNyaXRlcmlvbi1yb3cgc2VsZWN0LmRyb3Bkb3duIHtcclxuXHRmbGV4OiAxO1xyXG59XHJcblxyXG5cclxuLnZpZXctZWRpdC1idXR0b24sXHJcbi52aWV3LWNvcHktYnV0dG9uLFxyXG4udmlldy1vcmRlci1idXR0b24sXHJcbi52aWV3LWRlbGV0ZS1idXR0b24ge1xyXG5cdHBhZGRpbmc6IDRweDtcclxuXHR3aWR0aDogMjRweDtcclxuXHRoZWlnaHQ6IDI0cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdG1hcmdpbi1sZWZ0OiA0cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4udmlldy1jb3B5LWJ1dHRvbiB7XHJcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi52aWV3LWNvcHktYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi52aWV3LWRlbGV0ZS1idXR0b24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLnZpZXctZGVsZXRlLWJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLnZpZXctaWNvbiB7XHJcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XHJcblx0LS1pY29uLXNpemU6IDE2cHg7XHJcbn1cclxuXHJcbi8qIENvcHkgbW9kZSBpbmZvIHN0eWxlcyAqL1xyXG4uY29weS1tb2RlLWluZm8ge1xyXG5cdG1hcmdpbjogMTBweCAwO1xyXG5cdHBhZGRpbmc6IDEycHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcclxuXHRib3JkZXItcmFkaXVzOiA1cHg7XHJcblx0Ym9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4uY29weS1tb2RlLWluZm8gcCB7XHJcblx0bWFyZ2luOiA0cHggMDtcclxufVxyXG5cclxuLyogVGFza3MgUGx1Z2luIENvbXBhdGliaWxpdHkgV2FybmluZyBCYW5uZXIgKi9cclxuLnRhc2tzLWNvbXBhdGliaWxpdHktd2FybmluZyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IGhzbChcclxuXHRcdHZhcigtLWFjY2VudC1oKSxcclxuXHRcdHZhcigtLWFjY2VudC1zKSxcclxuXHRcdHZhcigtLWFjY2VudC1sKSxcclxuXHRcdDAuNVxyXG5cdCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWRcclxuXHRcdGhzbCh2YXIoLS1hY2NlbnQtaCksIHZhcigtLWFjY2VudC1zKSwgdmFyKC0tYWNjZW50LWwpLCAwLjUpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4udGFza3Mtd2FybmluZy1pY29uIHtcclxuXHRmb250LXNpemU6IDIwcHg7XHJcblx0bGluZS1oZWlnaHQ6IDE7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi50YXNrcy13YXJuaW5nLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG59XHJcblxyXG4udGFza3Mtd2FybmluZy10aXRsZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbWVkaXVtKTtcclxufVxyXG5cclxuLnRhc2tzLXdhcm5pbmctdGV4dCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbn1cclxuXHJcbi50YXNrcy13YXJuaW5nLXRleHQgYSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxufVxyXG5cclxuLnRhc2tzLXdhcm5pbmctdGV4dCBhOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZm9ybWF0LWV4YW1wbGVzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdG1hcmdpbjogdmFyKC0tc2l6ZS00LTMpIDA7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZm9ybWF0LWV4YW1wbGVzIHN0cm9uZyB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0xKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1leGFtcGxlcyBzcGFuIHtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS0yLTMpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRtYXJnaW46IHZhcigtLXNpemUtMi0xKSAwO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZm9ybWF0LWV4YW1wbGVzIHNwYW46Zmlyc3Qtb2YtdHlwZSB7XHJcblx0bWFyZ2luLXRvcDogMDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1leGFtcGxlcyBzcGFuOmxhc3Qtb2YtdHlwZSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG5cclxuLyogRW5oYW5jZWQgUHJvamVjdCBDb25maWd1cmF0aW9uIFN0eWxlcyAqL1xyXG4ucHJvamVjdC1wYXRoLW1hcHBpbmdzLWNvbnRhaW5lcixcclxuLnByb2plY3QtbWV0YWRhdGEtbWFwcGluZ3MtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG59XHJcblxyXG4ucHJvamVjdC1wYXRoLW1hcHBpbmctcm93LFxyXG4ucHJvamVjdC1tZXRhZGF0YS1tYXBwaW5nLXJvdyB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdHBhZGRpbmc6IDEwcHg7XHJcbn1cclxuXHJcbi5uby1tYXBwaW5ncy1tZXNzYWdlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAyMHB4O1xyXG59XHJcblxyXG4vKiBUYXNrIFByb2plY3QgRGlzcGxheSBTdHlsZXMgKi9cclxuLnRhc2stcHJvamVjdC10ZyB7XHJcblx0b3BhY2l0eTogMC44O1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWFjY2VudCk7XHJcblx0cGFkZGluZy1sZWZ0OiA0cHg7XHJcbn1cclxuXHJcbi50YXNrLXByb2plY3QtdGc6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcdUQ4M0RcdUREMTdcIjtcclxuXHRtYXJnaW4tcmlnaHQ6IDJweDtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG59XHJcblxyXG4vKiBNZXRhZGF0YSBFZGl0b3IgUHJvamVjdCBTdHlsZXMgKi9cclxuLnByb2plY3QtcmVhZG9ubHkge1xyXG5cdG9wYWNpdHk6IDAuODtcclxufVxyXG5cclxuLnByb2plY3QtcmVhZG9ubHkgaW5wdXQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG59XHJcblxyXG4ucHJvamVjdC1zb3VyY2UtaW5kaWNhdG9yIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRtYXJnaW4tdG9wOiA0cHg7XHJcbn1cclxuXHJcbi8qIERhdGUgZm9ybWF0IGNvbmZpZ3VyYXRpb24gc3R5bGVzICovXHJcbi50YXNrLWdlbml1cy1kYXRlLWZvcm1hdHMtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAxNXB4O1xyXG5cdHBhZGRpbmc6IDE1cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1mb3JtYXRzLWhlYWRlciB7XHJcblx0bWFyZ2luLXRvcDogMDtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdGZvbnQtc2l6ZTogMS4xZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZm9ybWF0LWxpc3Qge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDEwcHg7XHJcblx0bWFyZ2luLXRvcDogMTVweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAxMHB4O1xyXG5cdHBhZGRpbmc6IDhweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1pdGVtOmhvdmVyIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1pbnB1dCB7XHJcblx0ZmxleDogMTtcclxuXHRwYWRkaW5nOiA2cHggMTBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG5cdGZvbnQtc2l6ZTogMC45NWVtO1xyXG5cdHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1mb3JtYXQtaW5wdXQ6Zm9jdXMge1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZm9ybWF0LWlucHV0OjpwbGFjZWhvbGRlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1kZWxldGUtYnRuIHtcclxuXHR3aWR0aDogMjhweDtcclxuXHRoZWlnaHQ6IDI4cHg7XHJcblx0cGFkZGluZzogMDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGZvbnQtc2l6ZTogMjBweDtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1kZWxldGUtYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yLWhvdmVyKTtcclxuXHR0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1hZGQtZm9ybWF0LWJ0biB7XHJcblx0cGFkZGluZzogMTBweCAxNnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcblx0YWxpZ24tc2VsZjogZmxleC1zdGFydDtcclxuXHRtYXJnaW4tdG9wOiA1cHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1hZGQtZm9ybWF0LWJ0bjpob3ZlciB7XHJcblx0Ym94LXNoYWRvdzogMCAycHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtYWRkLWZvcm1hdC1idG46YWN0aXZlIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbn1cclxuXHJcbi8qIERhdGUgZm9ybWF0IGV4YW1wbGVzIHNlY3Rpb24gKi9cclxuLnRhc2stZ2VuaXVzLWRhdGUtZXhhbXBsZXMge1xyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0cGFkZGluZzogMTVweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWV4YW1wbGVzLWhlYWRlciB7XHJcblx0bWFyZ2luLXRvcDogMDtcclxuXHRtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG5cdGZvbnQtc2l6ZTogMWVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWRhdGUtZXhhbXBsZXMtdGFibGUge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWRhdGUtZXhhbXBsZXMtdGFibGUgdGgsXHJcbi50YXNrLWdlbml1cy1kYXRlLWV4YW1wbGVzLXRhYmxlIHRkIHtcclxuXHRwYWRkaW5nOiA4cHggMTJweDtcclxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWRhdGUtZXhhbXBsZXMtdGFibGUgdGgge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZGF0ZS1leGFtcGxlcy10YWJsZSB0ZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZGF0ZS1leGFtcGxlcy10YWJsZSB0cjpudGgtY2hpbGQoZXZlbikgdGQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZGF0ZS1leGFtcGxlcy10YWJsZSB0cjpob3ZlciB0ZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuIiwgIi50Zy1zdGF0dXMtaWNvbiB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cdG1hcmdpbi1yaWdodDogdmFyKC0tc2l6ZS0yLTMpO1xyXG5cdG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS1zaXplLTItMSkpO1xyXG59XHJcblxyXG4udGctaWNvbnMtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4udGctaWNvbnMtY29udGFpbmVyIC50Zy1zdGF0dXMtaWNvbiB7XHJcblx0bWFyZ2luLXJpZ2h0OiAwO1xyXG5cdG1hcmdpbi10b3A6IDA7XHJcbn1cclxuXHJcbi8qIEdsb2JhbCBGaWx0ZXIgQ29udGFpbmVyIFN0eWxlcyAqL1xyXG4uZ2xvYmFsLWZpbHRlci1jb250YWluZXIge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0cGFkZGluZzogMTBweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxufVxyXG5cclxuLyogRmlsZSBUYXNrIGR5bmFtaWMgY29uZmlndXJhdGlvbiBzdHlsZXMgKi9cclxuLnRhc2stZ2VuaXVzLW1ldGFkYXRhLWZpZWxkcy1jb250YWluZXIsXHJcbi50YXNrLWdlbml1cy10YWdzLWNvbnRhaW5lcixcclxuLnRhc2stZ2VuaXVzLXBhdGhzLWNvbnRhaW5lcixcclxuLnRhc2stZ2VuaXVzLWRhdGUtZm9ybWF0cy1jb250YWluZXIge1xyXG5cdG1hcmdpbjogMXJlbSAwO1xyXG5cdHBhZGRpbmc6IDFyZW07XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZpZWxkcy1oZWFkZXIsXHJcbi50YXNrLWdlbml1cy10YWdzLWhlYWRlcixcclxuLnRhc2stZ2VuaXVzLXBhdGhzLWhlYWRlcixcclxuLnRhc2stZ2VuaXVzLWZvcm1hdHMtaGVhZGVyLFxyXG4udGFzay1nZW5pdXMtZXhhbXBsZXMtaGVhZGVyIHtcclxuXHRmb250LXNpemU6IDAuOTVlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdG1hcmdpbi1ib3R0b206IDAuNXJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZmllbGQtbGlzdCxcclxuLnRhc2stZ2VuaXVzLXRhZy1saXN0LFxyXG4udGFzay1nZW5pdXMtcGF0aC1saXN0LFxyXG4udGFzay1nZW5pdXMtZm9ybWF0LWxpc3Qge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZmllbGQtaXRlbSxcclxuLnRhc2stZ2VuaXVzLXRhZy1pdGVtLFxyXG4udGFzay1nZW5pdXMtcGF0aC1pdGVtLFxyXG4udGFzay1nZW5pdXMtZm9ybWF0LWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdHBhZGRpbmc6IDAuNXJlbTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZmllbGQtaXRlbTpob3ZlcixcclxuLnRhc2stZ2VuaXVzLXRhZy1pdGVtOmhvdmVyLFxyXG4udGFzay1nZW5pdXMtcGF0aC1pdGVtOmhvdmVyLFxyXG4udGFzay1nZW5pdXMtZm9ybWF0LWl0ZW06aG92ZXIge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZpZWxkLWlucHV0LFxyXG4udGFzay1nZW5pdXMtdGFnLWlucHV0LFxyXG4udGFzay1nZW5pdXMtcGF0aC1pbnB1dCxcclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1pbnB1dCB7XHJcblx0ZmxleDogMTtcclxuXHRwYWRkaW5nOiAwLjRyZW07XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaW50ZXJmYWNlKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZmllbGQtaW5wdXQ6Zm9jdXMsXHJcbi50YXNrLWdlbml1cy10YWctaW5wdXQ6Zm9jdXMsXHJcbi50YXNrLWdlbml1cy1wYXRoLWlucHV0OmZvY3VzLFxyXG4udGFzay1nZW5pdXMtZm9ybWF0LWlucHV0OmZvY3VzIHtcclxuXHRvdXRsaW5lOiBub25lO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAycHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZpZWxkLWRlbGV0ZS1idG4sXHJcbi50YXNrLWdlbml1cy10YWctZGVsZXRlLWJ0bixcclxuLnRhc2stZ2VuaXVzLXBhdGgtZGVsZXRlLWJ0bixcclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1kZWxldGUtYnRuIHtcclxuXHR3aWR0aDogMjhweDtcclxuXHRoZWlnaHQ6IDI4cHg7XHJcblx0cGFkZGluZzogMDtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtc2l6ZTogMS4yZW07XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycztcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWZpZWxkLWRlbGV0ZS1idG46aG92ZXIsXHJcbi50YXNrLWdlbml1cy10YWctZGVsZXRlLWJ0bjpob3ZlcixcclxuLnRhc2stZ2VuaXVzLXBhdGgtZGVsZXRlLWJ0bjpob3ZlcixcclxuLnRhc2stZ2VuaXVzLWZvcm1hdC1kZWxldGUtYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWFkZC1maWVsZC1idG4sXHJcbi50YXNrLWdlbml1cy1hZGQtdGFnLWJ0bixcclxuLnRhc2stZ2VuaXVzLWFkZC1wYXRoLWJ0bixcclxuLnRhc2stZ2VuaXVzLWFkZC1mb3JtYXQtYnRuIHtcclxuXHRwYWRkaW5nOiAwLjVyZW0gMXJlbTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnM7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1hZGQtZmllbGQtYnRuOmhvdmVyLFxyXG4udGFzay1nZW5pdXMtYWRkLXRhZy1idG46aG92ZXIsXHJcbi50YXNrLWdlbml1cy1hZGQtcGF0aC1idG46aG92ZXIsXHJcbi50YXNrLWdlbml1cy1hZGQtZm9ybWF0LWJ0bjpob3ZlciB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBEYXRlIGZvcm1hdCBleGFtcGxlcyB0YWJsZSAqL1xyXG4udGFzay1nZW5pdXMtZGF0ZS1leGFtcGxlcyB7XHJcblx0bWFyZ2luLXRvcDogMXJlbTtcclxuXHRwYWRkaW5nOiAxcmVtO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1kYXRlLWV4YW1wbGVzLXRhYmxlIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1kYXRlLWV4YW1wbGVzLXRhYmxlIHRoIHtcclxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdHBhZGRpbmc6IDAuNXJlbTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtZGF0ZS1leGFtcGxlcy10YWJsZSB0ZCB7XHJcblx0cGFkZGluZzogMC40cmVtIDAuNXJlbTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1kYXRlLWV4YW1wbGVzLXRhYmxlIHRyOmxhc3QtY2hpbGQgdGQge1xyXG5cdGJvcmRlci1ib3R0b206IG5vbmU7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1kYXRlLWV4YW1wbGVzLXRhYmxlIHRyOmhvdmVyIHRkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktYWx0KTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWlmcmFtZS1tb2RhbCB7XHJcblx0d2lkdGg6IDkwJTtcclxuXHRtYXgtd2lkdGg6IDE0MDBweDtcclxuXHRtYXgtaGVpZ2h0OiA5MHZoO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1pZnJhbWUtbW9kYWwgLm1vZGFsLXRpdGxlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbn1cclxuXHJcbi50aW1lLXBhcnNpbmctZXhhbXBsZSB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0yKTtcclxuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5nLWl0ZW0tY29udHJvbCBpbnB1dFt0eXBlPVwidGltZVwiXSB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuZmlsZS1zb3VyY2Utc3RyYXRlZ3ktY29udGFpbmVyIHtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmctdG9wOiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuIiwgIi8qIEJldGEgdGVzdCB3YXJuaW5nIGJhbm5lciBzdHlsZXMgKi9cclxuLmJldGEtdGVzdC13YXJuaW5nLWJhbm5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRnYXA6IDEycHg7XHJcblx0cGFkZGluZzogMTZweDtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG59XHJcblxyXG4uYmV0YS13YXJuaW5nLWljb24ge1xyXG5cdGZvbnQtc2l6ZTogMjBweDtcclxuXHRsaW5lLWhlaWdodDogMTtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRtYXJnaW4tdG9wOiAycHg7XHJcbn1cclxuXHJcbi5iZXRhLXdhcm5pbmctY29udGVudCB7XHJcblx0ZmxleDogMTtcclxuXHRtaW4td2lkdGg6IDA7XHJcbn1cclxuXHJcbi5iZXRhLXdhcm5pbmctdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0bWFyZ2luLWJvdHRvbTogOHB4O1xyXG59XHJcblxyXG4uYmV0YS13YXJuaW5nLXRleHQge1xyXG5cdGZvbnQtc2l6ZTogMTNweDtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG4iLCAiLyogU2V0dGluZ3MgU2VhcmNoIENvbXBvbmVudCBTdHlsZXMgKi9cclxuXHJcbi8qIFx1NjQxQ1x1N0QyMlx1OEY5M1x1NTE2NVx1Njg0Nlx1NUJCOVx1NTY2OCAtIFx1NEY3Rlx1NzUyOCBPYnNpZGlhbiBcdTY4MDdcdTUxQzZcdThGOTNcdTUxNjVcdTY4NDZcdTY4MzdcdTVGMEYgKi9cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1pbnB1dC1jb250YWluZXIge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW5wdXQtYmFja2dyb3VuZCk7XHJcblx0Ym9yZGVyOiB2YXIoLS1pbnB1dC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xyXG5cdG1pbi1oZWlnaHQ6IHZhcigtLWlucHV0LWhlaWdodCk7XHJcbn1cclxuXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtaW5wdXQtY29udGFpbmVyOmZvY3VzLXdpdGhpbiB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjIpO1xyXG59XHJcblxyXG4vKiBcdTY0MUNcdTdEMjJcdTU2RkVcdTY4MDcgKi9cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1pY29uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0cGFkZGluZzogMCB2YXIoLS1zaXplLTQtMik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLWljb24gc3ZnIHtcclxuXHR3aWR0aDogdmFyKC0taWNvbi1zKTtcclxuXHRoZWlnaHQ6IHZhcigtLWljb24tcyk7XHJcbn1cclxuXHJcbi8qIFx1NjQxQ1x1N0QyMlx1OEY5M1x1NTE2NVx1Njg0NiAtIFx1OTFDRFx1N0Y2RSBPYnNpZGlhbiBcdTlFRDhcdThCQTRcdTY4MzdcdTVGMEYgKi9cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1pbnB1dCB7XHJcblx0ZmxleDogMTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMikgdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbWVkaXVtKTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG5pbnB1dC50Zy1zZXR0aW5ncy1zZWFyY2gtaW5wdXQge1xyXG5cdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG5cdGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1pbnB1dDo6cGxhY2Vob2xkZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRvcGFjaXR5OiAwLjc7XHJcbn1cclxuXHJcbi8qIFx1NkUwNVx1OTY2NFx1NjMwOVx1OTRBRSAtIFx1NEY3Rlx1NzUyOCBPYnNpZGlhbiBcdTYzMDlcdTk0QUVcdTY4MzdcdTVGMEYgKi9cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1jbGVhciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKTtcclxuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLXNpemUtMi0xKTtcclxuXHRib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLXJhZGl1cyk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xyXG5cdGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHR3aWR0aDogdmFyKC0tY2xpY2thYmxlLWljb24tc2l6ZSk7XHJcblx0aGVpZ2h0OiB2YXIoLS1jbGlja2FibGUtaWNvbi1zaXplKTtcclxufVxyXG5cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1jbGVhcjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3ZlcikgIWltcG9ydGFudDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLWNsZWFyOmFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtY2xlYXIgc3ZnIHtcclxuXHR3aWR0aDogdmFyKC0taWNvbi14cyk7XHJcblx0aGVpZ2h0OiB2YXIoLS1pY29uLXhzKTtcclxufVxyXG5cclxuLyogXHU2NDFDXHU3RDIyXHU3RUQzXHU2NzlDXHU1QkI5XHU1NjY4IC0gXHU0RjdGXHU3NTI4IE9ic2lkaWFuIFx1NUYzOVx1NTFGQVx1ODNEQ1x1NTM1NVx1NjgzN1x1NUYwRiAqL1xyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdHMge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IGNhbGMoMTAwJSArIHZhcigtLXNpemUtMi0xKSk7XHJcblx0bGVmdDogMDtcclxuXHRyaWdodDogMDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sKTtcclxuXHR6LWluZGV4OiB2YXIoLS1sYXllci1wb3BvdmVyKTtcclxuXHRtYXgtaGVpZ2h0OiAzMjBweDtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcclxufVxyXG5cclxuLyogXHU2NDFDXHU3RDIyXHU3RUQzXHU2NzlDXHU5ODc5IC0gXHU0RjdGXHU3NTI4IE9ic2lkaWFuIFx1ODNEQ1x1NTM1NVx1OTg3OVx1NjgzN1x1NUYwRiAqL1xyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKSB2YXIoLS1zaXplLTQtMyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlci1ib3R0b206IHZhcigtLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLWluLW91dDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0Omxhc3QtY2hpbGQge1xyXG5cdGJvcmRlci1ib3R0b206IG5vbmU7XHJcbn1cclxuXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0OmhvdmVyLFxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdC1zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0OmFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUpO1xyXG59XHJcblxyXG4vKiBcdTY0MUNcdTdEMjJcdTdFRDNcdTY3OUNcdTU0MERcdTc5RjAgKi9cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHQtbmFtZSB7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0bGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXRpZ2h0KTtcclxufVxyXG5cclxuLyogXHU2NDFDXHU3RDIyXHU3RUQzXHU2NzlDXHU1MTQzXHU0RkUxXHU2MDZGICovXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0LW1ldGEge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0LWNhdGVnb3J5IHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjAyZW07XHJcbn1cclxuXHJcbi8qIFx1NjQxQ1x1N0QyMlx1N0VEM1x1Njc5Q1x1NjNDRlx1OEZGMCAqL1xyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdC1kZXNjIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbm9ybWFsKTtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi8qIFx1NjVFMFx1N0VEM1x1Njc5Q1x1NzJCNlx1NjAwMSAqL1xyXG4udGctc2V0dGluZ3Mtc2VhcmNoLW5vLXJlc3VsdCB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpIHZhcigtLXNpemUtNC0zKTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxufVxyXG5cclxuLyogXHU4QkJFXHU3RjZFXHU5ODc5XHU5QUQ4XHU0RUFFXHU2NTQ4XHU2NzlDICovXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtaGlnaGxpZ2h0IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSkgIWltcG9ydGFudDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjZzIGVhc2Utb3V0O1xyXG5cdGFuaW1hdGlvbjogdGctc2V0dGluZ3Mtc2VhcmNoLXB1bHNlIDAuNnMgZWFzZS1vdXQ7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgdGctc2V0dGluZ3Mtc2VhcmNoLXB1bHNlIHtcclxuXHQwJSB7XHJcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuXHR9XHJcblx0NTAlIHtcclxuXHRcdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMS4wMSk7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIFx1OTUyRVx1NzZEOFx1NUJGQ1x1ODIyQVx1NjMwN1x1NzkzQVx1NTY2OCAqL1xyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdC1zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3ZlcikgIWltcG9ydGFudDtcclxuXHRvdXRsaW5lOiB2YXIoLS1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0b3V0bGluZS1vZmZzZXQ6IC0xcHg7XHJcbn1cclxuXHJcbi8qIFx1NTRDRFx1NUU5NFx1NUYwRlx1OEJCRVx1OEJBMSAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQudGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdHMge1xyXG5cdFx0bWF4LWhlaWdodDogMjgwcHg7XHJcblx0XHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0fVxyXG5cclxuXHQudGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdCB7XHJcblx0XHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTIpO1xyXG5cdH1cclxuXHJcblx0LnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHQtbmFtZSB7XHJcblx0XHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdH1cclxuXHJcblx0LnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHQtY2F0ZWdvcnkge1xyXG5cdFx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0xKTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIFx1NkVEQVx1NTJBOFx1Njc2MVx1NjgzN1x1NUYwRiAtIFx1NEY3Rlx1NzUyOCBPYnNpZGlhbiBcdTY4MDdcdTUxQzZcdTZFREFcdTUyQThcdTY3NjEgKi9cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHRzIHtcclxuXHRzY3JvbGxiYXItd2lkdGg6IHRoaW47XHJcblx0c2Nyb2xsYmFyLWNvbG9yOiB2YXIoLS1zY3JvbGxiYXItdGh1bWItYmcpIHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdHM6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuXHR3aWR0aDogdmFyKC0tc2Nyb2xsYmFyLXRoaW4td2lkdGgpO1xyXG59XHJcblxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdHM6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHRzOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyLXRodW1iLWJnKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1zY3JvbGxiYXItdGhpbi10aHVtYi1yYWRpdXMpO1xyXG5cdGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cdGJhY2tncm91bmQtY2xpcDogY29udGVudC1ib3g7XHJcbn1cclxuXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0czo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXNjcm9sbGJhci10aHVtYi1iZy1ob3Zlcik7XHJcblx0YmFja2dyb3VuZC1jbGlwOiBjb250ZW50LWJveDtcclxufVxyXG5cclxuLyogXHU0RTBFXHU4QkJFXHU3RjZFXHU2ODA3XHU3QjdFXHU5ODc1XHU1QkI5XHU1NjY4XHU3Njg0XHU5NUY0XHU4REREXHU4QzAzXHU2NTc0ICovXHJcbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtdGFicy1jYXRlZ29yaXplZC1jb250YWluZXIge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0zKTtcclxufVxyXG5cclxuLyogXHU0RkVFXHU1OTBEXHU1M0VGXHU4MEZEXHU3Njg0IHotaW5kZXggXHU5NUVFXHU5ODk4ICovXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0cyB7XHJcblx0ei1pbmRleDogdmFyKC0tbGF5ZXItcG9wb3ZlciwgMjAwKTtcclxufVxyXG5cclxuLyogXHU3ODZFXHU0RkREXHU4RjkzXHU1MTY1XHU2ODQ2XHU4MDVBXHU3MTI2XHU2NUY2XHU3Njg0XHU2ODM3XHU1RjBGXHU2QjYzXHU3ODZFICovXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtaW5wdXQ6Zm9jdXMge1xyXG5cdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG5cdG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcclxuXHRib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIFx1NjQxQ1x1N0QyMlx1NTZGRVx1NjgwN1x1NzY4NFx1NEVBNFx1NEU5Mlx1NzJCNlx1NjAwMSAqL1xyXG4udGctc2V0dGluZ3Mtc2VhcmNoLWljb24ge1xyXG5cdHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLWlucHV0LWNvbnRhaW5lcjpmb2N1cy13aXRoaW4gLnRnLXNldHRpbmdzLXNlYXJjaC1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLyogXHU2RTA1XHU5NjY0XHU2MzA5XHU5NEFFXHU3Njg0XHU1NkZFXHU2ODA3XHU2ODM3XHU1RjBGICovXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtY2xlYXIge1xyXG5cdG9wYWNpdHk6IDAuODtcclxufVxyXG5cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1jbGVhcjpob3ZlciB7XHJcblx0b3BhY2l0eTogMTtcclxufVxyXG4iLCAiLyogU2V0dGluZ3MgTWlncmF0aW9uIFN0eWxpbmcgKi9cclxuXHJcbi5zZXR0aW5nLWl0ZW0taW5mby5tb2Qtd2FybmluZyB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdHBhZGRpbmc6IDE2cHg7XHJcblx0bWFyZ2luOiAxMnB4IDA7XHJcbn1cclxuXHJcbi5zZXR0aW5nLWl0ZW0taW5mby5tb2Qtd2FybmluZyAuc2V0dGluZy1pdGVtLW5hbWUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxufVxyXG5cclxuLnNldHRpbmctaXRlbS1pbmZvLm1vZC13YXJuaW5nIC5zZXR0aW5nLWl0ZW0tZGVzY3JpcHRpb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG59XHJcblxyXG4uc2V0dGluZy1pdGVtLWluZm8ubW9kLXdhcm5pbmcgLnNldHRpbmctaXRlbS1kZXNjcmlwdGlvbiBwIHtcclxuXHRtYXJnaW46IDRweCAwO1xyXG59XHJcblxyXG4uc2V0dGluZy1pdGVtLWluZm8ubW9kLXdhcm5pbmcgLnNldHRpbmctaXRlbS1jb250cm9sIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogOHB4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5zZXR0aW5nLWl0ZW0taW5mby5tb2Qtd2FybmluZyBidXR0b24ubW9kLWN0YSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0cGFkZGluZzogOHB4IDE2cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbi5zZXR0aW5nLWl0ZW0taW5mby5tb2Qtd2FybmluZyBidXR0b24ubW9kLWN0YTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLnNldHRpbmctaXRlbS1pbmZvLm1vZC13YXJuaW5nIGJ1dHRvbi5tb2QtbXV0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdHBhZGRpbmc6IDhweCAxNnB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLnNldHRpbmctaXRlbS1pbmZvLm1vZC13YXJuaW5nIGJ1dHRvbi5tb2QtbXV0ZWQ6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi8qIE1pZ3JhdGlvbiBTdWNjZXNzIEluZGljYXRvciAqL1xyXG4uc2V0dGluZy1pdGVtLWluZm8ubW9kLXN1Y2Nlc3Mge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZWVuLWJnKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdHBhZGRpbmc6IDE2cHg7XHJcblx0bWFyZ2luOiAxMnB4IDA7XHJcbn1cclxuXHJcbi5zZXR0aW5nLWl0ZW0taW5mby5tb2Qtc3VjY2VzcyAuc2V0dGluZy1pdGVtLW5hbWUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuXHRtYXJnaW4tYm90dG9tOiA4cHg7XHJcbn1cclxuXHJcbi8qIEZpbGVTb3VyY2UgSW50ZWdyYXRpb24gTm90aWNlICovXHJcbi5maWxlLXNvdXJjZS1ub3RpY2Uge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0cGFkZGluZzogMTJweDtcclxuXHRtYXJnaW46IDhweCAwO1xyXG59XHJcblxyXG4uZmlsZS1zb3VyY2Utbm90aWNlIC5ub3RpY2UtdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0bWFyZ2luLWJvdHRvbTogNHB4O1xyXG59XHJcblxyXG4uZmlsZS1zb3VyY2Utbm90aWNlIC5ub3RpY2UtZGVzY3JpcHRpb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcbiIsICIvKiBXb3Jrc3BhY2UgU2V0dGluZ3MgU2VsZWN0b3IgU3R5bGVzICovXHJcblxyXG4vKiBNYWluIGNvbnRhaW5lciBmb3IgdGhlIGhlYWRlciBiYXIgKi9cclxuLnRnLXNldHRpbmdzLWhlYWRlci1iYXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDEycHg7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyogQ29udGFpbmVyIGZvciB3b3Jrc3BhY2Ugc2VsZWN0b3IgKi9cclxuLnRnLXdvcmtzcGFjZS1zZWxlY3Rvci1jb250YWluZXIge1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4vKiBXb3Jrc3BhY2Ugc2VsZWN0b3IgYnV0dG9uICovXHJcbi53b3Jrc3BhY2Utc2V0dGluZ3Mtc2VsZWN0b3Ige1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG5cclxuLndvcmtzcGFjZS1zZXR0aW5ncy1zZWxlY3Rvci1idXR0b24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDhweDtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWZvcm0tZmllbGQpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlO1xyXG5cdG1pbi13aWR0aDogMTUwcHg7XHJcblx0aGVpZ2h0OiAzNHB4OyAvKiBNYXRjaCBzZWFyY2ggYmFyIGhlaWdodCAqL1xyXG59XHJcblxyXG4ud29ya3NwYWNlLXNldHRpbmdzLXNlbGVjdG9yLWJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuXHJcbi53b3Jrc3BhY2Utc2V0dGluZ3Mtc2VsZWN0b3ItYnV0dG9uOmFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUtaG92ZXIpO1xyXG59XHJcblxyXG4vKiBXb3Jrc3BhY2UgaWNvbiAqL1xyXG4ud29ya3NwYWNlLXNldHRpbmdzLXNlbGVjdG9yLWJ1dHRvbiAud29ya3NwYWNlLWljb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMjBweDtcclxuXHRoZWlnaHQ6IDIwcHg7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi53b3Jrc3BhY2Utc2V0dGluZ3Mtc2VsZWN0b3ItYnV0dG9uIC53b3Jrc3BhY2UtaWNvbiBzdmcge1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxuXHRmaWxsOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogV29ya3NwYWNlIG5hbWUgKi9cclxuLndvcmtzcGFjZS1zZXR0aW5ncy1zZWxlY3Rvci1idXR0b24gLndvcmtzcGFjZS1uYW1lIHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLyogRHJvcGRvd24gYXJyb3cgaWNvbiAqL1xyXG4ud29ya3NwYWNlLXNldHRpbmdzLXNlbGVjdG9yLWJ1dHRvbiAud29ya3NwYWNlLWRyb3Bkb3duLWljb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMTZweDtcclxuXHRoZWlnaHQ6IDE2cHg7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0bWFyZ2luLWxlZnQ6IGF1dG87XHJcbn1cclxuXHJcbi53b3Jrc3BhY2Utc2V0dGluZ3Mtc2VsZWN0b3ItYnV0dG9uIC53b3Jrc3BhY2UtZHJvcGRvd24taWNvbiBzdmcge1xyXG5cdHdpZHRoOiAxMnB4O1xyXG5cdGhlaWdodDogMTJweDtcclxuXHRmaWxsOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgZWFzZTtcclxufVxyXG5cclxuLndvcmtzcGFjZS1zZXR0aW5ncy1zZWxlY3Rvci1idXR0b246aG92ZXIgLndvcmtzcGFjZS1kcm9wZG93bi1pY29uIHN2ZyB7XHJcblx0ZmlsbDogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4vKiBBZGp1c3Qgc2VhcmNoIGNvbnRhaW5lciB0byB0YWtlIHJlbWFpbmluZyBzcGFjZSAqL1xyXG4udGctc2V0dGluZ3MtaGVhZGVyLWJhciAudGctc2V0dGluZ3Mtc2VhcmNoLWNvbnRhaW5lciB7XHJcblx0ZmxleDogMTtcclxuXHRtYXgtd2lkdGg6IG5vbmU7XHJcbn1cclxuXHJcbi8qIEVuc3VyZSBzZWFyY2ggaW5wdXQgY29udGFpbmVyIGZpbGxzIHdpZHRoICovXHJcbi50Zy1zZXR0aW5ncy1oZWFkZXItYmFyIC50Zy1zZXR0aW5ncy1zZWFyY2gtaW5wdXQtY29udGFpbmVyIHtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyogTWFpbiBjb250YWluZXIgYWRqdXN0bWVudHMgKi9cclxuLnRnLXNldHRpbmdzLW1haW4tY29udGFpbmVyIHtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyogRW5zdXJlIHNlYXJjaCByZXN1bHRzIGFwcGVhciBiZWxvdyB0aGUgaGVhZGVyIGJhciAqL1xyXG4udGctc2V0dGluZ3MtbWFpbi1jb250YWluZXIgLnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHRzIHtcclxuXHRtYXJnaW4tdG9wOiA4cHg7XHJcbn1cclxuXHJcbi8qIE1vYmlsZSByZXNwb25zaXZlIGFkanVzdG1lbnRzICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC50Zy1zZXR0aW5ncy1oZWFkZXItYmFyIHtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0XHRhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuXHRcdGdhcDogOHB4O1xyXG5cdH1cclxuXHJcblx0LndvcmtzcGFjZS1zZXR0aW5ncy1zZWxlY3Rvci1idXR0b24ge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtaW4td2lkdGg6IHVuc2V0O1xyXG5cdH1cclxuXHJcblx0LnRnLXNldHRpbmdzLWhlYWRlci1iYXIgLnRnLXNldHRpbmdzLXNlYXJjaC1jb250YWluZXIge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG59XHJcbiIsICIuY29uZmlybS1tb2RhbC1idXR0b25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTMpO1xyXG59XHJcblxyXG4vKiBMaXN0IENvbmZpZyBNb2RhbCBTdHlsZXMgKi9cclxuLmxpc3QtY29uZmlnLW1vZGFsIHtcclxuXHRtaW4td2lkdGg6IDQwMHB4O1xyXG5cdG1heC13aWR0aDogNjAwcHg7XHJcbn1cclxuXHJcbi5saXN0LWNvbmZpZy1kZXNjcmlwdGlvbiB7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtc21hbGxlcik7XHJcbn1cclxuXHJcbi5saXN0LWNvbmZpZy1jb250YWluZXIge1xyXG5cdG1hcmdpbjogdmFyKC0tc2l6ZS00LTMpIDA7XHJcblx0bWF4LWhlaWdodDogMzAwcHg7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0zKTtcclxufVxyXG5cclxuLmxpc3QtY29uZmlnLWVtcHR5IHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTYpO1xyXG59XHJcblxyXG4ubGlzdC1jb25maWctZW1wdHktdGV4dCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi5saXN0LWNvbmZpZy1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTIpO1xyXG59XHJcblxyXG4ubGlzdC1jb25maWctaXRlbTpsYXN0LWNoaWxkIHtcclxuXHRtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcblxyXG4ubGlzdC1jb25maWctaW5wdXQge1xyXG5cdGZsZXg6IDE7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0zKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcblxyXG4ubGlzdC1jb25maWctaW5wdXQ6Zm9jdXMge1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4ubGlzdC1jb25maWctZGVsZXRlLWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiAyNHB4O1xyXG5cdGhlaWdodDogMjRweDtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4ubGlzdC1jb25maWctZGVsZXRlLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvci1ob3Zlcik7XHJcbn1cclxuXHJcbi5saXN0LWNvbmZpZy1kZWxldGUtaWNvbiB7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG59XHJcbiIsICIvKiBQbGFjZW1lbnQgUHJldmlldyBTdHlsZXMgKi9cclxuXHJcbi5wbGFjZW1lbnQtcHJldmlldyB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAyZnIgMWZyO1xyXG5cdGdhcDogMnB4O1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRoZWlnaHQ6IDE4MHB4O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG59XHJcblxyXG4vKiBTaWRlYmFycyAqL1xyXG4ucGxhY2VtZW50LXNpZGViYXIge1xyXG5cdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHRwYWRkaW5nOiA0cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogMnB4O1xyXG59XHJcblxyXG4ucGxhY2VtZW50LXNpZGViYXItYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdG9wYWNpdHk6IDAuNDtcclxufVxyXG5cclxuLnBsYWNlbWVudC1zaWRlYmFyLWluYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0b3BhY2l0eTogMC4zO1xyXG59XHJcblxyXG4vKiBTaWRlYmFyIGl0ZW1zICovXHJcbi5wbGFjZW1lbnQtc2lkZWJhci1pdGVtIHtcclxuXHRoZWlnaHQ6IDZweDtcclxuXHRib3JkZXItcmFkaXVzOiAxcHg7XHJcbn1cclxuXHJcbi5wbGFjZW1lbnQtc2lkZWJhci1pdGVtLWFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG9wYWNpdHk6IDAuMztcclxufVxyXG5cclxuLnBsYWNlbWVudC1zaWRlYmFyLWl0ZW0taW5hY3RpdmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdG9wYWNpdHk6IDAuMjtcclxufVxyXG5cclxuLyogUmlnaHQgc2lkZWJhciBpdGVtcyAoc21hbGxlcikgKi9cclxuLnBsYWNlbWVudC1zaWRlYmFyLWl0ZW0tc21hbGwge1xyXG5cdGhlaWdodDogNXB4O1xyXG59XHJcblxyXG4vKiBDZW50ZXIgYXJlYSAqL1xyXG4ucGxhY2VtZW50LWNlbnRlciB7XHJcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxufVxyXG5cclxuLnBsYWNlbWVudC1jZW50ZXItYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdG9wYWNpdHk6IDAuNDtcclxufVxyXG5cclxuLyogVGFiIGJhciAqL1xyXG4ucGxhY2VtZW50LXRhYi1iYXIge1xyXG5cdGhlaWdodDogMTZweDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmc6IDJweCA0cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDJweDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LXRhYiB7XHJcblx0d2lkdGg6IDI0cHg7XHJcblx0aGVpZ2h0OiAxMHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRvcGFjaXR5OiAwLjM7XHJcblx0Ym9yZGVyLXJhZGl1czogMXB4O1xyXG59XHJcblxyXG4ucGxhY2VtZW50LXRhYi1hY3RpdmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRvcGFjaXR5OiAwLjU7XHJcbn1cclxuXHJcbi8qIENvbnRlbnQgYXJlYSAqL1xyXG4ucGxhY2VtZW50LWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcblx0cGFkZGluZzogNnB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDRweDtcclxufVxyXG5cclxuLnBsYWNlbWVudC1jb250ZW50LWxpbmUge1xyXG5cdGhlaWdodDogOHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRvcGFjaXR5OiAwLjM7XHJcblx0Ym9yZGVyLXJhZGl1czogMXB4O1xyXG59XHJcbiIsICIvKiBPbmJvYXJkaW5nIENvbXBvbmVudCBQcmV2aWV3cyBTdHlsZXMgKi9cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXc6aGFzKC5jb21wb25lbnQtc2hvd2Nhc2UpIC5vbmJvYXJkaW5nLWNvbnRlbnQge1xyXG5cdG92ZXJmbG93LXk6IGhpZGRlbjtcclxufVxyXG5cclxuLmNvbXBvbmVudC1wcmV2aWV3IC52Mi1uYXYtbGVmdCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3OmhhcyguY29tcG9uZW50LXNob3djYXNlKSAub25ib2FyZGluZy1oZWFkZXIge1xyXG5cdHBhZGRpbmc6IGNhbGModmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKSAqIDIpIHZhcigtLW9uYm9hcmRpbmctc3BhY2luZykgdmFyKC0tc2l6ZS00LTIpIHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcbn1cclxuXHJcbi52Mi10b3AtbmF2aWdhdGlvbi5jb21wb25lbnQtcHJldmlldyB7XHJcblx0b3ZlcmZsb3cteDogYXV0bztcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4vKiBDb21wb25lbnQgc2hvd2Nhc2UgY29udGFpbmVyICovXHJcbi5jb21wb25lbnQtc2hvd2Nhc2Uge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtNik7XHJcblx0bWFyZ2luOiB2YXIoLS1zaXplLTQtNCkgMDtcclxuXHRtaW4taGVpZ2h0OiA0MDBweDtcclxufVxyXG5cclxuLmNvbXBvbmVudC1zaG93Y2FzZS1wcmV2aWV3IHtcclxuXHRmbGV4OiAxO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLmNvbXBvbmVudC1zaG93Y2FzZS1kZXNjcmlwdGlvbiB7XHJcblx0ZmxleDogMTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMyk7XHJcbn1cclxuXHJcbi5jb21wb25lbnQtc2hvd2Nhc2UtZGVzY3JpcHRpb24gaDMge1xyXG5cdG1hcmdpbjogMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1sYXJnZSk7XHJcbn1cclxuXHJcbi5jb21wb25lbnQtc2hvd2Nhc2UtZGVzY3JpcHRpb24gcCB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRsaW5lLWhlaWdodDogMS42O1xyXG59XHJcblxyXG4uY29tcG9uZW50LWZlYXR1cmUtbGlzdCB7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1hcmdpbjogMDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5jb21wb25lbnQtZmVhdHVyZS1saXN0IGxpIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5jb21wb25lbnQtZmVhdHVyZS1saXN0IGxpOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXHUyNzEzXCI7XHJcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi8qIENvbXBvbmVudCBwcmV2aWV3IGFkanVzdG1lbnRzICovXHJcbi5jb21wb25lbnQtcHJldmlldyB7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0dXNlci1zZWxlY3Q6IG5vbmU7XHJcbn1cclxuXHJcbi8qIFNjYWxlIGRvd24gcHJldmlld3MgdG8gZml0ICovXHJcbi5jb21wb25lbnQtcHJldmlldy1zaWRlYmFyIHtcclxuXHRtYXgtd2lkdGg6IDMwMHB4O1xyXG59XHJcblxyXG4uY29tcG9uZW50LXByZXZpZXctcG9wb3ZlciB7XHJcblx0bWF4LXdpZHRoOiAzNTBweDtcclxufVxyXG5cclxuLyogRGlzYWJsZSBpbnRlcmFjdGlvbnMgaW4gcHJldmlld3MgKi9cclxuLmNvbXBvbmVudC1wcmV2aWV3IGlucHV0LFxyXG4uY29tcG9uZW50LXByZXZpZXcgYnV0dG9uLFxyXG4uY29tcG9uZW50LXByZXZpZXcgLmNsaWNrYWJsZS1pY29uIHtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRjdXJzb3I6IGRlZmF1bHQ7XHJcbn1cclxuXHJcbi8qIENvbXBvbmVudCB0YWJzIGZvciBzd2l0Y2hpbmcgdmlld3MgKi9cclxuLmNvbXBvbmVudC10YWJzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC00KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5jb21wb25lbnQtdGFiIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLmNvbXBvbmVudC10YWI6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5jb21wb25lbnQtdGFiLmlzLWFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBNdWx0aXBsZSBjb21wb25lbnQgc2hvd2Nhc2UgKi9cclxuLmNvbXBvbmVudHMtZ3JpZCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC04KTtcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBhZGp1c3RtZW50cyAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQuY29tcG9uZW50LXNob3djYXNlIHtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0fVxyXG5cclxuXHQuY29tcG9uZW50LXNob3djYXNlLXByZXZpZXcge1xyXG5cdFx0bWluLWhlaWdodDogMzAwcHg7XHJcblx0fVxyXG59XHJcblxyXG4vKiBGaWxlIGZpbHRlciBwcmV2aWV3IHN0eWxlcyAqL1xyXG4uZmlsZS1maWx0ZXItcHJldmlldyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTQpO1xyXG59XHJcblxyXG4uZmlsZS1maWx0ZXItY29uZmlnIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uZmlsZS1maWx0ZXItc3RhdHMtcHJldmlldyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC00KTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxufVxyXG5cclxuLmZpbHRlci1zdGF0LWl0ZW0ge1xyXG5cdGZsZXg6IDE7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uZmlsdGVyLXN0YXQtdmFsdWUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1sYXJnZXIpO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxuXHRkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLmZpbHRlci1zdGF0LWxhYmVsIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMSk7XHJcbn1cclxuXHJcbi8qIFJlY29tbWVuZGVkIGNvbmZpZ3MgKi9cclxuLnJlY29tbWVuZGVkLWNvbmZpZ3Mge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbi5yZWNvbW1lbmRlZC1jb25maWctaXRlbSB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4ucmVjb21tZW5kZWQtY29uZmlnLWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLnJlY29tbWVuZGVkLWNvbmZpZy1pdGVtIGg0IHtcclxuXHRtYXJnaW46IDAgMCB2YXIoLS1zaXplLTQtMikgMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xyXG59XHJcblxyXG4ucmVjb21tZW5kZWQtY29uZmlnLWl0ZW0gcCB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcblxyXG4uY29tcG9uZW50LXNob3djYXNlLXByZXZpZXcudGctdjItY29udGFpbmVyLmNvbXBvbmVudC1wcmV2aWV3LXNpZGViYXIgLnYyLXNpZGViYXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn0iLCAiLyogRmlsZSBGaWx0ZXIgU2V0dGluZ3MgU3R5bGVzICovXHJcblxyXG4uZmlsZS1maWx0ZXItcnVsZXMtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAxcmVtO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0cGFkZGluZzogMXJlbTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi5maWxlLWZpbHRlci1ydWxlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAxcmVtO1xyXG5cdHBhZGRpbmc6IDAuNzVyZW07XHJcblx0bWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLXJ1bGU6bGFzdC1jaGlsZCB7XHJcblx0bWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLXJ1bGUtdHlwZSxcclxuLmZpbGUtZmlsdGVyLXJ1bGUtcGF0aCxcclxuLmZpbGUtZmlsdGVyLXJ1bGUtc2NvcGUsXHJcbi5maWxlLWZpbHRlci1ydWxlLWVuYWJsZWQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDAuMjVyZW07XHJcbn1cclxuXHJcbi5maWxlLWZpbHRlci1ydWxlLXR5cGUge1xyXG5cdG1pbi13aWR0aDogODBweDtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLXJ1bGUtcGF0aCB7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLXJ1bGUtZW5hYmxlZCB7XHJcblx0bWluLXdpZHRoOiA2MHB4O1xyXG59XHJcblxyXG4uZmlsZS1maWx0ZXItcnVsZSBsYWJlbCB7XHJcblx0Zm9udC1zaXplOiAwLjhyZW07XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi5maWxlLWZpbHRlci1ydWxlIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuXHRwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDAuOXJlbTtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLXJ1bGUgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuXHR3aWR0aDogMTZweDtcclxuXHRoZWlnaHQ6IDE2cHg7XHJcbn1cclxuXHJcbi5maWxlLWZpbHRlci1ydWxlLWRlbGV0ZSB7XHJcblx0cGFkZGluZzogMC4yNXJlbTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1pbi13aWR0aDogMjhweDtcclxuXHRoZWlnaHQ6IDI4cHg7XHJcbn1cclxuXHJcbi5maWxlLWZpbHRlci1hZGQtcnVsZSB7XHJcblx0bWFyZ2luLXRvcDogMXJlbTtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLWFkZC1ydWxlIC5zZXR0aW5nLWl0ZW0ge1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4uZmlsZS1maWx0ZXItYWRkLXJ1bGUgLnNldHRpbmctaXRlbS1jb250cm9sIHtcclxuXHRnYXA6IDAuNXJlbTtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLWFkZC1ydWxlICsgLnNldHRpbmctaXRlbSB7XHJcblx0Ym9yZGVyLXRvcDogbm9uZTtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLXN0YXRzIHtcclxuXHRtYXJnaW4tdG9wOiAxLjVyZW07XHJcblx0cGFkZGluZzogMXJlbTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLXN0YXQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMC4yNXJlbSAwO1xyXG59XHJcblxyXG4uZmlsZS1maWx0ZXItc3RhdDpub3QoOmxhc3QtY2hpbGQpIHtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG1hcmdpbi1ib3R0b206IDAuMjVyZW07XHJcblx0cGFkZGluZy1ib3R0b206IDAuNXJlbTtcclxufVxyXG5cclxuLnN0YXQtbGFiZWwge1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnN0YXQtdmFsdWUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIEVycm9yIHN0YXRlIGZvciBzdGF0aXN0aWNzICovXHJcbi5maWxlLWZpbHRlci1zdGF0LmVycm9yIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcclxuXHRib3JkZXItbGVmdDogM3B4IHNvbGlkIHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4uZmlsZS1maWx0ZXItc3RhdC5lcnJvciAuc3RhdC1sYWJlbCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4vKiBSZWZyZXNoIGJ1dHRvbiBzdHlsaW5nICovXHJcbi5zZXR0aW5nLWl0ZW0gLnNldHRpbmctaXRlbS1jb250cm9sIGJ1dHRvblthcmlhLWxhYmVsKj1cInJlZnJlc2hcIl0ge1xyXG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5zZXR0aW5nLWl0ZW0gLnNldHRpbmctaXRlbS1jb250cm9sIGJ1dHRvblthcmlhLWxhYmVsKj1cInJlZnJlc2hcIl06aG92ZXIge1xyXG5cdHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcclxufVxyXG5cclxuLyogTG9hZGluZyBzdGF0ZSBhbmltYXRpb24gKi9cclxuQGtleWZyYW1lcyByZWZyZXNoLXNwaW4ge1xyXG5cdGZyb20ge1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcblx0fVxyXG5cdHRvIHtcclxuXHRcdHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XHJcblx0fVxyXG59XHJcblxyXG4uc2V0dGluZy1pdGVtIC5zZXR0aW5nLWl0ZW0tY29udHJvbCBidXR0b25bZGlzYWJsZWRdIC5sdWNpZGUtcmVmcmVzaC1jdyB7XHJcblx0YW5pbWF0aW9uOiByZWZyZXNoLXNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xyXG59XHJcblxyXG4vKiBSZXNwb25zaXZlIGRlc2lnbiBmb3Igc21hbGxlciBzY3JlZW5zICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC5maWxlLWZpbHRlci1ydWxlIHtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0XHRhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuXHRcdGdhcDogMC41cmVtO1xyXG5cdH1cclxuXHJcblx0LmZpbGUtZmlsdGVyLXJ1bGUtdHlwZSxcclxuXHQuZmlsZS1maWx0ZXItcnVsZS1wYXRoLFxyXG5cdC5maWxlLWZpbHRlci1ydWxlLWVuYWJsZWQge1xyXG5cdFx0bWluLXdpZHRoOiBhdXRvO1xyXG5cdH1cclxuXHJcblx0LmZpbGUtZmlsdGVyLXJ1bGUtZGVsZXRlIHtcclxuXHRcdGFsaWduLXNlbGY6IGZsZXgtZW5kO1xyXG5cdFx0bWFyZ2luLXRvcDogMC41cmVtO1xyXG5cdH1cclxufVxyXG5cclxuLyogRGFyayB0aGVtZSBhZGp1c3RtZW50cyAqL1xyXG4udGhlbWUtZGFyayAuZmlsZS1maWx0ZXItcnVsZSBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5LWFsdCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC5maWxlLWZpbHRlci1ydWxlIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIEVtcHR5IHN0YXRlIHN0eWxpbmcgKi9cclxuLmZpbGUtZmlsdGVyLXJ1bGVzLWNvbnRhaW5lcjplbXB0eTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIk5vIGZpbHRlciBydWxlcyBjb25maWd1cmVkLiBBZGQgcnVsZXMgYmVsb3cgdG8gc3RhcnQgZmlsdGVyaW5nIGZpbGVzIGFuZCBmb2xkZXJzLlwiO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdHBhZGRpbmc6IDJyZW07XHJcbn1cclxuXHJcbi8qIFByZXNldCB0ZW1wbGF0ZXMgc2VjdGlvbiAqL1xyXG4uZmlsZS1maWx0ZXItcHJlc2V0LWNvbnRhaW5lciB7XHJcblx0bWFyZ2luLXRvcDogMXJlbTtcclxuXHRwYWRkaW5nOiAxcmVtO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4uZmlsZS1maWx0ZXItcHJlc2V0LWNvbnRhaW5lciAuc2V0dGluZy1pdGVtIHtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0cGFkZGluZzogMC41cmVtIDA7XHJcbn1cclxuXHJcbi5maWxlLWZpbHRlci1wcmVzZXQtY29udGFpbmVyIC5zZXR0aW5nLWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLyogUHJlc2V0IGJ1dHRvbiBzdHlsaW5nICovXHJcbi5maWxlLWZpbHRlci1wcmVzZXQtY29udGFpbmVyIGJ1dHRvbiB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5maWxlLWZpbHRlci1wcmVzZXQtY29udGFpbmVyIGJ1dHRvbjpkaXNhYmxlZCB7XHJcblx0b3BhY2l0eTogMC42O1xyXG5cdGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLmZpbGUtZmlsdGVyLXByZXNldC1jb250YWluZXIgYnV0dG9uOm5vdCg6ZGlzYWJsZWQpOmhvdmVyIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpO1xyXG59XHJcblxyXG4vKiBTdWNjZXNzIHN0YXRlIGZvciBhcHBsaWVkIHByZXNldHMgKi9cclxuLmZpbGUtZmlsdGVyLXByZXNldC1jb250YWluZXIgYnV0dG9uW2Rpc2FibGVkXSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC5maWxlLWZpbHRlci1wcmVzZXQtY29udGFpbmVyIGJ1dHRvbltkaXNhYmxlZF0ge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWdyZWVuLXJnYik7XHJcblx0b3BhY2l0eTogMC44O1xyXG59XHJcbiIsICIudGFzay1kZXRhaWxzIC5wYW5lbC10b2dnbGUtY29udGFpbmVyIHtcclxuXHRsZWZ0OiAxMHB4O1xyXG59XHJcblxyXG4vKiBEZXRhaWwgUGFuZWwgU3R5bGVzICovXHJcbi50YXNrLWRldGFpbHMge1xyXG5cdHdpZHRoOiAzMDBweDtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG1pbi13aWR0aDogMjUwcHg7XHJcblx0bWF4LXdpZHRoOiA0MDBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0b3JkZXI6IDE7XHJcbn1cclxuXHJcbi8qIERldGFpbHMgcGFuZWwgdmlzaWJpbGl0eSAqL1xyXG4udGFzay1nZW5pdXMtY29udGFpbmVyLmRldGFpbHMtaGlkZGVuIC50YXNrLWRldGFpbHMge1xyXG5cdHdpZHRoOiAwO1xyXG5cdG9wYWNpdHk6IDA7XHJcblx0bWFyZ2luLXJpZ2h0OiAtMzAwcHg7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLWNvbnRhaW5lci5kZXRhaWxzLXZpc2libGUgLnRhc2stZGV0YWlscyB7XHJcblx0d2lkdGg6IDM1MHB4O1xyXG5cdG9wYWNpdHk6IDE7XHJcblx0bWFyZ2luLXJpZ2h0OiAwO1xyXG59XHJcblxyXG4vKiBNb2JpbGUgdmlldyAtIHNsaWRlIGZyb20gcmlnaHQgKi9cclxuLmlzLXBob25lIC50YXNrLWRldGFpbHMsXHJcbi5pcy1tb2JpbGUgLnRhc2stZGV0YWlscyB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdHRvcDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdHotaW5kZXg6IDEwO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxufVxyXG5cclxuLmlzLXBob25lIC50YXNrLWdlbml1cy1jb250YWluZXIuZGV0YWlscy1oaWRkZW4gLnRhc2stZGV0YWlscyxcclxuLmlzLW1vYmlsZSAudGFzay1nZW5pdXMtY29udGFpbmVyLmRldGFpbHMtaGlkZGVuIC50YXNrLWRldGFpbHMsXHJcbi5pcy1tb2JpbGUgLnRnLXYyLWNvbnRhaW5lci5kZXRhaWxzLWhpZGRlbiAudGFzay1kZXRhaWxzIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXJnaW4tcmlnaHQ6IDA7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnRhc2stZ2VuaXVzLWNvbnRhaW5lci5kZXRhaWxzLXZpc2libGUgLnRhc2stZGV0YWlscyxcclxuLmlzLW1vYmlsZSAudGFzay1nZW5pdXMtY29udGFpbmVyLmRldGFpbHMtdmlzaWJsZSAudGFzay1kZXRhaWxzLFxyXG4uaXMtbW9iaWxlIC50Zy12Mi1jb250YWluZXIuZGV0YWlscy12aXNpYmxlIC50YXNrLWRldGFpbHMge1xyXG5cdHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1zaXplLTQtMTIpKTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbn1cclxuXHJcbi8qIEFkZCBvdmVybGF5IHdoZW4gZGV0YWlscyBhcmUgdmlzaWJsZSBvbiBtb2JpbGUgKi9cclxuLmlzLXBob25lIC50YXNrLWdlbml1cy1jb250YWluZXIuZGV0YWlscy12aXNpYmxlOjpiZWZvcmUsXHJcbi5pcy1tb2JpbGUgLnRhc2stZ2VuaXVzLWNvbnRhaW5lci5kZXRhaWxzLXZpc2libGU6OmJlZm9yZSxcclxuLmlzLW1vYmlsZSAudGctdjItY29udGFpbmVyLmRldGFpbHMtdmlzaWJsZTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1jb3Zlcik7XHJcblx0b3BhY2l0eTogMC41O1xyXG5cdHotaW5kZXg6IDU7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLmRldGFpbHMtY2xvc2UtYnRuLFxyXG4uaXMtbW9iaWxlIC5kZXRhaWxzLWNsb3NlLWJ0biB7XHJcblx0d2lkdGg6IDI0cHg7XHJcblx0aGVpZ2h0OiAyNHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLmlzLXBob25lIC5kZXRhaWxzLWhlYWRlcixcclxuLmlzLW1vYmlsZSAuZGV0YWlscy1oZWFkZXIge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLmRldGFpbHMtZW1wdHkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRwYWRkaW5nOiAyMHB4O1xyXG59XHJcblxyXG4vKiBEZXRhaWxzIGNvbnRlbnQgKi9cclxuLmRldGFpbHMtaGVhZGVyIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0cGFkZGluZy1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nLXRvcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGZvbnQtc2l6ZTogMS4xZW07XHJcbn1cclxuXHJcbi5kZXRhaWxzLWNvbnRlbnQge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC00KTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nLWJvdHRvbTogbWF4KHZhcigtLXNhZmUtYXJlYS1pbnNldC1ib3R0b20pLCB2YXIoLS1zaXplLTQtOCkpO1xyXG59XHJcblxyXG4uZGV0YWlscy1uYW1lIHtcclxuXHRtYXJnaW46IDAgMCA4cHggMDtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGZvbnQtc2l6ZTogMS4zZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuMztcclxufVxyXG5cclxuLmRldGFpbHMtc3RhdHVzLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLmRldGFpbHMtc3RhdHVzLWxhYmVsIHtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcbn1cclxuXHJcbi5kZXRhaWxzLXN0YXR1cyB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdHBhZGRpbmc6IDRweCA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcblxyXG4uZGV0YWlscy1zdGF0dXMtc2VsZWN0b3Ige1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLm1lbnUtaXRlbS10aXRsZTpoYXMoLnN0YXR1cy1vcHRpb24pIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG5cdGdhcDogNHB4O1xyXG59XHJcblxyXG4ubWVudS1pdGVtOmhhcyguc3RhdHVzLW9wdGlvbi1jaGVja2JveCkgLm1lbnUtaXRlbS1pY29uIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4ubWVudS1pdGVtOmhhcyguc3RhdHVzLW9wdGlvbi1pY29uKSAubWVudS1pdGVtLWljb24ge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5zdGF0dXMtb3B0aW9uLWljb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi5zdGF0dXMtb3B0aW9uLWNoZWNrYm94IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5zdGF0dXMtb3B0aW9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG4uc3RhdHVzLW9wdGlvbi5jdXJyZW50IHtcclxuXHRvdXRsaW5lLW9mZnNldDogMnB4O1xyXG5cdG91dGxpbmU6IDFweCBzb2xpZFxyXG5cdFx0aHNsKHZhcigtLWFjY2VudC1oKSwgdmFyKC0tYWNjZW50LXMpLCB2YXIoLS1hY2NlbnQtbCksIDAuMyk7XHJcblx0b3V0bGluZS1zdHlsZTogZGFzaGVkO1xyXG59XHJcblxyXG4uc3RhdHVzLW9wdGlvbjpub3QoLmN1cnJlbnQpIHtcclxuXHRvcGFjaXR5OiAwLjg7XHJcbn1cclxuXHJcbi5zdGF0dXMtb3B0aW9uOm5vdCguY3VycmVudCk6aG92ZXIge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi5zdGF0dXMtb3B0aW9uIGlucHV0LnRhc2stbGlzdC1pdGVtLWNoZWNrYm94IHtcclxuXHRtYXJnaW4taW5saW5lLWVuZDogMDtcclxufVxyXG5cclxuLmRldGFpbHMtbWV0YWRhdGEge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ubWV0YWRhdGEtZmllbGQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDJweDtcclxufVxyXG5cclxuLm1ldGFkYXRhLWxhYmVsIHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLm1ldGFkYXRhLXZhbHVlIHtcclxuXHR3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG5cdGZvbnQtc2l6ZTogMC45NWVtO1xyXG59XHJcblxyXG4uZGV0YWlscy1hY3Rpb25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cdGdhcDogOHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLmRldGFpbHMtZWRpdC1idG4sXHJcbi5kZXRhaWxzLXRvZ2dsZS1idG4ge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLW5vcm1hbCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcblxyXG4uZGV0YWlscy1lZGl0LWJ0bjpob3ZlcixcclxuLmRldGFpbHMtdG9nZ2xlLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtaG92ZXIpO1xyXG59XHJcblxyXG4uZGV0YWlscy10b2dnbGUtYnRuIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIFRhc2sgZWRpdGluZyBmb3JtIHN0eWxlcyAqL1xyXG4uZGV0YWlscy1lZGl0LWZvcm0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDEycHg7XHJcbn1cclxuXHJcbi5kZXRhaWxzLWZvcm0tZmllbGQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDRweDtcclxufVxyXG5cclxuLmRldGFpbHMtZm9ybS1sYWJlbCB7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLmRldGFpbHMtZm9ybS1pbnB1dCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5kZXRhaWxzLWVkaXQtY29udGVudCB7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLmRldGFpbHMtZm9ybS1pbnB1dCBpbnB1dCxcclxuLmRldGFpbHMtZm9ybS1pbnB1dCBzZWxlY3Qge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHBhZGRpbmc6IDZweCA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG59XHJcblxyXG4uZGF0ZS1pbnB1dCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0cGFkZGluZzogNnB4IDhweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmZpZWxkLWRlc2NyaXB0aW9uIHtcclxuXHRmb250LXNpemU6IDAuN2VtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tdG9wOiAycHg7XHJcbn1cclxuXHJcbi5kZXRhaWxzLWZvcm0tYnV0dG9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0bWFyZ2luLXRvcDogMTZweDtcclxuXHRnYXA6IDhweDtcclxufVxyXG5cclxuLmRldGFpbHMtZm9ybS1idXR0b25zIGJ1dHRvbiB7XHJcblx0ZmxleDogMTtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLmRldGFpbHMtZm9ybS1lcnJvciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0bWFyZ2luLXRvcDogOHB4O1xyXG5cdHBhZGRpbmc6IDhweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcbn1cclxuXHJcbi5kZXRhaWxzLWVkaXQtZmlsZS1idG4ge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLW5vcm1hbCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcblxyXG4uZGV0YWlscy1lZGl0LWZpbGUtYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIFYyIENvbnRhaW5lciBzcGVjaWZpYyBzdHlsZXMgZm9yIG1vYmlsZSAqL1xyXG4uaXMtbW9iaWxlIC50Zy12Mi1jb250YWluZXIgLnRhc2stZGV0YWlscyB7XHJcblx0cG9zaXRpb246IGZpeGVkO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdHRvcDogMDtcclxuXHRib3R0b206IDA7XHJcblx0aGVpZ2h0OiAxMDB2aDtcclxuXHR3aWR0aDogODV2dztcclxuXHRtYXgtd2lkdGg6IDQwMHB4O1xyXG5cdHotaW5kZXg6IDEwMDE7IC8qIEFib3ZlIGRyYXdlciBvdmVybGF5ICovXHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJveC1zaGFkb3c6IC00cHggMCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxufVxyXG5cclxuLmlzLW1vYmlsZSAudGFzay1kZXRhaWxzIC5kZXRhaWxzLWNsb3NlLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUtaG92ZXIpO1xyXG59XHJcblxyXG4uaXMtbW9iaWxlIC5kZXRhaWxzLWNvbnRlbnQge1xyXG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTQtMTIpO1xyXG59XHJcblxyXG4vKiBSZXNwb25zaXZlIGRlc2lnbiBmb3IgbW9iaWxlICovXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0LnRhc2stb21uaWZvY3VzLWNvbnRhaW5lciB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdH1cclxuXHJcblx0LnRhc2stc2lkZWJhciB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG1heC13aWR0aDogMTAwJTtcclxuXHRcdGhlaWdodDogYXV0bztcclxuXHRcdGJvcmRlci1yaWdodDogbm9uZTtcclxuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0fVxyXG5cclxuXHQudGFzay1jb250ZW50IHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0ZmxleDogMTtcclxuXHR9XHJcblxyXG5cdC50YXNrLWRldGFpbHMge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHRib3JkZXItbGVmdDogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIFByb2plY3Qgc291cmNlIGluZGljYXRvciBzdHlsZXMgKi9cclxuLnByb2plY3Qtc291cmNlLWluZGljYXRvciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNHB4O1xyXG5cdG1hcmdpbi10b3A6IDRweDtcclxuXHRwYWRkaW5nOiA0cHggOHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxuXHRsaW5lLWhlaWdodDogMS4yO1xyXG59XHJcblxyXG4ucHJvamVjdC1zb3VyY2UtaW5kaWNhdG9yIC5pbmRpY2F0b3ItaWNvbiB7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLnByb2plY3Qtc291cmNlLWluZGljYXRvciAuaW5kaWNhdG9yLXRleHQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogUmVhZG9ubHkgaW5kaWNhdG9yICovXHJcbi5wcm9qZWN0LXNvdXJjZS1pbmRpY2F0b3IucmVhZG9ubHktaW5kaWNhdG9yIHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcclxufVxyXG5cclxuLnByb2plY3Qtc291cmNlLWluZGljYXRvci5yZWFkb25seS1pbmRpY2F0b3IgLmluZGljYXRvci10ZXh0IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLyogT3ZlcnJpZGUgaW5kaWNhdG9yICovXHJcbi5wcm9qZWN0LXNvdXJjZS1pbmRpY2F0b3Iub3ZlcnJpZGUtaW5kaWNhdG9yIHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjY2VudCk7XHJcbn1cclxuXHJcbi5wcm9qZWN0LXNvdXJjZS1pbmRpY2F0b3Iub3ZlcnJpZGUtaW5kaWNhdG9yIC5pbmRpY2F0b3ItdGV4dCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLyogRmllbGQgZGVzY3JpcHRpb25zICovXHJcbi5maWVsZC1kZXNjcmlwdGlvbi5yZWFkb25seS1kZXNjcmlwdGlvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0bWFyZ2luLXRvcDogNHB4O1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxufVxyXG5cclxuLmZpZWxkLWRlc2NyaXB0aW9uLm92ZXJyaWRlLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0bWFyZ2luLXRvcDogNHB4O1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxufVxyXG5cclxuLyogSW5saW5lIGVkaXRvciBzcGVjaWZpYyBzdHlsZXMgKi9cclxuLnByb2plY3Qtc291cmNlLWluZGljYXRvci5pbmxpbmUtaW5kaWNhdG9yIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAxMDAlO1xyXG5cdGxlZnQ6IDA7XHJcblx0cmlnaHQ6IDA7XHJcblx0ei1pbmRleDogMTA7XHJcblx0bWFyZ2luLXRvcDogMnB4O1xyXG5cdHBhZGRpbmc6IDJweCA2cHg7XHJcblx0Zm9udC1zaXplOiAwLjc1ZW07XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG59XHJcblxyXG4vKiBUYWJsZSBzcGVjaWZpYyBzdHlsZXMgKi9cclxuLnByb2plY3Qtc291cmNlLWluZGljYXRvci50YWJsZS1pbmRpY2F0b3Ige1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDJweDtcclxuXHRyaWdodDogMnB4O1xyXG5cdHBhZGRpbmc6IDFweCAzcHg7XHJcblx0Zm9udC1zaXplOiAwLjdlbTtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0ei1pbmRleDogNTtcclxufVxyXG5cclxuLnByb2plY3Qtc291cmNlLWluZGljYXRvci50YWJsZS1pbmRpY2F0b3IgLmluZGljYXRvci1pY29uIHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1jZWxsLnJlYWRvbmx5LWNlbGwge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3ItaG92ZXIpO1xyXG5cdG9wYWNpdHk6IDAuODtcclxufVxyXG5cclxuLyogUHJvamVjdCBjb250YWluZXIgc3BlY2lmaWMgc3R5bGVzICovXHJcbi5wcm9qZWN0LWNvbnRhaW5lci5wcm9qZWN0LXJlYWRvbmx5IHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5wcm9qZWN0LWNvbnRhaW5lci5wcm9qZWN0LXJlYWRvbmx5IC5wcm9qZWN0LXNvdXJjZS1pbmRpY2F0b3Ige1xyXG5cdG1hcmdpbi10b3A6IDhweDtcclxufVxyXG4iLCAiLyogT25Db21wbGV0aW9uIENvbmZpZ3VyYXRvciBTdHlsZXMgKi9cclxuLm9uY29tcGxldGlvbi1jb25maWd1cmF0b3Ige1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDEycHg7XHJcblx0cGFkZGluZzogMTJweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi1hY3Rpb24tdHlwZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogNnB4O1xyXG59XHJcblxyXG4ub25jb21wbGV0aW9uLWxhYmVsIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi1jb25maWcge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDEwcHg7XHJcblx0bWFyZ2luLXRvcDogOHB4O1xyXG5cdHBhZGRpbmctdG9wOiA4cHg7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi1maWVsZCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogNHB4O1xyXG59XHJcblxyXG4ub25jb21wbGV0aW9uLWRlc2NyaXB0aW9uIHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0bWFyZ2luLXRvcDogMnB4O1xyXG59XHJcblxyXG4vKiBBY3Rpb24gVHlwZSBEcm9wZG93biAqL1xyXG4ub25jb21wbGV0aW9uLWFjdGlvbi10eXBlIC5kcm9wZG93biB7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIElucHV0IEZpZWxkcyAqL1xyXG4ub25jb21wbGV0aW9uLWZpZWxkIC50ZXh0LWlucHV0IHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiA2cHggOHB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ub25jb21wbGV0aW9uLWZpZWxkIC50ZXh0LWlucHV0OmZvY3VzIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0b3V0bGluZTogbm9uZTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAycHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLyogVG9nZ2xlIENvbXBvbmVudCAqL1xyXG4ub25jb21wbGV0aW9uLWZpZWxkIC5jaGVja2JveC1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDhweDtcclxufVxyXG5cclxuLyogU3VnZ2VzdGVyIFN0eWxlcyAqL1xyXG4udGFzay1pZC1zdWdnZXN0aW9uIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi50YXNrLWNvbnRlbnQtcHJldmlldyB7XHJcblx0Zm9udC1zaXplOiAwLjg1ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdG1hcmdpbi10b3A6IDJweDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblx0bWF4LXdpZHRoOiAzMDBweDtcclxufVxyXG5cclxuLmZpbGUtbmFtZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uZmlsZS1wYXRoIHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tdG9wOiAycHg7XHJcbn1cclxuXHJcbi5hY3Rpb24tdHlwZS1zdWdnZXN0aW9uIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi5hY3Rpb24tZGVzY3JpcHRpb24ge1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdG1hcmdpbi10b3A6IDJweDtcclxufVxyXG5cclxuLyogVmFsaWRhdGlvbiBTdGF0ZXMgKi9cclxuLm9uY29tcGxldGlvbi1jb25maWd1cmF0b3IuaW52YWxpZCB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi1jb25maWd1cmF0b3IudmFsaWQge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzKTtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi12YWxpZGF0aW9uLW1lc3NhZ2Uge1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0bWFyZ2luLXRvcDogNHB4O1xyXG5cdHBhZGRpbmc6IDRweCA2cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG59XHJcblxyXG4ub25jb21wbGV0aW9uLXZhbGlkYXRpb24tbWVzc2FnZS5lcnJvciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xyXG59XHJcblxyXG4ub25jb21wbGV0aW9uLXZhbGlkYXRpb24tbWVzc2FnZS5zdWNjZXNzIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzKTtcclxufVxyXG5cclxuLyogSW50ZWdyYXRpb24gd2l0aCBUYXNrIERldGFpbHMgKi9cclxuLnRhc2stZGV0YWlscyAub25jb21wbGV0aW9uLWNvbmZpZ3VyYXRvciB7XHJcblx0bWFyZ2luLXRvcDogOHB4O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4udGFzay1kZXRhaWxzIC5vbmNvbXBsZXRpb24tZmllbGQge1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBEZXNpZ24gKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0Lm9uY29tcGxldGlvbi1jb25maWd1cmF0b3Ige1xyXG5cdFx0cGFkZGluZzogOHB4O1xyXG5cdFx0Z2FwOiA4cHg7XHJcblx0fVxyXG5cclxuXHQub25jb21wbGV0aW9uLWNvbmZpZyB7XHJcblx0XHRnYXA6IDhweDtcclxuXHR9XHJcblxyXG5cdC50YXNrLWNvbnRlbnQtcHJldmlldyB7XHJcblx0XHRtYXgtd2lkdGg6IDIwMHB4O1xyXG5cdH1cclxufVxyXG5cclxuLyogRGFyayBUaGVtZSBBZGp1c3RtZW50cyAqL1xyXG4udGhlbWUtZGFyayAub25jb21wbGV0aW9uLWNvbmZpZ3VyYXRvciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5LWFsdCk7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC5vbmNvbXBsZXRpb24tZmllbGQgLnRleHQtaW5wdXQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxufVxyXG5cclxuLyogSGlnaCBDb250cmFzdCBNb2RlICovXHJcbkBtZWRpYSAocHJlZmVycy1jb250cmFzdDogaGlnaCkge1xyXG5cdC5vbmNvbXBsZXRpb24tY29uZmlndXJhdG9yIHtcclxuXHRcdGJvcmRlci13aWR0aDogMnB4O1xyXG5cdH1cclxuXHJcblx0Lm9uY29tcGxldGlvbi1maWVsZCAudGV4dC1pbnB1dCB7XHJcblx0XHRib3JkZXItd2lkdGg6IDJweDtcclxuXHR9XHJcblxyXG5cdC5vbmNvbXBsZXRpb24tZmllbGQgLnRleHQtaW5wdXQ6Zm9jdXMge1xyXG5cdFx0Ym94LXNoYWRvdzogMCAwIDAgM3B4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0fVxyXG59XHJcblxyXG4vKiBBbmltYXRpb24gZm9yIENvbmZpZ3VyYXRpb24gQ2hhbmdlcyAqL1xyXG4ub25jb21wbGV0aW9uLWNvbmZpZyB7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi5vbmNvbXBsZXRpb24tZmllbGQge1xyXG5cdG9wYWNpdHk6IDE7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIDAuMnMgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi5vbmNvbXBsZXRpb24tZmllbGQuZW50ZXJpbmcge1xyXG5cdG9wYWNpdHk6IDA7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi1maWVsZC5leGl0aW5nIHtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcclxufVxyXG5cclxuLyogT25Db21wbGV0aW9uIE1vZGFsIFN0eWxlcyAqL1xyXG4ub25jb21wbGV0aW9uLW1vZGFsIHtcclxuXHQtLWRpYWxvZy13aWR0aDogNjAwcHg7XHJcblx0LS1kaWFsb2ctbWF4LXdpZHRoOiA5MHZ3O1xyXG5cdC0tZGlhbG9nLW1heC1oZWlnaHQ6IDgwdmg7XHJcbn1cclxuXHJcbi5vbmNvbXBsZXRpb24tbW9kYWwgLm1vZGFsLWNvbnRlbnQge1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0bWF4LWhlaWdodDogdmFyKC0tZGlhbG9nLW1heC1oZWlnaHQpO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi5vbmNvbXBsZXRpb24tbW9kYWwtY29udGVudCB7XHJcblx0cGFkZGluZzogMjBweDtcclxuXHRtYXgtaGVpZ2h0OiA2MHZoO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi5vbmNvbXBsZXRpb24tbW9kYWwtYnV0dG9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdGdhcDogOHB4O1xyXG5cdHBhZGRpbmc6IDE2cHggMjBweDtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi1tb2RhbC1idXR0b25zIGJ1dHRvbiB7XHJcblx0bWluLXdpZHRoOiA4MHB4O1xyXG59XHJcblxyXG4vKiBJbmxpbmUgT25Db21wbGV0aW9uIEJ1dHRvbiBTdHlsZXMgKi9cclxuLmlubGluZS1vbmNvbXBsZXRpb24tYnV0dG9uLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLmlubGluZS1vbmNvbXBsZXRpb24tY29uZmlnLWJ1dHRvbiB7XHJcblx0cGFkZGluZzogNHB4IDhweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LWZhbWlseTogaW5oZXJpdDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTtcclxuXHRtaW4td2lkdGg6IDEwMHB4O1xyXG5cdHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi5pbmxpbmUtb25jb21wbGV0aW9uLWNvbmZpZy1idXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLmlubGluZS1vbmNvbXBsZXRpb24tY29uZmlnLWJ1dHRvbjpmb2N1cyB7XHJcblx0b3V0bGluZTogbm9uZTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi5pbmxpbmUtb25jb21wbGV0aW9uLWNvbmZpZy1idXR0b246YWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZSk7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgwLjk4KTtcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBEZXNpZ24gZm9yIE1vZGFsICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC5vbmNvbXBsZXRpb24tbW9kYWwge1xyXG5cdFx0LS1kaWFsb2ctd2lkdGg6IDk1dnc7XHJcblx0XHQtLWRpYWxvZy1tYXgtaGVpZ2h0OiA4NXZoO1xyXG5cdH1cclxuXHJcblx0Lm9uY29tcGxldGlvbi1tb2RhbC1jb250ZW50IHtcclxuXHRcdHBhZGRpbmc6IDE2cHg7XHJcblx0XHRtYXgtaGVpZ2h0OiA2NXZoO1xyXG5cdH1cclxuXHJcblx0Lm9uY29tcGxldGlvbi1tb2RhbC1idXR0b25zIHtcclxuXHRcdHBhZGRpbmc6IDEycHggMTZweDtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuXHR9XHJcblxyXG5cdC5vbmNvbXBsZXRpb24tbW9kYWwtYnV0dG9ucyBidXR0b24ge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtaW4td2lkdGg6IHVuc2V0O1xyXG5cdH1cclxufVxyXG4iLCAiLyogVW5pdmVyc2FsIFN1Z2dlc3QgU3R5bGVzICovXHJcblxyXG4udW5pdmVyc2FsLXN1Z2dlc3QtaXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzIGVhc2U7XHJcbn1cclxuXHJcbi51bml2ZXJzYWwtc3VnZ2VzdC1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLnVuaXZlcnNhbC1zdWdnZXN0LWl0ZW0uaXMtc2VsZWN0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcclxufVxyXG5cclxuLnVuaXZlcnNhbC1zdWdnZXN0LWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi51bml2ZXJzYWwtc3VnZ2VzdC1pY29uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDIwcHg7XHJcblx0aGVpZ2h0OiAyMHB4O1xyXG5cdG1hcmdpbi1yaWdodDogMTJweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi51bml2ZXJzYWwtc3VnZ2VzdC1jb250ZW50IHtcclxuXHRmbGV4OiAxO1xyXG5cdG1pbi13aWR0aDogMDtcclxufVxyXG5cclxuLnVuaXZlcnNhbC1zdWdnZXN0LWxhYmVsIHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0bWFyZ2luLWJvdHRvbTogMnB4O1xyXG59XHJcblxyXG4udW5pdmVyc2FsLXN1Z2dlc3QtZGVzY3JpcHRpb24ge1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRsaW5lLWhlaWdodDogMS4zO1xyXG59XHJcblxyXG4vKiBTcGVjaWFsIGNoYXJhY3RlciB0cmlnZ2VyIGhpZ2hsaWdodGluZyAqL1xyXG4uY20tZWRpdG9yIC5jbS1saW5lIC51bml2ZXJzYWwtc3VnZ2VzdC10cmlnZ2VyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0cGFkZGluZzogMXB4IDJweDtcclxufVxyXG5cclxuLyogU3VnZ2VzdCBwb3B1cCBjb250YWluZXIgKi9cclxuLnN1Z2dlc3Rpb24tY29udGFpbmVyIC51bml2ZXJzYWwtc3VnZ2VzdC1pdGVtIHtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uc3VnZ2VzdGlvbi1jb250YWluZXIgLnVuaXZlcnNhbC1zdWdnZXN0LWl0ZW06bGFzdC1jaGlsZCB7XHJcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcclxufVxyXG5cclxuLyogRGFyayB0aGVtZSBhZGp1c3RtZW50cyAqL1xyXG4udGhlbWUtZGFyayAudW5pdmVyc2FsLXN1Z2dlc3QtaXRlbTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC51bml2ZXJzYWwtc3VnZ2VzdC1pdGVtLmlzLXNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZS1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIEhpZ2ggY29udHJhc3QgbW9kZSAqL1xyXG5AbWVkaWEgKHByZWZlcnMtY29udHJhc3Q6IGhpZ2gpIHtcclxuXHQudW5pdmVyc2FsLXN1Z2dlc3QtaXRlbSB7XHJcblx0XHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAycHg7XHJcblx0fSBcclxuXHRcclxuXHQudW5pdmVyc2FsLXN1Z2dlc3QtaXRlbTpob3ZlcixcclxuXHQudW5pdmVyc2FsLXN1Z2dlc3QtaXRlbS5pcy1zZWxlY3RlZCB7XHJcblx0XHRib3JkZXItY29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxuXHR9XHJcbn1cclxuIiwgIi8qIFx1NEU2MFx1NjBFRlx1N0YxNlx1OEY5MVx1NUYzOVx1N0E5N1x1NjgzN1x1NUYwRiAqL1xyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIHtcclxuXHRtYXgtd2lkdGg6IDYwMHB4O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQge1xyXG5cdHBhZGRpbmc6IDIwcHg7XHJcbn1cclxuXHJcbi8qIFx1NEU2MFx1NjBFRlx1N0M3Qlx1NTc4Qlx1OTAwOVx1NjJFOVx1NTY2OCAqL1xyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXR5cGUtc2VsZWN0b3Ige1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtdHlwZS1kZXNjcmlwdGlvbiB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXR5cGUtZ3JpZCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xyXG5cdGdhcDogMTBweDtcclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDUwMHB4KSB7XHJcblx0LmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC10eXBlLWdyaWQge1xyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcblx0fVxyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXR5cGUtaXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRwYWRkaW5nOiAxMnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXR5cGUtaXRlbTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtdHlwZS1pdGVtLnNlbGVjdGVkIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC10eXBlLWljb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogNDBweDtcclxuXHRoZWlnaHQ6IDQwcHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXR5cGUtaWNvbiBzdmcge1xyXG5cdHdpZHRoOiAyMHB4O1xyXG5cdGhlaWdodDogMjBweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXR5cGUtdGV4dCB7XHJcblx0ZmxleDogMTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtdHlwZS1uYW1lIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdG1hcmdpbi1ib3R0b206IDRweDtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC10eXBlLWRlc2Mge1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogXHU5MDFBXHU3NTI4XHU4ODY4XHU1MzU1XHU2ODM3XHU1RjBGICovXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtY29tbW9uLWZvcm0sXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtdHlwZS1mb3JtIHtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG59XHJcblxyXG4vKiBcdTU2RkVcdTY4MDdcdTk4ODRcdTg5QzggKi9cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1pY29uLXByZXZpZXcge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMzBweDtcclxuXHRoZWlnaHQ6IDMwcHg7XHJcblx0bWFyZ2luLWxlZnQ6IDEwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtaWNvbi1wcmV2aWV3IHN2ZyB7XHJcblx0d2lkdGg6IDE4cHg7XHJcblx0aGVpZ2h0OiAxOHB4O1xyXG59XHJcblxyXG4vKiBcdTY2MjBcdTVDMDRcdTdGMTZcdThGOTFcdTU2NjggKi9cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1tYXBwaW5nLWNvbnRhaW5lciB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRwYWRkaW5nOiAxMHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0bWFyZ2luLXRvcDogNXB4O1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LW1hcHBpbmctcm93IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0bWFyZ2luLWJvdHRvbTogOHB4O1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LW1hcHBpbmcta2V5IHtcclxuXHR3aWR0aDogODBweDtcclxuXHRtYXJnaW4tcmlnaHQ6IDVweDtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LW1hcHBpbmctYXJyb3cge1xyXG5cdG1hcmdpbjogMCAxMHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1tYXBwaW5nLXZhbHVlIHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtbWFwcGluZy1kZWxldGUge1xyXG5cdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Zm9udC1zaXplOiAxLjJlbTtcclxuXHRwYWRkaW5nOiAwIDhweDtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1hZGQtbWFwcGluZy1idXR0b24ge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IDZweCAxMnB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4vKiBcdTRFOEJcdTRFRjZcdTdGMTZcdThGOTFcdTU2NjggKi9cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1ldmVudHMtY29udGFpbmVyIHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IDEwcHg7XHJcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHRtYXJnaW4tdG9wOiA1cHg7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtZXZlbnQtcm93IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxuXHRnYXA6IDVweDtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1ldmVudC1uYW1lIHtcclxuXHR3aWR0aDogMTIwcHg7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1ldmVudC1kZXRhaWxzIHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtZXZlbnQtcHJvcGVydHkge1xyXG5cdHdpZHRoOiAxMjBweDtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LWV2ZW50LWRlbGV0ZSB7XHJcblx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IDEuMmVtO1xyXG5cdHBhZGRpbmc6IDAgOHB4O1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LWFkZC1ldmVudC1idXR0b24ge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IDZweCAxMnB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4vKiBcdTYzMDlcdTk0QUVcdTVCQjlcdTU2NjggKi9cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1lZGl0LWJ1dHRvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRnYXA6IDEwcHg7XHJcblx0bWFyZ2luLXRvcDogMjBweDtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1jYW5jZWwtYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0cGFkZGluZzogOHB4IDE2cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXNhdmUtYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRwYWRkaW5nOiA4cHggMTZweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi8qIFx1OEY5M1x1NTE2NVx1NUI1N1x1NkJCNSAqL1xyXG4uaGFiaXQtZWRpdC1kaWFsb2cgaW5wdXRbdHlwZT1cInRleHRcIl0sXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyBpbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0cGFkZGluZzogNnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtdHlwZS1pdGVtLnNlbGVjdGVkIC5oYWJpdC10eXBlLWRlc2MsXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtdHlwZS1pdGVtLnNlbGVjdGVkIC5oYWJpdC10eXBlLW5hbWUge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuIiwgIi8qIFx1NEU2MFx1NjBFRlx1NTIxN1x1ODg2OFx1NUJCOVx1NTY2OCAqL1xyXG4uaGFiaXQtbGlzdC1jb250YWluZXIge1xyXG5cdHBhZGRpbmc6IDEycHg7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5oYWJpdC1zZXR0aW5ncy1jb250YWluZXIge1xyXG5cdHBhZGRpbmctdG9wOiAxMnB4O1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi8qIFx1NkRGQlx1NTJBMFx1NjMwOVx1OTRBRSAqL1xyXG4uaGFiaXQtYWRkLWJ1dHRvbi1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG59XHJcblxyXG4uaGFiaXQtYWRkLWJ1dHRvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNnB4O1xyXG5cdHBhZGRpbmc6IDZweCAxMnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG5cclxuLmhhYml0LWFkZC1idXR0b24gc3ZnIHtcclxuXHR3aWR0aDogMTZweDtcclxuXHRoZWlnaHQ6IDE2cHg7XHJcbn1cclxuXHJcbi8qIFx1NEU2MFx1NjBFRlx1NTIxN1x1ODg2OFx1NEUzQVx1N0E3QVx1NzJCNlx1NjAwMSAqL1xyXG4uaGFiaXQtZW1wdHktc3RhdGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1pbi1oZWlnaHQ6IDIwMHB4O1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAyMHB4O1xyXG5cdGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxufVxyXG5cclxuLmhhYml0LWVtcHR5LXN0YXRlIGgyIHtcclxuXHRtYXJnaW46IDAgMCAxMHB4IDA7XHJcblx0Zm9udC1zaXplOiAxLjJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uaGFiaXQtZW1wdHktc3RhdGUgcCB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogXHU0RTYwXHU2MEVGXHU5ODc5XHU1MjE3XHU4ODY4ICovXHJcbi5oYWJpdC1pdGVtcy1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDEwcHg7XHJcbn1cclxuXHJcbi8qIFx1NEU2MFx1NjBFRlx1OTg3OSAqL1xyXG4uaGFiaXQtaXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDEycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGhlaWdodDogNy41cmVtO1xyXG59XHJcblxyXG4uaGFiaXQtaXRlbTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIFx1NEU2MFx1NjBFRlx1NTZGRVx1NjgwNyAqL1xyXG4uaGFiaXQtaXRlbS1pY29uIHtcclxuXHQtLWljb24tc2l6ZTogMjBweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDQ4cHg7XHJcblx0aGVpZ2h0OiA0OHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdG1hcmdpbi1yaWdodDogMTJweDtcclxufVxyXG5cclxuLmhhYml0LWl0ZW0taWNvbiBzdmcge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi8qIFx1NEU2MFx1NjBFRlx1NEZFMVx1NjA2RiAqL1xyXG4uaGFiaXQtaXRlbS1pbmZvIHtcclxuXHRmbGV4OiAxO1xyXG5cdG1pbi13aWR0aDogMDsgLyogXHU5NjMyXHU2QjYyXHU1MTg1XHU1QkI5XHU4RkM3XHU5NTdGXHU2NDkxXHU1RjAwXHU1RTAzXHU1QzQwICovXHJcbn1cclxuXHJcbi5oYWJpdC1pdGVtLW5hbWUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0bWFyZ2luLWJvdHRvbTogNHB4O1xyXG5cdGZvbnQtc2l6ZTogMTZweDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuXHJcbi5oYWJpdC1pdGVtLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuXHRtYXJnaW4tYm90dG9tOiA0cHg7XHJcbn1cclxuXHJcbi5oYWJpdC1pdGVtLXR5cGUge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRmb250LXNpemU6IDExcHg7XHJcblx0cGFkZGluZzogMnB4IDZweDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogXHU0RTYwXHU2MEVGXHU2NENEXHU0RjVDXHU2MzA5XHU5NEFFICovXHJcbi5oYWJpdC1pdGVtLWFjdGlvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiA4cHg7XHJcblx0bWFyZ2luLWxlZnQ6IDEycHg7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWJ1dHRvbixcclxuLmhhYml0LWRlbGV0ZS1idXR0b24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMzJweDtcclxuXHRoZWlnaHQ6IDMycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1idXR0b246aG92ZXIsXHJcbi5oYWJpdC1kZWxldGUtYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtYnV0dG9uIHN2ZyxcclxuLmhhYml0LWRlbGV0ZS1idXR0b24gc3ZnIHtcclxuXHR3aWR0aDogMTZweDtcclxuXHRoZWlnaHQ6IDE2cHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4uaGFiaXQtZGVsZXRlLWJ1dHRvbjpob3ZlciBzdmcge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLyogXHU0RTYwXHU2MEVGXHU1MjIwXHU5NjY0XHU1QkY5XHU4QkREXHU2ODQ2XHU2ODM3XHU1RjBGICovXHJcbi5oYWJpdC1kZWxldGUtbW9kYWwtYnV0dG9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdGdhcDogMTBweDtcclxuXHRtYXJnaW4tdG9wOiAyMHB4O1xyXG59XHJcblxyXG4uaGFiaXQtZGVsZXRlLWJ1dHRvbi1jb25maXJtIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHRjb2xvcjogI2ZmZjtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IDhweCAxNnB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG4iLCAiLyogSUNTIFNldHRpbmdzIFN0eWxlcyAqL1xyXG5cclxuLyogTWFpbiBjb250YWluZXIgKi9cclxuLmljcy1zZXR0aW5ncy1jb250YWluZXIge1xyXG5cdG1heC13aWR0aDogODAwcHg7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbi8qIEhlYWRlciBzZWN0aW9uICovXHJcbi5pY3MtaGVhZGVyLWNvbnRhaW5lciB7XHJcblx0bWFyZ2luLWJvdHRvbTogMnJlbTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmctYm90dG9tOiAxcmVtO1xyXG59XHJcblxyXG4uaWNzLWJhY2stYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5pY3MtYmFjay1idXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG59XHJcblxyXG4uaWNzLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luLXRvcDogMC41cmVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjU7XHJcbn1cclxuXHJcbi8qIEdsb2JhbCBzZXR0aW5ncyAqL1xyXG4uaWNzLWdsb2JhbC1zZXR0aW5ncyB7XHJcblx0bWFyZ2luLWJvdHRvbTogMnJlbTtcclxuXHRwYWRkaW5nOiAxLjVyZW07XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi8qIFNvdXJjZXMgbGlzdCAqL1xyXG4uaWNzLXNvdXJjZXMtbGlzdCB7XHJcblx0bWFyZ2luLXRvcDogMS41cmVtO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZXMtbGlzdCBoMyB7XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1pdGVtIHtcclxuXHRtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG5cdHBhZGRpbmc6IDEuNXJlbTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLmljcy1zb3VyY2UtaXRlbTpob3ZlciB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcclxufVxyXG5cclxuLmljcy1zb3VyY2UtaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdG1hcmdpbi1ib3R0b206IDFyZW07XHJcbn1cclxuXHJcbi5pY3Mtc291cmNlLXRpdGxlIHN0cm9uZyB7XHJcblx0Zm9udC1zaXplOiAxLjFlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1zdGF0dXMge1xyXG5cdHBhZGRpbmc6IDAuM3JlbSAwLjhyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogMTJweDtcclxuXHRmb250LXNpemU6IDAuNzVlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xyXG59XHJcblxyXG4uc3RhdHVzLWVuYWJsZWQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuXHRjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi5zdGF0dXMtZGlzYWJsZWQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXJlZCk7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1kZXRhaWxzIHtcclxuXHRtYXJnaW4tYm90dG9tOiAxLjVyZW07XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG5cclxuLmljcy1zb3VyY2UtZGV0YWlscyBkaXYge1xyXG5cdG1hcmdpbi1ib3R0b206IDAuNHJlbTtcclxufVxyXG5cclxuLyogQWN0aW9uIGJ1dHRvbnMgKi9cclxuLmljcy1zb3VyY2UtYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDFyZW07XHJcbn1cclxuXHJcbi5wcmltYXJ5LWFjdGlvbnMsXHJcbi5zZWNvbmRhcnktYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDAuNXJlbTtcclxufVxyXG5cclxuLmljcy1zb3VyY2UtYWN0aW9ucyBidXR0b24ge1xyXG5cdHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiAwLjg1ZW07XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcblx0bWluLXdpZHRoOiA4MHB4O1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5pY3Mtc291cmNlLWFjdGlvbnMgYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1hY3Rpb25zIGJ1dHRvbi5tb2QtY3RhIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1hY3Rpb25zIGJ1dHRvbi5tb2QtY3RhOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1hY3Rpb25zIGJ1dHRvbi5tb2Qtd2FybmluZyB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItcmVkKTtcclxuXHRjb2xvcjogd2hpdGU7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1hY3Rpb25zIGJ1dHRvbi5tb2Qtd2FybmluZzpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItcmVkKTtcclxuXHRvcGFjaXR5OiAwLjg7XHJcbn1cclxuXHJcbi5pY3Mtc291cmNlLWFjdGlvbnMgYnV0dG9uOmRpc2FibGVkIHtcclxuXHRvcGFjaXR5OiAwLjU7XHJcblx0Y3Vyc29yOiBub3QtYWxsb3dlZDtcclxuXHR0cmFuc2Zvcm06IG5vbmU7XHJcbn1cclxuXHJcbi5pY3Mtc291cmNlLWFjdGlvbnMgYnV0dG9uLnN5bmNpbmcge1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1hY3Rpb25zIGJ1dHRvbi5zdWNjZXNzIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1hY3Rpb25zIGJ1dHRvbi5lcnJvciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItcmVkKTtcclxuXHRjb2xvcjogd2hpdGU7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xyXG59XHJcblxyXG4vKiBBZGQgc291cmNlIGNvbnRhaW5lciAqL1xyXG4uaWNzLWFkZC1zb3VyY2UtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAycmVtO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAycmVtO1xyXG5cdGJvcmRlcjogMnB4IGRhc2hlZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4uaWNzLWFkZC1zb3VyY2UtY29udGFpbmVyOmhvdmVyIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi5pY3MtYWRkLXNvdXJjZS1jb250YWluZXIgYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdHBhZGRpbmc6IDAuOHJlbSAxLjVyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcblx0Zm9udC1zaXplOiAwLjk1ZW07XHJcbn1cclxuXHJcbi5pY3MtYWRkLXNvdXJjZS1jb250YWluZXIgYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcclxufVxyXG5cclxuLyogVGVzdCBjb250YWluZXIgKi9cclxuLmljcy10ZXN0LWNvbnRhaW5lciB7XHJcblx0bWFyZ2luLXRvcDogMXJlbTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMXJlbTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZm9ybS1maWVsZCk7XHJcbn1cclxuXHJcbi5pY3MtdGVzdC1idXR0b24ge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRwYWRkaW5nOiAwLjZyZW0gMS4ycmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi5pY3MtdGVzdC1idXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcblx0b3BhY2l0eTogMC44O1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxufVxyXG5cclxuLyogRW1wdHkgc3RhdGUgKi9cclxuLmljcy1lbXB0eS1zdGF0ZSB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDNyZW0gMnJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4vKiBNb2RhbCBzdHlsZXMgKi9cclxuLmljcy1zb3VyY2UtbW9kYWwgLm1vZGFsLWNvbnRlbnQge1xyXG5cdG1heC13aWR0aDogNjAwcHg7XHJcblx0bWF4LWhlaWdodDogODB2aDtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG59XHJcblxyXG4uYXV0aC1maWVsZCB7XHJcblx0bWFyZ2luLXRvcDogMC41cmVtO1xyXG59XHJcblxyXG4ubW9kYWwtYnV0dG9uLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdG1hcmdpbi10b3A6IDEuNXJlbTtcclxuXHRwYWRkaW5nLXRvcDogMXJlbTtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4ubW9kYWwtYnV0dG9uLWNvbnRhaW5lciBidXR0b24ge1xyXG5cdHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdG1pbi13aWR0aDogODBweDtcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBkZXNpZ24gKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0Lmljcy1zb3VyY2UtaGVhZGVyIHtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRcdGdhcDogMC41cmVtO1xyXG5cdH1cclxuXHJcblx0Lmljcy1zb3VyY2UtYWN0aW9ucyB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdFx0Z2FwOiAwLjVyZW07XHJcblx0fVxyXG5cclxuXHQucHJpbWFyeS1hY3Rpb25zLFxyXG5cdC5zZWNvbmRhcnktYWN0aW9ucyB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHR9XHJcblxyXG5cdC5pY3Mtc291cmNlLWFjdGlvbnMgYnV0dG9uIHtcclxuXHRcdGZsZXg6IDE7XHJcblx0XHRtaW4td2lkdGg6IGF1dG87XHJcblx0fVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcclxuXHQuaWNzLXNvdXJjZS1pdGVtIHtcclxuXHRcdHBhZGRpbmc6IDFyZW07XHJcblx0fVxyXG5cclxuXHQucHJpbWFyeS1hY3Rpb25zLFxyXG5cdC5zZWNvbmRhcnktYWN0aW9ucyB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdH1cclxuXHJcblx0Lmljcy1zb3VyY2UtYWN0aW9ucyBidXR0b24ge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAwLjNyZW07XHJcblx0fVxyXG5cclxuXHQubW9kYWwtYnV0dG9uLWNvbnRhaW5lciB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdH1cclxuXHJcblx0Lm1vZGFsLWJ1dHRvbi1jb250YWluZXIgYnV0dG9uIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxufVxyXG5cclxuLyogVGV4dCBSZXBsYWNlbWVudHMgU3R5bGVzICovXHJcbi50ZXh0LXJlcGxhY2VtZW50cy1saXN0IHtcclxuXHRtYXJnaW46IDFyZW0gMDtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnRzLWVtcHR5IHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMnJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0Ym9yZGVyOiAxcHggZGFzaGVkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtcnVsZSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHRwYWRkaW5nOiAxcmVtO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1ydWxlOmhvdmVyIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdG1hcmdpbi1ib3R0b206IDAuOHJlbTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtaGVhZGVyIHN0cm9uZyB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDFlbTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtc3RhdHVzIHtcclxuXHRwYWRkaW5nOiAwLjJyZW0gMC42cmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcblx0Zm9udC1zaXplOiAwLjdlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1zdGF0dXMuZW5hYmxlZCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtc3RhdHVzLmRpc2FibGVkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1yZWQpO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtZGV0YWlscyB7XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtZGV0YWlscyBkaXYge1xyXG5cdG1hcmdpbi1ib3R0b206IDAuM3JlbTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtcGF0dGVybiB7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWZvcm0tZmllbGQpO1xyXG5cdHBhZGRpbmc6IDAuMnJlbSAwLjRyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRtYXJnaW4tbGVmdDogMC41cmVtO1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1yZXBsYWNlbWVudCB7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWZvcm0tZmllbGQpO1xyXG5cdHBhZGRpbmc6IDAuMnJlbSAwLjRyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRtYXJnaW4tbGVmdDogMC41cmVtO1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1hY3Rpb25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogMC41cmVtO1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtYWN0aW9ucyBidXR0b24ge1xyXG5cdHBhZGRpbmc6IDAuNHJlbSAwLjhyZW07XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1hY3Rpb25zIGJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1hY3Rpb25zIGJ1dHRvbi5tb2QtY3RhIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1hY3Rpb25zIGJ1dHRvbi5tb2Qtd2FybmluZyB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItcmVkKTtcclxuXHRjb2xvcjogd2hpdGU7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1hZGQge1xyXG5cdG1hcmdpbi10b3A6IDFyZW07XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1hZGQgYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdHBhZGRpbmc6IDAuNnJlbSAxLjJyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi50ZXh0LXJlcGxhY2VtZW50LWFkZCBidXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG59XHJcblxyXG4vKiBUZXh0IFJlcGxhY2VtZW50IE1vZGFsIFN0eWxlcyAqL1xyXG4udGV4dC1yZXBsYWNlbWVudC1tb2RhbCAubW9kYWwtY29udGVudCB7XHJcblx0bWF4LXdpZHRoOiA3MDBweDtcclxuXHRtYXgtaGVpZ2h0OiA4NXZoO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi50ZXN0LW91dHB1dCB7XHJcblx0bWFyZ2luLXRvcDogMC41cmVtO1xyXG5cdHBhZGRpbmc6IDAuOHJlbTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWZvcm0tZmllbGQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4udGVzdC1yZXN1bHQge1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbi8qIEV4YW1wbGVzIHNlY3Rpb24gKi9cclxuLnRleHQtcmVwbGFjZW1lbnQtbW9kYWwgdWwge1xyXG5cdG1hcmdpbjogMC41cmVtIDA7XHJcblx0cGFkZGluZy1sZWZ0OiAxLjVyZW07XHJcbn1cclxuXHJcbi50ZXh0LXJlcGxhY2VtZW50LW1vZGFsIGxpIHtcclxuXHRtYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtbW9kYWwgY29kZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1mb3JtLWZpZWxkKTtcclxuXHRwYWRkaW5nOiAwLjFyZW0gMC4zcmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG59XHJcblxyXG4vKiBBbmltYXRpb24gZm9yIHN5bmMgYnV0dG9uICovXHJcbkBrZXlmcmFtZXMgc3BpbiB7XHJcblx0MCUge1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuXHR9XHJcbn1cclxuXHJcbi5pY3Mtc291cmNlLWFjdGlvbnMgYnV0dG9uLnN5bmNpbmc6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0bWFyZ2luLXJpZ2h0OiAwLjNyZW07XHJcblx0YW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcclxufVxyXG5cclxuLmljcy10ZXh0LXJlcGxhY2VtZW50LW1vZGFsLFxyXG4uaWNzLXNvdXJjZS1tb2RhbCB7XHJcblx0bWF4LXdpZHRoOiAxMDAwcHg7XHJcblx0bWF4LWhlaWdodDogOTB2aDtcclxuXHJcblx0cGFkZGluZy1yaWdodDogMDtcclxufVxyXG5cclxuLmljcy10ZXh0LXJlcGxhY2VtZW50LW1vZGFsIC5tb2RhbC1jb250ZW50LFxyXG4uaWNzLXNvdXJjZS1tb2RhbCAubW9kYWwtY29udGVudCB7XHJcblx0cGFkZGluZy1yaWdodDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcbiIsICIvKiBUYXNrIGZpbHRlciBwYW5lbCBzdHlsZXMgKi9cclxuLnRhc2stZmlsdGVyLXBhbmVsIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCkgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTItMik7XHJcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1zaXplLTQtOCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRtYXgtaGVpZ2h0OiAzMDBweDtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG59XHJcblxyXG4udGFzay1maWx0ZXItYWN0aXZlIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItYWNjZW50LTIpO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4udGFzay1maWx0ZXItcGFuZWwgPiAuc2V0dGluZy1pdGVtIHtcclxuXHRib3JkZXItdG9wOiB1bnNldDtcclxufVxyXG5cclxuLnRhc2stZmlsdGVyLWhlYWRlci1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG59XHJcblxyXG4udGFzay1maWx0ZXItdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnRhc2stZmlsdGVyLW9wdGlvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDEwcHg7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1zZWN0aW9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1zZWN0aW9uIGgzIHtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0bWFyZ2luOiA1cHggMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1zZWN0aW9uOmxhc3QtY2hpbGQge1xyXG5cdGJvcmRlci1ib3R0b206IHVuc2V0O1xyXG59XHJcblxyXG4udGFzay1maWx0ZXItb3B0aW9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA2cHg7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1vcHRpb24gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1vcHRpb24gbGFiZWwge1xyXG5cdGZvbnQtc2l6ZTogMTNweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGFzay1maWx0ZXItYnV0dG9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdGdhcDogOHB4O1xyXG5cdG1hcmdpbi10b3A6IDhweDtcclxuXHRwYWRkaW5nLXRvcDogOHB4O1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1hcHBseSxcclxuLnRhc2stZmlsdGVyLWNsb3NlIHtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLnRhc2stZmlsdGVyLWFwcGx5IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1yZXNldCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1jbG9zZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1xdWVyeS1pbnB1dCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWluLXdpZHRoOiAyNTBweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0cGFkZGluZzogOHB4IDEycHg7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1xdWVyeS1pbnB1dDpmb2N1cyB7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0b3V0bGluZTogbm9uZTtcclxufVxyXG5cclxuLnRhc2stZmlsdGVyLXNlY3Rpb24gLnNldHRpbmctaXRlbS1kZXNjcmlwdGlvbiB7XHJcblx0bWFyZ2luLXRvcDogNXB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG59XHJcblxyXG4udGFzay1maWx0ZXItb3B0aW9ucyB7XHJcblx0bWF4LWhlaWdodDogNzB2aDtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdHBhZGRpbmctcmlnaHQ6IDVweDtcclxufVxyXG5cclxuLnRhc2stZmlsdGVyLW9wdGlvbnMge1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0cGFkZGluZy10b3A6IHZhcigtLXNpemUtNC00KTtcclxufVxyXG4iLCAiLmZpbHRlci1ncm91cC1zZXBhcmF0b3Ige1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRtYXJnaW46IHZhcigtLXNpemUtMi0yKSAwOyAvKiBcdTRGN0ZcdTc1MjggT2JzaWRpYW4gXHU3Njg0XHU1QzNBXHU1QkY4XHU1M0Q4XHU5MUNGICovXHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpOyAvKiBcdTRGN0ZcdTc1MjggT2JzaWRpYW4gXHU3Njg0XHU2QjIxXHU4OTgxXHU2NTg3XHU2NzJDXHU5ODlDXHU4MjcyICovXHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpOyAvKiBcdTRGN0ZcdTc1MjggT2JzaWRpYW4gXHU3Njg0XHU1QjU3XHU0RjUzXHU1OTI3XHU1QzBGXHU1M0Q4XHU5MUNGICovXHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAtc2VwYXJhdG9yOjpiZWZvcmUsXHJcbi5maWx0ZXItZ3JvdXAtc2VwYXJhdG9yOjphZnRlciB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRmbGV4LWdyb3c6IDE7XHJcblx0aGVpZ2h0OiAxcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKFxyXG5cdFx0LS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlclxyXG5cdCk7IC8qIFx1NEY3Rlx1NzUyOCBPYnNpZGlhbiBcdTc2ODRcdThGQjlcdTY4NDZcdTk4OUNcdTgyNzIgKi9cclxuXHRtYXJnaW46IDAgdmFyKC0tc2l6ZS0yLTEpOyAvKiBcdTRGN0ZcdTc1MjggT2JzaWRpYW4gXHU3Njg0XHU1QzNBXHU1QkY4XHU1M0Q4XHU5MUNGICovXHJcbn1cclxuXHJcbi5kcmFnLWhhbmRsZSB7XHJcblx0Y3Vyc29yOiBncmFiO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLyogXHU2MzA5XHU5NEFFXHU1NDhDXHU4RjkzXHU1MTY1XHU2ODQ2XHU3Njg0XHU4RjgzXHU1QzBGXHU2NTg3XHU2NzJDXHU1NDhDXHU1MTg1XHU4RkI5XHU4REREICovXHJcbi5jb21wYWN0LWJ0biB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0yKTsgLyogXHU0RjdGXHU3NTI4IE9ic2lkaWFuIFx1NzY4NFx1NUMzQVx1NUJGOFx1NTNEOFx1OTFDRiAqL1xyXG5cdGJveC1zaGFkb3c6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyOiB1bnNldCAhaW1wb3J0YW50O1xyXG5cdC0taWNvbi1zaXplOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cclxuXHQtd2Via2l0LWFwcC1yZWdpb246IG5vLWRyYWc7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1yYWRpdXMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKTtcclxuXHRmb250LXdlaWdodDogdmFyKC0taW5wdXQtZm9udC13ZWlnaHQpO1xyXG5cdGN1cnNvcjogdmFyKC0tY3Vyc29yKTtcclxuXHRmb250LWZhbWlseTogaW5oZXJpdDtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxuXHJcblx0bWluLWhlaWdodDogMzBweDtcclxufVxyXG5cclxuLmNvbXBhY3QtYnRuOmhvdmVyIHtcclxuXHRib3gtc2hhZG93OiBub25lO1xyXG5cdG9wYWNpdHk6IHZhcigtLWljb24tb3BhY2l0eS1ob3Zlcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmNvbXBhY3QtaW5wdXQsXHJcbi5jb21wYWN0LXNlbGVjdCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpOyAvKiBcdTRGN0ZcdTc1MjggT2JzaWRpYW4gXHU3Njg0XHU1QjU3XHU0RjUzXHU1OTI3XHU1QzBGXHU1M0Q4XHU5MUNGICovXHJcblx0aGVpZ2h0OiB2YXIoLS1pbnB1dC1oZWlnaHQpOyAvKiBcdTRGN0ZcdTc1MjggT2JzaWRpYW4gXHU3Njg0XHU4RjkzXHU1MTY1XHU2ODQ2XHU5QUQ4XHU1RUE2XHU1M0Q4XHU5MUNGICovXHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJveC1zaGFkb3c6IG5vbmU7XHJcbn1cclxuXHJcbi5jb21wYWN0LXNlbGVjdDpob3ZlciB7XHJcblx0Ym94LXNoYWRvdzogbm9uZTtcclxufVxyXG5cclxuLmNvbXBhY3QtdGV4dCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpOyAvKiBcdTRGN0ZcdTc1MjggT2JzaWRpYW4gXHU3Njg0XHU1QjU3XHU0RjUzXHU1OTI3XHU1QzBGXHU1M0Q4XHU5MUNGICovXHJcbn1cclxuXHJcbi8qIFx1NjJENlx1NTJBOFx1NjVGNlx1NzY4NFx1NTM2MFx1NEY0RFx1N0IyNiAqL1xyXG4uZHJhZ2dpbmctcGxhY2Vob2xkZXIge1xyXG5cdG9wYWNpdHk6IDAuNTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoXHJcblx0XHQtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXJcclxuXHQpOyAvKiBcdTRGN0ZcdTc1MjggT2JzaWRpYW4gXHU3Njg0XHU2MEFDXHU1MDVDXHU4MENDXHU2NjZGXHU4MjcyICovXHJcbn1cclxuXHJcbi8qIFx1NTk4Mlx1Njc5Q1x1OTcwMFx1ODk4MVx1RkYwQ1x1NEUzQVx1OEZDN1x1NkVFNFx1NTY2OFx1N0VDNFx1NEVGNlx1NzY4NFx1NjgzOVx1NUJCOVx1NTY2OFx1OEJCRVx1N0Y2RVx1NjgzN1x1NUYwRiAqL1xyXG4udGFzay1maWx0ZXItcm9vdC1jb250YWluZXIudGFzay1wb3BvdmVyLWNvbnRlbnQge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKTsgLyogXHU0RjdGXHU3NTI4IE9ic2lkaWFuIFx1NzY4NFx1NUMzQVx1NUJGOFx1NTNEOFx1OTFDRiAqL1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxuXHRtYXgtaGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4udGFzay1maWx0ZXItbWFpbi1wYW5lbCB7XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKTsgLyogXHU0RjdGXHU3NTI4IE9ic2lkaWFuIFx1NzY4NFx1NUMzQVx1NUJGOFx1NTNEOFx1OTFDRiAqL1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTsgLyogXHU0RjdGXHU3NTI4IE9ic2lkaWFuIFx1NzY4NFx1NTcwNlx1ODlEMlx1NTNEOFx1OTFDRiAqL1xyXG59XHJcblxyXG4uZmlsdGVyLW1lbnUge1xyXG5cdHotaW5kZXg6IDUwO1xyXG5cdG1pbi13aWR0aDogNjAwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLyogcm9vdEZpbHRlclNldHVwU2VjdGlvbiBpbiBUUywgY29ycmVzcG9uZHMgdG8gSFRNTCdzICNyb290LWZpbHRlci1jb250YWluZXIgKi9cclxuLnJvb3QtZmlsdGVyLXNldHVwLXNlY3Rpb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDAuNzVyZW07IC8qIHNwYWNlLXktMyBmcm9tIEhUTUwsIFRhaWx3aW5kIHZhcigtLXNwYWNlLTMpICovXHJcbn1cclxuXHJcbi8qIFJvb3QgQ29uZGl0aW9uIFNlY3Rpb24gKGRpdi5mbGV4Lml0ZW1zLWNlbnRlci5zcGFjZS14LTIucC0yLmJnLXNsYXRlLTEwMC5yb3VuZGVkLW1kLmJvcmRlci5ib3JkZXItc2xhdGUtMjAwKSAqL1xyXG4ucm9vdC1jb25kaXRpb24tc2VjdGlvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMC41cmVtOyAvKiBzcGFjZS14LTIgZnJvbSBIVE1MLCBUYWlsd2luZCB2YXIoLS1zcGFjZS0yKSAqL1xyXG5cdHBhZGRpbmc6IDAuNXJlbTsgLyogcC0yIGZyb20gSFRNTCwgVGFpbHdpbmQgdmFyKC0tc3BhY2UtMikgKi9cclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoXHJcblx0XHQtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCxcclxuXHRcdHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpXHJcblx0KTsgLyogYmctc2xhdGUtMTAwICovXHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pOyAvKiByb3VuZGVkLW1kICovXHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpOyAvKiBib3JkZXIgYm9yZGVyLXNsYXRlLTIwMCAqL1xyXG59XHJcblxyXG4ucm9vdC1jb25kaXRpb24tbGFiZWwge1xyXG5cdC8qIGNvbXBhY3QtdGV4dCBhbHJlYWR5IHByb3ZpZGVzIGZvbnQtc2l6ZSAqL1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7IC8qIGZvbnQtbWVkaXVtICovXHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTsgLyogdGV4dC1zbGF0ZS02MDAgKi9cclxufVxyXG5cclxuLnJvb3QtY29uZGl0aW9uLXNlbGVjdCB7XHJcblx0LyogY29tcGFjdC1zZWxlY3QgYWxyZWFkeSBwcm92aWRlcyBiYXNlIHN0eWxpbmcgKi9cclxuXHR3aWR0aDogYXV0bztcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IsIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKSk7IC8qIGJvcmRlciBib3JkZXItc2xhdGUtMzAwICovXHJcblx0LyogYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpOyAvKiBzaGFkb3ctc20gKi8gLyogQ29uc2lkZXIgaWYgbmVlZGVkICovXHJcbn1cclxuXHJcbi5yb290LWNvbmRpdGlvbi1zZWxlY3Q6Zm9jdXMge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAxcHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLnJvb3QtY29uZGl0aW9uLXNwYW4ge1xyXG5cdC8qIGNvbXBhY3QtdGV4dCBhbHJlYWR5IHByb3ZpZGVzIGZvbnQtc2l6ZSAqL1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7IC8qIHRleHQtc2xhdGUtNjAwICovXHJcbn1cclxuXHJcbi8qIEZpbHRlciBHcm91cHMgQ29udGFpbmVyICgjZmlsdGVyLWdyb3Vwcy1jb250YWluZXIpICovXHJcbi5maWx0ZXItZ3JvdXBzLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTMpOyAvKiBzcGFjZS15LTMgZnJvbSBIVE1MICovXHJcblxyXG5cdG1heC1oZWlnaHQ6IDUwdmg7XHJcblx0b3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuXHJcbi8qIEZpbHRlciBHcm91cCAoI2ZpbHRlci1ncm91cC10ZW1wbGF0ZSkgKi9cclxuLmZpbHRlci1ncm91cCB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTMpOyAvKiBwLTMgZnJvbSBIVE1MICovXHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpOyAvKiBib3JkZXIgYm9yZGVyLXNsYXRlLTMwMCAqL1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTsgLyogcm91bmRlZC1tZCAqL1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7IC8qIGJnLXdoaXRlICovXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpOyAvKiBzcGFjZS15LTIgZnJvbSBIVE1MICovXHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAtaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG59XHJcblxyXG4uZmlsdGVyLWdyb3VwLWhlYWRlci1sZWZ0IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAwLjM3NXJlbTsgLyogc3BhY2UteC0xLjUgZnJvbSBIVE1MICovXHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAtaGVhZGVyLWxlZnQgLmRyYWctaGFuZGxlLWNvbnRhaW5lciAuc3ZnLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTsgLyogdGV4dC1zbGF0ZS00MDAgKi9cclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXItbGVmdCAuZHJhZy1oYW5kbGUtY29udGFpbmVyOmhvdmVyIC5zdmctaWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpOyAvKiBob3Zlcjp0ZXh0LXNsYXRlLTUwMCAqL1xyXG59XHJcblxyXG4uZmlsdGVyLWdyb3VwLWhlYWRlci1sZWZ0IC5kcmFnLWhhbmRsZS1jb250YWluZXIge1xyXG5cdHBhZGRpbmctcmlnaHQ6IHZhcigtLXNpemUtMi0xKTtcclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXItbGVmdCA+IC5jb21wYWN0LXRleHQsXHJcbi5maWx0ZXItZ3JvdXAtaGVhZGVyLWxlZnQgPiBzcGFuLmNvbXBhY3QtdGV4dCB7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDsgLyogZm9udC1tZWRpdW0gKi9cclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpOyAvKiB0ZXh0LXNsYXRlLTYwMCAqL1xyXG59XHJcblxyXG4uZmlsdGVyLWdyb3VwLWhlYWRlci1sZWZ0IC5ncm91cC1jb25kaXRpb24tc2VsZWN0LmNvbXBhY3Qtc2VsZWN0IHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IsIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKSk7XHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAtaGVhZGVyLWxlZnQgLmdyb3VwLWNvbmRpdGlvbi1zZWxlY3QuY29tcGFjdC1zZWxlY3Q6Zm9jdXMge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAxcHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXItcmlnaHQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDAuMjVyZW07IC8qIHNwYWNlLXgtMSBmcm9tIEhUTUwgKi9cclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXItcmlnaHQgLmR1cGxpY2F0ZS1ncm91cC1idG4uY29tcGFjdC1pY29uLWJ0bixcclxuLmZpbHRlci1ncm91cC1oZWFkZXItcmlnaHQgLnJlbW92ZS1ncm91cC1idG4uY29tcGFjdC1pY29uLWJ0biB7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpOyAvKiByb3VuZGVkLW1kIGZyb20gVGFpbHdpbmQgKi9cclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXItcmlnaHQgLmR1cGxpY2F0ZS1ncm91cC1idG4uY29tcGFjdC1pY29uLWJ0biAuc3ZnLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTsgLyogdGV4dC1zbGF0ZS01MDAgKi9cclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXItcmlnaHRcclxuLmR1cGxpY2F0ZS1ncm91cC1idG4uY29tcGFjdC1pY29uLWJ0bjpob3ZlclxyXG4uc3ZnLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpOyAvKiBob3Zlcjp0ZXh0LWluZGlnby02MDAgKi9cclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXItcmlnaHQgLmR1cGxpY2F0ZS1ncm91cC1idG4uY29tcGFjdC1pY29uLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAtaGVhZGVyLXJpZ2h0IC5yZW1vdmUtZ3JvdXAtYnRuLmNvbXBhY3QtaWNvbi1idG4gLnN2Zy1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7IC8qIHRleHQtc2xhdGUtNTAwICovXHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAtaGVhZGVyLXJpZ2h0IC5yZW1vdmUtZ3JvdXAtYnRuLmNvbXBhY3QtaWNvbi1idG46aG92ZXIgLnN2Zy1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7IC8qIGhvdmVyOnRleHQtcmVkLTYwMCAqL1xyXG59XHJcblxyXG4uZmlsdGVyLWdyb3VwLWhlYWRlci1yaWdodCAucmVtb3ZlLWdyb3VwLWJ0bi5jb21wYWN0LWljb24tYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoXHJcblx0XHQtLWJhY2tncm91bmQtZXJyb3ItaG92ZXIsXHJcblx0XHR2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yLWhvdmVyKVxyXG5cdCk7XHJcbn1cclxuXHJcbi8qIEZpbHRlcnMgTGlzdCAoLmZpbHRlcnMtbGlzdCkgKi9cclxuLmZpbHRlcnMtbGlzdCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpOyAvKiBzcGFjZS15LTEuNSBmcm9tIEhUTUwgKi9cclxuXHRwYWRkaW5nLWxlZnQ6IDFyZW07IC8qIHBsLTQgZnJvbSBIVE1MICovXHJcblx0Ym9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7IC8qIGJvcmRlci1sLTIgYm9yZGVyLXNsYXRlLTIwMCAqL1xyXG5cdG1hcmdpbi1sZWZ0OiB2YXIoLS1zaXplLTQtMik7IC8qIG1sLTEuNSBmcm9tIEhUTUwgKi9cclxufVxyXG5cclxuLmZpbHRlcnMtbGlzdDplbXB0eSB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLyogR3JvdXAgRm9vdGVyICguZ3JvdXAtZm9vdGVyKSAqL1xyXG4uZ3JvdXAtZm9vdGVyIHtcclxuXHQvKiBIVE1MOiA8ZGl2IGNsYXNzPVwicGwtNCBtdC0xLjVcIj4gY29udGFpbmluZyBidXR0b24gKi9cclxuXHQvKiBUUyBjcmVhdGVzIC5ncm91cC1mb290ZXIsIHRoZW4gYWRkcyBCdXR0b25Db21wb25lbnQgdG8gaXQuICovXHJcblx0cGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgLyogQ29ycmVzcG9uZHMgdG8gcGwtMS41IGVmZmVjdGl2ZWx5IGlmIGl0ZW1zIGluc2lkZSAuZmlsdGVycy1saXN0IGhhdmUgbWFyZ2luL3BhZGRpbmcgKi9cclxuXHRtYXJnaW4tdG9wOiAwLjM3NXJlbTsgLyogbXQtMS41ICovXHJcbn1cclxuXHJcbi5hZGQtZmlsdGVyLWJ0bi1pY29uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIEZpbHRlciBJdGVtICgjZmlsdGVyLWl0ZW0tdGVtcGxhdGUpICovXHJcbi5maWx0ZXItaXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHQvKiBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7ICovXHJcblx0LyogYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pOyAqL1xyXG5cdHBhZGRpbmctdG9wOiAwO1xyXG5cdHBhZGRpbmctYm90dG9tOiAwO1xyXG59XHJcblxyXG4uZmlsdGVyLWl0ZW0gLmZpbHRlci1jb25qdW5jdGlvbiB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpOyAvKiB0ZXh0LTJ4cyAqL1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7IC8qIGZvbnQtc2VtaWJvbGQgKi9cclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7IC8qIHRleHQtc2xhdGUtNDAwICovXHJcblx0YWxpZ24tc2VsZjogY2VudGVyO1xyXG59XHJcblxyXG4uZmlsdGVyLWl0ZW0gLmZpbHRlci1wcm9wZXJ0eS1zZWxlY3QuY29tcGFjdC1zZWxlY3Qge1xyXG5cdGZsZXgtYmFzaXM6IDMwJTsgLyogdy0xLzMgKi9cclxuXHRmbGV4LWdyb3c6IDA7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0taW5wdXQtYm9yZGVyLWNvbG9yLCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcikpO1xyXG5cdC8qIGJvcmRlcjogdW5zZXQgIWltcG9ydGFudDsgKi9cclxuXHRib3gtc2hhZG93OiBub25lO1xyXG59XHJcblxyXG4uZmlsdGVyLWl0ZW0gLmZpbHRlci1wcm9wZXJ0eS1zZWxlY3QuY29tcGFjdC1zZWxlY3Q6Zm9jdXMge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAxcHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLmZpbHRlci1pdGVtIC5maWx0ZXItY29uZGl0aW9uLXNlbGVjdC5jb21wYWN0LXNlbGVjdCB7XHJcblx0d2lkdGg6IGF1dG87IC8qIHctYXV0byAqL1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlucHV0LWJvcmRlci1jb2xvciwgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpKTtcclxuXHQvKiBib3JkZXI6IHVuc2V0ICFpbXBvcnRhbnQ7ICovXHJcblx0Ym94LXNoYWRvdzogbm9uZTtcclxufVxyXG5cclxuLmZpbHRlci1pdGVtIC5maWx0ZXItY29uZGl0aW9uLXNlbGVjdC5jb21wYWN0LXNlbGVjdDpmb2N1cyB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDFweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4uZmlsdGVyLWl0ZW0gLmZpbHRlci12YWx1ZS1pbnB1dC5jb21wYWN0LWlucHV0IHtcclxuXHRmbGV4LWdyb3c6IDE7IC8qIGZsZXgtZ3JvdyAqL1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlucHV0LWJvcmRlci1jb2xvciwgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpKTtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmZpbHRlci1pdGVtIC5maWx0ZXItdmFsdWUtaW5wdXQuY29tcGFjdC1pbnB1dDpmb2N1cyB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDFweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4uZmlsdGVyLWl0ZW0gLnJlbW92ZS1maWx0ZXItYnRuLmNvbXBhY3QtaWNvbi1idG4gLnN2Zy1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7IC8qIHRleHQtc2xhdGUtNTAwICovXHJcbn1cclxuXHJcbi5maWx0ZXItaXRlbSAucmVtb3ZlLWZpbHRlci1idG4uY29tcGFjdC1pY29uLWJ0bjpob3ZlciAuc3ZnLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTsgLyogaG92ZXI6dGV4dC1yZWQtNjAwICovXHJcbn1cclxuXHJcbi5maWx0ZXItaXRlbSAucmVtb3ZlLWZpbHRlci1idG4uY29tcGFjdC1pY29uLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKFxyXG5cdFx0LS1iYWNrZ3JvdW5kLWVycm9yLWhvdmVyLFxyXG5cdFx0dmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvci1ob3ZlcilcclxuXHQpO1xyXG59XHJcblxyXG4vKiBBZGQgRmlsdGVyIEdyb3VwIEJ1dHRvbiBTZWN0aW9uICovXHJcbi5hZGQtZ3JvdXAtc2VjdGlvbiB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0xKTtcclxuXHRtYXJnaW4tbGVmdDogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG59XHJcblxyXG4uYWRkLWZpbHRlci1ncm91cC1idG4taWNvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4vKiBGaWx0ZXIgQ29uZmlndXJhdGlvbiBTZWN0aW9uICovXHJcbi5maWx0ZXItY29uZmlnLXNlY3Rpb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0LyogbWFyZ2luLXRvcDogdmFyKC0tc2l6ZS0yLTEpOyAqL1xyXG5cdC8qIG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0xKTsgKi9cclxuXHQvKiBtYXJnaW4tbGVmdDogdmFyKC0tc2l6ZS0yLTEpOyAqL1xyXG5cdC8qIHBhZGRpbmctdG9wOiB2YXIoLS1zaXplLTItMik7ICovXHJcblx0LyogYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTsgKi9cclxufVxyXG5cclxuLnNhdmUtZmlsdGVyLWNvbmZpZy1idG4sXHJcbi5sb2FkLWZpbHRlci1jb25maWctYnRuIHtcclxuXHRmbGV4OiAxO1xyXG59XHJcblxyXG4uc2F2ZS1maWx0ZXItY29uZmlnLWJ0bi1pY29uLFxyXG4ubG9hZC1maWx0ZXItY29uZmlnLWJ0bi1pY29uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5zYXZlLWZpbHRlci1jb25maWctYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5sb2FkLWZpbHRlci1jb25maWctYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLyogRmlsdGVyIENvbmZpZyBNb2RhbCBTdHlsZXMgKi9cclxuLmZpbHRlci1jb25maWctZGV0YWlscyB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWwpO1xyXG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuXHRcdDEzNWRlZyxcclxuXHRcdHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KSAwJSxcclxuXHRcdHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpIDEwMCVcclxuXHQpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLmZpbHRlci1jb25maWctZGV0YWlsczpob3ZlciB7XHJcblx0Ym94LXNoYWRvdzogMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxufVxyXG5cclxuLmZpbHRlci1jb25maWctZGV0YWlscyBoMyB7XHJcblx0bWFyZ2luOiAwIDAgdmFyKC0tc2l6ZS00LTIpIDA7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxufVxyXG5cclxuLmZpbHRlci1jb25maWctZGV0YWlscyBwIHtcclxuXHRtYXJnaW46IHZhcigtLXNpemUtMi0yKSAwO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmZpbHRlci1jb25maWctbWV0YSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW46IHZhcigtLXNpemUtMi0xKSAwO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTItMik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1mb3JtLWZpZWxkKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Ym9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4uZmlsdGVyLWNvbmZpZy1zdW1tYXJ5IHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIDAgMCAwO1xyXG5cdGJvcmRlci10b3A6IDJweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5maWx0ZXItY29uZmlnLXN1bW1hcnkgaDQge1xyXG5cdG1hcmdpbjogMCAwIHZhcigtLXNpemUtMi0zKSAwO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0xKTtcclxufVxyXG5cclxuLmZpbHRlci1jb25maWctc3VtbWFyeSBwIHtcclxuXHRtYXJnaW46IHZhcigtLXNpemUtMi0xKSAwO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0yKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktYWx0KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcbn1cclxuXHJcbi5maWx0ZXItY29uZmlnLWJ1dHRvbnMge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4uZmlsdGVyLWNvbmZpZy1uYW1lLWhpZ2hsaWdodCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0cGFkZGluZzogMC4xMjVyZW0gMC4yNXJlbTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLyogQWR2YW5jZWQgZmlsdGVyIGNvbnRhaW5lciBzdHlsZXMgZm9yIFZpZXdDb25maWdNb2RhbCAqL1xyXG4uYWR2YW5jZWQtZmlsdGVyLWNvbnRhaW5lciB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxufVxyXG5cclxuLmFkdmFuY2VkLWZpbHRlci1jb250YWluZXIgLnRhc2stZmlsdGVyLXJvb3QtY29udGFpbmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0cGFkZGluZzogMDtcclxufVxyXG5cclxuLmFkdmFuY2VkLWZpbHRlci1jb250YWluZXIgLnRhc2stZmlsdGVyLW1haW4tcGFuZWwge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4vKiBTbWFsbGVyIHN0eWxpbmcgZm9yIGZpbHRlcnMgaW4gbW9kYWwgKi9cclxuLnRhc2stZ2VuaXVzLXZpZXctY29uZmlnLW1vZGFsIC5hZHZhbmNlZC1maWx0ZXItY29udGFpbmVyIC5maWx0ZXItZ3JvdXAge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3LWNvbmZpZy1tb2RhbCAuYWR2YW5jZWQtZmlsdGVyLWNvbnRhaW5lciAuZmlsdGVyLWl0ZW0ge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKTtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXctY29uZmlnLW1vZGFsIC5hZHZhbmNlZC1maWx0ZXItY29udGFpbmVyIC5jb21wYWN0LWJ0biB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0yKTtcclxuXHRtaW4taGVpZ2h0OiAyNnB4O1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldy1jb25maWctbW9kYWwgLmFkdmFuY2VkLWZpbHRlci1jb250YWluZXIgLmNvbXBhY3Qtc2VsZWN0LFxyXG4udGFzay1nZW5pdXMtdmlldy1jb25maWctbW9kYWwgLmFkdmFuY2VkLWZpbHRlci1jb250YWluZXIgLmNvbXBhY3QtaW5wdXQge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRoZWlnaHQ6IDI4cHg7XHJcbn1cclxuIiwgIi8qIFZpZXcgU2V0dGluZ3MgVGFiIFN0eWxlcyAqL1xyXG5cclxuLyogVmlldyBtYW5hZ2VtZW50IGxpc3QgY29udGFpbmVyICovXHJcbi52aWV3LW1hbmFnZW1lbnQtbGlzdCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogMjBweDtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbi8qIFNlY3Rpb24gY29udGFpbmVycyAqL1xyXG4udmlldy1zZWN0aW9uLWNvbnRhaW5lciB7XHJcblx0bWluLWhlaWdodDogMTAwcHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRwYWRkaW5nOiAxMHB4O1xyXG59XHJcblxyXG4vKiBTZWN0aW9uIGhlYWRlcnMgKi9cclxuLnZpZXctc2VjdGlvbi1oZWFkZXIge1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbn1cclxuXHJcbi52aWV3LXNlY3Rpb24taGVhZGVyIGg0IHtcclxuXHRtYXJnaW46IDA7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4udmlldy1zZWN0aW9uLWl0ZW1zLFxyXG4uc29ydGFibGUtdmlld3Mge1xyXG5cdG1pbi1oZWlnaHQ6IDYwcHg7XHJcblx0Ym9yZGVyOiAxcHggZGFzaGVkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0cGFkZGluZzogOHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi5zb3J0YWJsZS12aWV3czplbXB0eTo6YWZ0ZXIge1xyXG5cdGNvbnRlbnQ6IGF0dHIoZGF0YS1lbXB0eS10ZXh0KTtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdHBhZGRpbmc6IDIwcHg7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4uc29ydGFibGUtdmlld3NbZGF0YS1yZWdpb249XCJ0b3BcIl06ZW1wdHk6OmFmdGVyIHtcclxuXHRjb250ZW50OiBcIkRyYWcgdmlld3MgaGVyZSBmb3IgdGhlIHRvcCBzZWN0aW9uXCI7XHJcbn1cclxuXHJcbi5zb3J0YWJsZS12aWV3c1tkYXRhLXJlZ2lvbj1cImJvdHRvbVwiXTplbXB0eTo6YWZ0ZXIge1xyXG5cdGNvbnRlbnQ6IFwiRHJhZyB2aWV3cyBoZXJlIGZvciB0aGUgYm90dG9tIHNlY3Rpb25cIjtcclxufVxyXG5cclxuLyogVmlldyBpdGVtIHN0eWxlcyAqL1xyXG4udmlldy1pdGVtLFxyXG4uc29ydGFibGUtdmlldy1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogOHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDRweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGN1cnNvcjogbW92ZTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udmlldy1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIERyYWcgaGFuZGxlIHN0eWxlcyAqL1xyXG4udmlldy1kcmFnLWhhbmRsZSB7XHJcblx0Y3Vyc29yOiBncmFiO1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG5cdG9wYWNpdHk6IDAuNTtcclxufVxyXG5cclxuLnZpZXctZHJhZy1oYW5kbGU6YWN0aXZlIHtcclxuXHRjdXJzb3I6IGdyYWJiaW5nICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIFZpZXcgaXRlbSBpY29uICovXHJcbi52aWV3LWl0ZW0taWNvbiB7XHJcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XHJcbn1cclxuXHJcbi8qIFZpZXcgaXRlbSBpbmZvICovXHJcbi52aWV3LWl0ZW0taW5mbyB7XHJcblx0ZmxleDogMTtcclxuXHRtYXJnaW4tcmlnaHQ6IDhweDtcclxufVxyXG5cclxuLnZpZXctaXRlbS1uYW1lIHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4udmlldy1pdGVtLXR5cGUge1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi8qIFZpZXcgaXRlbSBhY3Rpb25zICovXHJcbi52aWV3LWl0ZW0tYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDRweDtcclxufVxyXG5cclxuLnZpZXctYWN0aW9uLWJ1dHRvbiB7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRwYWRkaW5nOiA0cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi52aWV3LWFjdGlvbi1idXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi52aWV3LWFjdGlvbi1kZWxldGU6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5zb3J0YWJsZS1naG9zdCB7XHJcblx0b3BhY2l0eTogMC40O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5zb3J0YWJsZS1kcmFnIHtcclxuXHRvcGFjaXR5OiAwO1xyXG59XHJcblxyXG4uc29ydGFibGUtY2hvc2VuIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKSAhaW1wb3J0YW50O1xyXG59XHJcbiIsICIvKiBNQ1AgSW50ZWdyYXRpb24gU2V0dGluZ3MgU3R5bGVzICovXHJcblxyXG4vKiBTdGF0dXMgQ29udGFpbmVyICovXHJcbi5tY3Atc3RhdHVzLWNvbnRhaW5lciB7XHJcbiAgICBwYWRkaW5nOiAxNnB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjRweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLm1jcC1zdGF0dXMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBnYXA6IDEwcHg7XHJcbn1cclxuXHJcbi5tY3Atc3RhdHVzLWluZGljYXRvciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMTBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBmb250LXNpemU6IDEuMDVlbTtcclxufVxyXG5cclxuLm1jcC1zdGF0dXMtaW5kaWNhdG9yLnJ1bm5pbmcgLnN0YXR1cy1kb3Qge1xyXG4gICAgY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItc3VjY2Vzcyk7XHJcbiAgICBmb250LXNpemU6IDEuMmVtO1xyXG4gICAgYW5pbWF0aW9uOiBwdWxzZSAycyBpbmZpbml0ZTtcclxufVxyXG5cclxuLm1jcC1zdGF0dXMtaW5kaWNhdG9yLnN0b3BwZWQgLnN0YXR1cy1kb3Qge1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG4gICAgZm9udC1zaXplOiAxLjJlbTtcclxufVxyXG5cclxuLm1jcC1zdGF0dXMtZGV0YWlscyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZ2FwOiAyNHB4O1xyXG4gICAgZm9udC1zaXplOiAwLjllbTtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuICAgIHBhZGRpbmctbGVmdDogMzBweDtcclxufVxyXG5cclxuLyogQ2xpZW50IENvbmZpZ3VyYXRpb24gKi9cclxuLm1jcC1jb25maWctY29udGFpbmVyIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcbi5tY3AtY2xpZW50LXNlY3Rpb24ge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ubWNwLWNsaWVudC1oZWFkZXIge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgcGFkZGluZzogMTJweCAxNnB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMTBweDtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzO1xyXG59XHJcblxyXG4ubWNwLWNsaWVudC1oZWFkZXI6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIEFycm93IGljb24gZm9yIGNvbGxhcHNpYmxlIHNlY3Rpb25zICovXHJcbi5tY3AtYXJyb3cge1xyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnM7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgaGVpZ2h0OiAxNnB4O1xyXG59XHJcblxyXG4ubWNwLWFycm93IHN2ZyB7XHJcbiAgICB3aWR0aDogMTRweDtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIHN0cm9rZS13aWR0aDogMjtcclxufVxyXG5cclxuLm1jcC1hcnJvdy5leHBhbmRlZCB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbn1cclxuXHJcbi5tY3AtY2xpZW50LW5hbWUge1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5tY3AtY2xpZW50LWNvbnRlbnQge1xyXG4gICAgcGFkZGluZzogMTZweCAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5tY3AtY2xpZW50LWNvbnRlbnQuZXhwYW5kZWQge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5tY3AtY29uZmlnLWJsb2NrIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5tY3AtY29uZmlnLWNvZGUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZzogMTZweCA2MHB4IDE2cHggMTZweCAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29kZS1iYWNrZ3JvdW5kKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBmb250LXNpemU6IDAuODVlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICBvdmVyZmxvdzogYXV0bztcclxuICAgIG1heC1oZWlnaHQ6IDMwMHB4O1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuICAgIHNjcm9sbGJhci13aWR0aDogdGhpbjtcclxuICAgIHNjcm9sbGJhci1jb2xvcjogdmFyKC0tc2Nyb2xsYmFyLXRodW1iLWJnKSB2YXIoLS1zY3JvbGxiYXItYmcpO1xyXG59XHJcblxyXG4ubWNwLWNvbmZpZy1jb2RlIGNvZGUge1xyXG4gICAgY29sb3I6IHZhcigtLWNvZGUtbm9ybWFsKTtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XHJcbiAgICB3aGl0ZS1zcGFjZTogcHJlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5tY3AtY29uZmlnLWNvZGU6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgIHdpZHRoOiA4cHg7XHJcbiAgICBoZWlnaHQ6IDhweDtcclxufVxyXG5cclxuLm1jcC1jb25maWctY29kZTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyLWJnKTtcclxufVxyXG5cclxuLm1jcC1jb25maWctY29kZTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyLXRodW1iLWJnKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxufVxyXG5cclxuLm1jcC1jb25maWctY29kZTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyLWFjdGl2ZS10aHVtYi1iZyk7XHJcbn1cclxuXHJcbi8qIENvcHkgQnV0dG9ucyAqL1xyXG4ubWNwLWNvcHktYnRuIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xyXG4gICAgdG9wOiAxMnB4O1xyXG4gICAgcmlnaHQ6IDEycHg7XHJcbiAgICBwYWRkaW5nOiA2cHggMTJweDtcclxuICAgIGZvbnQtc2l6ZTogMC44ZW07XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzO1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIHotaW5kZXg6IDEwO1xyXG59XHJcblxyXG4ubWNwLWNvcHktYnRuOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcbiAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xyXG59XHJcblxyXG4ubWNwLWNvcHktYnRuLmNvcGllZCB7XHJcbiAgICBhbmltYXRpb246IGNvcHlTdWNjZXNzIDAuM3MgZWFzZTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItc3VjY2VzcykgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogQXV0aGVudGljYXRpb24gTWV0aG9kcyBMaXN0ICovXHJcbi5tY3AtYXV0aC1tZXRob2RzIHtcclxuICAgIG1hcmdpbjogMTVweCAwO1xyXG4gICAgcGFkZGluZzogMTVweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLm1jcC1hdXRoLWxpc3Qge1xyXG4gICAgbWFyZ2luOiAxMHB4IDAgMCAyMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuODtcclxufVxyXG5cclxuLm1jcC1hdXRoLWxpc3QgbGkge1xyXG4gICAgbWFyZ2luOiA4cHggMDtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5tY3AtYXV0aC1saXN0IGNvZGUge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29kZS1iYWNrZ3JvdW5kKTtcclxuICAgIHBhZGRpbmc6IDJweCA2cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICBmb250LXNpemU6IDAuOWVtO1xyXG4gICAgY29sb3I6IHZhcigtLWNvZGUtbm9ybWFsKTtcclxufVxyXG5cclxuLyogVG9rZW4gSW5wdXQgKi9cclxuLm1jcC10b2tlbi1pbnB1dCB7XHJcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlO1xyXG4gICAgd2lkdGg6IDMwMHB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG59XHJcblxyXG4vKiBBUEkgRG9jdW1lbnRhdGlvbiAqL1xyXG4ubWNwLWRvY3MtY29udGFpbmVyIHtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbn1cclxuXHJcbi5tY3AtZG9jcy1zZWN0aW9uIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcbi5tY3AtZG9jcy1zdWJ0aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDFlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLyogRW5kcG9pbnQgQm94ICovXHJcbi5tY3AtZW5kcG9pbnQtYm94IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiAxMnB4O1xyXG4gICAgcGFkZGluZzogMTJweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5tY3AtZW5kcG9pbnQtY29udGVudCB7XHJcbiAgICBmbGV4OiAxO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDhweDtcclxufVxyXG5cclxuLm1jcC1lbmRwb2ludC1sYWJlbCB7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4ubWNwLWVuZHBvaW50LXVybCB7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG4gICAgcGFkZGluZzogNnB4IDEwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxuICAgIHVzZXItc2VsZWN0OiB0ZXh0O1xyXG59XHJcblxyXG4ubWNwLWNvcHktZW5kcG9pbnQtYnRuIHtcclxuICAgIHBhZGRpbmc6IDZweCAxMnB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtbm9ybWFsKTtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnM7XHJcbn1cclxuXHJcbi5tY3AtY29weS1lbmRwb2ludC1idG46aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtaG92ZXIpO1xyXG59XHJcblxyXG4ubWNwLWNvcHktZW5kcG9pbnQtYnRuLmNvcGllZCB7XHJcbiAgICBhbmltYXRpb246IGNvcHlTdWNjZXNzIDAuM3MgZWFzZTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItc3VjY2VzcykgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogVG9vbHMgR3JpZCAqL1xyXG4ubWNwLXRvb2xzLWdyaWQge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDI4MHB4LCAxZnIpKTtcclxuICAgIGdhcDogMTZweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XHJcbn1cclxuXHJcbi5tY3AtdG9vbC1jYXJkIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmc6IDE2cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSkgMCUsIHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSkgMTAwJSk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5tY3AtdG9vbC1jYXJkOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDNweDtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KSAwJSwgdmFyKC0tdGV4dC1hY2NlbnQpIDEwMCUpO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcclxufVxyXG5cclxuLm1jcC10b29sLWNhcmQ6aG92ZXIge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpO1xyXG4gICAgYm94LXNoYWRvdzogMCA4cHggMjRweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4ubWNwLXRvb2wtY2FyZDpob3Zlcjo6YmVmb3JlIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xyXG59XHJcblxyXG4ubWNwLXRvb2wtaGVhZGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiA4cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG4ubWNwLXRvb2wtaWNvbiB7XHJcbiAgICB3aWR0aDogMjBweDtcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuICAgIG9wYWNpdHk6IDAuOTtcclxufVxyXG5cclxuLm1jcC10b29sLWljb24gc3ZnIHtcclxuICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgc3Ryb2tlLXdpZHRoOiAyO1xyXG59XHJcblxyXG4ubWNwLXRvb2wtbmFtZSB7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG4gICAgZm9udC1zaXplOiAwLjg1ZW07XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm94KTtcclxuICAgIHBhZGRpbmc6IDRweCA4cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XHJcbn1cclxuXHJcbi5tY3AtdG9vbC1kZXNjIHtcclxuICAgIGZvbnQtc2l6ZTogMC44NWVtO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgIHBhZGRpbmctbGVmdDogMjhweDtcclxufVxyXG5cclxuLyogRXhhbXBsZSBDb250YWluZXIgKi9cclxuLm1jcC1leGFtcGxlLWNvbnRhaW5lciB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XHJcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xyXG59XHJcblxyXG4vKiBFeGFtcGxlIFRhYnMgKi9cclxuLm1jcC1leGFtcGxlLXRhYnMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGdhcDogMDtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KSAwJSwgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3gpIDEwMCUpO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi5tY3AtZXhhbXBsZS10YWIge1xyXG4gICAgZmxleDogMTtcclxuICAgIHBhZGRpbmc6IDE0cHggMjBweDtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcclxuICAgIGZvbnQtc2l6ZTogMC45ZW07XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubWNwLWV4YW1wbGUtdGFiOjphZnRlciB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSBzY2FsZVgoMCk7XHJcbiAgICB3aWR0aDogODAlO1xyXG4gICAgaGVpZ2h0OiAzcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDNweCAzcHggMCAwO1xyXG59XHJcblxyXG4ubWNwLWV4YW1wbGUtdGFiOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuMDUpO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLm1jcC1leGFtcGxlLXRhYi5hY3RpdmUge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4xKTtcclxuICAgIGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuLm1jcC1leGFtcGxlLXRhYi5hY3RpdmU6OmFmdGVyIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSBzY2FsZVgoMSk7XHJcbn1cclxuXHJcbi8qIEV4YW1wbGUgQ29kZSAqL1xyXG4ubWNwLWV4YW1wbGUtY29kZS1jb250YWluZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29kZS1iYWNrZ3JvdW5kKTtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5tY3AtZXhhbXBsZS1ibG9jayB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYW5pbWF0aW9uOiBmYWRlSW4gMC4zcyBlYXNlO1xyXG59XHJcblxyXG4ubWNwLWV4YW1wbGUtYmxvY2suYWN0aXZlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tY3AtZXhhbXBsZS1jb2RlIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDI0cHggODBweCAyNHB4IDI0cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1jb2RlLWJhY2tncm91bmQpIDAlLCByZ2JhKHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1yZ2IpLCAwLjUpIDEwMCUpO1xyXG4gICAgZm9udC1zaXplOiAwLjg1ZW07XHJcbiAgICBsaW5lLWhlaWdodDogMS43O1xyXG4gICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLm1jcC1leGFtcGxlLWNvZGU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGhlaWdodDogMXB4O1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCB0cmFuc3BhcmVudCwgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpLCB0cmFuc3BhcmVudCk7XHJcbn1cclxuXHJcbi5tY3AtZXhhbXBsZS1jb2RlIGNvZGUge1xyXG4gICAgY29sb3I6IHZhcigtLWNvZGUtbm9ybWFsKTtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XHJcbiAgICB3aGl0ZS1zcGFjZTogcHJlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB0ZXh0LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XHJcbn1cclxuXHJcbi5tY3AtZXhhbXBsZS1jb3B5LWJ0biB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDIwcHg7XHJcbiAgICByaWdodDogMjBweDtcclxuICAgIHBhZGRpbmc6IDhweCAxNnB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBmb250LXNpemU6IDAuODVlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG4gICAgei1pbmRleDogMTA7XHJcbiAgICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4zKTtcclxufVxyXG5cclxuLm1jcC1leGFtcGxlLWNvcHktYnRuOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcbiAgICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuNCk7XHJcbn1cclxuXHJcbi5tY3AtZXhhbXBsZS1jb3B5LWJ0bjphY3RpdmUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgYm94LXNoYWRvdzogMCAxcHggNHB4IHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuMyk7XHJcbn1cclxuXHJcbi5tY3AtZXhhbXBsZS1jb3B5LWJ0bi5jb3BpZWQge1xyXG4gICAgYW5pbWF0aW9uOiBjb3B5U3VjY2VzcyAwLjRzIGVhc2U7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLXN1Y2Nlc3MpICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1zdWNjZXNzLXJnYiksIDAuMyk7XHJcbn1cclxuXHJcbi8qIEFuaW1hdGlvbnMgKi9cclxuQGtleWZyYW1lcyBjb3B5U3VjY2VzcyB7XHJcbiAgICAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cclxuICAgIDUwJSB7IHRyYW5zZm9ybTogc2NhbGUoMS4xKTsgfVxyXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBwdWxzZSB7XHJcbiAgICAwJSB7IG9wYWNpdHk6IDE7IH1cclxuICAgIDUwJSB7IG9wYWNpdHk6IDAuNjsgfVxyXG4gICAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cclxufVxyXG5cclxuLyogU21vb3RoIHRyYW5zaXRpb25zIGZvciBhbGwgaW50ZXJhY3RpdmUgZWxlbWVudHMgKi9cclxuLm1jcC1jbGllbnQtaGVhZGVyLFxyXG4ubWNwLWV4YW1wbGUtdGFiLFxyXG4ubWNwLXRvb2wtY2FyZCxcclxuYnV0dG9uIHtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi8qIENvZGUgc3ludGF4IGNvbG9ycyBmb3IgYmV0dGVyIHJlYWRhYmlsaXR5ICovXHJcbi5tY3AtY29uZmlnLWNvZGUgLmpzb24ta2V5IHtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi5tY3AtY29uZmlnLWNvZGUgLmpzb24tc3RyaW5nIHtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXN1Y2Nlc3MpO1xyXG59XHJcblxyXG4ubWNwLWNvbmZpZy1jb2RlIC5qc29uLW51bWJlciB7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nKTtcclxufVxyXG5cclxuLm1jcC1jb25maWctY29kZSAuanNvbi1ib29sZWFuIHtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBhZGp1c3RtZW50cyAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgIC5tY3AtdG9vbHMtZ3JpZCB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5tY3Atc3RhdHVzLWRldGFpbHMge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgZ2FwOiA4cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tY3AtZXhhbXBsZS1zdWJ0aXRsZSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLyogQ3Vyc29yIE9uZS1DbGljayBJbnN0YWxsIFNlY3Rpb24gKi9cclxuLm1jcC1jdXJzb3ItaW5zdGFsbC1zZWN0aW9uIHtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG59XHJcblxyXG4ubWNwLWN1cnNvci1pbnN0YWxsLWNvbnRhaW5lciB7XHJcblx0bWFyZ2luLXRvcDogMTJweDtcclxufVxyXG5cclxuLm1jcC1jdXJzb3ItaW5zdGFsbC1kZXNjIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luLWJvdHRvbTogMTJweDtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcbn1cclxuXHJcbi5tY3AtY3Vyc29yLWluc3RhbGwtbGluayB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdG1hcmdpbi1ib3R0b206IDE2cHg7XHJcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLm1jcC1jdXJzb3ItaW5zdGFsbC1saW5rOmhvdmVyIHtcclxuXHR0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xyXG59XHJcblxyXG4ubWNwLWN1cnNvci1hZGRpdGlvbmFsLWJ1dHRvbnMge1xyXG5cdG1hcmdpbi10b3A6IDEycHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDEwcHg7XHJcbn1cclxuXHJcblxyXG4ubWNwLWN1cnNvci1jb3B5LWRlZXBsaW5rLWJ0biB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtbm9ybWFsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRwYWRkaW5nOiA4cHggMTZweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4ubWNwLWN1cnNvci1jb3B5LWRlZXBsaW5rLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtaG92ZXIpO1xyXG59XHJcblxyXG4ubWNwLWN1cnNvci1jb3B5LWRlZXBsaW5rLWJ0bi5jb3BpZWQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLXN1Y2Nlc3MpO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLm1jcC1jdXJzb3ItZGVidWctY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAyMHB4O1xyXG59XHJcblxyXG4ubWNwLWN1cnNvci1kZWJ1Zy10b2dnbGUge1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLm1jcC1jdXJzb3ItZGVidWctdG9nZ2xlOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ubWNwLWN1cnNvci1kZWJ1Zy1jb250ZW50IHtcclxuXHRtYXJnaW4tdG9wOiAxMnB4O1xyXG5cdHBhZGRpbmc6IDEycHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG59XHJcblxyXG4ubWNwLWN1cnNvci1kZWJ1Zy1sYWJlbCB7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tYm90dG9tOiA4cHg7XHJcblx0bWFyZ2luLXRvcDogMTJweDtcclxufVxyXG5cclxuLm1jcC1jdXJzb3ItZGVidWctbGFiZWw6Zmlyc3QtY2hpbGQge1xyXG5cdG1hcmdpbi10b3A6IDA7XHJcbn1cclxuXHJcbi5tY3AtY3Vyc29yLWRlYnVnLWNvZGUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvZGUtYmFja2dyb3VuZCk7XHJcblx0cGFkZGluZzogOHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRmb250LXNpemU6IDEycHg7XHJcblx0b3ZlcmZsb3cteDogYXV0bztcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5tY3AtY3Vyc29yLWRlYnVnLWNvZGUgY29kZSB7XHJcblx0Y29sb3I6IHZhcigtLWNvZGUtbm9ybWFsKTtcclxuXHR3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbn1cclxuXHJcbi5tY3Atc2VjdGlvbi1zZXBhcmF0b3Ige1xyXG5cdG1hcmdpbjogMjRweCAwO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59IiwgIi8qIFdvcmtmbG93IERlY29yYXRvciBTdHlsZXMgKi9cclxuLmNtLXdvcmtmbG93LXN0YWdlLWluZGljYXRvciB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdG1hcmdpbi1sZWZ0OiA0cHg7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRvcGFjaXR5OiAwLjc7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XHJcblx0dXNlci1zZWxlY3Q6IG5vbmU7XHJcblxyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuLmNtLXdvcmtmbG93LXN0YWdlLWluZGljYXRvciBzcGFuIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4uY20td29ya2Zsb3ctc3RhZ2UtaW5kaWNhdG9yOmhvdmVyIHtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4vKiBEaWZmZXJlbnQgY29sb3JzIGZvciBkaWZmZXJlbnQgc3RhZ2UgdHlwZXMgKi9cclxuLmNtLXdvcmtmbG93LXN0YWdlLWluZGljYXRvcltkYXRhLXN0YWdlLXR5cGU9XCJsaW5lYXJcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi5jbS13b3JrZmxvdy1zdGFnZS1pbmRpY2F0b3JbZGF0YS1zdGFnZS10eXBlPVwiY3ljbGVcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLWluLXByb2dyZXNzLWNvbG9yKTtcclxufVxyXG5cclxuLmNtLXdvcmtmbG93LXN0YWdlLWluZGljYXRvcltkYXRhLXN0YWdlLXR5cGU9XCJ0ZXJtaW5hbFwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stY29tcGxldGVkLWNvbG9yKTtcclxufVxyXG5cclxuLyogRGFyayB0aGVtZSBhZGp1c3RtZW50cyAqL1xyXG4udGhlbWUtZGFyayAuY20td29ya2Zsb3ctc3RhZ2UtaW5kaWNhdG9yW2RhdGEtc3RhZ2UtdHlwZT1cImxpbmVhclwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLnRoZW1lLWRhcmsgLmNtLXdvcmtmbG93LXN0YWdlLWluZGljYXRvcltkYXRhLXN0YWdlLXR5cGU9XCJjeWNsZVwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2staW4tcHJvZ3Jlc3MtY29sb3IpO1xyXG59XHJcblxyXG4udGhlbWUtZGFyayAuY20td29ya2Zsb3ctc3RhZ2UtaW5kaWNhdG9yW2RhdGEtc3RhZ2UtdHlwZT1cInRlcm1pbmFsXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1jb21wbGV0ZWQtY29sb3IpO1xyXG59XHJcbiIsICIvKiBEYXRlIFBpY2tlciBDb21wb25lbnQgU3R5bGVzICovXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1pbi13aWR0aDogNTAwcHg7XHJcblx0bWF4LXdpZHRoOiA2MDBweDtcclxufVxyXG5cclxuLmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5kYXRlLXBpY2tlci1tYWluLXBhbmVsIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0zKTtcclxufVxyXG5cclxuLmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5kYXRlLXBpY2tlci1sZWZ0LXBhbmVsIHtcclxuXHRmbGV4OiAxO1xyXG5cdG1pbi13aWR0aDogMjAwcHg7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmRhdGUtcGlja2VyLXJpZ2h0LXBhbmVsIHtcclxuXHRmbGV4OiAxO1xyXG5cdG1pbi13aWR0aDogMjUwcHg7XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAuZGF0ZS1waWNrZXItc2VjdGlvbi10aXRsZSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtYm9sZCk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi8qIFF1aWNrIE9wdGlvbnMgU3R5bGVzICovXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAucXVpY2stb3B0aW9ucy1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0xKTtcclxuXHRtYXgtaGVpZ2h0OiAxOTVweDtcclxuXHRvdmVyZmxvdzogYXV0bztcclxuXHRvdmVyZmxvdy14OiBoaWRkZW47XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAucXVpY2stb3B0aW9uLWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpIHZhcigtLXNpemUtNC0yKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAucXVpY2stb3B0aW9uLWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLnF1aWNrLW9wdGlvbi1pdGVtLnNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAucXVpY2stb3B0aW9uLWl0ZW0uY2xlYXItb3B0aW9uIHtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtMi0yKTtcclxuXHRwYWRkaW5nLXRvcDogdmFyKC0tc2l6ZS0yLTMpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5xdWljay1vcHRpb24taXRlbS5jbGVhci1vcHRpb246aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvci1ob3Zlcik7XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAucXVpY2stb3B0aW9uLWxhYmVsIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LW1lZGl1bSk7XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAucXVpY2stb3B0aW9uLWRhdGUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxufVxyXG5cclxuLmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5xdWljay1vcHRpb24taXRlbS5zZWxlY3RlZCAucXVpY2stb3B0aW9uLWRhdGUge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIENhbGVuZGFyIFN0eWxlcyAqL1xyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZzogMCB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAuY2FsZW5kYXItbmF2LWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiAzMnB4O1xyXG5cdGhlaWdodDogMzJweDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLW5hdi1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLW1vbnRoLXllYXIge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWJvbGQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAuY2FsZW5kYXItZ3JpZCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg3LCAxZnIpO1xyXG5cdGdhcDogMXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5jYWxlbmRhci1kYXktaGVhZGVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtYm9sZCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWRheSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMik7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xyXG5cdG1pbi1oZWlnaHQ6IDMycHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWRheTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAuY2FsZW5kYXItZGF5Lm90aGVyLW1vbnRoIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWRheS50b2RheSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWJvbGQpO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWRheS5zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWJvbGQpO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWRheS50b2RheS5zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBQb3BvdmVyIFN0eWxlcyAqL1xyXG4uZGF0ZS1waWNrZXItcG9wb3Zlci50Zy1tZW51IHtcclxuXHR6LWluZGV4OiAyMDtcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sKTtcclxuXHRtYXgtaGVpZ2h0OiA4MHZoO1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4uZGF0ZS1waWNrZXItcG9wb3Zlci50Zy1tZW51IC5kYXRlLXBpY2tlci1wb3BvdmVyLWNvbnRlbnQge1xyXG5cdHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi8qIE1vYmlsZSBSZXNwb25zaXZlICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAuZGF0ZS1waWNrZXItbWFpbi1wYW5lbCB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdFx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0fVxyXG5cclxuXHQuZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmRhdGUtcGlja2VyLWxlZnQtcGFuZWwge1xyXG5cdFx0Ym9yZGVyLXJpZ2h0OiBub25lO1xyXG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRcdHBhZGRpbmctcmlnaHQ6IDA7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdH1cclxuXHJcblx0LmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIHtcclxuXHRcdG1pbi13aWR0aDogMzAwcHg7XHJcblx0XHRtYXgtd2lkdGg6IDQwMHB4O1xyXG5cdH1cclxuXHJcblx0LmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5jYWxlbmRhci1kYXkge1xyXG5cdFx0bWluLWhlaWdodDogNDBweDtcclxuXHRcdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xyXG5cdH1cclxufVxyXG5cclxuLyogV2lkZ2V0IEVycm9yIFN0eWxlcyAqL1xyXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmRhdGUtcGlja2VyLXdpZGdldC1lcnJvciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTItMik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxufVxyXG4iLCAiLyogUXVpY2sgQ2FwdHVyZSBFbmhhbmNlZCBTdHlsZXMgLSB3aXRoIHNoYWRjbiB0aGVtZSAqL1xyXG5cclxuLyogc2hhZGNuLWluc3BpcmVkIHRoZW1lIGNvbG9ycyBpbnRlZ3JhdGVkIHdpdGggVGFzayBHZW5pdXMgKi9cclxuOnJvb3Qge1xyXG5cdC8qIFRhYiBjb21wb25lbnQgY29sb3JzICovXHJcblx0LS10Zy10YWItYmFja2dyb3VuZDogMCAwJSAxMDAlO1xyXG5cdC0tdGctdGFiLWZvcmVncm91bmQ6IDI0MCAxMCUgMy45JTtcclxuXHQtLXRnLXRhYi1tdXRlZDogMjQwIDQuOCUgOTUuOSU7XHJcblx0LS10Zy10YWItbXV0ZWQtZm9yZWdyb3VuZDogMjQwIDMuOCUgNDYuMSU7XHJcblx0LS10Zy10YWItYm9yZGVyOiAyNDAgNS45JSA5MCU7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIHtcclxuXHQtLXRnLXRhYi1iYWNrZ3JvdW5kOiAyNDAgMTAlIDMuOSU7XHJcblx0LS10Zy10YWItZm9yZWdyb3VuZDogMCAwJSA5OCU7XHJcblx0LS10Zy10YWItbXV0ZWQ6IDI0MCAzLjclIDE1LjklO1xyXG5cdC0tdGctdGFiLW11dGVkLWZvcmVncm91bmQ6IDI0MCA1JSA2NC45JTtcclxuXHQtLXRnLXRhYi1ib3JkZXI6IDI0MCAzLjclIDE1LjklO1xyXG59XHJcblxyXG4vKiBRdWljayBDYXB0dXJlIEhlYWRlciAtIHNoYWRjbiBzdHlsZSAqL1xyXG4ucXVpY2stY2FwdHVyZS1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMTJweCAxNnB4O1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBoc2wodmFyKC0tdGctdGFiLWJvcmRlcikpO1xyXG5cdGJhY2tncm91bmQ6IGhzbCh2YXIoLS10Zy10YWItYmFja2dyb3VuZCkpO1xyXG59XHJcblxyXG4vKiBRdWljayBDYXB0dXJlIFRhYnMgLSBzaGFkY24gc3R5bGUgKi9cclxuLnF1aWNrLWNhcHR1cmUtdGFicyB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0cGFkZGluZzogNHB4O1xyXG5cdGJhY2tncm91bmQ6IGhzbCh2YXIoLS10Zy10YWItbXV0ZWQpKTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0Z2FwOiAycHg7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLXRhYiB7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XHJcblx0Y29sb3I6IGhzbCh2YXIoLS10Zy10YWItbXV0ZWQtZm9yZWdyb3VuZCkpO1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLXRhYjpob3Zlcjpub3QoLmFjdGl2ZSkge1xyXG5cdGNvbG9yOiBoc2wodmFyKC0tdGctdGFiLWZvcmVncm91bmQpKTtcclxufVxyXG5cclxuLnF1aWNrLWNhcHR1cmUtdGFiLmFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZDogaHNsKHZhcigtLXRnLXRhYi1iYWNrZ3JvdW5kKSk7XHJcblx0Y29sb3I6IGhzbCh2YXIoLS10Zy10YWItZm9yZWdyb3VuZCkpO1xyXG5cdGJveC1zaGFkb3c6IDAgMXB4IDNweCAwIHJnYigwIDAgMCAvIDAuMSksIDAgMXB4IDJweCAtMXB4IHJnYigwIDAgMCAvIDAuMSk7XHJcbn1cclxuXHJcbi8qIFF1aWNrIENhcHR1cmUgVGFiIEJ1dHRvbiBJY29uIGFuZCBUZXh0IC0gc2hhZGNuIHN0eWxlICovXHJcbi5xdWljay1jYXB0dXJlLXRhYi1pY29uIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDZweDtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxufVxyXG5cclxuLnF1aWNrLWNhcHR1cmUtdGFiLWljb24gc3ZnIHtcclxuXHR3aWR0aDogMTRweDtcclxuXHRoZWlnaHQ6IDE0cHg7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLXRhYi10ZXh0IHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG59XHJcblxyXG4vKiBRdWljayBDYXB0dXJlIENsZWFyIEJ1dHRvbiAtIHNoYWRjbiBzdHlsZSAqL1xyXG4ucXVpY2stY2FwdHVyZS1jbGVhciB7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgaHNsKHZhcigtLXRnLXRhYi1ib3JkZXIpKTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjE1cyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG5cdGNvbG9yOiBoc2wodmFyKC0tdGctdGFiLW11dGVkLWZvcmVncm91bmQpKTtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLnF1aWNrLWNhcHR1cmUtY2xlYXI6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IGhzbCh2YXIoLS10Zy10YWItbXV0ZWQpKTtcclxuXHRjb2xvcjogaHNsKHZhcigtLXRnLXRhYi1mb3JlZ3JvdW5kKSk7XHJcblx0Ym9yZGVyLWNvbG9yOiBoc2wodmFyKC0tdGctdGFiLW11dGVkLWZvcmVncm91bmQpKTtcclxufVxyXG5cclxuLyogUXVpY2sgQ2FwdHVyZSBDb250ZW50ICovXHJcbi5xdWljay1jYXB0dXJlLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcbn1cclxuXHJcbi8qIFF1aWNrIENhcHR1cmUgRm9vdGVyICovXHJcbi5xdWljay1jYXB0dXJlLWZvb3RlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnF1aWNrLWNhcHR1cmUtZm9vdGVyLWxlZnQsXHJcbi5xdWljay1jYXB0dXJlLWZvb3Rlci1yaWdodCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxufVxyXG5cclxuLnF1aWNrLWNhcHR1cmUtY29udGludWUge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKSB2YXIoLS1zaXplLTQtMyk7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLWNvbnRpbnVlOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLyogRmlsZSBOYW1lIElucHV0IENvbXBvbmVudCAqL1xyXG4uZmlsZS1uYW1lLWlucHV0LWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxufVxyXG5cclxuLmZpbGUtbmFtZS1sYWJlbCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLmZpbGUtbmFtZS1pbnB1dCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uZmlsZS1uYW1lLWlucHV0OmZvY3VzIHtcclxuXHRvdXRsaW5lOiBub25lO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAycHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLmZpbGUtbmFtZS10ZW1wbGF0ZXMge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLnRlbXBsYXRlcy1sYWJlbCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4udGVtcGxhdGUtYnV0dG9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi50ZW1wbGF0ZS1idXR0b24ge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTItMyk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnRlbXBsYXRlLWJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIE1vZGUtc3BlY2lmaWMgYWRqdXN0bWVudHMgKi9cclxuLnF1aWNrLWNhcHR1cmUtbW9kYWwucXVpY2stY2FwdHVyZS1jaGVja2JveCB7XHJcblx0d2lkdGg6IDgwMHB4O1xyXG5cdG1heC13aWR0aDogOTB2dztcclxuXHRoZWlnaHQ6IDYwMHB4O1xyXG5cdG1heC1oZWlnaHQ6IDgwdmg7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLW1vZGFsLnF1aWNrLWNhcHR1cmUtZmlsZSB7XHJcblx0d2lkdGg6IDcwMHB4O1xyXG5cdG1heC13aWR0aDogOTB2dztcclxuXHRoZWlnaHQ6IDUwMHB4O1xyXG5cdG1heC1oZWlnaHQ6IDcwdmg7XHJcbn1cclxuXHJcbi8qIFF1aWNrIENhcHR1cmUgUGFuZWwgKi9cclxuLnF1aWNrLWNhcHR1cmUtcGFuZWwge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4vKiBRdWljayBDYXB0dXJlIEFjdGlvbnMgKi9cclxuLnF1aWNrLWNhcHR1cmUtYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0xKTtcclxuXHRtYXJnaW4tbGVmdDogYXV0bztcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1hY3Rpb25zIC5xdWljay1hY3Rpb24tYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1hY3Rpb25zIC5xdWljay1hY3Rpb24tYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1hY3Rpb25zIC5xdWljay1hY3Rpb24tYnV0dG9uLmFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBNaW5pbWFsIFF1aWNrIENhcHR1cmUgTW9kYWwgKi9cclxuLnF1aWNrLWNhcHR1cmUtbW9kYWwubWluaW1hbCB7XHJcblx0bWF4LXdpZHRoOiA2MDBweDtcclxuXHRtaW4td2lkdGg6IDUwMHB4O1xyXG5cdG1heC1oZWlnaHQ6IDMwMHB4O1xyXG59XHJcblxyXG4vKiBNaW5pbWFsIFF1aWNrIENhcHR1cmUgVGFyZ2V0IERpc3BsYXkgKi9cclxuLnF1aWNrLWNhcHR1cmUtbWluaW1hbC10YXJnZXQtY29udGFpbmVyIHtcclxuXHRwYWRkaW5nOiA4cHggMTJweDtcclxuXHRiYWNrZ3JvdW5kOiBoc2wodmFyKC0tdGctdGFiLW11dGVkKSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDEycHg7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLW1pbmltYWwtdGFyZ2V0IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA4cHg7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS10YXJnZXQtbGFiZWwge1xyXG5cdGNvbG9yOiBoc2wodmFyKC0tdGctdGFiLW11dGVkLWZvcmVncm91bmQpKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS10YXJnZXQtdmFsdWUge1xyXG5cdGNvbG9yOiBoc2wodmFyKC0tdGctdGFiLWZvcmVncm91bmQpKTtcclxuXHRmbGV4OiAxO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1taW5pbWFsLWZpbGUtaW5wdXQge1xyXG5cdGZsZXg6IDE7XHJcblx0cGFkZGluZzogNHB4IDhweDtcclxuXHRiYWNrZ3JvdW5kOiBoc2wodmFyKC0tdGctdGFiLWJhY2tncm91bmQpKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCBoc2wodmFyKC0tdGctdGFiLWJvcmRlcikpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0Y29sb3I6IGhzbCh2YXIoLS10Zy10YWItZm9yZWdyb3VuZCkpO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1taW5pbWFsLWZpbGUtaW5wdXQ6Zm9jdXMge1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4vKiBSZW1vdmVkIG1pbmltYWwgbW9kZSBzdHlsZXMgYXMgbWluaW1hbCBVSSBtb2RlIG5vIGxvbmdlciBleGlzdHMgKi9cclxuXHJcbi5xdWljay1hY3Rpb25zLWxlZnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi5xdWljay1hY3Rpb25zLXJpZ2h0IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4ucXVpY2stYWN0aW9uLWJ1dHRvbi5hY3RpdmUge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi5xdWljay1hY3Rpb24tc2F2ZSB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtNC0yKTtcclxuXHRtaW4td2lkdGg6IDgwcHg7XHJcblx0aGVpZ2h0OiAzMnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxufVxyXG5cclxuLnF1aWNrLWNhcHR1cmUtdGFnLWlucHV0IHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0Ym90dG9tOiA2MHB4O1xyXG5cdGxlZnQ6IDUwJTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcblx0d2lkdGg6IDMwMHB4O1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdGV4dC1zaXplKTtcclxuXHR6LWluZGV4OiAxMDAwO1xyXG59XHJcblxyXG4vKiBNaW5pbWFsIFF1aWNrIENhcHR1cmUgU3VnZ2VzdCAqL1xyXG4ubWluaW1hbC1xdWljay1jYXB0dXJlLXN1Z2dlc3Rpb24ge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTQtMik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcclxuXHRtaW4taGVpZ2h0OiA0MHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLm1pbmltYWwtcXVpY2stY2FwdHVyZS1zdWdnZXN0aW9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLm1pbmltYWwtcXVpY2stY2FwdHVyZS1zdWdnZXN0aW9uLmlzLXNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5taW5pbWFsLXF1aWNrLWNhcHR1cmUtc3VnZ2VzdGlvbi5pcy1zZWxlY3RlZCAuc3VnZ2VzdGlvbi1sYWJlbCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLm1pbmltYWwtcXVpY2stY2FwdHVyZS1zdWdnZXN0aW9uLmlzLXNlbGVjdGVkIC5zdWdnZXN0aW9uLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdG9wYWNpdHk6IDAuODtcclxufVxyXG5cclxuLnN1Z2dlc3Rpb24taWNvbiB7XHJcblx0Zm9udC1zaXplOiAxNnB4O1xyXG5cdG1pbi13aWR0aDogMjBweDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5zdWdnZXN0aW9uLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcbn1cclxuXHJcbi5zdWdnZXN0aW9uLWxhYmVsIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdGV4dC1zaXplKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5zdWdnZXN0aW9uLWRlc2NyaXB0aW9uIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tdG9wOiAycHg7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLWhlYWRlci1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGZsZXgtd3JhcDogbm93cmFwO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS10aXRsZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS10YXJnZXQge1xyXG5cdGZsZXg6IDE7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXRleHQtc2l6ZSk7XHJcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuXHRtaW4td2lkdGg6IDEwMHB4O1xyXG5cdG1heC13aWR0aDogNTAwcHg7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cdHBhZGRpbmc6IDJweCA0cHg7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLXRhcmdldDpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLXRhcmdldDpmb2N1cyB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0b3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0b3V0bGluZS1vZmZzZXQ6IC0xcHg7XHJcblx0b3ZlcmZsb3c6IHZpc2libGU7XHJcblx0dGV4dC1vdmVyZmxvdzogaW5pdGlhbDtcclxufVxyXG5cclxuLnF1aWNrLWNhcHR1cmUtaGludCB7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tYm90dG9tOiA4cHg7XHJcblx0bWFyZ2luLXRvcDogLTRweDtcclxuXHR0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG5cclxuLnF1aWNrLWNhcHR1cmUtZWRpdG9yIHtcclxuXHRtaW4taGVpZ2h0OiAyMDBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1maWxlLXN1Z2dlc3Qge1xyXG5cdG1heC13aWR0aDogNTAwcHg7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLWJ1dHRvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRnYXA6IDhweDtcclxufVxyXG5cclxuLnF1aWNrLWNhcHR1cmUtc3VibWl0LFxyXG4ucXVpY2stY2FwdHVyZS1jYW5jZWwge1xyXG5cdHBhZGRpbmc6IDZweCAxMnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLXN1Ym1pdCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1jYW5jZWwge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1tb2RhbCAubW9kYWwtdGl0bGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdGdhcDogMTBweDtcclxuXHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuLnF1aWNrLWNhcHR1cmUtbW9kYWwtZWRpdG9yIHtcclxuXHRtaW4taGVpZ2h0OiAxNTBweDtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG59XHJcbi5xdWljay1jYXB0dXJlLW1vZGFsLWJ1dHRvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRnYXA6IDEwcHg7XHJcbn1cclxuXHJcbi8qIEZ1bGwtZmVhdHVyZWQgbW9kYWwgc3R5bGVzICovXHJcbi5xdWljay1jYXB0dXJlLW1vZGFsLmZ1bGwge1xyXG5cdHdpZHRoOiA4MHZ3O1xyXG5cdG1heC13aWR0aDogOTAwcHg7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLWxheW91dCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0Z2FwOiAxNnB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDE2cHg7XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLWNvbmZpZy1wYW5lbCB7XHJcblx0ZmxleDogMTtcclxuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0cGFkZGluZy1yaWdodDogMTZweDtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdG1heC13aWR0aDogNDAlO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1lZGl0b3ItcGFuZWwge1xyXG5cdGZsZXg6IDEuNTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbi5xdWljay1jYXB0dXJlLXNlY3Rpb24tdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbWVkaXVtKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS10YXJnZXQtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1tb2RhbC5mdWxsIC5xdWljay1jYXB0dXJlLW1vZGFsLWVkaXRvciB7XHJcblx0bWluLWhlaWdodDogMjAwcHg7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0cGFkZGluZzogOHB4O1xyXG5cdG1hcmdpbi10b3A6IDhweDtcclxufVxyXG5cclxuLyogTW9iaWxlIG9wdGltaXphdGlvbiAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQucXVpY2stY2FwdHVyZS1tb2RhbC5mdWxsIHtcclxuXHRcdHdpZHRoOiA5NXZ3O1xyXG5cdH1cclxuXHJcblx0LnF1aWNrLWNhcHR1cmUtbGF5b3V0IHtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0fVxyXG5cclxuXHQucXVpY2stY2FwdHVyZS1jb25maWctcGFuZWwge1xyXG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdFx0Ym9yZGVyLXJpZ2h0OiBub25lO1xyXG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRcdHBhZGRpbmctcmlnaHQ6IDA7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogMTZweDtcclxuXHRcdG1hcmdpbi1ib3R0b206IDE2cHg7XHJcblx0XHRtYXgtaGVpZ2h0OiA0MCU7XHJcblx0fVxyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1jb25maWctcGFuZWwgLmRldGFpbHMtc3RhdHVzLXNlbGVjdG9yIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ucXVpY2stY2FwdHVyZS1jb25maWctcGFuZWwgLnF1aWNrLWNhcHR1cmUtc3RhdHVzLXNlbGVjdG9yIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxufVxyXG4iLCAiLyogVGFzayBsaXN0ICovXHJcbi50YXNrLWxpc3Qge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4udGFzay1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdHBhZGRpbmc6IDhweCAxNnB4O1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTMpO1xyXG59XHJcblxyXG4udGFzay1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xyXG59XHJcblxyXG4udGFzay1jaGlsZHJlbi1jb250YWluZXIgLnRhc2staXRlbTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4udGFzay1pdGVtLnNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xyXG59XHJcblxyXG4udGFzay1pdGVtLnRhc2stY29tcGxldGVkIC50YXNrLWl0ZW0tY29udGVudCB7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4udGFzay1pdGVtIC5tYXJrZG93bi1ibG9jay5tYXJrZG93bi1yZW5kZXJlciA+IHA6b25seS1jaGlsZCB7XHJcblx0cGFkZGluZzogMDtcclxuXHRtYXJnaW46IDA7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG59XHJcblxyXG4udGFzay1jaGVja2JveCB7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLnRhc2staXRlbS50YXNrLWNvbXBsZXRlZCAudGFzay1jaGVja2JveCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLnRhc2staXRlbS1jb250ZW50IHtcclxuXHRmbGV4OiAxO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnRhc2staXRlbS1jb250YWluZXIge1xyXG5cdGZsZXg6IDE7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG59XHJcblxyXG4vKiBEeW5hbWljIGNvbnRlbnQtbWV0YWRhdGEgY29udGFpbmVyICovXHJcbi50YXNrLWNvbnRlbnQtbWV0YWRhdGEtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4vKiBTaW5nbGUgbGluZSBjb250ZW50IGxheW91dCAtIGhvcml6b250YWwgKi9cclxuLnRhc2stY29udGVudC1tZXRhZGF0YS1jb250YWluZXIuc2luZ2xlLWxpbmUtY29udGVudCB7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4udGFzay1jb250ZW50LW1ldGFkYXRhLWNvbnRhaW5lci5zaW5nbGUtbGluZS1jb250ZW50IC50YXNrLWl0ZW0tY29udGVudCB7XHJcblx0ZmxleDogMTtcclxuXHRtaW4td2lkdGg6IDA7IC8qIEFsbG93IGNvbnRlbnQgdG8gc2hyaW5rICovXHJcbn1cclxuXHJcbi50YXNrLWNvbnRlbnQtbWV0YWRhdGEtY29udGFpbmVyLnNpbmdsZS1saW5lLWNvbnRlbnQgLnRhc2staXRlbS1tZXRhZGF0YSB7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0bWFyZ2luLXRvcDogMDtcclxufVxyXG5cclxuLyogTXVsdGktbGluZSBjb250ZW50IGxheW91dCAtIHZlcnRpY2FsICovXHJcbi50YXNrLWNvbnRlbnQtbWV0YWRhdGEtY29udGFpbmVyLm11bHRpLWxpbmUtY29udGVudCB7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxufVxyXG5cclxuLnRhc2stY29udGVudC1tZXRhZGF0YS1jb250YWluZXIubXVsdGktbGluZS1jb250ZW50IC50YXNrLWl0ZW0tY29udGVudCB7XHJcblx0Lyogd2lkdGg6IDEwMCU7ICovXHJcbn1cclxuXHJcbi50YXNrLWNvbnRlbnQtbWV0YWRhdGEtY29udGFpbmVyLm11bHRpLWxpbmUtY29udGVudCAudGFzay1pdGVtLW1ldGFkYXRhIHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi50YXNrLWl0ZW0tbWV0YWRhdGEge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi50YXNrLWl0ZW0tbWV0YWRhdGE6ZW1wdHkge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi50YXNrLWRhdGUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUtaG92ZXIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTItMyk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdG9wYWNpdHk6IDAuODtcclxufVxyXG5cclxuLnRhc2staXRlbTpob3ZlciAudGFzay1kYXRlIHtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4udGFzay1kYXRlOjpiZWZvcmUge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLXNpemUtMi0yKTtcclxuXHRmb250LXNpemU6IHh4LXNtYWxsO1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxufVxyXG5cclxuLnRnLWthbmJhbi12aWV3IC50YXNrLWRhdGU6OmJlZm9yZSB7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG59XHJcblxyXG4udGFzay1kYXRlLnRhc2stZHVlLWRhdGU6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcdUQ4M0RcdURDQzVcIjtcclxufVxyXG5cclxuLnRhc2stZGF0ZS50YXNrLW92ZXJkdWUge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4udGFzay1kYXRlLnRhc2stZHVlLXRvZGF5IHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1kb2luZy1jb2xvcik7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuLnRhc2stZGF0ZS50YXNrLWR1ZS1zb29uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4udGFzay1kYXRlLnRhc2stc3RhcnQtZGF0ZTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlx1RDgzRFx1REVFQlwiO1xyXG59XHJcblxyXG4udGFzay1kYXRlLnRhc2stY3JlYXRlZC1kYXRlOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXHUyNzk1XCI7XHJcbn1cclxuXHJcbi50YXNrLWRhdGUudGFzay1zY2hlZHVsZWQtZGF0ZTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlx1MjNGM1wiO1xyXG59XHJcblxyXG4udGFzay1kYXRlLnRhc2stZG9uZS1kYXRlOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXHUyNzA1XCI7XHJcbn1cclxuXHJcbi50YXNrLWRhdGUudGFzay1jYW5jZWxsZWQtZGF0ZTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlx1Mjc0Q1wiO1xyXG59XHJcblxyXG4udGFzay1kYXRlLnRhc2stcmVjdXJyZW5jZTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlx1RDgzRFx1REQwMVwiO1xyXG59XHJcblxyXG4udGFzay1kYXRlLnRhc2stb24tY29tcGxldGlvbjo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlx1RDgzQ1x1REZDMVwiO1xyXG59XHJcblxyXG4udGFzay1wcm9qZWN0IHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0zKTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG9wYWNpdHk6IDAuNTtcclxufVxyXG5cclxuLnRhc2stcHJvamVjdDpoYXMoaW5wdXQpIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZS1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnRhc2staXRlbTpob3ZlciAudGFzay1wcm9qZWN0IHtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4udGFzay1wcm9qZWN0OjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXHVEODNEXHVEREMyXHVGRTBGXCI7XHJcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblxyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcbn1cclxuXHJcbi50YXNrLXByb2plY3Q6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4udGFzay1wcmlvcml0eSB7XHJcblx0bWFyZ2luLWxlZnQ6IDhweDtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuLnRhc2stcHJpb3JpdHkucHJpb3JpdHktNSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuLnRhc2stcHJpb3JpdHkucHJpb3JpdHktNCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtd2FybmluZyk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG4udGFzay1wcmlvcml0eS5wcmlvcml0eS0zIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcbi50YXNrLXByaW9yaXR5LnByaW9yaXR5LTIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmcpO1xyXG59XHJcbi50YXNrLXByaW9yaXR5LnByaW9yaXR5LTEge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIE5ldyBmaWVsZCBzdHlsZXMgKi9cclxuLnRhc2stb25jb21wbGV0aW9uIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDJweCA2cHg7XHJcblx0bWFyZ2luLWxlZnQ6IDRweDtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLnRhc2stb25jb21wbGV0aW9uOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGFzay1kZXBlbmRzb24ge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMnB4IDZweDtcclxuXHRtYXJnaW4tbGVmdDogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4udGFzay1kZXBlbmRzb246aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3ItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLnRhc2staWQge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMnB4IDZweDtcclxuXHRtYXJnaW4tbGVmdDogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi50YXNrLWlkOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjY2VudC1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLyogVGFzayB0YWcgc3R5bGVzICovXHJcbi50YXNrLXRhZ3MtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxufVxyXG5cclxuLnRhc2stdGFncy1jb250YWluZXI6ZW1wdHkge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi50YXNrLXRhZyB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS0yLTMpO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3BhY2l0eTogMC43NTtcclxufVxyXG5cclxuLnRhc2staXRlbTpob3ZlciAudGFzay10YWcge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi50YXNrLWl0ZW0tY29udGVudCBwOmhhcyhpbWcpIGltZyB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0d2lkdGg6IG1pbig1MCUsIDIwMHB4KTtcclxufVxyXG4iLCAiLyogSW5saW5lIEVkaXRvciBTdHlsZXMgLSBPcHRpbWl6ZWQgZm9yIFBlcmZvcm1hbmNlIGFuZCBVWCAqL1xyXG4uaW5saW5lLWVkaXRvciB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyogQ29udGVudCBFZGl0b3IgLSBNb3JlIGlubGluZSBhcHBlYXJhbmNlICovXHJcbi5pbmxpbmUtY29udGVudC1lZGl0b3Ige1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1pbi1oZWlnaHQ6IDE4cHg7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDA7XHJcblx0cGFkZGluZzogMnB4IDRweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG5cdGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuXHRsaW5lLWhlaWdodDogaW5oZXJpdDtcclxuXHRyZXNpemU6IG5vbmU7XHJcblx0b3V0bGluZTogbm9uZTtcclxuXHR0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlO1xyXG59XHJcblxyXG4uaW5saW5lLWNvbnRlbnQtZWRpdG9yOmZvY3VzIHtcclxuXHRib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMXB4IDAgMCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4vKiBFbWJlZGRlZCBFZGl0b3IgU3R5bGVzIC0gTW9yZSBzZWFtbGVzcyAqL1xyXG4uaW5saW5lLWVtYmVkZGVkLWVkaXRvci1jb250YWluZXIge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1pbi1oZWlnaHQ6IDE4cHg7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJvcmRlci1yYWRpdXM6IDA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi5pbmxpbmUtZW1iZWRkZWQtZWRpdG9yIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtaW4taGVpZ2h0OiAxOHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4uaW5saW5lLWVtYmVkZGVkLWVkaXRvciAuY20tZWRpdG9yIHtcclxuXHRib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuXHRvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaW5saW5lLWVtYmVkZGVkLWVkaXRvciAuY20tZm9jdXNlZCB7XHJcblx0b3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3ZlcikgIWltcG9ydGFudDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktYWx0KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaW5saW5lLWVtYmVkZGVkLWVkaXRvciAuY20tY29udGVudCB7XHJcblx0cGFkZGluZzogMnB4IDRweDtcclxuXHRtaW4taGVpZ2h0OiAxOHB4O1xyXG5cdGZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG5cdGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuXHRsaW5lLWhlaWdodDogaW5oZXJpdDtcclxufVxyXG5cclxuLmlubGluZS1lbWJlZGRlZC1lZGl0b3IgLmNtLWxpbmUge1xyXG5cdHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi8qIE1ldGFkYXRhIEVkaXRvciBDb250YWluZXIgLSBNb3JlIGNvbXBhY3QgYW5kIGlubGluZSAqL1xyXG4uaW5saW5lLW1ldGFkYXRhLWVkaXRvciB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDRweDtcclxuXHRwYWRkaW5nOiAycHggNnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcblx0bWluLXdpZHRoOiAxMjBweDtcclxuXHRtYXgtd2lkdGg6IDMwMHB4O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR6LWluZGV4OiAxMDA7XHJcbn1cclxuXHJcbi5pbmxpbmUtbWV0YWRhdGEtZWRpdG9yIGlucHV0IHtcclxuXHRib3JkZXI6IHVuc2V0O1xyXG5cdG91dGxpbmU6IHVuc2V0O1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0aGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG59XHJcblxyXG4uaW5saW5lLW1ldGFkYXRhLWVkaXRvciBpbnB1dDpmb2N1cyB7XHJcblx0b3V0bGluZTogdW5zZXQ7XHJcblx0cGFkZGluZzogMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLmlubGluZS1tZXRhZGF0YS1lZGl0b3I6aGFzKGlucHV0KSB7XHJcblx0b3V0bGluZTogdW5zZXQ7XHJcblx0Ym9yZGVyOiAwO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0Ym9yZGVyLXJhZGl1czogdW5zZXQ7XHJcbn1cclxuXHJcbi8qIE1ldGFkYXRhIElucHV0IEZpZWxkcyAtIE1vcmUgY29tcGFjdCAqL1xyXG4uaW5saW5lLXByb2plY3QtaW5wdXQsXHJcbi5pbmxpbmUtdGFncy1pbnB1dCxcclxuLmlubGluZS1jb250ZXh0LWlucHV0LFxyXG4uaW5saW5lLWRhdGUtaW5wdXQsXHJcbi5pbmxpbmUtcmVjdXJyZW5jZS1pbnB1dCB7XHJcblx0ZmxleDogMTtcclxuXHRwYWRkaW5nOiAycHggNHB4O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LWZhbWlseTogaW5oZXJpdDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0bWluLXdpZHRoOiA4MHB4O1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTtcclxufVxyXG5cclxuLmlubGluZS1wcm9qZWN0LWlucHV0OmZvY3VzLFxyXG4uaW5saW5lLXRhZ3MtaW5wdXQ6Zm9jdXMsXHJcbi5pbmxpbmUtY29udGV4dC1pbnB1dDpmb2N1cyxcclxuLmlubGluZS1kYXRlLWlucHV0OmZvY3VzLFxyXG4uaW5saW5lLXJlY3VycmVuY2UtaW5wdXQ6Zm9jdXMge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi5pbmxpbmUtcHJpb3JpdHktc2VsZWN0IHtcclxuXHRwYWRkaW5nOiAycHggNHB4O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LWZhbWlseTogaW5oZXJpdDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdG1pbi13aWR0aDogODBweDtcclxufVxyXG5cclxuLmlubGluZS1wcmlvcml0eS1zZWxlY3Q6Zm9jdXMge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIEFkZCBNZXRhZGF0YSBCdXR0b24gLSBNb3JlIHN1YnRsZSAqL1xyXG4uYWRkLW1ldGFkYXRhLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRtYXJnaW4tbGVmdDogNHB4O1xyXG59XHJcblxyXG4udGFzay1saXN0IC50YXNrLWl0ZW06bm90KC50cmVlLXRhc2staXRlbSk6aG92ZXIgLmFkZC1tZXRhZGF0YS1idG4ge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi50cmVlLXRhc2staXRlbSAudGFzay1pdGVtLWNvbnRhaW5lcjpob3ZlciAuYWRkLW1ldGFkYXRhLWJ0biB7XHJcblx0b3BhY2l0eTogMTtcclxufVxyXG5cclxuLmFkZC1tZXRhZGF0YS1idG4ge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDIycHg7XHJcblx0aGVpZ2h0OiAyMnB4O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7XHJcblx0LS1pY29uLXNpemU6IDEwcHg7XHJcblx0b3BhY2l0eTogMDtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1hcmdpbjogMDtcclxufVxyXG5cclxuLmFkZC1tZXRhZGF0YS1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0b3BhY2l0eTogMTtcclxufVxyXG5cclxuLmFkZC1tZXRhZGF0YS1idG46YWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZSk7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcclxufVxyXG5cclxuLmFkZC1tZXRhZGF0YS1idG4gc3ZnIHtcclxuXHR3aWR0aDogMTBweDtcclxuXHRoZWlnaHQ6IDEwcHg7XHJcbn1cclxuXHJcbi8qIFNtb290aCB0cmFuc2l0aW9ucyBmb3IgYmV0dGVyIHBlcmZvcm1hbmNlICovXHJcbi5pbmxpbmUtZWRpdG9yICoge1xyXG5cdHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UsXHJcblx0XHRib3gtc2hhZG93IDAuMTVzIGVhc2U7XHJcbn1cclxuXHJcbi8qIEZvY3VzIHN0YXRlcyBmb3IgYmV0dGVyIGFjY2Vzc2liaWxpdHkgKi9cclxuLmlubGluZS1lZGl0b3IgaW5wdXQ6Zm9jdXMsXHJcbi5pbmxpbmUtZWRpdG9yIHRleHRhcmVhOmZvY3VzLFxyXG4uaW5saW5lLWVkaXRvciBzZWxlY3Q6Zm9jdXMge1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcbn1cclxuXHJcbi8qIEVkaXRhYmxlIE1ldGFkYXRhIEl0ZW1zIC0gTW9yZSBzdWJ0bGUgaG92ZXIgZWZmZWN0cyAqL1xyXG4udGFzay1pdGVtLW1ldGFkYXRhIC50YXNrLWRhdGUsXHJcbi50YXNrLWl0ZW0tbWV0YWRhdGEgLnRhc2stcHJvamVjdCxcclxuLnRhc2staXRlbS1tZXRhZGF0YSAudGFzay10YWcge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UsIHRyYW5zZm9ybSAwLjE1cyBlYXNlO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLnRhc2staXRlbS1tZXRhZGF0YSAudGFzay1kYXRlOmhvdmVyLFxyXG4udGFzay1pdGVtLW1ldGFkYXRhIC50YXNrLXByb2plY3Q6aG92ZXIsXHJcbi50YXNrLWl0ZW0tbWV0YWRhdGEgLnRhc2stdGFnOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHR0cmFuc2Zvcm06IG5vbmU7XHJcbn1cclxuXHJcbi8qIFJlbW92ZSB0b29sdGlwIG9uIGhvdmVyIGZvciBiZXR0ZXIgcGVyZm9ybWFuY2UgKi9cclxuLnRhc2staXRlbS1tZXRhZGF0YSAudGFzay1kYXRlOmhvdmVyOjphZnRlcixcclxuLnRhc2staXRlbS1tZXRhZGF0YSAudGFzay1wcm9qZWN0OmhvdmVyOjphZnRlcixcclxuLnRhc2staXRlbS1tZXRhZGF0YSAudGFzay10YWc6aG92ZXI6OmFmdGVyIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiBDb250ZW50IEVkaXRhYmxlIEhvdmVyIC0gTW9yZSBzdWJ0bGUgKi9cclxuLnRhc2staXRlbS1jb250ZW50IHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlO1xyXG59XHJcblxyXG4vKiBBbmltYXRpb24gZm9yIHNtb290aCB0cmFuc2l0aW9ucyAtIE9wdGltaXplZCAqL1xyXG4uaW5saW5lLW1ldGFkYXRhLWVkaXRvciB7XHJcblx0YW5pbWF0aW9uOiBmYWRlSW5TY2FsZSAwLjE1cyBlYXNlLW91dDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW5TY2FsZSB7XHJcblx0ZnJvbSB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcblx0fVxyXG59XHJcblxyXG4vKiBQcmV2ZW50IGxheW91dCBzaGlmdCBkdXJpbmcgZWRpdGluZyAqL1xyXG4uaW5saW5lLWVkaXRvci1wbGFjZWhvbGRlciB7XHJcblx0bWluLWhlaWdodDogMWVtO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBhZGp1c3RtZW50cyAtIFNpbXBsaWZpZWQgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0LmlubGluZS1wcm9qZWN0LWlucHV0LFxyXG5cdC5pbmxpbmUtdGFncy1pbnB1dCxcclxuXHQuaW5saW5lLWNvbnRleHQtaW5wdXQsXHJcblx0LmlubGluZS1yZWN1cnJlbmNlLWlucHV0IHtcclxuXHRcdG1pbi13aWR0aDogMTAwcHg7XHJcblx0XHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0fVxyXG5cclxuXHQuaW5saW5lLW1ldGFkYXRhLWVkaXRvciB7XHJcblx0XHRtYXgtd2lkdGg6IDI1MHB4O1xyXG5cdH1cclxufVxyXG5cclxuLyogSGlnaCBjb250cmFzdCBtb2RlIHN1cHBvcnQgKi9cclxuQG1lZGlhIChwcmVmZXJzLWNvbnRyYXN0OiBoaWdoKSB7XHJcblx0LmlubGluZS1jb250ZW50LWVkaXRvcixcclxuXHQuaW5saW5lLWVtYmVkZGVkLWVkaXRvciAuY20tZWRpdG9yIHtcclxuXHRcdGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcclxuXHR9XHJcblxyXG5cdC5pbmxpbmUtbWV0YWRhdGEtZWRpdG9yIHtcclxuXHRcdGJvcmRlci13aWR0aDogMnB4O1xyXG5cdH1cclxufVxyXG5cclxuLyogUmVkdWNlZCBtb3Rpb24gc3VwcG9ydCAqL1xyXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xyXG5cdC5pbmxpbmUtZWRpdG9yICosXHJcblx0LnRhc2staXRlbS1tZXRhZGF0YSAudGFzay1kYXRlLFxyXG5cdC50YXNrLWl0ZW0tbWV0YWRhdGEgLnRhc2stcHJvamVjdCxcclxuXHQudGFzay1pdGVtLW1ldGFkYXRhIC50YXNrLXRhZyxcclxuXHQudGFzay1pdGVtLWNvbnRlbnQsXHJcblx0LmFkZC1tZXRhZGF0YS1idG4ge1xyXG5cdFx0dHJhbnNpdGlvbjogbm9uZTtcclxuXHR9XHJcblxyXG5cdC5pbmxpbmUtbWV0YWRhdGEtZWRpdG9yIHtcclxuXHRcdGFuaW1hdGlvbjogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIE5ldyBmaWVsZCBpbnB1dCBzdHlsZXMgKi9cclxuLmlubGluZS1kZXBlbmRzb24taW5wdXQsXHJcbi5pbmxpbmUtaWQtaW5wdXQge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1pbi13aWR0aDogMjAwcHg7XHJcblx0cGFkZGluZzogNHB4IDhweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LWZhbWlseTogaW5oZXJpdDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0dHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UsIGJveC1zaGFkb3cgMC4xNXMgZWFzZTtcclxufVxyXG5cclxuLmlubGluZS1kZXBlbmRzb24taW5wdXQ6Zm9jdXMsXHJcbi5pbmxpbmUtaWQtaW5wdXQ6Zm9jdXMge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAycHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLmlubGluZS1kZXBlbmRzb24taW5wdXQ6OnBsYWNlaG9sZGVyLFxyXG4uaW5saW5lLWlkLWlucHV0OjpwbGFjZWhvbGRlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG59XHJcbiIsICIvKiBUcmVlIFZpZXcgc3R5bGVzICovXHJcblxyXG4vKiBUcmVlIGl0ZW0gY29udGFpbmVyICovXHJcbi50cmVlLXRhc2staXRlbSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRwYWRkaW5nOiA4cHggMTZweDtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnRhc2stY2hpbGRyZW4tY29udGFpbmVyIC50YXNrLWl0ZW0udHJlZS10YXNrLWl0ZW0ge1xyXG5cdGJvcmRlci1ib3R0b206IHVuc2V0O1xyXG5cdHBhZGRpbmctdG9wOiB2YXIoLS1zaXplLTItMik7XHJcblx0cGFkZGluZy1ib3R0b206IHZhcigtLXNpemUtMi0yKTtcclxuXHRnYXA6IDA7XHJcbn1cclxuXHJcbi50YXNrLWl0ZW0udHJlZS10YXNrLWl0ZW0ge1xyXG5cdGdhcDogMDtcclxufVxyXG5cclxuLnRyZWUtdGFzay1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xyXG59XHJcblxyXG4udHJlZS10YXNrLWl0ZW0uc2VsZWN0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlKTtcclxufVxyXG5cclxuLnRyZWUtdGFzay1pdGVtLmNvbXBsZXRlZCB7XHJcblx0b3BhY2l0eTogMC43O1xyXG59XHJcblxyXG4vKiBUYXNrIGNvbnRlbnQgcm93IChjb250YWlucyB0aGUgbWFpbiB0YXNrIGNvbnRlbnQpICovXHJcbi50cmVlLXRhc2staXRlbSA+IGRpdjpmaXJzdC1vZi10eXBlIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdGdhcDogNnB4O1xyXG59XHJcblxyXG4vKiBJbmRlbnRhdGlvbiBmb3IgaGllcmFyY2h5ICovXHJcbi50YXNrLWluZGVudCB7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi50YXNrLWl0ZW0udHJlZS10YXNrLWl0ZW0gLnRhc2stZXhwYW5kLXRvZ2dsZSB7XHJcblx0cGFkZGluZy10b3A6IHZhcigtLXNpemUtMi0yKTtcclxufVxyXG5cclxuLnRhc2staXRlbSAudGFzay1jaGVja2JveCB7XHJcblx0cGFkZGluZy10b3A6IHZhcigtLXNpemUtMi0yKTtcclxufVxyXG5cclxuLyogRXhwYW5kL2NvbGxhcHNlIHRvZ2dsZSAqL1xyXG4udGFzay1leHBhbmQtdG9nZ2xlIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi50YXNrLWV4cGFuZC10b2dnbGU6aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi8qIFRhc2sgY2hlY2tib3ggKi9cclxuLnRhc2staXRlbS50cmVlLXRhc2staXRlbSAudGFzay1jaGVja2JveCB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR3aWR0aDogMTZweDtcclxuXHRoZWlnaHQ6IDE2cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4udGFzay1pdGVtLnRyZWUtdGFzay1pdGVtIC50YXNrLWNoZWNrYm94OmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG59XHJcblxyXG4udGFzay1pdGVtLnRyZWUtdGFzay1pdGVtIC50YXNrLWNoZWNrYm94LmNoZWNrZWQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIFRhc2sgY29udGVudCAqL1xyXG4udGFzay1jb250ZW50IHtcclxuXHRmbGV4LWdyb3c6IDE7XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG5cclxuLnRyZWUtdGFzay1pdGVtLmNvbXBsZXRlZCAudGFzay1jb250ZW50IHtcclxuXHR0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi8qIER5bmFtaWMgY29udGVudC1tZXRhZGF0YSBjb250YWluZXIgZm9yIHRyZWUgdmlldyAqL1xyXG4udHJlZS10YXNrLWl0ZW0gLnRhc2stY29udGVudC1tZXRhZGF0YS1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi8qIFNpbmdsZSBsaW5lIGNvbnRlbnQgbGF5b3V0IC0gaG9yaXpvbnRhbCAqL1xyXG4udHJlZS10YXNrLWl0ZW0gLnRhc2stY29udGVudC1tZXRhZGF0YS1jb250YWluZXIuc2luZ2xlLWxpbmUtY29udGVudCB7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4udHJlZS10YXNrLWl0ZW0gLnRhc2stY29udGVudC1tZXRhZGF0YS1jb250YWluZXIuc2luZ2xlLWxpbmUtY29udGVudCAudGFzay1pdGVtLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcblx0bWluLXdpZHRoOiAwOyAvKiBBbGxvdyBjb250ZW50IHRvIHNocmluayAqL1xyXG59XHJcblxyXG4udHJlZS10YXNrLWl0ZW0gLnRhc2stY29udGVudC1tZXRhZGF0YS1jb250YWluZXIuc2luZ2xlLWxpbmUtY29udGVudCAudGFzay1tZXRhZGF0YSB7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0bWFyZ2luLXRvcDogMDtcclxufVxyXG5cclxuLyogTXVsdGktbGluZSBjb250ZW50IGxheW91dCAtIHZlcnRpY2FsICovXHJcbi50cmVlLXRhc2staXRlbSAudGFzay1jb250ZW50LW1ldGFkYXRhLWNvbnRhaW5lci5tdWx0aS1saW5lLWNvbnRlbnQge1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbn1cclxuXHJcbi50cmVlLXRhc2staXRlbSAudGFzay1jb250ZW50LW1ldGFkYXRhLWNvbnRhaW5lci5tdWx0aS1saW5lLWNvbnRlbnQgLnRhc2staXRlbS1jb250ZW50IHtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnRyZWUtdGFzay1pdGVtIC50YXNrLWNvbnRlbnQtbWV0YWRhdGEtY29udGFpbmVyLm11bHRpLWxpbmUtY29udGVudCAudGFzay1tZXRhZGF0YSB7XHJcblx0bWFyZ2luLXRvcDogNHB4O1xyXG59XHJcblxyXG4vKiBUYXNrIG1ldGFkYXRhICovXHJcbi50YXNrLW1ldGFkYXRhIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogOHB4O1xyXG5cdG1hcmdpbi10b3A6IDRweDtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi50YXNrLW1ldGFkYXRhOmVtcHR5IHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4udGFzay1kdWUtZGF0ZS5vdmVyZHVlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi50YXNrLWl0ZW0udHJlZS10YXNrLWl0ZW0gLnRhc2stcHJvamVjdCB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdHBhZGRpbmc6IDFweCA2cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG59XHJcblxyXG4udGFzay1wcmlvcml0eS5wcmlvcml0eS0zIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcbn1cclxuXHJcbi50YXNrLXByaW9yaXR5LnByaW9yaXR5LTIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmcpO1xyXG59XHJcblxyXG4udGFzay1wcmlvcml0eS5wcmlvcml0eS0xIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBOZXcgZmllbGQgc3R5bGVzIGZvciB0cmVlIHZpZXcgKi9cclxuLnRyZWUtdGFzay1pdGVtIC50YXNrLW9uY29tcGxldGlvbiB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAycHggNnB4O1xyXG5cdG1hcmdpbi1sZWZ0OiA0cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4udHJlZS10YXNrLWl0ZW0gLnRhc2stb25jb21wbGV0aW9uOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udHJlZS10YXNrLWl0ZW0gLnRhc2stZGVwZW5kc29uIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDJweCA2cHg7XHJcblx0bWFyZ2luLWxlZnQ6IDRweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLnRyZWUtdGFzay1pdGVtIC50YXNrLWRlcGVuZHNvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4udHJlZS10YXNrLWl0ZW0gLnRhc2staWQge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMnB4IDZweDtcclxuXHRtYXJnaW4tbGVmdDogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi50cmVlLXRhc2staXRlbSAudGFzay1pZDpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY2NlbnQtaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIENoaWxkcmVuIGNvbnRhaW5lciAqL1xyXG4udGFzay1jaGlsZHJlbi1jb250YWluZXIge1xyXG5cdC8qIG1hcmdpbi1sZWZ0OiAyMHB4OyAqL1xyXG5cdG1hcmdpbi10b3A6IDRweDtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyogVmlldyB0b2dnbGUgYnV0dG9uICovXHJcbi52aWV3LXRvZ2dsZS1idG4ge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDI0cHg7XHJcblx0aGVpZ2h0OiAyNHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcbn1cclxuXHJcbi52aWV3LXRvZ2dsZS1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50YXNrLWNoaWxkcmVuLWNvbnRhaW5lcjplbXB0eSB7XHJcblx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbiIsICIvKiBGb3JlY2FzdCBDb21wb25lbnQgU3R5bGVzICovXHJcbi5mb3JlY2FzdC1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRmbGV4OiAxO1xyXG59XHJcblxyXG4uZm9yZWNhc3QtaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDE1cHg7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLmZvcmVjYXN0LXRpdGxlLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4uZm9yZWNhc3QtdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiAxLjJlbTtcclxufVxyXG5cclxuLmZvcmVjYXN0LWNvdW50IHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tdG9wOiA0cHg7XHJcbn1cclxuXHJcbi5mb3JlY2FzdC1hY3Rpb25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5mb3JlY2FzdC1zZXR0aW5ncyB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdG9wYWNpdHk6IDAuNztcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcclxuXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4uZm9yZWNhc3Qtc2V0dGluZ3M6aG92ZXIge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi5mb3JlY2FzdC1mb2N1cy1iYXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0cGFkZGluZzogMTBweCAxNXB4O1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Z2FwOiAxMHB4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5mb2N1cy1pbnB1dCB7XHJcblx0ZmxleDogMTtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi51bmZvY3VzLWJ1dHRvbiB7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyOiBub25lO1xyXG59XHJcblxyXG4udW5mb2N1cy1idXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIE1haW4gY29udGVudCBsYXlvdXQgd2l0aCB0d28gY29sdW1ucyAqL1xyXG4uZm9yZWNhc3QtY29udGVudCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5mb3JlY2FzdC1sZWZ0LWNvbHVtbiB7XHJcblx0d2lkdGg6IDM2MHB4O1xyXG5cdG1pbi13aWR0aDogMzYwcHg7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7XHJcbn1cclxuXHJcbi5mb3JlY2FzdC1yaWdodC1jb2x1bW4ge1xyXG5cdGZsZXg6IDE7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi5mb3JlY2FzdC10YXNrLWxpc3Qge1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi5mb3JlY2FzdC1jYWxlbmRhci1zZWN0aW9uIHtcclxuXHRwYWRkaW5nOiAxMHB4IDA7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi8qIFN0YXRzIEJhciAqL1xyXG4uZm9yZWNhc3Qtc3RhdHMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcbi5zdGF0LWl0ZW0ge1xyXG5cdGZsZXg6IDE7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMTBweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uc3RhdC1pdGVtOjphZnRlciB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0Ym90dG9tOiAwO1xyXG5cdGxlZnQ6IDEwJTtcclxuXHR3aWR0aDogODAlO1xyXG5cdGhlaWdodDogM3B4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4uc3RhdC1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLnN0YXQtaXRlbS5hY3RpdmU6OmFmdGVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGFuaW1hdGlvbjogY29sb3ItcHVsc2UgMS41cyBpbmZpbml0ZSBhbHRlcm5hdGU7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgY29sb3ItcHVsc2Uge1xyXG5cdDAlIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudC0xKSAhaW1wb3J0YW50O1xyXG5cdFx0b3BhY2l0eTogMC43O1xyXG5cdH1cclxuXHQxMDAlIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudC0yKSAhaW1wb3J0YW50O1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcbn1cclxuXHJcbi5zdGF0LWl0ZW0udGctcGFzdC1kdWU6OmFmdGVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHRvcGFjaXR5OiAwLjc7XHJcbn1cclxuXHJcbi5zdGF0LWl0ZW0udGctdG9kYXk6OmFmdGVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdG9wYWNpdHk6IDAuNztcclxufVxyXG5cclxuLnN0YXQtaXRlbS50Zy1mdXR1cmU6OmFmdGVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0b3BhY2l0eTogMC43O1xyXG59XHJcblxyXG4uc3RhdC1jb3VudCB7XHJcblx0Zm9udC1zaXplOiAxLjVlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4uc3RhdC1pdGVtLnRnLXBhc3QtZHVlIC5zdGF0LWNvdW50IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcbn1cclxuXHJcbi5zdGF0LWxhYmVsIHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogRHVlIFNvb24gU2VjdGlvbiAqL1xyXG4uZm9yZWNhc3QtZHVlLXNvb24tc2VjdGlvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XHJcbn1cclxuXHJcbi5kdWUtc29vbi1oZWFkZXIge1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRwYWRkaW5nOiA1cHggMTVweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xyXG59XHJcblxyXG4uZHVlLXNvb24taXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0cGFkZGluZzogOHB4IDE1cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5kdWUtc29vbi1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXItbGVmdC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLmR1ZS1zb29uLWRhdGUge1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi5kdWUtc29vbi1jb3VudCB7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0cGFkZGluZzogMnB4IDZweDtcclxuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLmR1ZS1zb29uLWVtcHR5IHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMTVweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi5kYXRlLXNlY3Rpb24taGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogOHB4IDE1cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcclxufVxyXG5cclxuLmRhdGUtc2VjdGlvbi1oZWFkZXIgLnNlY3Rpb24tdG9nZ2xlIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDhweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5kYXRlLXNlY3Rpb24taGVhZGVyIC5zZWN0aW9uLXRpdGxlIHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbi5kYXRlLXNlY3Rpb24taGVhZGVyIC5zZWN0aW9uLWNvdW50IHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogMTBweDtcclxuXHRoZWlnaHQ6IHZhcigtLXNpemUtNC01KTtcclxuXHR3aWR0aDogdmFyKC0tc2l6ZS00LTUpO1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIE92ZXJkdWUgc2VjdGlvbiBzdHlsaW5nICovXHJcbi50YXNrLWRhdGUtc2VjdGlvbi5vdmVyZHVlIC5kYXRlLXNlY3Rpb24taGVhZGVyIHtcclxuXHRib3JkZXItbGVmdDogM3B4IHNvbGlkIHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4udGFzay1kYXRlLXNlY3Rpb24ub3ZlcmR1ZSAuc2VjdGlvbi10aXRsZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4udGFzay1kYXRlLXNlY3Rpb24ub3ZlcmR1ZSAuc2VjdGlvbi1jb3VudCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG4uc2VjdGlvbi10YXNrcyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4uZm9yZWNhc3QtZW1wdHktc3RhdGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0aGVpZ2h0OiAxMDBweDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbi5mb3JlY2FzdC1zaWRlYmFyLXRvZ2dsZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG59XHJcblxyXG4uaXMtcGhvbmVcclxuXHQuZm9yZWNhc3QtaGVhZGVyOmhhcyguZm9yZWNhc3Qtc2lkZWJhci10b2dnbGUpXHJcblx0LmZvcmVjYXN0LXRpdGxlLWNvbnRhaW5lciB7XHJcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1zaXplLTQtMTApO1xyXG59XHJcblxyXG4vKiBGb3JlY2FzdCBWaWV3IC0gTW9iaWxlICovXHJcbi5pcy1waG9uZSAuZm9yZWNhc3QtY29udGFpbmVyIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmlzLXBob25lIC5mb3JlY2FzdC1sZWZ0LWNvbHVtbiB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IDA7XHJcblx0dG9wOiAwO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR6LWluZGV4OiAxMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLWluLW91dDtcclxuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAuZm9yZWNhc3QtbGVmdC1jb2x1bW4uaXMtdmlzaWJsZSB7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLmZvcmVjYXN0LXNpZGViYXItdG9nZ2xlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAuZm9yZWNhc3Qtc2lkZWJhci1jbG9zZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMTBweDtcclxuXHRyaWdodDogMTBweDtcclxuXHR6LWluZGV4OiAxNTtcclxuXHR3aWR0aDogMjhweDtcclxuXHRoZWlnaHQ6IDI4cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbn1cclxuXHJcbi8qIEFkZCBvdmVybGF5IHdoZW4gbGVmdCBjb2x1bW4gaXMgdmlzaWJsZSBvbiBtb2JpbGUgKi9cclxuLmlzLXBob25lIC50YXNrLWdlbml1cy1jb250YWluZXI6aGFzKC5mb3JlY2FzdC1sZWZ0LWNvbHVtbi5pcy12aXNpYmxlKTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1jb3Zlcik7XHJcblx0b3BhY2l0eTogMC41O1xyXG5cdHotaW5kZXg6IDU7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xyXG59XHJcbiIsICIvKiBDYWxlbmRhciBDb21wb25lbnQgU3R5bGVzICovXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0cGFkZGluZy1ib3R0b206IDEwcHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDhweCAxNXB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci10aXRsZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogNXB4O1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAubWluaS1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLW1vbnRoIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDVweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci15ZWFyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItbmF2IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA4cHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItbmF2LWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiAyNHB4O1xyXG5cdGhlaWdodDogMjRweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdG9wYWNpdHk6IDAuNztcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1uYXYtYnRuOmhvdmVyIHtcclxuXHRvcGFjaXR5OiAxO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci10b2RheS1idG4ge1xyXG5cdHBhZGRpbmc6IDJweCA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAubWluaS1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXRvZGF5LWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAubWluaS1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWdyaWQge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTtcclxuXHRnYXA6IDFweDtcclxuXHRwYWRkaW5nOiAwIDEwcHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWhlYWRlciB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdHBhZGRpbmc6IDNweCAwO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0bWFyZ2luLWJvdHRvbTogM3B4O1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlld1xyXG5cdC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lclxyXG5cdC5jYWxlbmRhci1kYXktaGVhZGVyLmNhbGVuZGFyLXdlZWtlbmQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIEFkanVzdCBncmlkIGxheW91dCB3aGVuIHdlZWtlbmRzIGFyZSBoaWRkZW4gaW4gbWluaSBjYWxlbmRhciAqL1xyXG4udGFzay1nZW5pdXMtdmlldyAubWluaS1jYWxlbmRhci1jb250YWluZXIuaGlkZS13ZWVrZW5kcyAuY2FsZW5kYXItZ3JpZCB7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTsgLyogNSBjb2x1bW5zIGluc3RlYWQgb2YgNyB3aGVuIHdlZWtlbmRzIGhpZGRlbiAqL1xyXG59XHJcblxyXG4vKiBOb3RlOiBXZWVrZW5kIGVsZW1lbnRzIGFyZSBub3QgY3JlYXRlZCB3aGVuIGhpZGVXZWVrZW5kcyBpcyBlbmFibGVkLFxyXG4gICBzbyBubyBoaWRpbmcgcnVsZXMgYXJlIG5lZWRlZC4gVGhlIGdyaWQgbGF5b3V0IGFkanVzdG1lbnRzIGFib3ZlIGFyZSBzdWZmaWNpZW50LiAqL1xyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXkge1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRwYWRkaW5nOiAxcHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcblx0aGVpZ2h0OiBhdXRvO1xyXG5cdG1pbi1oZWlnaHQ6IHZhcigtLXNpemUtNC0xMik7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5OmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXkuc2VsZWN0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXkudG9kYXkge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXkucGFzdC1kdWUge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXkub3RoZXItbW9udGgge1xyXG5cdG9wYWNpdHk6IDAuNTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktbnVtYmVyIHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdHBhZGRpbmc6IDFweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktY291bnQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRmb250LXNpemU6IDAuN2VtO1xyXG5cdHBhZGRpbmc6IDFweCA0cHg7XHJcblx0bWFyZ2luOiAxcHggYXV0byAwO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHR3aWR0aDogZml0LWNvbnRlbnQ7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWNvdW50Lmhhcy1wcmlvcml0eSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxNDAwcHgpIHtcclxuXHQudGFzay1nZW5pdXMtY29udGFpbmVyOmhhcygudGFzay1kZXRhaWxzLnZpc2libGUpXHJcblx0XHQubWluaS1jYWxlbmRhci1jb250YWluZXJcclxuXHRcdC5mb3JlY2FzdC1sZWZ0LWNvbHVtbiB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxufVxyXG4iLCAiLyogVGFncyBWaWV3IFN0eWxlcyAqL1xyXG4udGFncy1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRmbGV4OiAxO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldzpoYXMoLnRhc2stZGV0YWlscy52aXNpYmxlKSAudGFncy1sZWZ0LWNvbHVtbiB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLnRhZ3MtY29udGVudCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLm11bHRpLXNlbGVjdC1tb2RlIC50YWdzLW11bHRpLXNlbGVjdC1idG4ge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG59XHJcblxyXG4udGFncy1sZWZ0LWNvbHVtbiB7XHJcblx0d2lkdGg6IG1heCgxMjBweCwgMzAlKTtcclxuXHRtaW4td2lkdGg6IG1pbigxMjBweCwgMzAlKTtcclxuXHRtYXgtd2lkdGg6IDQwMHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnRhZ3MtcmlnaHQtY29sdW1uIHtcclxuXHRmbGV4OiAxO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4udGFncy1zaWRlYmFyLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtMTApO1xyXG59XHJcblxyXG4udGFncy1zaWRlYmFyLXRpdGxlIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG5cclxuLnRhZ3MtbXVsdGktc2VsZWN0LWJ0biB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4udGFncy1tdWx0aS1zZWxlY3QtYnRuOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGFncy1zaWRlYmFyLWxpc3Qge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0xKTtcclxufVxyXG5cclxuLnRhZy1saXN0LWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiA0cHggMTJweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxufVxyXG5cclxuLnRhZy1saXN0LWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGFnLWxpc3QtaXRlbS5zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUpO1xyXG59XHJcblxyXG4udGFnLWluZGVudCB7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi50YWctaWNvbiB7XHJcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTItMik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0LS1pY29uLXNpemU6IHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLnRhZy1uYW1lIHtcclxuXHRmbGV4OiAxO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLnRhZy1jb3VudCB7XHJcblx0bWFyZ2luLWxlZnQ6IDhweDtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogMTBweDtcclxuXHRwYWRkaW5nOiAxcHggNnB4O1xyXG59XHJcblxyXG4udGFnLWNoaWxkcmVuIHtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnRhZ3MtdGFzay1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC00KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGhlaWdodDogdmFyKC0tc2l6ZS00LTEwKTtcclxufVxyXG5cclxuLnRhZ3MtdGFzay10aXRsZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRmb250LXNpemU6IDE2cHg7XHJcbn1cclxuXHJcbi50YWdzLXRhc2stY291bnQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnRhZ3MtdGFzay1saXN0IHtcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi50YWdzLWVtcHR5LXN0YXRlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0cGFkZGluZzogMTZweDtcclxufVxyXG5cclxuLnRhZy1zZWN0aW9uLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDhweCAxNXB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7XHJcbn1cclxuXHJcbi50YWctc2VjdGlvbi1oZWFkZXIgLnNlY3Rpb24tdG9nZ2xlIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDhweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi50YWctc2VjdGlvbi1oZWFkZXIgLnNlY3Rpb24tdGl0bGUge1xyXG5cdGZsZXg6IDE7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLnRhZy1zZWN0aW9uLWhlYWRlciAuc2VjdGlvbi1jb3VudCB7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmc6IDJweCA2cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogMTBweDtcclxuXHRoZWlnaHQ6IHZhcigtLXNpemUtNC01KTtcclxuXHR3aWR0aDogdmFyKC0tc2l6ZS00LTUpO1xyXG59XHJcblxyXG4vKiBUYWdzIFZpZXcgLSBNb2JpbGUgKi9cclxuLmlzLXBob25lIC50YWdzLWNvbnRhaW5lciB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5pcy1waG9uZSAudGFncy1sZWZ0LWNvbHVtbiB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IDA7XHJcblx0dG9wOiAwO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR6LWluZGV4OiAxMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLWluLW91dDtcclxuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAudGFncy1sZWZ0LWNvbHVtbi5pcy12aXNpYmxlIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAudGFncy1zaWRlYmFyLXRvZ2dsZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnRhZ3Mtc2lkZWJhci1jbG9zZSB7XHJcblx0LS1pY29uLXNpemU6IHZhcigtLXNpemUtNC00KTtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cmlnaHQ6IDEwcHg7XHJcblx0ei1pbmRleDogMTU7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4vKiBBZGQgb3ZlcmxheSB3aGVuIGxlZnQgY29sdW1uIGlzIHZpc2libGUgb24gbW9iaWxlICovXHJcbi5pcy1waG9uZSAudGFncy1jb250YWluZXI6aGFzKC50YWdzLWxlZnQtY29sdW1uLmlzLXZpc2libGUpOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWNvdmVyKTtcclxuXHRvcGFjaXR5OiAwLjU7XHJcblx0ei1pbmRleDogNTtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAudGFncy1zaWRlYmFyLWhlYWRlcjpoYXMoLnRhZ3Mtc2lkZWJhci1jbG9zZSkge1xyXG5cdHBhZGRpbmctcmlnaHQ6IHZhcigtLXNpemUtNC0xMik7XHJcbn1cclxuIiwgIi8qIFByb2plY3RzIFZpZXcgU3R5bGVzICovXHJcbi5wcm9qZWN0cy1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnByb2plY3RzLWNvbnRlbnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5wcm9qZWN0cy1sZWZ0LWNvbHVtbiB7XHJcblx0d2lkdGg6IG1heCgxMjBweCwgMzAlKTtcclxuXHRtaW4td2lkdGg6IG1pbigxMjBweCwgMzAlKTtcclxuXHRtYXgtd2lkdGg6IDMwMHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLmlzLXBob25lIC5wcm9qZWN0cy1sZWZ0LWNvbHVtbiB7XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ucHJvamVjdHMtcmlnaHQtY29sdW1uIHtcclxuXHRmbGV4OiAxO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ucHJvamVjdHMtc2lkZWJhci1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC00KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGhlaWdodDogdmFyKC0tc2l6ZS00LTEwKTtcclxufVxyXG5cclxuLnByb2plY3RzLXNpZGViYXItdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG59XHJcblxyXG4ucHJvamVjdHMtc2lkZWJhci1oZWFkZXItYnRuLWdyb3VwIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5tdWx0aS1zZWxlY3QtbW9kZSAucHJvamVjdHMtbXVsdGktc2VsZWN0LWJ0biB7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcbn1cclxuXHJcbi5wcm9qZWN0cy10cmVlLXRvZ2dsZS1idG4ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLnByb2plY3RzLW11bHRpLXNlbGVjdC1idG4ge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLnByb2plY3RzLW11bHRpLXNlbGVjdC1idG46aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5wcm9qZWN0cy1zaWRlYmFyLWxpc3Qge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ucHJvamVjdC1saXN0LWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLnByb2plY3QtbGlzdC1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLnByb2plY3QtbGlzdC1pdGVtLnNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi5wcm9qZWN0LWljb24ge1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4ucHJvamVjdC1uYW1lIHtcclxuXHRmbGV4OiAxO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLnByb2plY3QtY291bnQge1xyXG5cdG1hcmdpbi1sZWZ0OiA4cHg7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcblx0cGFkZGluZzogMXB4IDZweDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLCBjb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi8qIFByb2dyZXNzIGNvdW50IHN0eWxpbmcgd2hlbiBzaG93aW5nIGNvbXBsZXRlZC90b3RhbCAqL1xyXG4ucHJvamVjdC1jb3VudC5wYXJ0aWFsbHktY29tcGxldGVkIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzKTtcclxufVxyXG5cclxuLnByb2plY3QtY291bnQuYWxsLWNvbXBsZXRlZCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4ucHJvamVjdC1jb3VudC5oYXMtcHJvZ3Jlc3Mge1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxufVxyXG5cclxuLyogU2VsZWN0ZWQgc3RhdGUgb3ZlcnJpZGVzICovXHJcbi5wcm9qZWN0LWxpc3QtaXRlbS5zZWxlY3RlZCAucHJvamVjdC1jb3VudCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLnByb2plY3QtbGlzdC1pdGVtLnNlbGVjdGVkIC5wcm9qZWN0LWNvdW50LmFsbC1jb21wbGV0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcclxufVxyXG5cclxuLnByb2plY3RzLXRhc2staGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKSB2YXIoLS1zaXplLTQtNCk7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRtaW4taGVpZ2h0OiB2YXIoLS1zaXplLTQtMTApO1xyXG59XHJcblxyXG4ucHJvamVjdHMtaGVhZGVyLW1haW4tY29udGVudCB7XHJcblx0ZmxleDogMTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5wcm9qZWN0cy1oZWFkZXItdG9wLXJvdyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5wcm9qZWN0cy1oZWFkZXItdG9wLXJpZ2h0IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi8qIFByb2dyZXNzIGJhciBzdHlsZXMgZm9yIFByb2plY3RzIHZpZXcgKi9cclxuLnByb2plY3RzLWhlYWRlci1wcm9ncmVzcyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogNnB4O1xyXG5cdG1hcmdpbi10b3A6IDRweDtcclxufVxyXG5cclxuLyogQWRqdXN0IHRoZSBleGlzdGluZyBwcm9ncmVzcyBiYXIgc3R5bGVzIHdoZW4gdXNlZCBpbiBwcm9qZWN0cyB2aWV3ICovXHJcbi5wcm9qZWN0cy1oZWFkZXItcHJvZ3Jlc3MgLmNtLXRhc2stcHJvZ3Jlc3MtYmFyIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogOHB4O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ucHJvamVjdHMtaGVhZGVyLXByb2dyZXNzIC5wcm9ncmVzcy1iYXItaW5saW5lLWJhY2tncm91bmQge1xyXG5cdGZsZXg6IDE7XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ucHJvamVjdHMtaGVhZGVyLXByb2dyZXNzIC5wcm9ncmVzcy1zdGF0dXMge1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5wcm9qZWN0cy10YXNrLXRpdGxlIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGZvbnQtc2l6ZTogMTZweDtcclxufVxyXG5cclxuLnByb2plY3RzLXRhc2stY291bnQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnByb2plY3RzLXRhc2stbGlzdCB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG59XHJcblxyXG4ucHJvamVjdHMtZW1wdHktc3RhdGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRwYWRkaW5nOiAxNnB4O1xyXG59XHJcblxyXG4vKiBQcm9qZWN0cyBWaWV3IC0gTW9iaWxlICovXHJcbi5pcy1waG9uZSAucHJvamVjdHMtbGVmdC1jb2x1bW4ge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiAwO1xyXG5cdHRvcDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0ei1pbmRleDogMTA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XHJcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnByb2plY3RzLWxlZnQtY29sdW1uLmlzLXZpc2libGUge1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxufVxyXG5cclxuLmlzLXBob25lIC5wcm9qZWN0cy1zaWRlYmFyLXRvZ2dsZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnByb2plY3RzLXNpZGViYXItY2xvc2Uge1xyXG5cdC0taWNvbi1zaXplOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHJpZ2h0OiAxMHB4O1xyXG5cdHotaW5kZXg6IDE1O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLyogQWRkIG92ZXJsYXkgd2hlbiBsZWZ0IGNvbHVtbiBpcyB2aXNpYmxlIG9uIG1vYmlsZSAqL1xyXG4uaXMtcGhvbmUgLnByb2plY3RzLWNvbnRhaW5lcjpoYXMoLnByb2plY3RzLWxlZnQtY29sdW1uLmlzLXZpc2libGUpOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWNvdmVyKTtcclxuXHRvcGFjaXR5OiAwLjU7XHJcblx0ei1pbmRleDogNTtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi8qIEFkZCBwb3NpdGlvbiByZWxhdGl2ZSB0byBjb250YWluZXIgZm9yIGFic29sdXRlIHBvc2l0aW9uaW5nIGNvbnRleHQgKi9cclxuLmlzLXBob25lIC5wcm9qZWN0cy1jb250YWluZXIge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnByb2plY3RzLXNpZGViYXItaGVhZGVyOmhhcygucHJvamVjdHMtc2lkZWJhci1jbG9zZSkge1xyXG5cdHBhZGRpbmctcmlnaHQ6IHZhcigtLXNpemUtNC0xMik7XHJcbn1cclxuXHJcbi8qIFByb2plY3QgaW5mbyBwb3BvdmVyIHN0eWxpbmcgKi9cclxuLnRnLXByb2plY3QtcG9wb3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpO1xyXG5cdHBhZGRpbmc6IDEwcHggMTJweDtcclxuXHRtYXgtd2lkdGg6IDUyMHB4O1xyXG5cdG1heC1oZWlnaHQ6IDYwdmg7XHJcblx0b3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuXHJcbi50Zy1wcm9qZWN0LXByb3BzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiA2cHg7XHJcbn1cclxuXHJcbi8qIEVhY2ggcm93OiBrZXkgb24gdGhlIGxlZnQsIHZhbHVlIG9uIHRoZSByaWdodCAqL1xyXG4udGctcHJvamVjdC1wcm9wcyA+IGRpdiB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCg5MHB4LCAxNjBweCkgMWZyO1xyXG5cdGFsaWduLWl0ZW1zOiBzdGFydDtcclxuXHRjb2x1bW4tZ2FwOiAxMHB4O1xyXG5cdHBhZGRpbmc6IDJweCAwO1xyXG59XHJcblxyXG4vKiBLZXkgY2VsbCAqL1xyXG4udGctcHJvamVjdC1wcm9wcyA+IGRpdiA+IGRpdjpmaXJzdC1jaGlsZCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRsaW5lLWhlaWdodDogMS4zO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLyogVmFsdWUgY2VsbCAqL1xyXG4udGctcHJvamVjdC1wcm9wcyA+IGRpdiA+IGRpdjpsYXN0LWNoaWxkIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcblx0d2hpdGUtc3BhY2U6IHByZS13cmFwO1xyXG5cdHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbn1cclxuXHJcbi8qIEluZm8gYnV0dG9uIHBvbGlzaCAqL1xyXG4ucHJvamVjdHMtcHJvcHMtYnRuIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiB2YXIoLS1pY29uLXNpemUsIDI0cHgpO1xyXG5cdGhlaWdodDogdmFyKC0taWNvbi1zaXplLCAyNHB4KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxufVxyXG4ucHJvamVjdHMtcHJvcHMtYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcbiIsICIvKipcclxuICogUHJvamVjdCBUcmVlIFZpZXcgU3R5bGVzXHJcbiAqL1xyXG5cclxuOnJvb3Qge1xyXG5cdC8qIERlZmF1bHQgdHJlZSBpbmRlbnRhdGlvbiBzaXplIHBlciBsZXZlbCAqL1xyXG5cdC0tdHJlZS1pbmRlbnQtc2l6ZTogMS41cmVtO1xyXG5cdC8qIEd1aWRlIGxpbmUgY29sb3IgKi9cclxuXHQtLXRyZWUtZ3VpZGUtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLyogQ29udGFpbmVyICovXHJcbi5wcm9qZWN0LXRyZWUtY29udGFpbmVyIHtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0b3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuXHJcbi5wcm9qZWN0LXRyZWUge1xyXG5cdHBhZGRpbmc6IDAuNXJlbSAwO1xyXG59XHJcblxyXG4vKiBUcmVlIEl0ZW0gQmFzZSAqL1xyXG4ucHJvamVjdC10cmVlLWl0ZW0ge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxuXHQtLXRyZWUtbGV2ZWw6IDA7IC8qIERlZmF1bHQgbGV2ZWwsIHdpbGwgYmUgb3ZlcnJpZGRlbiBieSBpbmxpbmUgc3R5bGUgKi9cclxufVxyXG5cclxuLnByb2plY3QtdHJlZS1pdGVtLWNvbnRlbnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiA4cHg7XHJcblx0cGFkZGluZy1sZWZ0OiBjYWxjKGNhbGModmFyKC0tdHJlZS1sZXZlbCkgLSAxKSAqIHZhcigtLXRyZWUtaW5kZW50LXNpemUpKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS1jb250ZW50OmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLyogU2VsZWN0ZWQgU3RhdGUgKi9cclxuLnByb2plY3QtdHJlZS1pdGVtLmlzLXNlbGVjdGVkID4gLnByb2plY3QtdHJlZS1pdGVtLWNvbnRlbnQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcclxufVxyXG5cclxuLyogVG9nZ2xlIEJ1dHRvbiAqL1xyXG4ucHJvamVjdC10cmVlLWl0ZW0tdG9nZ2xlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDEuNXJlbTtcclxuXHRoZWlnaHQ6IDEuNXJlbTtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBlYXNlO1xyXG59XHJcblxyXG4ucHJvamVjdC10cmVlLWl0ZW0tdG9nZ2xlOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ucHJvamVjdC10cmVlLWl0ZW0tdG9nZ2xlIHN2ZyB7XHJcblx0d2lkdGg6IDAuODc1cmVtO1xyXG5cdGhlaWdodDogMC44NzVyZW07XHJcbn1cclxuXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS10b2dnbGUtc3BhY2VyIHtcclxuXHR3aWR0aDogMS41cmVtO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4vKiBJY29uICovXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS1pY29uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDEuMjVyZW07XHJcblx0aGVpZ2h0OiAxLjI1cmVtO1xyXG5cdG1hcmdpbi1yaWdodDogMC41cmVtO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogQ29udGVudCBXcmFwcGVyICovXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS1jb250ZW50LXdyYXBwZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0ZmxleDogMTtcclxuXHRtaW4td2lkdGg6IDA7XHJcblx0Z2FwOiAwLjVyZW07XHJcbn1cclxuXHJcbi8qIFByb2plY3QgTmFtZSAqL1xyXG4ucHJvamVjdC10cmVlLWl0ZW0tbmFtZSB7XHJcblx0ZmxleDogMTtcclxuXHRtaW4td2lkdGg6IDA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4vKiBUYXNrIENvdW50cyAqL1xyXG4ucHJvamVjdC10cmVlLWl0ZW0tY291bnRzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAwLjI1cmVtO1xyXG59XHJcblxyXG4ucHJvamVjdC10cmVlLWl0ZW0tY291bnQtZGlyZWN0LFxyXG4ucHJvamVjdC10cmVlLWl0ZW0tY291bnQtdG90YWwge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0bWluLXdpZHRoOiAxLjI1cmVtO1xyXG5cdGhlaWdodDogMS4yNXJlbTtcclxuXHRwYWRkaW5nOiAwIDAuMjVyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4ucHJvamVjdC10cmVlLWl0ZW0tY291bnQtZGlyZWN0IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLCBjb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS1jb3VudC10b3RhbCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLCBjb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi8qIFByb2dyZXNzIGNvdW50IHN0eWxpbmcgZm9yIHRyZWUgdmlldyAqL1xyXG4ucHJvamVjdC10cmVlLWl0ZW0tY291bnQtZGlyZWN0LnBhcnRpYWxseS1jb21wbGV0ZWQsXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS1jb3VudC10b3RhbC5wYXJ0aWFsbHktY29tcGxldGVkIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzKTtcclxufVxyXG5cclxuLnByb2plY3QtdHJlZS1pdGVtLWNvdW50LWRpcmVjdC5hbGwtY29tcGxldGVkLFxyXG4ucHJvamVjdC10cmVlLWl0ZW0tY291bnQtdG90YWwuYWxsLWNvbXBsZXRlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtc3VjY2Vzcyk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4vKiBTZWxlY3RlZCBzdGF0ZSBmb3IgY291bnQgYmFkZ2VzIGluIHRyZWUgKi9cclxuLnByb2plY3QtdHJlZS1pdGVtLmlzLXNlbGVjdGVkIC5wcm9qZWN0LXRyZWUtaXRlbS1jb3VudC1kaXJlY3QuYWxsLWNvbXBsZXRlZCxcclxuLnByb2plY3QtdHJlZS1pdGVtLmlzLXNlbGVjdGVkIC5wcm9qZWN0LXRyZWUtaXRlbS1jb3VudC10b3RhbC5hbGwtY29tcGxldGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1zdWNjZXNzKTtcclxuXHRvcGFjaXR5OiAwLjk7XHJcbn1cclxuXHJcbi8qIENoaWxkcmVuIENvbnRhaW5lciAqL1xyXG4ucHJvamVjdC10cmVlLWNoaWxkcmVuIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi8qIFRyZWUgZ3VpZGUgbGluZXMgKG9wdGlvbmFsKSAqL1xyXG4ucHJvamVjdC10cmVlLWl0ZW1bZGF0YS1sZXZlbF06bm90KFtkYXRhLWxldmVsPVwiMFwiXSkgPiAucHJvamVjdC10cmVlLWl0ZW0tY29udGVudDo6YmVmb3JlIHtcclxuXHRjb250ZW50OiAnJztcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogY2FsYygwLjVyZW0gKyAodmFyKC0tdHJlZS1sZXZlbCkgLSAxKSAqIHZhcigtLXRyZWUtaW5kZW50LXNpemUpICsgMC43NXJlbSk7XHJcblx0dG9wOiAwO1xyXG5cdGJvdHRvbTogMDtcclxuXHR3aWR0aDogMXB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRyZWUtZ3VpZGUtY29sb3IpO1xyXG5cdG9wYWNpdHk6IDAuMztcclxufVxyXG5cclxuLnByb2plY3QtdHJlZS1pdGVtLWNoaWxkcmVuIHtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4ucHJvamVjdC10cmVlLWl0ZW0tY2hpbGRyZW46bm90KC5pcy1leHBhbmRlZCkge1xyXG5cdG1heC1oZWlnaHQ6IDA7XHJcbn1cclxuXHJcbi8qIEVtcHR5IFN0YXRlICovXHJcbi5wcm9qZWN0LXRyZWUtZW1wdHkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAycmVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcblxyXG4vKiBWaWV3IFRvZ2dsZSBCdXR0b24gKi9cclxuLnByb2plY3RzLXZpZXctdG9nZ2xlLWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiAxLjc1cmVtO1xyXG5cdGhlaWdodDogMS43NXJlbTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTtcclxufVxyXG5cclxuLnByb2plY3RzLXZpZXctdG9nZ2xlLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnByb2plY3RzLXZpZXctdG9nZ2xlLWJ0biBzdmcge1xyXG5cdHdpZHRoOiAxcmVtO1xyXG5cdGhlaWdodDogMXJlbTtcclxufVxyXG5cclxuLyogTXVsdGktc2VsZWN0IE1vZGUgSW5kaWNhdG9yICovXHJcbi5wcm9qZWN0LXRyZWUtY29udGFpbmVyLm11bHRpLXNlbGVjdC1tb2RlIC5wcm9qZWN0LXRyZWUtaXRlbS1jb250ZW50IHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5wcm9qZWN0LXRyZWUtY29udGFpbmVyLm11bHRpLXNlbGVjdC1tb2RlIC5wcm9qZWN0LXRyZWUtaXRlbS1jb250ZW50OjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6ICcnO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiAwLjI1cmVtO1xyXG5cdHRvcDogNTAlO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuXHR3aWR0aDogMC44NzVyZW07XHJcblx0aGVpZ2h0OiAwLjg3NXJlbTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG59XHJcblxyXG4ucHJvamVjdC10cmVlLWNvbnRhaW5lci5tdWx0aS1zZWxlY3QtbW9kZSAucHJvamVjdC10cmVlLWl0ZW0uaXMtc2VsZWN0ZWQgLnByb2plY3QtdHJlZS1pdGVtLWNvbnRlbnQ6OmJlZm9yZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi5wcm9qZWN0LXRyZWUtY29udGFpbmVyLm11bHRpLXNlbGVjdC1tb2RlIC5wcm9qZWN0LXRyZWUtaXRlbS5pcy1zZWxlY3RlZCAucHJvamVjdC10cmVlLWl0ZW0tY29udGVudDo6YWZ0ZXIge1xyXG5cdGNvbnRlbnQ6ICdcdTI3MTMnO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiAwLjI1cmVtO1xyXG5cdHRvcDogNTAlO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuXHR3aWR0aDogMC44NzVyZW07XHJcblx0aGVpZ2h0OiAwLjg3NXJlbTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRmb250LXNpemU6IDAuNjI1cmVtO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4vKiBEYXJrIFRoZW1lIEFkanVzdG1lbnRzICovXHJcbi50aGVtZS1kYXJrIC5wcm9qZWN0LXRyZWUtaXRlbS1jb3VudC1kaXJlY3Qge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcclxufVxyXG5cclxuLnRoZW1lLWRhcmsgLnByb2plY3QtdHJlZS1pdGVtLWNvdW50LXRvdGFsIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0LnByb2plY3QtdHJlZS1pdGVtLWNvbnRlbnQge1xyXG5cdFx0cGFkZGluZzogMC4zNzVyZW0gMC41cmVtO1xyXG5cdH1cclxufVxyXG5cclxuLyogQW5pbWF0aW9uIGZvciB0cmVlIGV4cGFuc2lvbiAqL1xyXG5Aa2V5ZnJhbWVzIHNsaWRlRG93biB7XHJcblx0ZnJvbSB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjVyZW0pO1xyXG5cdH1cclxuXHR0byB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG5cdH1cclxufVxyXG5cclxuLnByb2plY3QtdHJlZS1pdGVtLWNoaWxkcmVuID4gLnByb2plY3QtdHJlZS1pdGVtIHtcclxuXHRhbmltYXRpb246IHNsaWRlRG93biAwLjE1cyBlYXNlO1xyXG59XHJcbiIsICIvKiBQcm9qZWN0cyBWaWV3IFN0eWxlcyAqL1xyXG4ucmV2aWV3LWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ucmV2aWV3LWNvbnRlbnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5yZXZpZXctbGVmdC1jb2x1bW4ge1xyXG5cdHdpZHRoOiAyNTBweDtcclxuXHRtaW4td2lkdGg6IDIwMHB4O1xyXG5cdG1heC13aWR0aDogMzAwcHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnJldmlldy1sZWZ0LWNvbHVtbiB7XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ucmV2aWV3LXJpZ2h0LWNvbHVtbiB7XHJcblx0ZmxleDogMTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnJldmlldy1zaWRlYmFyLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtMTApO1xyXG59XHJcblxyXG4ucmV2aWV3LXNpZGViYXItdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG59XHJcblxyXG4ucmV2aWV3LW11bHRpLXNlbGVjdC1idG4ge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLnJldmlldy1tdWx0aS1zZWxlY3QtYnRuOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ucmV2aWV3LXNpZGViYXItbGlzdCB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLyogUHJvamVjdCBncm91cCBoZWFkZXJzICovXHJcbi5yZXZpZXctcHJvamVjdHMtZ3JvdXAtaGVhZGVyIHtcclxuXHRmb250LXNpemU6IDEwcHg7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRwYWRkaW5nOiA0cHggOHB4IDRweDtcclxuXHRtYXJnaW4tdG9wOiAxMnB4O1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjVweDtcclxufVxyXG5cclxuLnJldmlldy1wcm9qZWN0cy1ncm91cC1oZWFkZXI6Zmlyc3QtY2hpbGQge1xyXG5cdG1hcmdpbi10b3A6IDRweDtcclxufVxyXG5cclxuLyogUHJvamVjdCBpdGVtcyBpbiB0aGUgc2lkZWJhciAqL1xyXG4ucmV2aWV3LXByb2plY3QtaXRlbSB7XHJcblx0LS1pY29uLXNpemU6IHZhcigtLXNpemUtNC00KTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogNHB4IDhweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdG1hcmdpbi1ib3R0b206IDJweDtcclxufVxyXG5cclxuLnJldmlldy1wcm9qZWN0LWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4ucmV2aWV3LXByb2plY3QtaXRlbS5zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUpO1xyXG59XHJcblxyXG4vKiBQcm9qZWN0cyB3aXRoIHJldmlldyBzZXR0aW5ncyAqL1xyXG4ucmV2aWV3LXByb2plY3QtaXRlbS5oYXMtcmV2aWV3LXNldHRpbmdzIC5yZXZpZXctcHJvamVjdC1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG59XHJcblxyXG4ucmV2aWV3LXByb2plY3QtaXRlbS5oYXMtcmV2aWV3LXNldHRpbmdzIC5yZXZpZXctcHJvamVjdC1uYW1lIHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4vKiBQcm9qZWN0cyB3aXRob3V0IHJldmlldyBzZXR0aW5ncyAqL1xyXG4ucmV2aWV3LXByb2plY3QtaXRlbTpub3QoLmhhcy1yZXZpZXctc2V0dGluZ3MpIC5yZXZpZXctcHJvamVjdC1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi5yZXZpZXctcHJvamVjdC1pY29uIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDhweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5yZXZpZXctcHJvamVjdC1uYW1lIHtcclxuXHRmbGV4OiAxO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLnJldmlldy10YXNrLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC00KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnJldmlldy10YXNrLWhlYWRlciB7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxufVxyXG5cclxuLnJldmlldy1oZWFkZXItY29udGVudCBoMyB7XHJcblx0bWFyZ2luOiAwIDAgOHB4IDA7XHJcblx0cGFkZGluZzogMDtcclxufVxyXG5cclxuLnJldmlldy1pbmZvIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi5yZXZpZXctc2VwYXJhdG9yIHtcclxuXHRtYXJnaW46IDAgOHB4O1xyXG59XHJcblxyXG4ucmV2aWV3LWZyZXF1ZW5jeSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLnJldmlldy1mcmVxdWVuY3k6aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbn1cclxuXHJcbi5yZXZpZXctbGFzdC1kYXRlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ucmV2aWV3LW5vLXNldHRpbmdzIHtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbi8qIEZpbHRlciBpbmZvcm1hdGlvbiAqL1xyXG4ucmV2aWV3LWZpbHRlci1pbmZvIHtcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdHBhZGRpbmc6IDZweCAxMHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC1zaXplOiAwLjg1ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG59XHJcblxyXG4ucmV2aWV3LWZpbHRlci10b2dnbGUge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdG1hcmdpbi1sZWZ0OiA1cHg7XHJcbn1cclxuXHJcbi5yZXZpZXctZmlsdGVyLXRvZ2dsZTpob3ZlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLnJldmlldy10YXNrLWxpc3Qge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5yZXZpZXctZW1wdHktc3RhdGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRwYWRkaW5nOiAxNnB4O1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLyogUmV2aWV3IGJ1dHRvbnMgKi9cclxuLnJldmlldy1idXR0b24tY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAxMnB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG59XHJcblxyXG4ucmV2aWV3LWNvbXBsZXRlLWJ0bixcclxuLnJldmlldy1jb25maWd1cmUtYnRuIHtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxufVxyXG5cclxuLnJldmlldy1jb21wbGV0ZS1idG4ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi5yZXZpZXctY29tcGxldGUtYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG59XHJcblxyXG4ucmV2aWV3LWNvbmZpZ3VyZS1idG4ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnJldmlldy1jb25maWd1cmUtYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ucmV2aWV3LWVkaXQtYnRuIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQtaG92ZXIpO1xyXG5cdG1hcmdpbi1sZWZ0OiA4cHg7XHJcbn1cclxuXHJcbi5yZXZpZXctZWRpdC1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIFJldmlldyBDb25maWd1cmUgTW9kYWwgKi9cclxuLnJldmlldy1tb2RhbC10aXRsZSB7XHJcblx0bWFyZ2luLXRvcDogMDtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdGZvbnQtc2l6ZTogMS41ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG4ucmV2aWV3LW1vZGFsLWZvcm0ge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5yZXZpZXctbW9kYWwtZmllbGQge1xyXG5cdG1hcmdpbi1ib3R0b206IDE2cHg7XHJcbn1cclxuXHJcbi5yZXZpZXctbW9kYWwtbGFiZWwge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0bWFyZ2luLWJvdHRvbTogNHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5yZXZpZXctbW9kYWwtZGVzY3JpcHRpb24ge1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxufVxyXG5cclxuLnJldmlldy1tb2RhbC1zZWxlY3Qge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG5cclxuLnJldmlldy1tb2RhbC1jdXN0b20tZnJlcXVlbmN5IHtcclxuXHRtYXJnaW4tdG9wOiA4cHg7XHJcbn1cclxuXHJcbi5yZXZpZXctbW9kYWwtaW5wdXQge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHBhZGRpbmc6IDhweDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcbn1cclxuXHJcbi5yZXZpZXctbW9kYWwtbGFzdC1yZXZpZXdlZCB7XHJcblx0cGFkZGluZzogOHB4O1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcbn1cclxuXHJcbi5yZXZpZXctbW9kYWwtYnV0dG9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdG1hcmdpbi10b3A6IDI0cHg7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRwYWRkaW5nLXRvcDogMTZweDtcclxufVxyXG5cclxuLnJldmlldy1tb2RhbC1idXR0b24ge1xyXG5cdHBhZGRpbmc6IDhweCAxNnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnJldmlldy1tb2RhbC1idXR0b24tY2FuY2VsIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG59XHJcblxyXG4ucmV2aWV3LW1vZGFsLWJ1dHRvbi1jYW5jZWw6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5yZXZpZXctbW9kYWwtYnV0dG9uLXNhdmUge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLnJldmlldy1tb2RhbC1idXR0b24tc2F2ZTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLyogUmV2aWV3IFZpZXcgLSBNb2JpbGUgKi9cclxuLmlzLXBob25lIC5yZXZpZXctY29udGFpbmVyIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmlzLXBob25lIC5yZXZpZXctbGVmdC1jb2x1bW4ge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiAwO1xyXG5cdHRvcDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0ei1pbmRleDogMTA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XHJcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnJldmlldy1sZWZ0LWNvbHVtbi5pcy12aXNpYmxlIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAucmV2aWV3LXNpZGViYXItdG9nZ2xlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAucmV2aWV3LXNpZGViYXItY2xvc2Uge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IHZhcigtLXNpemUtMi0yKTtcclxuXHRyaWdodDogMTBweDtcclxuXHR6LWluZGV4OiAxNTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIEFkZCBvdmVybGF5IHdoZW4gbGVmdCBjb2x1bW4gaXMgdmlzaWJsZSBvbiBtb2JpbGUgKi9cclxuLmlzLXBob25lIC5yZXZpZXctY29udGFpbmVyOmhhcygucmV2aWV3LWxlZnQtY29sdW1uLmlzLXZpc2libGUpOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWNvdmVyKTtcclxuXHRvcGFjaXR5OiAwLjU7XHJcblx0ei1pbmRleDogNTtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbn1cclxuIiwgIi50YXNrLXNpZGViYXIuY29sbGFwc2VkIHtcclxuXHR3aWR0aDogNDhweDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ucGFuZWwtdG9nZ2xlLWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0b3BhY2l0eTogMC42O1xyXG5cclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnBhbmVsLXRvZ2dsZS1idG46aG92ZXIge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi50YXNrLXNpZGViYXIuY29sbGFwc2VkIC5zaWRlYmFyLW5hdiB7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLyogU2lkZWJhciBOYXZpZ2F0aW9uICovXHJcbi5zaWRlYmFyLW5hdiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdHBhZGRpbmc6IDIwcHggMCAxMHB4IDA7XHJcblx0Z2FwOiA1cHg7XHJcbn1cclxuXHJcbi5zaWRlYmFyLW5hdi1zcGFjZXIge1xyXG5cdGhlaWdodDogMXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRtYXJnaW46IDhweCAxNXB4O1xyXG5cdG9wYWNpdHk6IDAuNztcclxuXHRtYXJnaW4tdG9wOiBhdXRvO1xyXG59XHJcblxyXG4uc2lkZWJhci1uYXYtaXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDhweCAxNXB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0bWFyZ2luOiAwIDVweDtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnNpZGViYXItbmF2LWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlKTtcclxufVxyXG5cclxuLnNpZGViYXItbmF2LWl0ZW0uaXMtYWN0aXZlIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3ZlcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHQtLWljb24tY29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5uYXYtaXRlbS1pY29uIHtcclxuXHQtLWljb24tc2l6ZTogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm5hdi1pdGVtLWxhYmVsIHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLm5hdi1pdGVtLWxhYmVsLmhpZGRlbiB7XHJcblx0b3BhY2l0eTogMDtcclxuXHR3aWR0aDogMDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdG1hcmdpbjogMDtcclxufVxyXG5cclxuLnRhc2stc2lkZWJhci5jb2xsYXBzZWQgLnNpZGViYXItbmF2LWl0ZW0ge1xyXG5cdHBhZGRpbmc6IDhweCAxMHB4O1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiB2YXIoLS1zaXplLTQtOSk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblxyXG5cdHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZS1pbi1vdXQsIGZsZXgtc2hyaW5rIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi50YXNrLXNpZGViYXIuY29sbGFwc2VkIC5uYXYtaXRlbS1pY29uIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDA7XHJcbn1cclxuXHJcbi8qIENvbnRlbnQgU3R5bGVzICovXHJcbi50YXNrLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0bWluLXdpZHRoOiAwO1xyXG5cdHRyYW5zaXRpb246IG1hcmdpbiAwLjNzIGVhc2U7XHJcbn1cclxuXHJcbi50YXNrLXNpZGViYXIuY29sbGFwc2VkIC50YXNrLWNvbnRlbnQge1xyXG5cdG1hcmdpbi1sZWZ0OiAtMjAwcHg7XHJcblxyXG5cdHRyYW5zaXRpb246IG1hcmdpbiAwLjNzIGVhc2U7XHJcbn1cclxuXHJcbi8qIFByb2plY3QgVHJlZSAqL1xyXG4udGFzay1nZW5pdXMtdmlldyAucHJvamVjdC10cmVlIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMikgMDtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLnRyZWUtcm9vdCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAudGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogNnB4IDhweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdG1hcmdpbjogMCA1cHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLnRyZWUtaXRlbS5zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLWljb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMjBweDtcclxuXHRoZWlnaHQ6IDIwcHg7XHJcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLW5hbWUge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLWNvdW50IHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tbGVmdDogNXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdHBhZGRpbmc6IDFweCA2cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogMTBweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLnRyZWUtaXRlbS10b2dnbGUsXHJcbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW0taW5kZW50IHtcclxuXHR3aWR0aDogMjBweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0bWFyZ2luLXJpZ2h0OiA1cHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW0tdG9nZ2xlIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi8qIENvbnRlbnQgSGVhZGVyICovXHJcbi5jb250ZW50LWhlYWRlciB7XHJcblx0cGFkZGluZzogMTVweDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLnRhc2stY291bnQge1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdG1hcmdpbi1yaWdodDogMTBweDtcclxufVxyXG5cclxuLmZvY3VzLWZpbHRlciB7XHJcblx0bWFyZ2luLWxlZnQ6IDEwcHg7XHJcbn1cclxuXHJcbi8qIFRhc2tWaWV3IC0gT21uaUZvY3VzIFN0eWxlICovXHJcblxyXG4ud29ya3NwYWNlLWxlYWYtY29udGVudCAudGFzay1nZW5pdXMtdmlldyB7XHJcblx0cGFkZGluZzogMDtcclxufVxyXG5cclxuLyogTWFpbiBjb250YWluZXIgbGF5b3V0ICovXHJcbi50YXNrLWdlbml1cy1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vKiBMZWZ0IHNpZGViYXIgKi9cclxuLnRhc2stc2lkZWJhciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHJcblx0d2lkdGg6IDI0MHB4O1xyXG5cdHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZS1pbi1vdXQ7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4vKiBNYWluIGNvbnRlbnQgYXJlYSAqL1xyXG4udGFzay1jb250ZW50IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0ZmxleDogMTtcclxuXHRtaW4td2lkdGg6IDMwMHB4O1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vKiBOYXZpZ2F0aW9uIHNpZGViYXIgKi9cclxuLnRhc2stc2lkZWJhciAuc2lkZWJhci1uYXYge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRwYWRkaW5nOiA4cHggMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi8qIFByb2plY3QgdHJlZSAqL1xyXG4ucHJvamVjdC10cmVlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0cGFkZGluZzogOHB4IDA7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxufVxyXG5cclxuLnRyZWUtcm9vdCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogNHB4IDEycHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRtYXJnaW46IDJweCA4cHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLnRyZWUtaXRlbS5zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW0tdG9nZ2xlIHtcclxuXHR3aWR0aDogMTZweDtcclxuXHRoZWlnaHQ6IDE2cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1hcmdpbi1yaWdodDogNHB4O1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLWluZGVudCB7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG5cdG1hcmdpbi1yaWdodDogNHB4O1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLWljb24ge1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLW5hbWUge1xyXG5cdGZsZXg6IDE7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLWNvdW50IHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xyXG5cdHBhZGRpbmc6IDJweCA2cHg7XHJcblx0bWluLXdpZHRoOiAxNnB4O1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLnRyZWUtaXRlbS5leHBhbmRlZCA+IC50cmVlLWl0ZW0tY2hpbGRyZW4ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW0tY2hpbGRyZW4ge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRtYXJnaW4tbGVmdDogMTZweDtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyogQ29udGVudCBoZWFkZXIgKi9cclxuLnRhc2stZ2VuaXVzLXZpZXcgLmNvbnRlbnQtaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMTBweCAxNnB4O1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0bWluLWhlaWdodDogNTBweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLmNvbnRlbnQtdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogMS4yZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRtYXJnaW4tcmlnaHQ6IDEycHg7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQudGFzay1nZW5pdXMtdmlldyAuY29udGVudC10aXRsZSB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0LnRhc2stZ2VuaXVzLXZpZXcgLnRhc2stY291bnQge1xyXG5cdFx0ZmxleDogMTtcclxuXHR9XHJcblxyXG5cdC50YXNrLWdlbml1cy12aWV3IC5mb2N1cy1maWx0ZXIge1xyXG5cdFx0ZmxleDogMTtcclxuXHR9XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5jb250ZW50LWZpbHRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdG1hcmdpbi1yaWdodDogMTJweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLmZpbHRlci1pbnB1dCB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRwYWRkaW5nOiA0cHggOHB4O1xyXG5cdHdpZHRoOiAyMDBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAuZm9jdXMtYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1ub3JtYWwpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0cGFkZGluZzogNHB4IDEwcHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5mb2N1cy1idXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLmZvY3VzLWJ1dHRvbi5mb2N1c2VkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5tb2Qtcm9vdCAudGFzay1nZW5pdXMtYWN0aW9uLWJ0biB7XHJcblx0LS1pY29uLXNpemU6IDE2cHg7XHJcbn1cclxuXHJcbi5tb2QtbGVmdC1zcGxpdCAudGFzay1nZW5pdXMtYWN0aW9uLWJ0biB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLm1vZC1sZWZ0LXNwbGl0XHJcblx0LndvcmtzcGFjZS10YWItaGVhZGVyLXN0YXR1cy1jb250YWluZXI6aGFzKC50YXNrLWdlbml1cy1hY3Rpb24tYnRuKSB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLm1vZC1yaWdodC1zcGxpdFxyXG5cdC53b3Jrc3BhY2UtdGFiLWhlYWRlci1zdGF0dXMtY29udGFpbmVyOmhhcygudGFzay1nZW5pdXMtYWN0aW9uLWJ0bikge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC50YXNrLWVtcHR5LXN0YXRlLFxyXG4udGFzay1nZW5pdXMtdjItdmlldyAudGFzay1lbXB0eS1zdGF0ZSB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGZsZXg6IDE7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4ubW9kLXJvb3QgLnRhc2stZ2VuaXVzLXRhYi1oZWFkZXIge1xyXG5cdGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5AY29udGFpbmVyIChtYXgtd2lkdGg6IDEyMHB4KSB7XHJcblx0Lm1vZC1yb290IC50YXNrLWdlbml1cy1hY3Rpb24tYnRuIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG59XHJcblxyXG4udGFzay1zaWRlYmFyLmNvbGxhcHNlZCAuc2lkZWJhci1uYXYge1xyXG5cdG1heC13aWR0aDogNDVweDtcclxufVxyXG5cclxuLyogV29ya2Zsb3cgUXVpY2sgTW9kYWwgU3R5bGVzICovXHJcbi5xdWljay13b3JrZmxvdy1tb2RhbCB7XHJcblx0bWF4LXdpZHRoOiA2MDBweDtcclxuXHRtaW4taGVpZ2h0OiA0MDBweDtcclxufVxyXG5cclxuLndvcmtmbG93LXRlbXBsYXRlLXNlY3Rpb24ge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0cGFkZGluZzogMTVweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG59XHJcblxyXG4udGVtcGxhdGUtZGVzY3JpcHRpb24ge1xyXG5cdG1hcmdpbi10b3A6IDEwcHg7XHJcbn1cclxuXHJcbi50ZW1wbGF0ZS1kZXNjLXRleHQge1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctZm9ybS1zZWN0aW9uIHtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2VzLXByZXZpZXcge1xyXG5cdG1hcmdpbi10b3A6IDE1cHg7XHJcbn1cclxuXHJcbi5zdGFnZXMtcHJldmlldy1saXN0IHtcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG59XHJcblxyXG4uc3RhZ2UtcHJldmlldy1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdHBhZGRpbmc6IDhweCAxMnB4O1xyXG5cdG1hcmdpbjogNHB4IDA7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5zdGFnZS1pbmZvIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA4cHg7XHJcbn1cclxuXHJcbi5zdGFnZS1uYW1lIHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4uc3RhZ2UtdHlwZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi5zdGFnZS1hY3Rpb25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogNHB4O1xyXG59XHJcblxyXG4ubm8tc3RhZ2VzLW1lc3NhZ2Uge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdHBhZGRpbmc6IDIwcHg7XHJcblx0Ym9yZGVyOiAycHggZGFzaGVkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcblx0bWFyZ2luLXRvcDogMTBweDtcclxufVxyXG5cclxuLndvcmtmbG93LW1vZGFsLWJ1dHRvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRnYXA6IDEwcHg7XHJcblx0bWFyZ2luLXRvcDogMjBweDtcclxuXHRwYWRkaW5nLXRvcDogMTVweDtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4vKiBXb3JrZmxvdyBQcm9ncmVzcyBJbmRpY2F0b3IgU3R5bGVzICovXHJcbi53b3JrZmxvdy1wcm9ncmVzcy1pbmRpY2F0b3Ige1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG5cdHBhZGRpbmc6IDE1cHg7XHJcblx0bWFyZ2luOiAxMHB4IDA7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1wcm9ncmVzcy1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxufVxyXG5cclxuLndvcmtmbG93LW5hbWUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiAxLjFlbTtcclxufVxyXG5cclxuLndvcmtmbG93LXByb2dyZXNzLXRleHQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMTBweDtcclxuXHRtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG59XHJcblxyXG4ud29ya2Zsb3ctcHJvZ3Jlc3MtYmFyIHtcclxuXHRmbGV4OiAxO1xyXG5cdGhlaWdodDogOHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLndvcmtmbG93LXByb2dyZXNzLWZpbGwge1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZTtcclxufVxyXG5cclxuLndvcmtmbG93LXByb2dyZXNzLXBlcmNlbnRhZ2Uge1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRtaW4td2lkdGg6IDM1cHg7XHJcblx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS1saXN0IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiA4cHg7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdGdhcDogMTJweDtcclxuXHRwYWRkaW5nOiAxMHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLWl0ZW0uY29tcGxldGVkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLXN1Y2Nlc3MpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2UtaXRlbS5jdXJyZW50IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjY2VudCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLWl0ZW0ucGVuZGluZyB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRvcGFjaXR5OiAwLjc7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS1pY29uIHtcclxuXHR3aWR0aDogMjBweDtcclxuXHRoZWlnaHQ6IDIwcHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1hcmdpbi10b3A6IDJweDtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLWljb24uY29tcGxldGVkLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LXN1Y2Nlc3MpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2UtaWNvbi5jdXJyZW50LWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2UtaWNvbi5wZW5kaW5nLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS1uYW1lIHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdG1hcmdpbi1ib3R0b206IDJweDtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLXR5cGUge1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3RhZ2UtbnVtYmVyIHtcclxuXHR3aWR0aDogMjRweDtcclxuXHRoZWlnaHQ6IDI0cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdG1hcmdpbi10b3A6IDJweDtcclxufVxyXG5cclxuLndvcmtmbG93LXN0YWdlLWl0ZW0uY29tcGxldGVkIC53b3JrZmxvdy1zdGFnZS1udW1iZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtc3VjY2Vzcyk7XHJcblx0Y29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zdGFnZS1pdGVtLmN1cnJlbnQgLndvcmtmbG93LXN0YWdlLW51bWJlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3Vic3RhZ2UtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiA4cHg7XHJcblx0cGFkZGluZy1sZWZ0OiAxNnB4O1xyXG5cdGJvcmRlci1sZWZ0OiAycHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3Vic3RhZ2UtaXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogOHB4O1xyXG5cdHBhZGRpbmc6IDRweCAwO1xyXG59XHJcblxyXG4ud29ya2Zsb3ctc3Vic3RhZ2UtaWNvbiB7XHJcblx0d2lkdGg6IDEycHg7XHJcblx0aGVpZ2h0OiAxMnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLndvcmtmbG93LXN1YnN0YWdlLW5hbWUge1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcbiIsICIvKiBzdHlsZXMvY2FsZW5kYXIvY2FsZW5kYXIuY3NzICovXHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIge1xyXG5cdGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0aGVpZ2h0OiAxMDAlOyAvKiBPciBhZGp1c3QgYXMgbmVlZGVkICovXHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRmbGV4LWdyb3c6IDE7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0zKSB2YXIoLS1zaXplLTQtNCk7IC8qIFVzZSBPYnNpZGlhbiB2YXJpYWJsZXMgKi9cclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGZsZXgtc2hyaW5rOiAwOyAvKiBQcmV2ZW50IGhlYWRlciBmcm9tIHNocmlua2luZyAqL1xyXG5cdG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItaGVhZGVyIGJ1dHRvbiB7XHJcblx0bWFyZ2luOiAwIHZhcigtLXNpemUtNC0xKTtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1uYXYsXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItdmlldy1zd2l0Y2hlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1uYXYgYnV0dG9uIHtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblxyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItdmlldy1zd2l0Y2hlciBidXR0b24ge1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXZpZXctc3dpdGNoZXIgYnV0dG9uOm5vdCguaXMtYWN0aXZlKSxcclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1uYXYgYnV0dG9uOm5vdCguaXMtYWN0aXZlKSB7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXhzKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItY3VycmVudC1kYXRlIHtcclxuXHRmb250LXdlaWdodDogdmFyKC0tZm9udC1zZW1pYm9sZCk7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLWxhcmdlKTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0ZmxleC1ncm93OiAxOyAvKiBBbGxvdyBpdCB0byB0YWtlIHNwYWNlICovXHJcblxyXG5cdG1heC13aWR0aDogbWF4KDEyMHB4LCA0MCUpO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci12aWV3LXN3aXRjaGVyIGJ1dHRvbi5pcy1hY3RpdmUge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItdmlldy1jb250YWluZXIge1xyXG5cdGZsZXgtZ3JvdzogMTsgLyogQWxsb3cgdmlldyB0byB0YWtlIHJlbWFpbmluZyBzcGFjZSAqL1xyXG5cdG92ZXJmbG93LXk6IGF1dG87IC8qIEVuYWJsZSBzY3JvbGxpbmcgaWYgY29udGVudCBvdmVyZmxvd3MgKi9cclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlOyAvKiBOZWVkZWQgZm9yIGFic29sdXRlIHBvc2l0aW9uaW5nIG9mIGV2ZW50cyAqL1xyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbi8qIEJhc2ljIFZpZXcgU3R5bGVzIChQbGFjZWhvbGRlcnMpICovXHJcbi8qIC0tLSBNb250aCBWaWV3IFNwZWNpZmljIFN0eWxlcyAtLS0gKi9cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci13ZWVrZGF5LWhlYWRlciB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg3LCAxZnIpO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMSkgMDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG1hcmdpbi1ib3R0b206IC0xcHg7IC8qIE92ZXJsYXAgd2l0aCBncmlkIGdhcCAqL1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsgLyogU2xpZ2h0IGRpc3RpbmN0aW9uICovXHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItd2Vla2RheSB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTEpO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXZpZXctY29udGFpbmVyLnZpZXctbW9udGgge1xyXG5cdHBhZGRpbmc6IDA7IC8qIFJlbW92ZSBwYWRkaW5nIGlmIGdyaWQgcHJvdmlkZXMgaXQgdmlhIGdhcCAqL1xyXG5cdC8qIFN0eWxlcyBtb3ZlZCB0byAuY2FsZW5kYXItbW9udGgtZ3JpZCAqL1xyXG59XHJcblxyXG4vKiBBZGQgdGhlIGdyaWQgc3R5bGVzIGRpcmVjdGx5IHRvIHRoZSBncmlkIGNvbnRhaW5lciBlbGVtZW50ICovXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItbW9udGgtZ3JpZCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg3LCAxZnIpO1xyXG5cdGdyaWQtYXV0by1yb3dzOiBtaW5tYXgoMTAwcHgsIGF1dG8pOyAvKiBHaXZlIHJvd3MgYSBtaW5pbXVtIGhlaWdodCAqL1xyXG5cdGdhcDogMXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTsgLyogR3JpZCBsaW5lcyAqL1xyXG5cclxuXHRoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWNlbGwge1xyXG5cdC8qIEV4YW1wbGUgc3R5bGUgZm9yIGEgZGF5IGNlbGwgaW4gbW9udGggdmlldyAqL1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdC8qIG1pbi1oZWlnaHQ6IDgwcHg7IC0gTGV0IGdyaWQtYXV0by1yb3dzIGhhbmRsZSBoZWlnaHQgKi9cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ZGlzcGxheTogZmxleDsgLyogVXNlIGZsZXhib3ggZm9yIGxheW91dCBpbnNpZGUgdGhlIGNlbGwgKi9cclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvKiBTdGFjayBkYXkgbnVtYmVyIGFuZCBldmVudHMgKi9cclxuXHRtaW4td2lkdGg6IDA7IC8qIFByZXZlbnQgY29udGVudCBmcm9tIGV4cGFuZGluZyB0aGUgY2VsbCB3aWR0aCBpbiB0aGUgZ3JpZCAqL1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWRheS1jZWxsOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiBoc2woXHJcblx0XHR2YXIoLS1jb2xvci1hY2NlbnQtaCksXHJcblx0XHR2YXIoLS1jb2xvci1hY2NlbnQtcyksXHJcblx0XHR2YXIoLS1jb2xvci1hY2NlbnQtbCksXHJcblx0XHQwLjhcclxuXHQpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWNlbGwuaXMtdG9kYXkge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCkgIWltcG9ydGFudDtcclxuXHRib3JkZXI6IDFweCBzb2xpZFxyXG5cdFx0aHNsKHZhcigtLWFjY2VudC1oKSwgdmFyKC0tYWNjZW50LXMpLCB2YXIoLS1hY2NlbnQtbCksIDAuNSk7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWNlbGwuaXMtdG9kYXkgLmNhbGVuZGFyLWRheS1udW1iZXIge1xyXG5cdGNvbG9yOiBoc2wodmFyKC0tYWNjZW50LWgpLCB2YXIoLS1hY2NlbnQtcyksIHZhcigtLWFjY2VudC1sKSwgMSk7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWhlYWRlciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMSk7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWNlbGw6bm90KC5pcy10b2RheSkge1xyXG5cdG9wYWNpdHk6IDAuNztcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktY2VsbC5pcy1vdGhlci1tb250aCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdG9wYWNpdHk6IDAuNztcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktY2VsbC5pcy13ZWVrZW5kIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoXHJcblx0XHQtLWJhY2tncm91bmQtc2Vjb25kYXJ5XHJcblx0KTsgLyogU2xpZ2h0bHkgZGlmZmVyZW50IGJhY2tncm91bmQgZm9yIHdlZWtlbmRzICovXHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LW51bWJlciB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdGZsZXgtc2hyaW5rOiAwOyAvKiBQcmV2ZW50IG51bWJlciBmcm9tIHNocmlua2luZyAqL1xyXG5cdGFsaWduLXNlbGY6IGZsZXgtZW5kOyAvKiBQb3NpdGlvbiB0byB0aGUgdG9wIHJpZ2h0ICovXHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZXZlbnRzLWNvbnRhaW5lciB7XHJcblx0ZmxleC1ncm93OiAxOyAvKiBBbGxvdyBldmVudHMgY29udGFpbmVyIHRvIGZpbGwgc3BhY2UgKi9cclxuXHRvdmVyZmxvdzogaGlkZGVuOyAvKiBIaWRlIGV2ZW50cyB0aGF0IG92ZXJmbG93IHRoZSBjZWxsIGhlaWdodCAqL1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1ldmVudCB7XHJcblx0LyogRXhhbXBsZSBzdHlsZSBmb3IgYW4gZXZlbnQgKi9cclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IDJweCA0cHg7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdG1hcmdpbi1ib3R0b206IDJweDtcclxuXHRtYXJnaW4tYm90dG9tOiAzcHg7IC8qIEluY3JlYXNlIHNwYWNpbmcgc2xpZ2h0bHkgKi9cclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGRpc3BsYXk6IGJsb2NrOyAvKiBFbnN1cmUgaXQgdGFrZXMgZnVsbCB3aWR0aCBhdmFpbGFibGUgKi9cclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1ldmVudDpoYXMoLnRhc2stbGlzdC1pdGVtLWNoZWNrYm94KSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lclxyXG5cdC5jYWxlbmRhci1ldmVudDpoYXMoLnRhc2stbGlzdC1pdGVtLWNoZWNrYm94KS5jYWxlbmRhci1ldmVudC13ZWVrLWFsbGRheSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyXHJcblx0LmNhbGVuZGFyLWV2ZW50OmhhcygudGFzay1saXN0LWl0ZW0tY2hlY2tib3gpLmNhbGVuZGFyLWV2ZW50LW1vbnRoIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1ldmVudDpob3ZlciB7XHJcblx0b3BhY2l0eTogMC44O1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50LmlzLWNvbXBsZXRlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKFxyXG5cdFx0LS1iYWNrZ3JvdW5kLW1vZGlmaWVyLXN1Y2Nlc3MtaG92ZXJcclxuXHQpOyAvKiBPciB1c2UgZ3JleS9zdHJpa2V0aHJvdWdoICovXHJcblx0dGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XHJcblx0b3BhY2l0eTogMC43O1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50LmlzLW11bHRpLWRheSB7XHJcblx0LyogQmFzaWMgc3R5bGUgZm9yIG11bHRpLWRheSwgbW9yZSBhZHZhbmNlZCBjb3VsZCByZW1vdmUgcm91bmRlZCBjb3JuZXJzICovXHJcbn1cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1ldmVudC5pcy1tdWx0aS1kYXkuaXMtc3RhcnQge1xyXG5cdC8qIE9wdGlvbmFsOiBzdHlsZSB0aGUgc3RhcnQgc2VnbWVudCBkaWZmZXJlbnRseSAqL1xyXG5cdC8qIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOyAqL1xyXG5cdC8qIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwOyAqL1xyXG59XHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZXZlbnQuaXMtbXVsdGktZGF5LmlzLWVuZCB7XHJcblx0LyogT3B0aW9uYWw6IHN0eWxlIHRoZSBlbmQgc2VnbWVudCBkaWZmZXJlbnRseSAqL1xyXG5cdC8qIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7ICovXHJcblx0LyogYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDsgKi9cclxufVxyXG5cclxuLyogQWRkIG1vcmUgc3BlY2lmaWMgc3R5bGVzIGZvciB3ZWVrLCBkYXksIGFnZW5kYSB2aWV3cyBhcyB0aGV5IGFyZSBpbXBsZW1lbnRlZCAqL1xyXG5cclxuLyogU3R5bGUgZm9yIG1vbnRoIHZpZXcgZXZlbnRzIHRvIGhhbmRsZSBvdmVyZmxvdyAqL1xyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50LmNhbGVuZGFyLWV2ZW50LW1vbnRoIHtcclxuXHQvKiBJbmhlcml0cyBiYXNlIC5jYWxlbmRhci1ldmVudCBzdHlsZXMgKi9cclxuXHQvKiBBZGQgb3ZlcmZsb3cgaGFuZGxpbmcgc2ltaWxhciB0byB3ZWVrLWFsbGRheSAqL1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRkaXNwbGF5OiBibG9jazsgLyogRW5zdXJlIGJsb2NrIGRpc3BsYXkgKi9cclxuXHR3aWR0aDogMTAwJTsgLyogRXhwbGljaXRseSBzZXQgd2lkdGggKi9cclxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiBJbmNsdWRlIHBhZGRpbmcvYm9yZGVyIGluIHdpZHRoICovXHJcbn1cclxuXHJcbi8qIC0tLSBEYXkgVmlldyBTcGVjaWZpYyBTdHlsZXMgLS0tICovXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItdmlldy1jb250YWluZXIudmlldy1kYXkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRwYWRkaW5nOiAwOyAvKiBSZW1vdmUgcGFkZGluZywgbWFuYWdlIGludGVybmFsbHkgKi9cclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci10aW1lbGluZS1zZWN0aW9uIHtcclxuXHRmbGV4LWdyb3c6IDE7XHJcblx0LyogcG9zaXRpb246IHJlbGF0aXZlOyAvKiBObyBsb25nZXIgbmVlZGVkIGZvciBhYnNvbHV0ZSBldmVudCBwb3NpdGlvbmluZyAqL1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7IC8qIEFkZCBib3JkZXIgdGhhdCB3YXMgb24gYWxsZGF5ICovXHJcblx0b3ZlcmZsb3cteTogYXV0bzsgLyogQWxsb3cgdGltZWxpbmUgdG8gc2Nyb2xsICovXHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXRpbWVsaW5lLWV2ZW50cy1jb250YWluZXIge1xyXG5cdC8qIFJlbW92ZSBhYnNvbHV0ZSBwb3NpdGlvbmluZyAqL1xyXG5cdC8qIHBvc2l0aW9uOiBhYnNvbHV0ZTsgKi9cclxuXHQvKiB0b3A6IDA7ICovXHJcblx0LyogbGVmdDogMDsgKi9cclxuXHQvKiByaWdodDogMDsgKi9cclxuXHQvKiBib3R0b206IDA7ICovXHJcblx0Lyogei1pbmRleDogMjsgKi9cclxuXHQvKiBSZW1vdmUgY2FsY3VsYXRlZCBoZWlnaHQgKi9cclxuXHQvKiBoZWlnaHQ6IGNhbGMoMjQgKiA0MHB4KTsgKi9cclxuXHJcblx0LyogQWRkIGZsZXggbGF5b3V0IGZvciB2ZXJ0aWNhbCBzdGFja2luZyAqL1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTsgLyogQWRkIHNwYWNpbmcgYmV0d2VlbiBldmVudHMgKi9cclxufVxyXG5cclxuLyogU3R5bGUgYWRqdXN0bWVudHMgZm9yIGV2ZW50cyBwcmV2aW91c2x5IHRpbWVkICovXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZXZlbnQtdGltZWQge1xyXG5cdC8qIFJlbW92ZSBhYnNvbHV0ZSBwb3NpdGlvbmluZyAqL1xyXG5cdC8qIHBvc2l0aW9uOiBhYnNvbHV0ZTsgKi9cclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0LyogQWRkIG1hcmdpbiBmb3Igc3BhY2luZyBpbiB0aGUgbmV3IGZsb3cgbGF5b3V0ICovXHJcblx0LyogVXNpbmcgZ2FwIG9uIHBhcmVudCBjb250YWluZXIgbm93ICovXHJcblx0LyogbWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpOyAqL1xyXG5cdHdpZHRoOiAxMDAlOyAvKiBFbnN1cmUgaXQgdGFrZXMgZnVsbCB3aWR0aCAqL1xyXG59XHJcblxyXG4vKiBLZWVwIGludGVybmFsIHN0eWxlcyAqL1xyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50LXRpbWUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHRwYWRkaW5nOiAxcHggM3B4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTsgLyogU2xpZ2h0IGJhY2tncm91bmQgZm9yIHRpbWUgKi9cclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1ldmVudC10aXRsZSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRwYWRkaW5nOiAycHggM3B4O1xyXG5cdGZsZXgtZ3JvdzogMTtcclxuXHQvKiBBbGxvdyB0ZXh0IHdyYXBwaW5nIHdpdGhpbiB0aGUgZXZlbnQgYm94ICovXHJcblx0d2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuXHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcblxyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0cGFkZGluZzogMnB4IDNweDtcclxuXHRmbGV4LWdyb3c6IDE7XHJcblx0d2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuXHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4vKiAtLS0gV2VlayBWaWV3IFNwZWNpZmljIFN0eWxlcyAtLS0gKi9cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci12aWV3LWNvbnRhaW5lci52aWV3LXdlZWsge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXdlZWstaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdC8qIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNTBweCByZXBlYXQoNywgMWZyKTsgKi8gLyogR3V0dGVyICsgNyBkYXlzIC0+IFJlbW92ZSBndXR0ZXIgKi9cclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg3LCAxZnIpOyAvKiBKdXN0IDcgZGF5cyAqL1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbWVkaXVtKTtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1oZWFkZXItY2VsbCB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTEpIDA7XHJcblx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1oZWFkZXItY2VsbDpmaXJzdC1jaGlsZCB7XHJcblx0Ym9yZGVyLWxlZnQ6IG5vbmU7XHJcbn1cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1oZWFkZXItY2VsbC5pcy10b2RheSAuY2FsZW5kYXItZGF5LW51bWJlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0d2lkdGg6IDEuNWVtO1xyXG5cdGhlaWdodDogMS41ZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNWVtO1xyXG5cdG1hcmdpbjogYXV0bztcclxuXHJcblx0bWFyZ2luOiBhdXRvO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXdlZWtkYXkge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LW51bWJlciB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcbn1cclxuXHJcbi8qIFVwZGF0ZWQgV2VlayBHcmlkIFNlY3Rpb24gKHdhcyAtYWxsZGF5LXNlY3Rpb24pICovXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItd2Vlay1ncmlkLXNlY3Rpb24ge1xyXG5cdC8qIFJlbmFtZWQgY2xhc3MgKi9cclxuXHRmbGV4LWdyb3c6IDE7IC8qIEFsbG93IHRoaXMgc2VjdGlvbiB0byBmaWxsIGF2YWlsYWJsZSB2ZXJ0aWNhbCBzcGFjZSAqL1xyXG5cdGRpc3BsYXk6IGZsZXg7IC8qIFVzZSBmbGV4IHRvIGVuc3VyZSBncmlkIGZpbGxzIGhlaWdodCAqL1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0b3ZlcmZsb3cteTogYXV0bzsgLyogQWRkIHNjcm9sbCBpZiBjb250ZW50IG92ZXJmbG93cyAqL1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7IC8qIE1hdGNoIG9sZCBzdHlsZSAqL1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXdlZWstZ3JpZCB7XHJcblx0LyogUmVuYW1lZCBjbGFzcyAqL1xyXG5cdGZsZXgtZ3JvdzogMTsgLyogQWxsb3cgZ3JpZCB0byBleHBhbmQgKi9cclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDcsIDFmcik7XHJcblx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnI7IC8qIE1ha2UgZ3JpZCBmaWxsIHRoZSBzZWN0aW9uIGhlaWdodCAqL1xyXG5cdGdhcDogMXB4OyAvKiBBZGQgZ2FwIGZvciBib3JkZXJzICovXHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpOyAvKiBHcmlkIGxpbmVzICovXHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTsgLyogQWRkIHRvcCBib3JkZXIgKi9cclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktY29sdW1uIHtcclxuXHQvKiBSZW5hbWVkIGNsYXNzICovXHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMSk7XHJcblx0LyogbWluLWhlaWdodDogNWVtOyAqLyAvKiBSZW1vdmUgZml4ZWQgbWluLWhlaWdodCwgbGV0IGNvbnRlbnQgZGljdGF0ZSAqL1xyXG5cdGJvcmRlci1sZWZ0OiBub25lOyAvKiBSZW1vdmUgcmVkdW5kYW50IGxlZnQgYm9yZGVyLCBnYXAgaGFuZGxlcyBsaW5lcyAqL1xyXG5cdGRpc3BsYXk6IGZsZXg7IC8qIFVzZSBmbGV4IGZvciB2ZXJ0aWNhbCBsYXlvdXQgKi9cclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTEpOyAvKiBTcGFjZSBiZXR3ZWVuIGV2ZW50cyAqL1xyXG5cdG92ZXJmbG93OiBoaWRkZW47IC8qIFByZXZlbnQgY29udGVudCBmcm9tIGV4cGFuZGluZyB0aGUgY29sdW1uICovXHJcblx0bWluLXdpZHRoOiAwOyAvKiBIZWxwIGdyaWQgaXRlbSBzaHJpbmsgcHJvcGVybHkgKi9cclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktY29sdW1uOmZpcnN0LWNoaWxkIHtcclxuXHQvKiBObyBzcGVjaWZpYyBmaXJzdC1jaGlsZCBib3JkZXIgbmVlZGVkIG5vdyAqL1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWRheS1jb2x1bW4uaXMtd2Vla2VuZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4vKiBBZGp1c3QgZ3JpZCBsYXlvdXRzIHdoZW4gd2Vla2VuZHMgYXJlIGhpZGRlbiAqL1xyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXZpZXctY29udGFpbmVyLmhpZGUtd2Vla2VuZHMgLmNhbGVuZGFyLXdlZWtkYXktaGVhZGVyIHtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpICFpbXBvcnRhbnQ7IC8qIDUgY29sdW1ucyBpbnN0ZWFkIG9mIDcgd2hlbiB3ZWVrZW5kcyBoaWRkZW4gKi9cclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci12aWV3LWNvbnRhaW5lci5oaWRlLXdlZWtlbmRzIC5jYWxlbmRhci1tb250aC1ncmlkIHtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpICFpbXBvcnRhbnQ7IC8qIDUgY29sdW1ucyBpbnN0ZWFkIG9mIDcgd2hlbiB3ZWVrZW5kcyBoaWRkZW4gKi9cclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci12aWV3LWNvbnRhaW5lci5oaWRlLXdlZWtlbmRzIC5jYWxlbmRhci13ZWVrLWhlYWRlciB7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKSAhaW1wb3J0YW50OyAvKiA1IGNvbHVtbnMgaW5zdGVhZCBvZiA3IHdoZW4gd2Vla2VuZHMgaGlkZGVuICovXHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItdmlldy1jb250YWluZXIuaGlkZS13ZWVrZW5kcyAuY2FsZW5kYXItd2Vlay1ncmlkIHtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpICFpbXBvcnRhbnQ7IC8qIDUgY29sdW1ucyBpbnN0ZWFkIG9mIDcgd2hlbiB3ZWVrZW5kcyBoaWRkZW4gKi9cclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci12aWV3LWNvbnRhaW5lci5oaWRlLXdlZWtlbmRzIC5taW5pLW1vbnRoLWdyaWQge1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDUsIDFmcikgIWltcG9ydGFudDsgLyogNSBjb2x1bW5zIGluc3RlYWQgb2YgNyB3aGVuIHdlZWtlbmRzIGhpZGRlbiAqL1xyXG59XHJcblxyXG4vKiBOb3RlOiBXZWVrZW5kIGVsZW1lbnRzIGFyZSBub3QgY3JlYXRlZCB3aGVuIGhpZGVXZWVrZW5kcyBpcyBlbmFibGVkLFxyXG4gICBzbyBubyBoaWRpbmcgcnVsZXMgYXJlIG5lZWRlZC4gVGhlIGdyaWQgbGF5b3V0IGFkanVzdG1lbnRzIGFib3ZlIGFyZSBzdWZmaWNpZW50LiAqL1xyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktZXZlbnRzLWNvbnRhaW5lciB7XHJcblx0LyogUmVuYW1lZCBjbGFzcyAqL1xyXG5cdC8qIFRoaXMgY29udGFpbmVyIG1pZ2h0IG5vdCBiZSBzdHJpY3RseSBuZWNlc3NhcnkgaWYgLmNhbGVuZGFyLWRheS1jb2x1bW4gdXNlcyBmbGV4ICovXHJcblx0LyogU3R5bGVzIGFyZSBhcHBsaWVkIGRpcmVjdGx5IHRvIC5jYWxlbmRhci1kYXktY29sdW1uIG5vdyAqL1xyXG5cdGZsZXgtZ3JvdzogMTsgLyogQWxsb3cgY29udGFpbmVyIHRvIGdyb3cgKi9cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiAzcHg7IC8qIFNwYWNlIGJldHdlZW4gZXZlbnRzICovXHJcbn1cclxuXHJcbi8qIEVuc3VyZSBldmVudHMgdGFrZSBmdWxsIHdpZHRoIGFuZCBkb24ndCBoYXZlIGhvcml6b250YWwgZGlzcGxheSBwcm9wZXJ0aWVzICovXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZXZlbnQuY2FsZW5kYXItZXZlbnQtd2Vlay1hbGxkYXkge1xyXG5cdGRpc3BsYXk6IGJsb2NrOyAvKiBFbnN1cmUgYmxvY2sgZGlzcGxheSBmb3IgdmVydGljYWwgc3RhY2tpbmcgKi9cclxuXHR3aWR0aDogMTAwJTsgLyogVGFrZSBmdWxsIHdpZHRoIG9mIHRoZSBjb2x1bW4gKi9cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7IC8qIFJlc2V0IHBvc2l0aW9uIGlmIGl0IHdhcyBhYnNvbHV0ZSAqL1xyXG5cdGxlZnQ6IGF1dG87XHJcblx0dG9wOiBhdXRvO1xyXG5cdGhlaWdodDogYXV0bzsgLyogTGV0IGNvbnRlbnQgZGV0ZXJtaW5lIGhlaWdodCAqL1xyXG5cdG1hcmdpbi1ib3R0b206IDNweDsgLyogQ29uc2lzdGVudCBzcGFjaW5nICovXHJcblx0b3ZlcmZsb3c6IGhpZGRlbjsgLyogUHJldmVudCBpbnRlcm5hbCBjb250ZW50IGZyb20gb3ZlcmZsb3dpbmcgKi9cclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgLyogQWRkIGVsbGlwc2lzIGZvciBvdmVyZmxvdyAqL1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7IC8qIEVuc3VyZSBlbGxpcHNpcyB3b3JrcyAqL1xyXG59XHJcblxyXG4vKiBSZW1vdmUgc3R5bGVzIGZvciB0aGUgb2xkIHRpbWVsaW5lIHNlY3Rpb24gKi9cclxuLypcclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci13ZWVrLXRpbWVsaW5lLXNlY3Rpb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcbi8vIC4uLiBleGlzdGluZyBjb2RlIC4uLlxyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcclxufVxyXG4qL1xyXG5cclxuLyogLS0tIFllYXIgVmlldyBTcGVjaWZpYyBTdHlsZXMgLS0tICovXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItdmlldy1jb250YWluZXIudmlldy15ZWFyIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXIteWVhci1ncmlkIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KFxyXG5cdFx0YXV0by1maXQsXHJcblx0XHRtaW5tYXgoMjAwcHgsIDFmcilcclxuXHQpOyAvKiBSZXNwb25zaXZlIGNvbHVtbnMgKi9cclxuXHRnYXA6IHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1taW5pLW1vbnRoIHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRvdmVyZmxvdzogaGlkZGVuOyAvKiBDbGlwIGNvbnRlbnQgKi9cclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5taW5pLW1vbnRoLWhlYWRlciB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXNlbWlib2xkKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLm1pbmktbW9udGgtYm9keSB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLm1pbmktbW9udGgtZ3JpZCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg3LCAxZnIpO1xyXG5cdGdhcDogMnB4OyAvKiBTbWFsbCBnYXAgYmV0d2VlbiBkYXlzICovXHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLm1pbmktd2Vla2RheS1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGNvbnRlbnRzOyAvKiBMZXQgY2hpbGRyZW4gcGFydGljaXBhdGUgaW4gdGhlIGdyaWQgKi9cclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAubWluaS13ZWVrZGF5IHtcclxuXHRwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2l6ZS00LTEpO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLm1pbmktZGF5LWNlbGwge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0cGFkZGluZzogMXB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRsaW5lLWhlaWdodDogMS41ZW07IC8qIEFkanVzdCBmb3IgY2VudGVyaW5nICovXHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAubWluaS1kYXktY2VsbC5pcy1vdGhlci1tb250aCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdG9wYWNpdHk6IDAuNjtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5taW5pLWRheS1jZWxsLmlzLXRvZGF5IHtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAubWluaS1kYXktY2VsbC5oYXMtZXZlbnRzIHtcclxuXHQvKiBJbmRpY2F0ZSBldmVudHMgLSBlLmcuLCBib2xkIG9yIGJhY2tncm91bmQgZG90ICovXHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0LyogT3IgYWRkIGEgYmFja2dyb3VuZCBkb3Q6ICovXHJcblx0LyogcG9zaXRpb246IHJlbGF0aXZlOyAqL1xyXG59XHJcbi8qIC5taW5pLWRheS1jZWxsLmhhcy1ldmVudHM6OmFmdGVyIHtcclxuXHRjb250ZW50OiAnJztcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0Ym90dG9tOiAycHg7XHJcblx0bGVmdDogNTAlO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuXHR3aWR0aDogNHB4O1xyXG5cdGhlaWdodDogNHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn0gKi9cclxuXHJcbi5hZ2VuZGEtZGF5LXNlY3Rpb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmctdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZy1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5hZ2VuZGEtZGF5LWRhdGUtY29sdW1uIHtcclxuXHR3aWR0aDogMjAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLmFnZW5kYS1kYXktZXZlbnRzLWNvbHVtbiB7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIGlucHV0LnRhc2stbGlzdC1pdGVtLWNoZWNrYm94IHtcclxuXHRzY2FsZTogMC45O1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXZpZXctc3dpdGNoZXItc2VsZWN0b3Ige1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIC0tLSBEcmFnIGFuZCBEcm9wIFN0eWxlcyAtLS0gKi9cclxuLmNhbGVuZGFyLWV2ZW50LWdob3N0IHtcclxuXHQvKiBTdHlsZSBmb3IgdGhlIHBsYWNlaG9sZGVyIHdoZW4gZHJhZ2dpbmcgKi9cclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyOiAycHggZGFzaGVkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKSAhaW1wb3J0YW50O1xyXG5cdG9wYWNpdHk6IDAuNSAhaW1wb3J0YW50O1xyXG5cdGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmNhbGVuZGFyLWV2ZW50LWRyYWdnaW5nIHtcclxuXHQvKiBTdHlsZSBmb3IgdGhlIGVsZW1lbnQgYmVpbmcgZHJhZ2dlZCAqL1xyXG5cdG9wYWNpdHk6IDAuOSAhaW1wb3J0YW50O1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sKSAhaW1wb3J0YW50O1xyXG5cdHRyYW5zZm9ybTogcm90YXRlKDJkZWcpICFpbXBvcnRhbnQ7XHJcblx0ei1pbmRleDogMTAwMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBNYWtlIGNhbGVuZGFyIGV2ZW50cyBkcmFnZ2FibGUgKi9cclxuLmNhbGVuZGFyLWV2ZW50cy1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50IHtcclxuXHRjdXJzb3I6IGdyYWI7XHJcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5jYWxlbmRhci1ldmVudHMtY29udGFpbmVyIC5jYWxlbmRhci1ldmVudDpob3ZlciB7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcclxufVxyXG5cclxuLmNhbGVuZGFyLWV2ZW50cy1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50OmFjdGl2ZSB7XHJcblx0Y3Vyc29yOiBncmFiYmluZztcclxufVxyXG5cclxuLyogU29ydGFibGUgY29udGFpbmVyIHN0eWxlcyAqL1xyXG4uY2FsZW5kYXItZXZlbnRzLWNvbnRhaW5lcixcclxuLmNhbGVuZGFyLWRheS1ldmVudHMtY29udGFpbmVyIHtcclxuXHRtaW4taGVpZ2h0OiAyMHB4OyAvKiBFbnN1cmUgdGhlcmUncyBhbHdheXMgYSBkcm9wIHpvbmUgKi9cclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbkBjb250YWluZXIgKG1heC13aWR0aDogNjAwcHgpIHtcclxuXHQuZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXZpZXctc3dpdGNoZXIgYnV0dG9uIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG5cclxuXHQuY2FsZW5kYXItbmF2IC5wcmV2LWJ1dHRvbiB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0LmNhbGVuZGFyLW5hdiAubmV4dC1idXR0b24ge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblxyXG5cdC5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItdmlldy1zd2l0Y2hlci1zZWxlY3RvciB7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHR9XHJcbn1cclxuIiwgIi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZXZlbnQtdGl0bGUtY29udGFpbmVyIHAge1xyXG5cdHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwO1xyXG5cdHBhZGRpbmctaW5saW5lLWVuZDogMDtcclxuXHRtYXJnaW4tYmxvY2stc3RhcnQ6IDA7XHJcblx0bWFyZ2luLWJsb2NrLWVuZDogMDtcclxufVxyXG5cclxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1ldmVudC10aXRsZS1jb250YWluZXIge1xyXG5cdC8qIEhhbmRsZSB0ZXh0IG92ZXJmbG93IHdpdGggZWxsaXBzaXMgKi9cclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50LXRpdGxlIHAge1xyXG5cdG1hcmdpbi1ibG9jay1zdGFydDogMDtcclxuXHRtYXJnaW4tYmxvY2stZW5kOiAwO1xyXG59XHJcbiIsICIvKiBDYWxlbmRhciBCYWRnZSBTdHlsZXMgKi9cclxuLmNhbGVuZGFyLWJhZGdlcy1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRnYXA6IDRweDtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHR6LWluZGV4OiAxMDtcclxufVxyXG5cclxuLmNhbGVuZGFyLWJhZGdlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmb250LXNpemU6IDEwcHg7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHJcblx0bWF4LXdpZHRoOiA4MHB4O1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLyogRW5zdXJlIGJhZGdlcyBhcmUgcG9zaXRpb25lZCByZWxhdGl2ZSB0byB0aGUgZGF5IGNlbGwgKi9cclxuLmNhbGVuZGFyLWRheS1jZWxsIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuIiwgIi50Zy1rYW5iYW4tdmlldyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuOyAvKiBQcmV2ZW50IHZpZXcgaXRzZWxmIGZyb20gc2Nyb2xsaW5nICovXHJcbn1cclxuXHJcbi50Zy1rYW5iYW4tZmlsdGVycyB7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRmbGV4LXNocmluazogMDsgLyogRG9uJ3Qgc2hyaW5rIGZpbHRlciBiYXIgKi9cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuXHRnYXA6IDhweDtcclxuXHRwYWRkaW5nOiA4cHg7XHJcblx0cGFkZGluZy1ib3R0b206IDA7XHJcblx0cGFkZGluZy10b3A6IDA7XHJcbn1cclxuXHJcbi50Zy1rYW5iYW4tY29udHJvbHMtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAxMnB4O1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxufVxyXG5cclxuLnRnLWthbmJhbi1zb3J0LWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNHB4O1xyXG59XHJcblxyXG4udGcta2FuYmFuLXNvcnQtYnV0dG9uIHtcclxuXHRwYWRkaW5nOiA0cHggOHB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA0cHg7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxufVxyXG5cclxuLnRnLWthbmJhbi1zb3J0LWJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuXHJcbi50Zy1rYW5iYW4tdG9nZ2xlLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNHB4O1xyXG59XHJcblxyXG4udGcta2FuYmFuLXRvZ2dsZS1sYWJlbCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNnB4O1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi50Zy1rYW5iYW4tdG9nZ2xlLWNoZWNrYm94IHtcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi50Zy1rYW5iYW4tZmlsdGVyLWlucHV0IHtcclxuXHRmbGV4LWdyb3c6IDE7XHJcblx0cGFkZGluZzogNnB4IDEwcHg7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0bWFyZ2luLXJpZ2h0OiAxMHB4OyAvKiBPcHRpb25hbDogc3BhY2UgaWYgb3RoZXIgY29udHJvbHMgYXJlIGFkZGVkICovXHJcbn1cclxuXHJcbi50Zy1rYW5iYW4tZmlsdGVyLWlucHV0OmZvY3VzIHtcclxuXHRvdXRsaW5lOiBub25lO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAxcHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLnRnLWthbmJhbi1jb2x1bW4tY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZ3JvdzogMTsgLyogVGFrZSByZW1haW5pbmcgaGVpZ2h0ICovXHJcblx0b3ZlcmZsb3cteDogYXV0bzsgLyogQWxsb3cgaG9yaXpvbnRhbCBzY3JvbGxpbmcgZm9yIGNvbHVtbnMgKi9cclxuXHRvdmVyZmxvdy15OiBoaWRkZW47IC8qIFByZXZlbnQgdmVydGljYWwgc2Nyb2xsaW5nIGhlcmUgKi9cclxuXHRwYWRkaW5nOiAxMHB4O1xyXG5cdGdhcDogMTBweDsgLyogU3BhY2UgYmV0d2VlbiBjb2x1bW5zICovXHJcblx0aGVpZ2h0OiAxMDAlOyAvKiBOZWVkZWQgZm9yIGNoaWxkcmVuIGhlaWdodCAqL1xyXG5cclxuXHQvKiBNb2JpbGUgc2Nyb2xsaW5nIGltcHJvdmVtZW50cyAqL1xyXG5cdC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgLyogU21vb3RoIGhvcml6b250YWwgc2Nyb2xsaW5nIG9uIGlPUyAqL1xyXG5cdC8qIENvbmRpdGlvbmFsIG92ZXJzY3JvbGwgYmVoYXZpb3IgLSBwcmV2ZW50IGJvdW5jZSBvbiBkZXNrdG9wLCBhbGxvdyBvbiBtb2JpbGUgZm9yIGRyYWcgKi9cclxuXHRvdmVyc2Nyb2xsLWJlaGF2aW9yLXg6IGF1dG87IC8qIEFsbG93IGRlZmF1bHQgYmVoYXZpb3IgZm9yIG1vYmlsZSBkcmFnIGNvbXBhdGliaWxpdHkgKi9cclxuXHRzY3JvbGwtc25hcC10eXBlOiB4IHByb3hpbWl0eTsgLyogS2VlcCBzbmFwIGZvciBtb2JpbGUgVVggKi9cclxuXHRzY3JvbGwtYmVoYXZpb3I6IHNtb290aDsgLyogU21vb3RoIHNjcm9sbGluZyAqL1xyXG59XHJcblxyXG4vKiBEZXNrdG9wLXNwZWNpZmljOiBQcmV2ZW50IHNjcm9sbCBib3VuY2UgKi9cclxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xyXG5cdC50Zy1rYW5iYW4tY29sdW1uLWNvbnRhaW5lciB7XHJcblx0XHRvdmVyc2Nyb2xsLWJlaGF2aW9yLXg6IG5vbmU7IC8qIFByZXZlbnQgYm91bmNlIG9uIGRlc2t0b3AgKi9cclxuXHRcdHNjcm9sbC1zbmFwLXR5cGU6IG5vbmU7IC8qIERpc2FibGUgc25hcCBvbiBkZXNrdG9wICovXHJcblx0fVxyXG59XHJcblxyXG4udGcta2FuYmFuLWNvbHVtbiB7XHJcblx0ZmxleDogMCAwIDI4MHB4OyAvKiBGaXhlZCB3aWR0aCBmb3IgY29sdW1ucywgbm8gc2hyaW5raW5nL2dyb3dpbmcgKi9cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRoZWlnaHQ6IDEwMCU7IC8qIEZpbGwgY29udGFpbmVyIGhlaWdodCAqL1xyXG5cdG1heC1oZWlnaHQ6IDEwMCU7IC8qIFByZXZlbnQgZXhjZWVkaW5nIGNvbnRhaW5lciAqL1xyXG5cdG92ZXJmbG93OiBoaWRkZW47IC8qIEhpZGUgb3ZlcmZsb3cgd2l0aGluIHRoZSBjb2x1bW4gKi9cclxuXHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cclxuXHQvKiBNb2JpbGUgc2Nyb2xsIHNuYXAgZm9yIGJldHRlciBVWCAqL1xyXG5cdHNjcm9sbC1zbmFwLWFsaWduOiBzdGFydDtcclxufVxyXG5cclxuLyogRGVza3RvcC1zcGVjaWZpYzogRGlzYWJsZSBzY3JvbGwgc25hcCAqL1xyXG5AbWVkaWEgKGhvdmVyOiBob3ZlcikgYW5kIChwb2ludGVyOiBmaW5lKSB7XHJcblx0LnRnLWthbmJhbi1jb2x1bW4ge1xyXG5cdFx0c2Nyb2xsLXNuYXAtYWxpZ246IG5vbmU7XHJcblx0fVxyXG59XHJcblxyXG4udGcta2FuYmFuLWNvbHVtbi1oZWFkZXIge1xyXG5cdHBhZGRpbmc6IDhweCAxMnB4O1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW1uKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0ZmxleC1zaHJpbms6IDA7IC8qIFByZXZlbnQgaGVhZGVyIGZyb20gc2hyaW5raW5nICovXHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi50Zy1rYW5iYW4tY29sdW1uLWNvbnRlbnQge1xyXG5cdGZsZXgtZ3JvdzogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdHBhZGRpbmc6IDhweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiA4cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcclxuXHQvKiBwYWRkaW5nLXJpZ2h0OiAwOyAqL1xyXG5cdC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxuXHRvdmVyc2Nyb2xsLWJlaGF2aW9yOiBjb250YWluOyAvKiBLZWVwIGNvbnRhaW4gZm9yIG1vYmlsZSBkcmFnIGNvbXBhdGliaWxpdHkgKi9cclxuXHRzY3JvbGwtYmVoYXZpb3I6IHNtb290aDsgLyogU21vb3RoIHNjcm9sbGluZyAqL1xyXG59XHJcblxyXG4vKiBEZXNrdG9wLXNwZWNpZmljOiBQcmV2ZW50IHZlcnRpY2FsIHNjcm9sbCBib3VuY2UgKi9cclxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xyXG5cdC50Zy1rYW5iYW4tY29sdW1uLWNvbnRlbnQge1xyXG5cdFx0b3ZlcnNjcm9sbC1iZWhhdmlvcjogbm9uZTsgLyogUHJldmVudCBib3VuY2Ugb24gZGVza3RvcCAqL1xyXG5cdH1cclxufVxyXG4vKiAtLS0gQ2FyZCBTdHlsaW5nIC0tLSAqL1xyXG4udGcta2FuYmFuLWNhcmQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IDEwcHggMTJweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjdXJzb3I6IGdyYWI7XHJcblx0dHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XHJcblxyXG5cdC8qIEVuc3VyZSBjYXJkIGZpdHMgd2l0aGluIGNvbHVtbiBhbmQgaGFuZGxlcyBjb250ZW50ICovXHJcblx0bWF4LXdpZHRoOiAxMDAlOyAvKiBQcmV2ZW50IGNhcmQgZnJvbSBleGNlZWRpbmcgcGFyZW50IHdpZHRoICovXHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDsgLyogSW5jbHVkZSBwYWRkaW5nL2JvcmRlciBpbiB3aWR0aCAqL1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7IC8qIEFsbG93IHRleHQgd3JhcHBpbmcgKi9cclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuXHJcblx0LyogTW9iaWxlIHRvdWNoIGltcHJvdmVtZW50cyAqL1xyXG5cdHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uOyAvKiBPcHRpbWl6ZSBmb3IgdG91Y2ggaW50ZXJhY3Rpb25zICovXHJcblx0dXNlci1zZWxlY3Q6IG5vbmU7IC8qIFByZXZlbnQgdGV4dCBzZWxlY3Rpb24gZHVyaW5nIGRyYWcgKi9cclxuXHQtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG5cdC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0LW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNhcmQgLnRnLWthbmJhbi1jYXJkLWNvbnRlbnQge1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNhcmQ6aG92ZXIge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1tKTtcclxufVxyXG5cclxuLnRnLWthbmJhbi1jYXJkLnRhc2stY29tcGxldGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0b3BhY2l0eTogMC43O1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNhcmQudGFzay1jb21wbGV0ZWQgLnRnLWthbmJhbi1jYXJkLWNvbnRlbnQge1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnRnLWthbmJhbi1jYXJkLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRtYXJnaW4tYm90dG9tOiA2cHg7XHJcbn1cclxuXHJcbi50Zy1rYW5iYW4tY2FyZC1jb250ZW50IHA6bGFzdC1jaGlsZCB7XHJcblx0bWFyZ2luLWJvdHRvbTogMDsgLyogQXZvaWQgZXh0cmEgc3BhY2UgZnJvbSBwYXJhZ3JhcGggKi9cclxuXHRtYXJnaW4tYmxvY2stZW5kOiAwO1xyXG5cdG1hcmdpbi1ibG9jay1zdGFydDogMDtcclxufVxyXG5cclxuLnRnLWthbmJhbi1jYXJkLW1ldGFkYXRhIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxuXHRnYXA6IDRweCA4cHg7IC8qIFJvdyBhbmQgY29sdW1uIGdhcCAqL1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNhcmQtbWV0YWRhdGEgLnRhc2stZGF0ZSxcclxuLnRnLWthbmJhbi1jYXJkLW1ldGFkYXRhIC50YXNrLXRhZ3MtY29udGFpbmVyLFxyXG4udGcta2FuYmFuLWNhcmQtbWV0YWRhdGEgLnRhc2stcHJpb3JpdHkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDRweDtcclxuXHRwYWRkaW5nOiAycHggNXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblxyXG5cdG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDA7XHJcblx0bWFyZ2luLWlubGluZS1lbmQ6IDA7XHJcblx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0bWFyZ2luLXJpZ2h0OiAwO1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNhcmQtbWV0YWRhdGEgLnRhc2stdGFnIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoXHJcblx0XHQtLWJhY2tncm91bmQtbW9kaWZpZXItYWNjZW50LWhvdmVyXHJcblx0KTsgLyogT3IgdXNlIHRhZyBjb2xvciAqL1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0cGFkZGluZzogMXB4IDRweDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC1zaXplOiBjYWxjKHZhcigtLWZvbnQtdWktc21hbGwpICogMC45KTtcclxufVxyXG5cclxuLnRnLWthbmJhbi1jYXJkLW1ldGFkYXRhIC50YXNrLWR1ZS1kYXRlLnRhc2stb3ZlcmR1ZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtZXJyb3IpO1xyXG59XHJcbi50Zy1rYW5iYW4tY2FyZC1tZXRhZGF0YSAudGFzay1kdWUtZGF0ZS50YXNrLWR1ZS10b2RheSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtd2FybmluZyk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC13YXJuaW5nKTtcclxufVxyXG5cclxuLyogUHJpb3JpdHkgaW5kaWNhdG9ycyAoc2ltcGxlIGV4YW1wbGUpICovXHJcbi50Zy1rYW5iYW4tY2FyZC1tZXRhZGF0YSAudGFzay1wcmlvcml0eS5wcmlvcml0eS0xIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG59XHJcbi50Zy1rYW5iYW4tY2FyZC1tZXRhZGF0YSAudGFzay1wcmlvcml0eS5wcmlvcml0eS0yIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nKTtcclxufVxyXG4udGcta2FuYmFuLWNhcmQtbWV0YWRhdGEgLnRhc2stcHJpb3JpdHkucHJpb3JpdHktMyB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcbi8qIEFkZCBtb3JlIHByaW9yaXR5IHN0eWxlcyBpZiBuZWVkZWQgKi9cclxuXHJcbi8qIC0tLSBEcmFnIGFuZCBEcm9wIFN0eWxpbmcgLS0tICovXHJcbi50Zy1rYW5iYW4tY2FyZC1kcmFnZ2luZyB7XHJcblx0LyogU3R5bGUgZm9yIHRoZSBjbG9uZSBiZWluZyBkcmFnZ2VkICovXHJcblx0Lyogb3BhY2l0eTogMC44OyAqLyAvKiBSZW1vdmVkIG9wYWNpdHkgKi9cclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbCk7IC8qIE1vcmUgcHJvbWluZW50IHNoYWRvdyAqL1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNhcmQtZ2hvc3Qge1xyXG5cdC8qIFN0eWxlIGZvciB0aGUgb3JpZ2luYWwgY2FyZCB3aGVuIGEgY2xvbmUgaXMgZHJhZ2dlZCAqL1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7XHJcblx0Ym9yZGVyOiAxcHggZGFzaGVkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3gtc2hhZG93OiBub25lO1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNvbHVtbi1jb250ZW50LnRnLWthbmJhbi1kcm9wLXRhcmdldC1hY3RpdmUge1xyXG5cdC8qIFN0eWxlIGZvciBwb3RlbnRpYWwgZHJvcCB6b25lcyB3aGVuIGRyYWdnaW5nIHN0YXJ0cyAqL1xyXG5cdC8qIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpOyAqL1xyXG5cdG91dGxpbmU6IDJweCBkYXNoZWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY2NlbnQtaG92ZXIpO1xyXG5cdG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNvbHVtbi1jb250ZW50LnRnLWthbmJhbi1kcm9wLXRhcmdldC1ob3ZlciB7XHJcblx0LyogU3R5bGUgZm9yIHRoZSBzcGVjaWZpYyBkcm9wIHpvbmUgYmVpbmcgaG92ZXJlZCBvdmVyICovXHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4vKiBTdHlsZXMgZm9yIEthbmJhbiBkcm9wIGluZGljYXRvcnMgKi9cclxuLnRnLWthbmJhbi1jYXJkLS1kcm9wLWluZGljYXRvci1iZWZvcmUge1xyXG5cdG1hcmdpbi10b3A6IDEwcHg7IC8qIEluY3JlYXNlZCBtYXJnaW4gKi9cclxuXHRib3JkZXItdG9wOiAycHggZGFzaGVkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7IC8qIEluZGljYXRvciAqL1xyXG5cdC8qIHBhZGRpbmctdG9wOiAyMHB4OyAqLyAvKiBSZW1vdmVkIHBhZGRpbmcgKi9cclxuXHR0cmFuc2l0aW9uOiBtYXJnaW4tdG9wIDAuMXMgZWFzZS1vdXQsIGJvcmRlci10b3AgMC4xcyBlYXNlLW91dDsgLyogVXBkYXRlZCB0cmFuc2l0aW9uICovXHJcbn1cclxuXHJcbi50Zy1rYW5iYW4tY2FyZC0tZHJvcC1pbmRpY2F0b3ItYWZ0ZXIge1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7IC8qIEluY3JlYXNlZCBtYXJnaW4gKi9cclxuXHRib3JkZXItYm90dG9tOiAycHggZGFzaGVkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7IC8qIEluZGljYXRvciAqL1xyXG5cdC8qIHBhZGRpbmctYm90dG9tOiAyMHB4OyAqLyAvKiBSZW1vdmVkIHBhZGRpbmcgKi9cclxuXHR0cmFuc2l0aW9uOiBtYXJnaW4tYm90dG9tIDAuMXMgZWFzZS1vdXQsIGJvcmRlci1ib3R0b20gMC4xcyBlYXNlLW91dDsgLyogVXBkYXRlZCB0cmFuc2l0aW9uICovXHJcbn1cclxuXHJcbi8qIE9wdGlvbmFsOiBTdHlsZSBmb3IgZHJvcHBpbmcgaW50byBhbiBlbXB0eSBjb2x1bW4gKi9cclxuLnRnLWthbmJhbi1jb2x1bW4tY29udGVudC0tZHJvcC1pbmRpY2F0b3ItZW1wdHkge1xyXG5cdGJvcmRlcjogMnB4IGRhc2hlZCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdG1pbi1oZWlnaHQ6IDUwcHg7IC8qIEVuc3VyZSBlbXB0eSBjb2x1bW4gaGFzIHNvbWUgaGVpZ2h0IGZvciB0aGUgYm9yZGVyICovXHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDsgLyogSW5jbHVkZSBib3JkZXIgaW4gaGVpZ2h0IGNhbGN1bGF0aW9uICovXHJcblx0bWFyZ2luLXRvcDogNXB4OyAvKiBBZGQgc29tZSBzcGFjZSAqL1xyXG5cdG1hcmdpbi1ib3R0b206IDVweDsgLyogQWRkIHNvbWUgc3BhY2UgKi9cclxufVxyXG5cclxuLyogRW5zdXJlIHRyYW5zaXRpb25zIGFyZSBzbW9vdGggd2hlbiBjbGFzc2VzIGFyZSByZW1vdmVkICovXHJcbi50Zy1rYW5iYW4tY2FyZCB7XHJcblx0LyogRW5zdXJlIGV4aXN0aW5nIHRyYW5zaXRpb25zIGRvbid0IGNvbmZsaWN0LCBvciBhZGQgYmFzZSB0cmFuc2l0aW9uICovXHJcblx0dHJhbnNpdGlvbjogbWFyZ2luIDAuMXMgZWFzZS1vdXQsIHBhZGRpbmcgMC4xcyBlYXNlLW91dCxcclxuXHRcdGJvcmRlciAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4ycyBlYXNlLW91dCxcclxuXHRcdGJveC1zaGFkb3cgMC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UtaW4tb3V0OyAvKiBNZXJnZWQgdHJhbnNpdGlvbnMgKi9cclxufVxyXG5cclxuLmRyb3AtdGFyZ2V0LWFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxMjgsIDAsIDAuMik7IC8qIFx1NTM0QVx1OTAwRlx1NjYwRVx1N0VGRlx1ODI3Mlx1ODBDQ1x1NjY2RiAqL1xyXG5cdG91dGxpbmU6IDJweCBkYXNoZWQgZ3JlZW47IC8qIFx1N0VGRlx1ODI3Mlx1ODY1QVx1N0VCRlx1OEZCOVx1Njg0NiAqL1xyXG5cdC8qIFx1NEY2MFx1NTNFRlx1ODBGRFx1OEZEOFx1OTcwMFx1ODk4MVx1OEMwM1x1NjU3NCBwYWRkaW5nIFx1NjIxNiBtYXJnaW4gXHU2NzY1ICdcdTY1M0VcdTU5MjcnIFx1ODlDNlx1ODlDOVx1NTMzQVx1NTdERiAqL1xyXG5cdC8qIHBhZGRpbmctdG9wOiAyMHB4OyAqL1xyXG5cdC8qIHBhZGRpbmctYm90dG9tOiAyMHB4OyAqL1xyXG59XHJcblxyXG4vKiBBZGQgQ2FyZCBCdXR0b24gKi9cclxuLnRnLWthbmJhbi1hZGQtY2FyZC1jb250YWluZXIge1xyXG5cdHBhZGRpbmc6IDhweDtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGZsZXgtc2hyaW5rOiAwOyAvKiBQcmV2ZW50IGNvbnRhaW5lciBmcm9tIHNocmlua2luZyAqL1xyXG59XHJcblxyXG4vKiBTdHlsZXMgZm9yIHRoZSBBZGQgQ2FyZCBidXR0b24gaW4gYm9hcmQgdmlldyAqL1xyXG4udGFzay1nZW5pdXMtYWRkLWNhcmQtY29udGFpbmVyIHtcclxuXHRwYWRkaW5nOiA4cHg7XHJcblx0bWFyZ2luLXRvcDogYXV0bzsgLyogUHVzaCB0byB0aGUgYm90dG9tIGlmIHRoZSBjb2x1bW4gdXNlcyBmbGV4ICovXHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4udGcta2FuYmFuLWFkZC1jYXJkLWJ1dHRvbiB7XHJcblx0LS1pY29uLXNpemU6IDE2cHg7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiBNYWtlIGl0IGxlc3MgcHJvbWluZW50ICovXHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLWluLW91dCwgY29sb3IgMC4ycyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLnRnLWthbmJhbi1hZGQtY2FyZC1idXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi8qIENvbHVtbiBEcmFnICYgRHJvcCBTdHlsaW5nICovXHJcbi50Zy1rYW5iYW4tY29sdW1uLWRyYWdnaW5nIHtcclxuXHQvKiBTdHlsZSBmb3IgdGhlIGNvbHVtbiBiZWluZyBkcmFnZ2VkICovXHJcblx0dHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XHJcblx0b3BhY2l0eTogMC44O1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy14bCk7XHJcblx0ei1pbmRleDogMTAwMDtcclxufVxyXG5cclxuLnRnLWthbmJhbi1jb2x1bW4tZ2hvc3Qge1xyXG5cdC8qIFN0eWxlIGZvciB0aGUgZ2hvc3QgcGxhY2Vob2xkZXIgd2hlbiBkcmFnZ2luZyBjb2x1bW5zICovXHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlcjogMnB4IGRhc2hlZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjY2VudCk7XHJcblx0b3BhY2l0eTogMC41O1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNvbHVtbi1oZWFkZXIge1xyXG5cdC8qIE1ha2UgY29sdW1uIGhlYWRlcnMgZHJhZ2dhYmxlICovXHJcblx0Y3Vyc29yOiBncmFiO1xyXG59XHJcblxyXG4udGcta2FuYmFuLWNvbHVtbi1oZWFkZXI6YWN0aXZlIHtcclxuXHRjdXJzb3I6IGdyYWJiaW5nO1xyXG59XHJcbiIsICIvKiBGaWx0ZXIgQ29tcG9uZW50IFN0eWxlcyAqL1xyXG4uZmlsdGVyLWNvbXBvbmVudCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0bWluLWhlaWdodDogNDhweDtcclxuXHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLyogRmlsdGVyIFBpbGxzIENvbnRhaW5lciAqL1xyXG4uZmlsdGVyLXBpbGxzLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLyogRmlsdGVyIENvbnRyb2xzICovXHJcbi5maWx0ZXItY29udHJvbHMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tbGVmdDogYXV0bztcclxufVxyXG5cclxuLyogRmlsdGVyIFBpbGxzICovXHJcbi5maWx0ZXItcGlsbCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdHBhZGRpbmc6IDVweCA4cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGFuaW1hdGlvbjogZmlsdGVyLXBpbGwtYXBwZWFyIDIwMG1zIGVhc2Utb3V0O1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tZHVyYXRpb24tZmFzdCksXHJcblx0XHR0cmFuc2Zvcm0gdmFyKC0tZHVyYXRpb24tZmFzdCk7XHJcbn1cclxuXHJcbi5maWx0ZXItcGlsbC1yZW1vdmUgLmNsaWNrYWJsZS1pY29uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcclxufVxyXG5cclxuLmZpbHRlci1waWxsOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXRlcnRpYXJ5KTtcclxufVxyXG5cclxuLmZpbHRlci1waWxsLWNhdGVnb3J5IHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLmZpbHRlci1waWxsLXZhbHVlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uZmlsdGVyLXBpbGwtcmVtb3ZlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0cGFkZGluZzogMDtcclxuXHRtYXJnaW4tbGVmdDogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tZHVyYXRpb24tZmFzdCksXHJcblx0XHRjb2xvciB2YXIoLS1kdXJhdGlvbi1mYXN0KTtcclxufVxyXG5cclxuLmZpbHRlci1waWxsLXJlbW92ZTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmZpbHRlci1waWxsLXJlbW92ZS1pY29uIHtcclxuXHRmb250LXNpemU6IDE2cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4vKiBGaWx0ZXIgQnV0dG9ucyAqL1xyXG4uZmlsdGVyLWFkZC1idXR0b24sXHJcbi5maWx0ZXItY2xlYXItYWxsLWJ1dHRvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDZweCAxMHB4O1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uZmlsdGVyLWFkZC1idXR0b24ge1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLmZpbHRlci1hZGQtaWNvbiB7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtYm9sZCk7XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLyogRmlsdGVyIERyb3Bkb3duICovXHJcbi5maWx0ZXItZHJvcGRvd24ge1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHR3aWR0aDogMjIwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LWwpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHR6LWluZGV4OiB2YXIoLS1sYXllci1wb3BvdmVyKTtcclxuXHRtYXgtaGVpZ2h0OiA0MDBweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0b3BhY2l0eTogMDtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS1kdXJhdGlvbi1ub3JtYWwpLCB0cmFuc2Zvcm0gdmFyKC0tZHVyYXRpb24tbm9ybWFsKTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLXZpc2libGUge1xyXG5cdG9wYWNpdHk6IDE7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLWhlYWRlciB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5maWx0ZXItZHJvcGRvd24tc2VhcmNoIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLXNlYXJjaDpmb2N1cyB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1mb2N1cy1yaW5nLWNvbG9yKTtcclxufVxyXG5cclxuLmZpbHRlci1kcm9wZG93bi1saXN0IHtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdG1heC1oZWlnaHQ6IDM1MHB4O1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS1kdXJhdGlvbi1mYXN0KTtcclxufVxyXG5cclxuLmZpbHRlci1kcm9wZG93bi1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi5maWx0ZXItZHJvcGRvd24taXRlbS1sYWJlbCB7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLmZpbHRlci1kcm9wZG93bi1pdGVtLWFycm93IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0Zm9udC1zaXplOiAxOHB4O1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLWl0ZW0tYXJyb3cuYmFjayB7XHJcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLmZpbHRlci1kcm9wZG93bi1iYWNrIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi5maWx0ZXItZHJvcGRvd24tc2VwYXJhdG9yIHtcclxuXHRoZWlnaHQ6IDFweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kaXZpZGVyLWNvbG9yKTtcclxuXHRtYXJnaW46IHZhcigtLXNpemUtNC0xKSAwO1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLWVtcHR5IHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLXZhbHVlLWl0ZW0ge1xyXG5cdHBhZGRpbmctbGVmdDogdmFyKC0tc2l6ZS00LTQpO1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLWNhdGVnb3J5IHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLmZpbHRlci1kcm9wZG93bi12YWx1ZS1wcmV2aWV3IHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMSkgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLWR1cmF0aW9uLWZhc3QpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmZpbHRlci1kcm9wZG93bi12YWx1ZS1wcmV2aWV3OmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi8qIEFuaW1hdGlvbnMgKi9cclxuQGtleWZyYW1lcyBmaWx0ZXItcGlsbC1hcHBlYXIge1xyXG5cdGZyb20ge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMC45KTtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcblx0fVxyXG59XHJcblxyXG4uZmlsdGVyLXBpbGwtcmVtb3Zpbmcge1xyXG5cdG9wYWNpdHk6IDA7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgZWFzZS1vdXQsIHRyYW5zZm9ybSAxNTBtcyBlYXNlLW91dDtcclxufVxyXG4iLCAiLmdhbnR0LWNoYXJ0LWNvbnRhaW5lciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblxyXG5cdC0tZ2FudHQtaGVhZGVyLWhlaWdodDogNTBweDtcclxuXHQtLWdhbnR0LXJvdy1oZWlnaHQ6IDQwcHg7XHJcblx0LS1nYW50dC1iYXItaGVpZ2h0OiAyMHB4O1xyXG5cdC0tZ2FudHQtYmFyLXJhZGl1czogM3B4O1xyXG5cclxuXHQtLWdhbnR0LWJnLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0LS1nYW50dC1ncmlkLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0LS1nYW50dC1yb3ctY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHQtLWdhbnR0LWJhci1jb2xvcjogdmFyKC0tY29sb3ItYmx1ZSk7XHJcblx0LS1nYW50dC1taWxlc3RvbmUtY29sb3I6IHZhcigtLWNvbG9yLXB1cnBsZSk7XHJcblx0LS1nYW50dC1wcm9ncmVzcy1jb2xvcjogdmFyKC0tY29sb3ItYmx1ZSk7XHJcblx0LS1nYW50dC10b2RheS1jb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KTtcclxufVxyXG5cclxuLmdhbnR0LXN2ZyB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaW50ZXJmYWNlKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdHVzZXItc2VsZWN0OiBub25lO1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLWJnIHtcclxuXHRmaWxsOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdHN0cm9rZTogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHN0cm9rZS13aWR0aDogMXB4O1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLXRleHQge1xyXG5cdGZpbGw6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbi5nYW50dC1ncmlkLWJnIHtcclxuXHRmaWxsOiB0cmFuc3BhcmVudDtcclxuXHRzdHJva2U6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRzdHJva2Utd2lkdGg6IDA7XHJcbn1cclxuXHJcbi5nYW50dC1ncmlkLWxpbmUtdmVydGljYWwge1xyXG5cdHN0cm9rZTogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHN0cm9rZS13aWR0aDogMXB4O1xyXG5cdHN0cm9rZS1kYXNoYXJyYXk6IDIsIDI7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWl0ZW0ge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stYmFyIHtcclxuXHRmaWxsOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdHN0cm9rZTogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxuXHRzdHJva2Utd2lkdGg6IDFweDtcclxuXHR0cmFuc2l0aW9uOiBmaWxsIDAuMXMgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWl0ZW06aG92ZXIgLmdhbnR0LXRhc2stYmFyIHtcclxuXHRmaWxsOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4uZ2FudHQtdGFzay1taWxlc3RvbmUge1xyXG5cdGZpbGw6IHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcblx0c3Ryb2tlOiB2YXIoLS1jb2xvci1vcmFuZ2UtYm9yZGVyKTtcclxuXHRzdHJva2Utd2lkdGg6IDFweDtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stbGFiZWwge1xyXG5cdGZpbGw6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRmb250LXNpemU6IGNhbGModmFyKC0tZm9udC11aS1zbWFsbCkgKiAwLjkpO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdHdoaXRlLXNwYWNlOiBwcmU7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWJhci5zdGF0dXMtY29tcGxldGVkIHtcclxuXHRmaWxsOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0c3Ryb2tlOiB2YXIoLS1jb2xvci1ncmVlbi1ib3JkZXIpO1xyXG59XHJcblxyXG4uZ2FudHQtdGFzay1iYXIucHJpb3JpdHktaGlnaCB7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBHYW50dCBDaGFydCBTdHlsZXNcclxuICovXHJcblxyXG4uZ2FudHQtaGVhZGVyIHtcclxuXHRwb3NpdGlvbjogc3RpY2t5O1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdHotaW5kZXg6IDEwO1xyXG5cdGhlaWdodDogdmFyKC0tZ2FudHQtaGVhZGVyLWhlaWdodCk7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWdhbnR0LWdyaWQtY29sb3IpO1xyXG5cdHVzZXItc2VsZWN0OiBub25lO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdhbnR0LWJnLWNvbG9yKTtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLXJvdyB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGhlaWdodDogNTAlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLXJvdy5wcmltYXJ5IHtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tZ2FudHQtZ3JpZC1jb2xvcik7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuLmdhbnR0LWhlYWRlci1jZWxsIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tZ2FudHQtZ3JpZC1jb2xvcik7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nYW50dC1iZy1jb2xvcik7XHJcblx0cG9pbnRlci1ldmVudHM6IGF1dG87XHJcbn1cclxuXHJcbi5nYW50dC1ib2R5IHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGF1dG87XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdHBhZGRpbmctdG9wOiB2YXIoLS1nYW50dC1oZWFkZXItaGVpZ2h0KTtcclxuXHRtYXJnaW4tdG9wOiBjYWxjKHZhcigtLWdhbnR0LWhlYWRlci1oZWlnaHQpICogLTEpO1xyXG59XHJcblxyXG4uZ2FudHQtZ3JpZCB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogdmFyKC0tZ2FudHQtaGVhZGVyLWhlaWdodCk7XHJcblx0bGVmdDogMDtcclxuXHRoZWlnaHQ6IGNhbGMoMTAwJSAtIHZhcigtLWdhbnR0LWhlYWRlci1oZWlnaHQpKTtcclxuXHRtaW4td2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5nYW50dC1ncmlkLWNvbHVtbiB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tZ2FudHQtZ3JpZC1jb2xvcik7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxuLmdhbnR0LWdyaWQtY29sdW1uLnRvZGF5IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nYW50dC10b2RheS1jb2xvcik7XHJcbn1cclxuXHJcbi5nYW50dC1ncmlkLXJvdyB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IDA7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWdhbnR0LWdyaWQtY29sb3IpO1xyXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2FudHQtcm93LWNvbG9yKTtcclxufVxyXG5cclxuLmdhbnR0LWdyaWQtcm93Om50aC1jaGlsZChvZGQpIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nYW50dC1iZy1jb2xvcik7XHJcbn1cclxuXHJcbi5nYW50dC1iYXJzIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiB2YXIoLS1nYW50dC1oZWFkZXItaGVpZ2h0KTtcclxuXHRsZWZ0OiAwO1xyXG5cdGhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0tZ2FudHQtaGVhZGVyLWhlaWdodCkpO1xyXG5cdG1pbi13aWR0aDogMTAwJTtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stY29udGFpbmVyIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRwb2ludGVyLWV2ZW50czogYXV0bztcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMXMgZWFzZTtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stY29udGFpbmVyOmhvdmVyIHtcclxuXHR6LWluZGV4OiAxMDtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWJhci5taWxlc3RvbmUge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdhbnR0LW1pbGVzdG9uZS1jb2xvcik7XHJcblx0d2lkdGg6IDE1cHggIWltcG9ydGFudDtcclxuXHRoZWlnaHQ6IDE1cHggIWltcG9ydGFudDtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0dHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG5cdHRvcDogNTAlO1xyXG5cdG1hcmdpbi10b3A6IC03LjVweDtcclxuXHRsZWZ0OiA1MCU7XHJcblx0bWFyZ2luLWxlZnQ6IC03LjVweDtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stcHJvZ3Jlc3Mge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2FudHQtcHJvZ3Jlc3MtY29sb3IpO1xyXG5cdG9wYWNpdHk6IDAuNztcclxufVxyXG5cclxuLmdhbnR0LXRhc2stbGFiZWwge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiBjYWxjKDEwMCUgKyA4cHgpO1xyXG5cdHRvcDogMDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGxpbmUtaGVpZ2h0OiB2YXIoLS1nYW50dC1iYXItaGVpZ2h0KTtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stY29udGFpbmVyLnJpZ2h0LWFsaWduZWQgLmdhbnR0LXRhc2stbGFiZWwge1xyXG5cdGxlZnQ6IGF1dG87XHJcblx0cmlnaHQ6IGNhbGMoMTAwJSArIDhweCk7XHJcblx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA2ODBweCkge1xyXG5cdC5nYW50dC1oZWFkZXItY2VsbCB7XHJcblx0XHRmb250LXNpemU6IDEwcHg7XHJcblx0fVxyXG5cclxuXHQuZ2FudHQtdGFzay1sYWJlbCB7XHJcblx0XHRmb250LXNpemU6IDEwcHg7XHJcblx0fVxyXG59XHJcblxyXG4uZ2FudHQtY2hhcnQtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLWNvbnRhaW5lciB7XHJcblx0aGVpZ2h0OiA0MHB4O1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLXN2ZyB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5nYW50dC1oZWFkZXItdGljay1tYWpvcixcclxuLmdhbnR0LWhlYWRlci10aWNrLW1pbm9yLFxyXG4uZ2FudHQtaGVhZGVyLXRpY2stZGF5LFxyXG4uZ2FudHQtaGVhZGVyLXRvZGF5LW1hcmtlciB7XHJcblx0c3Ryb2tlOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0c3Ryb2tlLXdpZHRoOiAxO1xyXG59XHJcbi5nYW50dC1oZWFkZXItdGljay1tYWpvciB7XHJcblx0c3Ryb2tlLXdpZHRoOiAxLjU7XHJcbn1cclxuLmdhbnR0LWhlYWRlci10b2RheS1tYXJrZXIge1xyXG5cdHN0cm9rZTogdmFyKC0tY29sb3Itb3JhbmdlKTtcclxuXHRzdHJva2Utd2lkdGg6IDEuNTtcclxuXHRzdHJva2UtZGFzaGFycmF5OiA0LCAyO1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLWxhYmVsLW1ham9yLFxyXG4uZ2FudHQtaGVhZGVyLWxhYmVsLW1pbm9yLFxyXG4uZ2FudHQtaGVhZGVyLWxhYmVsLWRheSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRmaWxsOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG4uZ2FudHQtaGVhZGVyLWxhYmVsLW1ham9yIHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGZpbGw6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmdhbnR0LXNjcm9sbC1jb250YWluZXIge1xyXG5cdGZsZXgtZ3JvdzogMTtcclxuXHRvdmVyZmxvdzogYXV0bztcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5nYW50dC1jb250ZW50LXdyYXBwZXIge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG59XHJcblxyXG4uZ2FudHQtZ3JpZC1saW5lLW1ham9yLFxyXG4uZ2FudHQtZ3JpZC1saW5lLW1pbm9yIHtcclxuXHRzdHJva2U6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxuXHRzdHJva2Utd2lkdGg6IDAuNTtcclxufVxyXG4uZ2FudHQtZ3JpZC1saW5lLW1ham9yIHtcclxuXHRzdHJva2Utd2lkdGg6IDE7XHJcbn1cclxuLmdhbnR0LWdyaWQtbGluZS1ob3Jpem9udGFsIHtcclxuXHRzdHJva2U6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRzdHJva2Utd2lkdGg6IDE7XHJcbn1cclxuXHJcbi5nYW50dC1ncmlkLXRvZGF5LW1hcmtlciB7XHJcblx0c3Ryb2tlOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG5cdHN0cm9rZS13aWR0aDogMTtcclxuXHRzdHJva2UtZGFzaGFycmF5OiA0LCAyO1xyXG59XHJcblxyXG4uZ2FudHQtdGFzay1pdGVtIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWJhciB7XHJcblx0ZmlsbDogdmFyKC0tY29sb3ItYmx1ZSk7XHJcblx0c3Ryb2tlOiB2YXIoLS1jb2xvci1ibHVlLWhvdmVyKTtcclxuXHRzdHJva2Utd2lkdGg6IDAuNTtcclxuXHR0cmFuc2l0aW9uOiBmaWxsIDAuMXMgZWFzZTtcclxufVxyXG4uZ2FudHQtdGFzay1pdGVtOmhvdmVyIC5nYW50dC10YXNrLWJhciB7XHJcblx0ZmlsbDogdmFyKC0tY29sb3ItYWNjZW50KTtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stbWlsZXN0b25lIHtcclxuXHRmaWxsOiB2YXIoLS1jb2xvci1wdXJwbGUpO1xyXG5cdHN0cm9rZTogdmFyKC0tY29sb3ItcHVycGxlKTtcclxuXHRzdHJva2Utd2lkdGg6IDE7XHJcblx0dHJhbnNpdGlvbjogZmlsbCAwLjFzIGVhc2U7XHJcbn1cclxuLmdhbnR0LXRhc2staXRlbTpob3ZlciAuZ2FudHQtdGFzay1taWxlc3RvbmUge1xyXG5cdGZpbGw6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWl0ZW0uc3RhdHVzLWRvbmUgLmdhbnR0LXRhc2stYmFyLFxyXG4uZ2FudHQtdGFzay1pdGVtLnN0YXR1cy1kb25lIC5nYW50dC10YXNrLW1pbGVzdG9uZSB7XHJcblx0ZmlsbDogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cdHN0cm9rZTogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cdG9wYWNpdHk6IDAuNztcclxufVxyXG4uZ2FudHQtdGFzay1pdGVtLnN0YXR1cy1jYW5jZWxsZWQgLmdhbnR0LXRhc2stYmFyLFxyXG4uZ2FudHQtdGFzay1pdGVtLnN0YXR1cy1jYW5jZWxsZWQgLmdhbnR0LXRhc2stbWlsZXN0b25lIHtcclxuXHRmaWxsOiB2YXIoLS1jb2xvci1yZWQpO1xyXG5cdHN0cm9rZTogdmFyKC0tY29sb3ItcmVkKTtcclxuXHRvcGFjaXR5OiAwLjY7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XHJcbn1cclxuLmdhbnR0LXRhc2staXRlbS5zdGF0dXMtaW5wcm9ncmVzcyAuZ2FudHQtdGFzay1iYXIge1xyXG59XHJcblxyXG4uZ2FudHQtdGFzay1sYWJlbC1mbyB7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stbGFiZWwtbWFya2Rvd24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjM7XHJcblx0cGFkZGluZzogMCAycHg7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4uZ2FudHQtdGFzay1sYWJlbC1tYXJrZG93biBwIHtcclxuXHRtYXJnaW46IDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmdhbnR0LW1pbGVzdG9uZS1sYWJlbC1jb250YWluZXIgcCB7XHJcblx0bWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xyXG5cdG1hcmdpbi1ibG9jay1lbmQ6IDA7XHJcblx0bWFyZ2luLWlubGluZS1zdGFydDogMDtcclxuXHRtYXJnaW4taW5saW5lLWVuZDogMDtcclxuXHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0bGluZS1oZWlnaHQ6IDEuMztcclxuXHRwYWRkaW5nOiAwIDJweDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWl0ZW0uc3RhdHVzLWRvbmUgLmdhbnR0LXRhc2stbGFiZWwtbWFya2Rvd24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuLmdhbnR0LXRhc2staXRlbS5zdGF0dXMtY2FuY2VsbGVkIC5nYW50dC10YXNrLWxhYmVsLW1hcmtkb3duIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xyXG59XHJcblxyXG4uZ2FudHQtbWlsZXN0b25lLWxhYmVsIHtcclxuXHRmaWxsOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5nYW50dC1maWx0ZXItYXJlYSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblxyXG5cdHdpZHRoOiAxMDAlO1xyXG5cclxuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtMi0yKTtcclxuXHRwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblxyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi5nYW50dC1maWx0ZXItYXJlYSAuZmlsdGVyLWNvbXBvbmVudCB7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLmdhbnR0LW9mZnNjcmVlbi1pbmRpY2F0b3Ige1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IGNhbGMoNTAlICsgMjBweCk7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG5cdHdpZHRoOiA4cHg7XHJcblx0aGVpZ2h0OiA4cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjgsIDEyOCwgMTI4LCAwLjYpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHR6LWluZGV4OiAxMDtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRkaXNwbGF5OiBub25lO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dDtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4uZ2FudHQtb2Zmc2NyZWVuLWluZGljYXRvcltzdHlsZSo9XCJkaXNwbGF5OiBub25lXCJdIHtcclxuXHRvcGFjaXR5OiAwO1xyXG59XHJcblxyXG4uZ2FudHQtb2Zmc2NyZWVuLWluZGljYXRvci1sZWZ0IHtcclxuXHRsZWZ0OiA1cHg7XHJcbn1cclxuXHJcbi5nYW50dC1vZmZzY3JlZW4taW5kaWNhdG9yLXJpZ2h0IHtcclxuXHRyaWdodDogNXB4O1xyXG59XHJcblxyXG4uZ2FudHQtaW5kaWNhdG9yLWNvbnRhaW5lciB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRib3R0b206IDA7XHJcblx0d2lkdGg6IHZhcigtLXNpemUtNC0zKTtcclxuXHR6LWluZGV4OiAxMDtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uZ2FudHQtaW5kaWNhdG9yLWNvbnRhaW5lci1sZWZ0IHtcclxuXHRsZWZ0OiAwO1xyXG59XHJcblxyXG4uZ2FudHQtaW5kaWNhdG9yLWNvbnRhaW5lci1yaWdodCB7XHJcblx0cmlnaHQ6IDA7XHJcbn1cclxuXHJcbi5nYW50dC1zaW5nbGUtaW5kaWNhdG9yIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdHdpZHRoOiB2YXIoLS1zaXplLTQtMik7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG5cdGN1cnNvcjogZGVmYXVsdDtcclxufVxyXG5cclxuLmdhbnR0LXNpbmdsZS1pbmRpY2F0b3I6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLmdhbnR0LWNoYXJ0LWNvbnRhaW5lciAuZ2FudHQtaW5kaWNhdG9yLWNvbnRhaW5lciB7XHJcblx0dG9wOiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQsIDQwcHgpICsgdmFyKC0tZmlsdGVyLWhlaWdodCwgMHB4KSk7XHJcblx0Ym90dG9tOiAxNXB4O1xyXG59XHJcblxyXG4uZ2FudHQtY2hhcnQtY29udGFpbmVyIC5nYW50dC1pbmRpY2F0b3ItY29udGFpbmVyLXJpZ2h0IHtcclxuXHRyaWdodDogMTVweDtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stbGFiZWwgcCB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGxpbmUtaGVpZ2h0OiB2YXIoLS1nYW50dC1iYXItaGVpZ2h0KTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuIiwgIi8qIHRhc2stcHJvcGVydHkgVmlldyBTdHlsZXMgKi9cclxuLnRhc2stcHJvcGVydHktY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LWNvbnRlbnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LWxlZnQtY29sdW1uIHtcclxuXHR3aWR0aDogbWF4KDEyMHB4LCAzMCUpO1xyXG5cdG1pbi13aWR0aDogbWluKDEyMHB4LCAzMCUpO1xyXG5cdG1heC13aWR0aDogMzAwcHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnRhc2stcHJvcGVydHktbGVmdC1jb2x1bW4ge1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktcmlnaHQtY29sdW1uIHtcclxuXHRmbGV4OiAxO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4udGFzay1wcm9wZXJ0eS1zaWRlYmFyLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtMTApO1xyXG59XHJcblxyXG4udGFzay1wcm9wZXJ0eS1zaWRlYmFyLXRpdGxlIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG5cclxuLm11bHRpLXNlbGVjdC1tb2RlIC50YXNrLXByb3BlcnR5LW11bHRpLXNlbGVjdC1idG4ge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG59XHJcblxyXG4udGFzay1wcm9wZXJ0eS1tdWx0aS1zZWxlY3QtYnRuIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LW11bHRpLXNlbGVjdC1idG46aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LXNpZGViYXItbGlzdCB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktbGlzdC1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogNHB4IDEycHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktbGlzdC1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktbGlzdC1pdGVtLnNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZSk7XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LWljb24ge1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4udGFzay1wcm9wZXJ0eS1uYW1lIHtcclxuXHRmbGV4OiAxO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktY291bnQge1xyXG5cdG1hcmdpbi1sZWZ0OiA4cHg7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcblx0cGFkZGluZzogMXB4IDZweDtcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktdGFzay1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC00KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGhlaWdodDogdmFyKC0tc2l6ZS00LTEwKTtcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktdGFzay10aXRsZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRmb250LXNpemU6IDE2cHg7XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LXRhc2stY291bnQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktdGFzay1saXN0IHtcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LWVtcHR5LXN0YXRlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0cGFkZGluZzogMTZweDtcclxufVxyXG5cclxuLyogdGFzay1wcm9wZXJ0eSBWaWV3IC0gTW9iaWxlICovXHJcbi5pcy1waG9uZSAudGFzay1wcm9wZXJ0eS1sZWZ0LWNvbHVtbiB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IDA7XHJcblx0dG9wOiAwO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR6LWluZGV4OiAxMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLWluLW91dDtcclxuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAudGFzay1wcm9wZXJ0eS1sZWZ0LWNvbHVtbi5pcy12aXNpYmxlIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAudGFzay1wcm9wZXJ0eS1zaWRlYmFyLXRvZ2dsZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnRhc2stcHJvcGVydHktc2lkZWJhci1jbG9zZSB7XHJcblx0LS1pY29uLXNpemU6IHZhcigtLXNpemUtNC00KTtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cmlnaHQ6IDEwcHg7XHJcblx0ei1pbmRleDogMTU7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4vKiBBZGQgb3ZlcmxheSB3aGVuIGxlZnQgY29sdW1uIGlzIHZpc2libGUgb24gbW9iaWxlICovXHJcbi5pcy1waG9uZVxyXG5cdC50YXNrLXByb3BlcnR5LWNvbnRhaW5lcjpoYXMoXHJcblx0XHQudGFzay1wcm9wZXJ0eS1sZWZ0LWNvbHVtbi5pcy12aXNpYmxlXHJcblx0KTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1jb3Zlcik7XHJcblx0b3BhY2l0eTogMC41O1xyXG5cdHotaW5kZXg6IDU7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4vKiBBZGQgcG9zaXRpb24gcmVsYXRpdmUgdG8gY29udGFpbmVyIGZvciBhYnNvbHV0ZSBwb3NpdGlvbmluZyBjb250ZXh0ICovXHJcbi5pcy1waG9uZSAudGFzay1wcm9wZXJ0eS1jb250YWluZXIge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnRhc2stcHJvcGVydHktc2lkZWJhci1oZWFkZXI6aGFzKC50YXNrLXByb3BlcnR5LXNpZGViYXItY2xvc2UpIHtcclxuXHRwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zaXplLTQtMTIpO1xyXG59XHJcbiIsICIvKiBUYXNrIFRhYmxlIFZpZXcgU3R5bGVzICovXHJcbi50YWJsZS12aWV3LWFkYXB0ZXIge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDA7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG59XHJcblxyXG4udGFzay10YWJsZSB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxuXHR0YWJsZS1sYXlvdXQ6IGZpeGVkO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0ZmxleDogMTtcclxuXHRtaW4taGVpZ2h0OiAwO1xyXG5cdC8qIEVuc3VyZSB0YWJsZSB0YWtlcyBmdWxsIHdpZHRoIGV2ZW4gd2l0aCBtYW55IGNvbHVtbnMgKi9cclxuXHRtaW4td2lkdGg6IG1heC1jb250ZW50O1xyXG59XHJcblxyXG4vKiBUYWJsZSB3cmFwcGVyIGZvciBzY3JvbGxpbmcgKi9cclxuLnRhc2stdGFibGUtd3JhcHBlciB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdzogYXV0bztcclxuXHRtaW4taGVpZ2h0OiAwO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHQvKiBFbmFibGUgYm90aCBob3Jpem9udGFsIGFuZCB2ZXJ0aWNhbCBzY3JvbGxpbmcgKi9cclxuXHRvdmVyZmxvdy14OiBhdXRvO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0LyogU21vb3RoIHNjcm9sbGluZyAqL1xyXG5cdHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xyXG59XHJcblxyXG4vKiBIZWFkZXIgU3R5bGVzICovXHJcbi50YXNrLXRhYmxlLWhlYWRlciB7XHJcblx0cG9zaXRpb246IHN0aWNreTtcclxuXHR0b3A6IDA7XHJcblx0ei1pbmRleDogMTA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0LyogRW5zdXJlIGhlYWRlciBkb2Vzbid0IGJyZWFrIHdoZW4gc2Nyb2xsaW5nIGhvcml6b250YWxseSAqL1xyXG5cdG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWhlYWRlci1yb3cge1xyXG5cdGhlaWdodDogNDBweDtcclxufVxyXG5cclxuLnRhc2stdGFibGUtaGVhZGVyLWNlbGwge1xyXG5cdHBhZGRpbmc6IDhweCAxMnB4O1xyXG5cdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0LyogUHJldmVudCBoZWFkZXIgY2VsbHMgZnJvbSBzaHJpbmtpbmcgdG9vIG11Y2ggKi9cclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1oZWFkZXItY2VsbDpsYXN0LWNoaWxkIHtcclxuXHRib3JkZXItcmlnaHQ6IG5vbmU7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWhlYWRlci1jZWxsLnNvcnRhYmxlIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWhlYWRlci1jZWxsLnNvcnRhYmxlOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtaGVhZGVyLWNvbnRlbnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0Z2FwOiA0cHg7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWhlYWRlci10aXRsZSB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXNvcnQtaWNvbiB7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdG9wYWNpdHk6IDAuNTtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxufVxyXG5cclxuLnRhc2stdGFibGUtc29ydC1pY29uLmFzYyxcclxuLnRhc2stdGFibGUtc29ydC1pY29uLmRlc2Mge1xyXG5cdG9wYWNpdHk6IDE7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtcmVzaXplLWhhbmRsZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRyaWdodDogMDtcclxuXHR3aWR0aDogNHB4O1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRjdXJzb3I6IGNvbC1yZXNpemU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1yZXNpemUtaGFuZGxlOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIEJvZHkgU3R5bGVzICovXHJcbi50YXNrLXRhYmxlLWJvZHkge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXJvdyB7XHJcblx0aGVpZ2h0OiA0MHB4O1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1yb3c6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1yb3cuc2VsZWN0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtcm93Om50aC1jaGlsZChldmVuKSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtcm93Om50aC1jaGlsZChldmVuKTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXJvdzpudGgtY2hpbGQoZXZlbikuc2VsZWN0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtY2VsbCB7XHJcblx0cGFkZGluZzogOHB4IDEycHg7XHJcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWNlbGw6bGFzdC1jaGlsZCB7XHJcblx0Ym9yZGVyLXJpZ2h0OiBub25lO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1jZWxsLmVkaXRpbmcge1xyXG5cdHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi8qIFRyZWUgVmlldyBTdHlsZXMgKi9cclxuLnRhc2stdGFibGUtdHJlZS1pbmRlbnQge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA0cHg7IFxyXG59XHJcblxyXG4udGFzay10YWJsZS1jZWxsOmhhcygudGFzay10YWJsZS1leHBhbmQtYnRuKSB7XHJcblx0cGFkZGluZy1sZWZ0OiAwO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1yb3cudGFzay10YWJsZS1zdWJ0YXNrIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWV4cGFuZC1idG4ge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxuXHR3aWR0aDogMjBweDtcclxuXHRoZWlnaHQ6IDIwcHg7XHJcblx0cGFkZGluZzogMDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xyXG5cdGZvbnQtc2l6ZTogMTBweDtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWV4cGFuZC1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1yb3ctbGV2ZWwtMSAudGFzay10YWJsZS1jZWxsOmZpcnN0LWNoaWxkIHtcclxuXHRwYWRkaW5nLWxlZnQ6IDMycHg7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXJvdy1sZXZlbC0yIC50YXNrLXRhYmxlLWNlbGw6Zmlyc3QtY2hpbGQge1xyXG5cdHBhZGRpbmctbGVmdDogNTJweDtcclxufVxyXG5cclxuLnRhc2stdGFibGUtcm93LWxldmVsLTMgLnRhc2stdGFibGUtY2VsbDpmaXJzdC1jaGlsZCB7XHJcblx0cGFkZGluZy1sZWZ0OiA3MnB4O1xyXG59XHJcblxyXG4udGFzay10YWJsZS1yb3ctbGV2ZWwtNCAudGFzay10YWJsZS1jZWxsOmZpcnN0LWNoaWxkIHtcclxuXHRwYWRkaW5nLWxlZnQ6IDkycHg7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXJvdy1sZXZlbC01IC50YXNrLXRhYmxlLWNlbGw6Zmlyc3QtY2hpbGQge1xyXG5cdHBhZGRpbmctbGVmdDogMTEycHg7XHJcbn1cclxuXHJcbi8qIENlbGwgVHlwZSBTdHlsZXMgKi9cclxuLnRhc2stdGFibGUtdGV4dCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtbnVtYmVyIHtcclxuXHR0ZXh0LWFsaWduOiByaWdodDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcztcclxufVxyXG5cclxuLyogU3RhdHVzIENlbGwgKi9cclxuLnRhc2stdGFibGUtc3RhdHVzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA2cHg7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXN0YXR1cy1pY29uIHtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxufVxyXG5cclxuLnRhc2stdGFibGUtc3RhdHVzLXRleHQge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLnRhc2stdGFibGUtc3RhdHVzLmNvbXBsZXRlZCAudGFzay10YWJsZS1zdGF0dXMtaWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtc3VjY2Vzcyk7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXN0YXR1cy5pbi1wcm9ncmVzcyAudGFzay10YWJsZS1zdGF0dXMtaWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtd2FybmluZyk7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXN0YXR1cy5hYmFuZG9uZWQgLnRhc2stdGFibGUtc3RhdHVzLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtc3RhdHVzLnBsYW5uZWQgLnRhc2stdGFibGUtc3RhdHVzLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtc3RhdHVzLm5vdC1zdGFydGVkIC50YXNrLXRhYmxlLXN0YXR1cy1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcbn1cclxuXHJcbi8qIFByaW9yaXR5IENlbGwgKi9cclxuLnRhc2stdGFibGUtcHJpb3JpdHkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDZweDtcclxufVxyXG5cclxuLnRhc2stdGFibGUtcHJpb3JpdHkuY2xpY2thYmxlLXByaW9yaXR5IHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0cGFkZGluZzogNHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXByaW9yaXR5LmNsaWNrYWJsZS1wcmlvcml0eTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXByaW9yaXR5LWljb24ge1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG59XHJcblxyXG4udGFzay10YWJsZS1wcmlvcml0eS1pY29uLmhpZ2gge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtcHJpb3JpdHktaWNvbi5tZWRpdW0ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmcpO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1wcmlvcml0eS1pY29uLmxvdyB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1wcmlvcml0eS10ZXh0IHtcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXByaW9yaXR5LWVtcHR5IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4vKiBEYXRlIENlbGwgKi9cclxuLnRhc2stdGFibGUtZGF0ZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogMnB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XHJcblx0cGFkZGluZzogNHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxufVxyXG5cclxuLnRhc2stdGFibGUtZGF0ZTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWRhdGUtdGV4dCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1kYXRlLXJlbGF0aXZlIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLnRhc2stdGFibGUtZGF0ZS1yZWxhdGl2ZS50b2RheSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtc3VjY2Vzcyk7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWRhdGUtcmVsYXRpdmUudG9tb3Jyb3cge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWRhdGUtcmVsYXRpdmUueWVzdGVyZGF5IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWRhdGUtcmVsYXRpdmUub3ZlcmR1ZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1kYXRlLXJlbGF0aXZlLnVwY29taW5nIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtZGF0ZS1lbXB0eSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxufVxyXG5cclxuLyogVGFncyBDZWxsICovXHJcbi50YXNrLXRhYmxlLXRhZ3Mge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdGdhcDogNHB4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXRhZy1jaGlwIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxuXHRwYWRkaW5nOiAycHggNnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4udGFzay10YWJsZS10YWdzLWVtcHR5IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4vKiBJbmxpbmUgRWRpdGluZyBJbnB1dHMgKi9cclxuLnRhc2stdGFibGUtdGV4dC1pbnB1dCxcclxuLnRhc2stdGFibGUtdGFncy1pbnB1dCB7XHJcblx0Ym9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XHJcblx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuXHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcblx0Zm9udDogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnRhc2stdGFibGUtdGV4dC1pbnB1dDpmb2N1cyxcclxuLnRhc2stdGFibGUtdGFncy1pbnB1dDpmb2N1cyB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1mb3JtLWZpZWxkKSAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweCAhaW1wb3J0YW50O1xyXG5cdHBhZGRpbmc6IDJweCA0cHggIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogVGFzayBDb3VudCBJY29uICovXHJcbi50YXNrLWNvdW50LWljb24ge1xyXG5cdGZvbnQtc2l6ZTogMTZweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG59XHJcblxyXG4udGFzay10YWJsZS1lbXB0eS1yb3cge1xyXG5cdGhlaWdodDogODBweDtcclxufVxyXG5cclxuLnRhc2stdGFibGUtZW1wdHktY2VsbCB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuLyogTG9hZGluZyBTdGF0ZSAqL1xyXG4udGFzay10YWJsZS1sb2FkaW5nIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiA1MCU7XHJcblx0bGVmdDogNTAlO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG5cdHBhZGRpbmc6IDIwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdHotaW5kZXg6IDEwMDtcclxufVxyXG5cclxuLyogUmVzaXplIFN0YXRlICovXHJcbi50YXNrLXRhYmxlLnJlc2l6aW5nIHtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxufVxyXG5cclxuLnRhc2stdGFibGUucmVzaXppbmcgKiB7XHJcblx0Y3Vyc29yOiBjb2wtcmVzaXplICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIFZpcnR1YWwgc2Nyb2xsaW5nIHN0eWxlcyAqL1xyXG4udmlydHVhbC1zY3JvbGwtc3BhY2VyIHtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHR2aXNpYmlsaXR5OiBoaWRkZW47XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgRGVzaWduICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC50YXNrLXRhYmxlLWNvbnRhaW5lciB7XHJcblx0XHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0fVxyXG5cclxuXHQudGFzay10YWJsZS13cmFwcGVyIHtcclxuXHRcdG92ZXJmbG93LXg6IGF1dG87XHJcblx0fVxyXG5cclxuXHQudGFzay10YWJsZSB7XHJcblx0XHRtaW4td2lkdGg6IDgwMHB4OyAvKiBFbnN1cmUgdGFibGUgZG9lc24ndCBnZXQgdG9vIG5hcnJvdyAqL1xyXG5cdH1cclxuXHJcblx0LnRhc2stdGFibGUtaGVhZGVyLWNlbGwsXHJcblx0LnRhc2stdGFibGUtY2VsbCB7XHJcblx0XHRwYWRkaW5nOiA2cHggOHB4O1xyXG5cdH1cclxuXHJcblx0LnRhc2stdGFibGUtcm93IHtcclxuXHRcdGhlaWdodDogMzZweDtcclxuXHR9XHJcblxyXG5cdC50YXNrLXRhYmxlLWhlYWRlci1yb3cge1xyXG5cdFx0aGVpZ2h0OiAzNnB4O1xyXG5cdH1cclxufVxyXG5cclxuLyogRGFyayBNb2RlIEFkanVzdG1lbnRzICovXHJcbi50aGVtZS1kYXJrIC50YXNrLXRhYmxlLWNvbnRhaW5lciB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC50YXNrLXRhYmxlLXJvdzpudGgtY2hpbGQoZXZlbikge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpO1xyXG59XHJcblxyXG4vKiBIaWdoIENvbnRyYXN0IE1vZGUgKi9cclxuQG1lZGlhIChwcmVmZXJzLWNvbnRyYXN0OiBoaWdoKSB7XHJcblx0LnRhc2stdGFibGUtY29udGFpbmVyIHtcclxuXHRcdGJvcmRlci13aWR0aDogMnB4O1xyXG5cdH1cclxuXHJcblx0LnRhc2stdGFibGUtaGVhZGVyLWNlbGwsXHJcblx0LnRhc2stdGFibGUtY2VsbCB7XHJcblx0XHRib3JkZXItd2lkdGg6IDFweDtcclxuXHR9XHJcblxyXG5cdC50YXNrLXRhYmxlLXJvdyB7XHJcblx0XHRib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XHJcblx0fVxyXG59XHJcblxyXG4vKiBQcmludCBTdHlsZXMgKi9cclxuQG1lZGlhIHByaW50IHtcclxuXHQudGFzay10YWJsZS1jb250YWluZXIge1xyXG5cdFx0Ym9yZGVyOiBub25lO1xyXG5cdFx0b3ZlcmZsb3c6IHZpc2libGU7XHJcblx0XHRoZWlnaHQ6IGF1dG87XHJcblx0fVxyXG5cclxuXHQudGFzay10YWJsZS1oZWFkZXIge1xyXG5cdFx0cG9zaXRpb246IHN0YXRpYztcclxuXHR9XHJcblxyXG5cdC50YXNrLXRhYmxlLXJlc2l6ZS1oYW5kbGUge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblxyXG5cdC50YXNrLXRhYmxlLWV4cGFuZC1idG4ge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIFZpcnR1YWwgc2Nyb2xsaW5nIHN0eWxlcyAqL1xyXG4udmlydHVhbC1zY3JvbGwtc3BhY2VyLXRvcCB7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi52aXJ0dWFsLXNjcm9sbC1zcGFjZXItdG9wIHRkIHtcclxuXHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogQ29udGV4dCBtZW51IHN0eWxlcyAqL1xyXG4udGFzay10YWJsZS1jb250ZXh0LW1lbnUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxuXHR6LWluZGV4OiAxMDAwO1xyXG5cdG1pbi13aWR0aDogMTIwcHg7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWNvbnRleHQtbWVudS1pdGVtIHtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzIGVhc2U7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWNvbnRleHQtbWVudS1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLyogRGF0ZSBpbnB1dCBpbXByb3ZlbWVudHMgKi9cclxuLnRhc2stdGFibGUtZGF0ZS1pbnB1dCB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRwYWRkaW5nOiA0cHggOHB4O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1kYXRlLWlucHV0OmhvdmVyIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtZGF0ZS1pbnB1dDpmb2N1cyB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcbn1cclxuXHJcbi8qIEF1dG9jb21wbGV0ZSBpbnB1dCBpbXByb3ZlbWVudHMgKi9cclxuLnRhc2stdGFibGUtcHJvamVjdC1pbnB1dCxcclxuLnRhc2stdGFibGUtY29udGV4dC1pbnB1dCxcclxuLnRhc2stdGFibGUtdGFncy1pbnB1dCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdHBhZGRpbmc6IDRweCA4cHg7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXByb2plY3QtaW5wdXQ6Zm9jdXMsXHJcbi50YXNrLXRhYmxlLWNvbnRleHQtaW5wdXQ6Zm9jdXMsXHJcbi50YXNrLXRhYmxlLXRhZ3MtaW5wdXQ6Zm9jdXMge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4vKiBSb3cgc2VsZWN0aW9uIGltcHJvdmVtZW50cyAqL1xyXG4udGFzay10YWJsZS1yb3cuc2VsZWN0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1yb3c6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXItd2Vhayk7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgaW1wcm92ZW1lbnRzICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC50YXNrLXRhYmxlIHtcclxuXHRcdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0fVxyXG5cclxuXHR0aFtkYXRhLWNvbHVtbi1pZD1cInJvd051bWJlclwiXSB7XHJcblx0XHRtYXgtd2lkdGg6IDQwcHggIWltcG9ydGFudDtcclxuXHRcdG1pbi13aWR0aDogNDBweCAhaW1wb3J0YW50O1xyXG5cdFx0d2lkdGg6IDQwcHggIWltcG9ydGFudDtcclxuXHR9XHJcblxyXG5cdC50YXNrLXRhYmxlLXRyZWUtY29udGFpbmVyIHtcclxuXHRcdGdhcDogMCAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHJcblx0LnRhc2stdGFibGUtZXhwYW5kLWJ0biB7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcclxuXHR9XHJcblxyXG5cdHRkW2RhdGEtY29sdW1uLWlkPVwicm93TnVtYmVyXCJdIHtcclxuXHRcdG1heC13aWR0aDogNDBweCAhaW1wb3J0YW50O1xyXG5cdFx0bWluLXdpZHRoOiA0MHB4ICFpbXBvcnRhbnQ7XHJcblx0XHR3aWR0aDogNDBweCAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHJcblx0LnRhc2stdGFibGUtaGVhZGVyLWNlbGwsXHJcblx0LnRhc2stdGFibGUtY2VsbCB7XHJcblx0XHRwYWRkaW5nOiA2cHggNHB4O1xyXG5cdH1cclxufVxyXG5cclxuLyogVGFzayBUYWJsZSBIZWFkZXIgQmFyIFN0eWxlcyAqL1xyXG4udGFzay10YWJsZS1oZWFkZXItYmFyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDZweCA4cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4IDZweCAwIDA7XHJcblx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRtaW4taGVpZ2h0OiA0MHB4O1xyXG59XHJcblxyXG4udGFibGUtaGVhZGVyLWxlZnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDEycHg7XHJcbn1cclxuXHJcbi50YWJsZS1oZWFkZXItcmlnaHQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDhweDtcclxufVxyXG5cclxuLyogVGFzayBDb3VudCBEaXNwbGF5ICovXHJcbi50YXNrLWNvdW50LWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogOHB4O1xyXG5cdHBhZGRpbmc6IDZweCAxMnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnRhc2stY291bnQtdGV4dCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi8qIENvbnRyb2wgQnV0dG9ucyAqL1xyXG4udGFibGUtY29udHJvbHMtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA4cHg7XHJcbn1cclxuXHJcbi50YWJsZS1jb250cm9sLWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNnB4O1xyXG5cdHBhZGRpbmc6IDhweCAxMnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcblxyXG5cdGJveC1zaGFkb3c6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi50YWJsZS1jb250cm9sLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi50YWJsZS1jb250cm9sLWJ0bjphY3RpdmUge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlKTtcclxufVxyXG5cclxuLnRyZWUtbW9kZS1idG4uYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLnRyZWUtbW9kZS1pY29uLFxyXG4ucmVmcmVzaC1pY29uLFxyXG4uY29sdW1uLWljb24ge1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi50cmVlLW1vZGUtdGV4dCxcclxuLnJlZnJlc2gtdGV4dCxcclxuLmNvbHVtbi10ZXh0IHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4uZHJvcGRvd24tYXJyb3cge1xyXG5cdGZvbnQtc2l6ZTogMTBweDtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xyXG59XHJcblxyXG4vKiBDb2x1bW4gRHJvcGRvd24gKi9cclxuLmNvbHVtbi1kcm9wZG93biB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uY29sdW1uLWRyb3Bkb3duLW1lbnUge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDEwMCU7XHJcblx0cmlnaHQ6IDA7XHJcblx0bWFyZ2luLXRvcDogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbCk7XHJcblx0ei1pbmRleDogMTAwMDtcclxuXHRtaW4td2lkdGg6IDIwMHB4O1xyXG5cdG1heC1oZWlnaHQ6IDMwMHB4O1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi5jb2x1bW4tdG9nZ2xlLWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDhweDtcclxuXHRwYWRkaW5nOiA4cHggMTJweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5jb2x1bW4tdG9nZ2xlLWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4uY29sdW1uLXRvZ2dsZS1jaGVja2JveCB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmNvbHVtbi10b2dnbGUtbGFiZWwge1xyXG5cdGZsZXg6IDE7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgRGVzaWduIGZvciBIZWFkZXIgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0LnRhc2stdGFibGUtaGVhZGVyLWJhciB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdFx0Z2FwOiAxMnB4O1xyXG5cdFx0YWxpZ24taXRlbXM6IHN0cmV0Y2g7XHJcblx0fVxyXG5cclxuXHQudGFibGUtaGVhZGVyLWxlZnQge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblxyXG5cdC50YWJsZS1oZWFkZXItbGVmdCxcclxuXHQudGFibGUtaGVhZGVyLXJpZ2h0IHtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdH1cclxuXHJcblx0LnRhYmxlLWNvbnRyb2xzLWNvbnRhaW5lciB7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHR9XHJcblxyXG5cdC50YWJsZS1jb250cm9sLWJ0biB7XHJcblx0XHRmbGV4OiAxO1xyXG5cdFx0bWluLXdpZHRoOiAxMDBweDtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdH1cclxuXHJcblx0LmNvbHVtbi1kcm9wZG93bi1tZW51IHtcclxuXHRcdHJpZ2h0OiBhdXRvO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxufVxyXG5cclxuLyogRGFyayBNb2RlIEFkanVzdG1lbnRzIGZvciBIZWFkZXIgKi9cclxuLnRoZW1lLWRhcmsgLnRhc2stdGFibGUtaGVhZGVyLWJhciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcclxufVxyXG5cclxuLnRoZW1lLWRhcmsgLmNvbHVtbi1kcm9wZG93bi1tZW51IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktYWx0KTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxufVxyXG5cclxuLyogQ3VzdG9tIEF1dG8tU3VnZ2VzdCBEcm9wZG93biAqL1xyXG4uY3VzdG9tLXN1Z2dlc3QtZHJvcGRvd24ge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbCk7XHJcblx0ei1pbmRleDogMTAwMDtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bWF4LWhlaWdodDogMjAwcHg7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRtaW4td2lkdGg6IDE1MHB4O1xyXG59XHJcblxyXG4uY3VzdG9tLXN1Z2dlc3QtZHJvcGRvd24gLnN1Z2dlc3Rpb24taXRlbSB7XHJcblx0cGFkZGluZzogOHB4IDEycHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmN1c3RvbS1zdWdnZXN0LWRyb3Bkb3duIC5zdWdnZXN0aW9uLWl0ZW06bGFzdC1jaGlsZCB7XHJcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcclxufVxyXG5cclxuLmN1c3RvbS1zdWdnZXN0LWRyb3Bkb3duIC5zdWdnZXN0aW9uLWl0ZW06aG92ZXIsXHJcbi5jdXN0b20tc3VnZ2VzdC1kcm9wZG93biAuc3VnZ2VzdGlvbi1pdGVtLnNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLmN1c3RvbS1zdWdnZXN0LWRyb3Bkb3duIC5zdWdnZXN0aW9uLWl0ZW0uc2VsZWN0ZWQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIEVuaGFuY2VkIFRyZWUgVmlldyBTdHlsZXMgKi9cclxuLnRhc2stdGFibGUtc3VidGFzayB7XHJcblx0Ym9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXBhcmVudCAudGFzay10YWJsZS1jZWxsOmZpcnN0LWNoaWxkIHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1zdWJ0YXNrLWNlbGwge1xyXG5cdGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItZm9jdXMpO1xyXG59XHJcblxyXG4udGFzay10YWJsZS10cmVlLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNnB4O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4udGFzay10YWJsZS10cmVlLXN0cnVjdHVyZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMnB4O1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4udGFzay10YWJsZS10cmVlLWxpbmUge1xyXG5cdGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcclxuXHRsaW5lLWhlaWdodDogMTtcclxuXHR3aWR0aDogMTZweDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXRyZWUtY29ubmVjdG9yIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXRyZWUtdmVydGljYWwge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtc3VidGFzay1pbmRpY2F0b3Ige1xyXG5cdGZvbnQtc2l6ZTogMTBweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdG1hcmdpbi1yaWdodDogNnB4O1xyXG5cdG1hcmdpbi1sZWZ0OiA0cHg7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLXRvcC1sZXZlbC1leHBhbmQge1xyXG5cdG1hcmdpbi1yaWdodDogNnB4O1xyXG59XHJcblxyXG4udGFzay10YWJsZS1jb250ZW50LXdyYXBwZXIge1xyXG5cdGZsZXg6IDE7XHJcblx0bWluLXdpZHRoOiAwO1xyXG59XHJcblxyXG4udGFzay10YWJsZS1jaGlsZC1pbmRpY2F0b3Ige1xyXG5cdGZvbnQtc2l6ZTogMTBweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luLWxlZnQ6IDZweDtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLyogRW5oYW5jZWQgU3RhdHVzIENlbGwgKi9cclxuLnRhc2stdGFibGUtc3RhdHVzLmNsaWNrYWJsZS1zdGF0dXMge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRwYWRkaW5nOiA0cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycztcclxufVxyXG5cclxuLnRhc2stdGFibGUtc3RhdHVzLmNsaWNrYWJsZS1zdGF0dXM6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4vKiBFbmhhbmNlZCBQcmlvcml0eSBJY29ucyAqL1xyXG4udGFzay10YWJsZS1wcmlvcml0eS1pY29uLmhpZ2hlc3Qge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHRmaWx0ZXI6IGJyaWdodG5lc3MoMS4yKTtcclxufVxyXG5cclxuLnRhc2stdGFibGUtcHJpb3JpdHktaWNvbi5sb3dlc3Qge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcclxufVxyXG5cclxuLyogVHJlZSBleHBhbmQgYnV0dG9uIGltcHJvdmVtZW50cyAqL1xyXG4udGFzay10YWJsZS1leHBhbmQtYnRuLmNsaWNrYWJsZS1pY29uIHtcclxuXHRvcGFjaXR5OiAwLjc7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XHJcbn1cclxuXHJcbi50YXNrLXRhYmxlLWV4cGFuZC1idG4uY2xpY2thYmxlLWljb246aG92ZXIge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi8qIE92ZXJyaWRlIGV4aXN0aW5nIHRyZWUgaW5kZW50YXRpb24gdG8gdXNlIG5ldyBzeXN0ZW0gKi9cclxuLnRhc2stdGFibGUtcm93LWxldmVsLTEgLnRhc2stdGFibGUtY2VsbDpmaXJzdC1jaGlsZCxcclxuLnRhc2stdGFibGUtcm93LWxldmVsLTIgLnRhc2stdGFibGUtY2VsbDpmaXJzdC1jaGlsZCxcclxuLnRhc2stdGFibGUtcm93LWxldmVsLTMgLnRhc2stdGFibGUtY2VsbDpmaXJzdC1jaGlsZCxcclxuLnRhc2stdGFibGUtcm93LWxldmVsLTQgLnRhc2stdGFibGUtY2VsbDpmaXJzdC1jaGlsZCxcclxuLnRhc2stdGFibGUtcm93LWxldmVsLTUgLnRhc2stdGFibGUtY2VsbDpmaXJzdC1jaGlsZCB7XHJcblx0cGFkZGluZy1sZWZ0OiAxMnB4OyAvKiBSZXNldCB0byBub3JtYWwgcGFkZGluZywgbGV0IHRyZWUgc3RydWN0dXJlIGhhbmRsZSBpbmRlbnRhdGlvbiAqL1xyXG59XHJcbiIsICIvKiBUYXNrIEdlbml1cyAtIFF1YWRyYW50IFZpZXcgU3R5bGVzICovXHJcblxyXG4vKiBNYWluIFF1YWRyYW50IENvbnRhaW5lciAqL1xyXG4udGctcXVhZHJhbnQtY29tcG9uZW50LWNvbnRhaW5lciB7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIEhlYWRlciBTZWN0aW9uICovXHJcbi50Zy1xdWFkcmFudC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpIHZhcigtLXNpemUtNC00KTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXNlbWlib2xkKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbjogMDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNvbnRyb2xzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMyk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1zb3J0LXNlbGVjdCB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpIHZhcigtLXNpemUtMi0zKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtc29ydC1zZWxlY3Q6aG92ZXIge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtc29ydC1zZWxlY3Q6Zm9jdXMge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtdG9nZ2xlLWVtcHR5IHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMik7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuXHR3aWR0aDogMjhweDtcclxuXHRoZWlnaHQ6IDI4cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtdG9nZ2xlLWVtcHR5OmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4vKiBGaWx0ZXIgU2VjdGlvbiAqL1xyXG4udGctcXVhZHJhbnQtZmlsdGVyLWNvbnRhaW5lciB7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLyogUXVhZHJhbnQgR3JpZCAqL1xyXG4udGctcXVhZHJhbnQtZ3JpZCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XHJcblx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnIgMWZyO1xyXG5cdGdhcDogMXB4O1xyXG5cdGZsZXg6IDE7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi8qIEluZGl2aWR1YWwgUXVhZHJhbnQgQ29sdW1ucyAqL1xyXG4udGctcXVhZHJhbnQtY29sdW1uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRtaW4taGVpZ2h0OiAwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY29sdW1uLS1oaWRkZW4ge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIFF1YWRyYW50IEhlYWRlcnMgKi9cclxuLnRnLXF1YWRyYW50LWNvbHVtbiAudGctcXVhZHJhbnQtaGVhZGVyIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtaW4taGVpZ2h0OiB2YXIoLS1zaXplLTQtMTIpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtdGl0bGUtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtcHJpb3JpdHkge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdG9wYWNpdHk6IDAuODtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNvbHVtbiAudGctcXVhZHJhbnQtdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtc2VtaWJvbGQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtZGVzY3JpcHRpb24ge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjM7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb3VudCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0yKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtbWVkaXVtKTtcclxufVxyXG5cclxuLyogUXVhZHJhbnQgQ29udGVudCBBcmVhcyAqL1xyXG4udGctcXVhZHJhbnQtY29sdW1uLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMyk7XHJcblx0bWluLWhlaWdodDogMTAwcHg7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG5cdHdpZHRoOiA4cHg7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY29sdW1uLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY29sdW1uLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tY29udGVudC0tZHJvcC1hY3RpdmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlcjogMnB4IGRhc2hlZCB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxufVxyXG5cclxuLyogUXVhZHJhbnQgU3BlY2lmaWMgU3R5bGluZyAtIFN1YnRsZSBhY2NlbnQgYmFycyAqL1xyXG4ucXVhZHJhbnQtdXJnZW50LWltcG9ydGFudCAudGctcXVhZHJhbnQtaGVhZGVyOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdGhlaWdodDogM3B4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdG9wYWNpdHk6IDAuNjtcclxufVxyXG5cclxuLnF1YWRyYW50LW5vdC11cmdlbnQtaW1wb3J0YW50IC50Zy1xdWFkcmFudC1oZWFkZXI6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0cmlnaHQ6IDA7XHJcblx0aGVpZ2h0OiAzcHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItYWNjZW50KTtcclxuXHRvcGFjaXR5OiAwLjY7XHJcbn1cclxuXHJcbi5xdWFkcmFudC11cmdlbnQtbm90LWltcG9ydGFudCAudGctcXVhZHJhbnQtaGVhZGVyOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdGhlaWdodDogM3B4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtd2FybmluZyk7XHJcblx0b3BhY2l0eTogMC42O1xyXG59XHJcblxyXG4ucXVhZHJhbnQtbm90LXVyZ2VudC1ub3QtaW1wb3J0YW50IC50Zy1xdWFkcmFudC1oZWFkZXI6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0cmlnaHQ6IDA7XHJcblx0aGVpZ2h0OiAzcHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0b3BhY2l0eTogMC40O1xyXG59XHJcblxyXG4vKiBUYXNrIENhcmRzICovXHJcbi50Zy1xdWFkcmFudC1jYXJkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZDpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQ6YWN0aXZlIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkOmxhc3QtY2hpbGQge1xyXG5cdG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi8qIENhcmQgSGVhZGVyICovXHJcbi50Zy1xdWFkcmFudC1jYXJkLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1jaGVja2JveCB7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0bWFyZ2luLXRvcDogMnB4O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1hY3Rpb25zIHtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZDpob3ZlciAudGctcXVhZHJhbnQtY2FyZC1hY3Rpb25zIHtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1tb3JlLWJ0biB7XHJcblx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcblx0d2lkdGg6IDI0cHg7XHJcblx0aGVpZ2h0OiAyNHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtbW9yZS1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi8qIENhcmQgQ29udGVudCAqL1xyXG4udGctcXVhZHJhbnQtY2FyZC1jb250ZW50IHtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLXRpdGxlIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcblx0d29yZC13cmFwOiBicmVhay13b3JkO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLXByaW9yaXR5IHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdG1hcmdpbi1sZWZ0OiB2YXIoLS1zaXplLTItMSk7XHJcblx0b3BhY2l0eTogMC44O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC10YWdzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0xKTtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLXRhZyB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtbWVkaXVtKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC10YWc6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC10YWctLXVyZ2VudCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC10YWctLWltcG9ydGFudCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBDYXJkIE1ldGFkYXRhICovXHJcbi50Zy1xdWFkcmFudC1jYXJkLW1ldGFkYXRhIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLWR1ZS1kYXRlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMSk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTItMik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LW1lZGl1bSk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLWR1ZS1kYXRlLWljb24ge1xyXG5cdHdpZHRoOiAxMnB4O1xyXG5cdGhlaWdodDogMTJweDtcclxuXHRvcGFjaXR5OiAwLjc7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLWR1ZS1kYXRlLS11cmdlbnQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmcpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1kdWUtZGF0ZS0tb3ZlcmR1ZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1maWxlLWluZm8ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0b3BhY2l0eTogMC43O1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZDpob3ZlciAudGctcXVhZHJhbnQtY2FyZC1maWxlLWluZm8ge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLWZpbGUtaWNvbiB7XHJcblx0d2lkdGg6IDEycHg7XHJcblx0aGVpZ2h0OiAxMnB4O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1maWxlLW5hbWUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRtYXgtd2lkdGg6IDEyMHB4O1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtbGluZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRvcGFjaXR5OiAwLjY7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtbWVkaXVtKTtcclxufVxyXG5cclxuLyogUHJpb3JpdHkgQ2xhc3NlcyAtIFN1YnRsZSBsZWZ0IGJvcmRlciAqL1xyXG4udGctcXVhZHJhbnQtY2FyZC0tcHJpb3JpdHktaGlnaGVzdCB7XHJcblx0Ym9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtLXByaW9yaXR5LWhpZ2gge1xyXG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tdGV4dC13YXJuaW5nKTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtLXByaW9yaXR5LW1lZGl1bSB7XHJcblx0Ym9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC0tcHJpb3JpdHktbG93IHtcclxuXHRib3JkZXItbGVmdDogM3B4IHNvbGlkIHZhcigtLXRleHQtc3VjY2Vzcyk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLS1wcmlvcml0eS1sb3dlc3Qge1xyXG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi8qIERyYWcgYW5kIERyb3AgU3RhdGVzICovXHJcbi50Zy1xdWFkcmFudC1jYXJkLS1naG9zdCB7XHJcblx0b3BhY2l0eTogMC40O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tY29sb3ItYWNjZW50KTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtLWRyYWdnaW5nIHtcclxuXHQvKiBTdHlsZSBmb3IgdGhlIGNsb25lIGJlaW5nIGRyYWdnZWQgLSBmb2xsb3dpbmcga2FuYmFuIHBhdHRlcm4gKi9cclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbCk7IC8qIE1vcmUgcHJvbWluZW50IHNoYWRvdyAqL1xyXG59XHJcblxyXG4vKiBSZW1vdmUgb2xkIGRyYWcgY2xhc3NlcyB0aGF0IGFyZSBubyBsb25nZXIgdXNlZCAqL1xyXG4udGctcXVhZHJhbnQtY2FyZC0tY2hvc2VuIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC0tZHJhZyB7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LWwpO1xyXG5cdHotaW5kZXg6IDEwMDA7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBFbXB0eSBTdGF0ZSAqL1xyXG4udGctcXVhZHJhbnQtZW1wdHktc3RhdGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGhlaWdodDogMTIwcHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0b3BhY2l0eTogMC44O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtZW1wdHktaWNvbiB7XHJcblx0d2lkdGg6IDMycHg7XHJcblx0aGVpZ2h0OiAzMnB4O1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0zKTtcclxuXHRvcGFjaXR5OiAwLjU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtZW1wdHktbWVzc2FnZSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LW1lZGl1bSk7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgRGVzaWduICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC50Zy1xdWFkcmFudC1ncmlkIHtcclxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoNCwgMWZyKTtcclxuXHR9XHJcblxyXG5cdC50Zy1xdWFkcmFudC1oZWFkZXIge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTMpIHZhcigtLXNpemUtNC0yKTtcclxuXHR9XHJcblxyXG5cdC50Zy1xdWFkcmFudC1jb2x1bW4gLnRnLXF1YWRyYW50LWhlYWRlciB7XHJcblx0XHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMykgdmFyKC0tc2l6ZS00LTIpO1xyXG5cdH1cclxuXHJcblx0LnRnLXF1YWRyYW50LWNhcmQge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTMpO1xyXG5cdH1cclxuXHJcblx0LnRnLXF1YWRyYW50LWNhcmQtdGl0bGUge1xyXG5cdFx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdH1cclxuXHJcblx0LnRnLXF1YWRyYW50LWNvbnRyb2xzIHtcclxuXHRcdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdH1cclxufVxyXG5cclxuLyogRm9jdXMgc3RhdGVzIGZvciBhY2Nlc3NpYmlsaXR5ICovXHJcbi50Zy1xdWFkcmFudC1jYXJkOmZvY3VzIHtcclxuXHRvdXRsaW5lOiAycHggc29saWQgdmFyKC0tY29sb3ItYWNjZW50KTtcclxuXHRvdXRsaW5lLW9mZnNldDogMnB4O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1tb3JlLWJ0bjpmb2N1cyB7XHJcblx0b3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWFjY2VudCk7XHJcblx0b3V0bGluZS1vZmZzZXQ6IDJweDtcclxufVxyXG5cclxuLyogQW5pbWF0aW9uIGZvciBzbW9vdGggaW50ZXJhY3Rpb25zICovXHJcbkBrZXlmcmFtZXMgY2FyZENvbXBsZXRlIHtcclxuXHQwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG5cdH1cclxuXHQ1MCUge1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcclxuXHR9XHJcblx0MTAwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG5cdH1cclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtLWNvbXBsZXRlZCB7XHJcblx0YW5pbWF0aW9uOiBjYXJkQ29tcGxldGUgMC4zcyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLyogSW1wcm92ZWQgaG92ZXIgc3RhdGVzICovXHJcbi50Zy1xdWFkcmFudC1jYXJkOmhvdmVyIC50Zy1xdWFkcmFudC1jYXJkLXRpdGxlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZDpob3ZlciAudGctcXVhZHJhbnQtY2FyZC1wcmlvcml0eSB7XHJcblx0b3BhY2l0eTogMTtcclxufVxyXG5cclxuLyogQmV0dGVyIHZpc3VhbCBoaWVyYXJjaHkgKi9cclxuLnRnLXF1YWRyYW50LWNhcmQtY29udGVudCB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4vKiBMYXp5IGxvYWRpbmcgc3R5bGVzICovXHJcbi50Zy1xdWFkcmFudC1sb2FkaW5nIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAycmVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtaW4taGVpZ2h0OiAxMDBweDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWxvYWRpbmctc3Bpbm5lciB7XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LXNwaW5uZXIge1xyXG5cdHdpZHRoOiAyNHB4O1xyXG5cdGhlaWdodDogMjRweDtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWxvYWRpbmctbWVzc2FnZSB7XHJcblx0Zm9udC1zaXplOiAwLjlyZW07XHJcblx0b3BhY2l0eTogMC43O1xyXG59XHJcblxyXG4vKiBFbmhhbmNlZCBkcmFnIGFuZCBkcm9wIHN0eWxlcyAqL1xyXG4udGctcXVhZHJhbnQtZHJhZ2dpbmcge1xyXG5cdGN1cnNvcjogZ3JhYmJpbmcgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWRyYWdnaW5nICoge1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC0tZ2hvc3Qge1xyXG5cdG9wYWNpdHk6IDAuNDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyOiAycHggZGFzaGVkIHZhcigtLWNvbG9yLWFjY2VudCk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLS1jaG9zZW4ge1xyXG5cdGJveC1zaGFkb3c6IDAgOHB4IDI1cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxuXHR0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xyXG5cdHotaW5kZXg6IDEwMDA7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC0tZHJhZyB7XHJcblx0b3BhY2l0eTogMC44O1xyXG5cdGJveC1zaGFkb3c6IDAgMTJweCAzMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtLWZhbGxiYWNrIHtcclxuXHRvcGFjaXR5OiAwLjk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRib3gtc2hhZG93OiAwIDhweCAyNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tLWRyYWctdGFyZ2V0IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tY29sb3ItYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tY29udGVudC0tZHJvcC1hY3RpdmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcclxuXHRib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tY29sb3ItYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0bWluLWhlaWdodDogNjBweDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tY29udGVudC0tZHJvcC1hY3RpdmU6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJEcm9wIHRhc2sgaGVyZVwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDUwJTtcclxuXHRsZWZ0OiA1MCU7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcblx0Zm9udC1zaXplOiAwLjlyZW07XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRvcGFjaXR5OiAwLjc7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0ei1pbmRleDogMTtcclxufVxyXG5cclxuLyogRmVlZGJhY2sgc3R5bGVzICovXHJcbi50Zy1xdWFkcmFudC11cGRhdGUtZmVlZGJhY2sge1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHR0b3A6IDIwcHg7XHJcblx0cmlnaHQ6IDIwcHg7XHJcblx0ei1pbmRleDogMTAwMDA7XHJcblx0b3BhY2l0eTogMDtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWZlZWRiYWNrLS1zaG93IHtcclxuXHRvcGFjaXR5OiAxO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWZlZWRiYWNrLS1oaWRlIHtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWZlZWRiYWNrLWNvbnRlbnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRwYWRkaW5nOiAwLjc1cmVtIDFyZW07XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJveC1zaGFkb3c6IDAgNHB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG5cdG1pbi13aWR0aDogMjAwcHg7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1mZWVkYmFjay0tZXJyb3IgLnRnLXF1YWRyYW50LWZlZWRiYWNrLWNvbnRlbnQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtZmVlZGJhY2staWNvbiB7XHJcblx0Zm9udC1zaXplOiAxLjJyZW07XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1mZWVkYmFjay10ZXh0IHtcclxuXHRmb250LXNpemU6IDAuOXJlbTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4vKiBFbmhhbmNlZCBjYXJkIGludGVyYWN0aW9ucyAqL1xyXG4udGctcXVhZHJhbnQtY2FyZCB7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuXHRjdXJzb3I6IGdyYWI7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkOmhvdmVyIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcblx0Ym94LXNoYWRvdzogMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkOmFjdGl2ZSB7XHJcblx0Y3Vyc29yOiBncmFiYmluZztcclxufVxyXG5cclxuLyogSW1wcm92ZWQgZW1wdHkgc3RhdGUgKi9cclxuLnRnLXF1YWRyYW50LWVtcHR5LXN0YXRlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAycmVtIDFyZW07XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtaW4taGVpZ2h0OiAxMjBweDtcclxuXHRib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRtYXJnaW46IDAuNXJlbSAwO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtZW1wdHktaWNvbiB7XHJcblx0bWFyZ2luLWJvdHRvbTogMC43NXJlbTtcclxuXHRvcGFjaXR5OiAwLjU7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1lbXB0eS1tZXNzYWdlIHtcclxuXHRmb250LXNpemU6IDAuOXJlbTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG5cdG1heC13aWR0aDogMjAwcHg7XHJcbn1cclxuXHJcbi8qIExvYWRpbmcgYW5pbWF0aW9uICovXHJcbkBrZXlmcmFtZXMgc3BpbiB7XHJcblx0MCUge1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuXHR9XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1zcGlubmVyIGNpcmNsZSB7XHJcblx0YW5pbWF0aW9uOiBzcGluIDJzIGxpbmVhciBpbmZpbml0ZTtcclxuXHR0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgYWRqdXN0bWVudHMgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0LnRnLXF1YWRyYW50LXVwZGF0ZS1mZWVkYmFjayB7XHJcblx0XHR0b3A6IDEwcHg7XHJcblx0XHRyaWdodDogMTBweDtcclxuXHRcdGxlZnQ6IDEwcHg7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xyXG5cdH1cclxuXHJcblx0LnRnLXF1YWRyYW50LWZlZWRiYWNrLS1zaG93IHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuXHR9XHJcblxyXG5cdC50Zy1xdWFkcmFudC1mZWVkYmFjay0taGlkZSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xyXG5cdH1cclxuXHJcblx0LnRnLXF1YWRyYW50LWZlZWRiYWNrLWNvbnRlbnQge1xyXG5cdFx0bWluLXdpZHRoOiBhdXRvO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG59XHJcblxyXG4vKiBEYXJrIG1vZGUgYWRqdXN0bWVudHMgKi9cclxuLnRoZW1lLWRhcmsgLnRnLXF1YWRyYW50LWNhcmQtLWNob3NlbiB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5LWFsdCk7XHJcblx0Ym94LXNoYWRvdzogMCA4cHggMjVweCByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC50Zy1xdWFkcmFudC1jYXJkLS1mYWxsYmFjayB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5LWFsdCk7XHJcblx0Ym94LXNoYWRvdzogMCA4cHggMjVweCByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC50Zy1xdWFkcmFudC1mZWVkYmFjay1jb250ZW50IHtcclxuXHRib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcclxufVxyXG5cclxuLyogQWNjZXNzaWJpbGl0eSBpbXByb3ZlbWVudHMgKi9cclxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcclxuXHQudGctcXVhZHJhbnQtY2FyZCxcclxuXHQudGctcXVhZHJhbnQtdXBkYXRlLWZlZWRiYWNrLFxyXG5cdC50Zy1xdWFkcmFudC1jYXJkLS1jaG9zZW4sXHJcblx0LnRnLXF1YWRyYW50LWNhcmQtLWRyYWcge1xyXG5cdFx0dHJhbnNpdGlvbjogbm9uZTtcclxuXHRcdGFuaW1hdGlvbjogbm9uZTtcclxuXHR9XHJcblxyXG5cdC50Zy1xdWFkcmFudC1zcGlubmVyIGNpcmNsZSB7XHJcblx0XHRhbmltYXRpb246IG5vbmU7XHJcblx0fVxyXG59XHJcblxyXG4vKiBTY3JvbGwgY29udGFpbmVyIHN0eWxlcyAqL1xyXG4udGctcXVhZHJhbnQtc2Nyb2xsLWNvbnRhaW5lciB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcclxuXHRtYXgtaGVpZ2h0OiA3MHZoO1xyXG5cdHNjcm9sbGJhci13aWR0aDogdGhpbjtcclxuXHRzY3JvbGxiYXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKSB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LXNjcm9sbC1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuXHR3aWR0aDogNnB4O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtc2Nyb2xsLWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtc2Nyb2xsLWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1zY3JvbGwtY29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4vKiBMb2FkIG1vcmUgaW5kaWNhdG9yIHN0eWxlcyAqL1xyXG4udGctcXVhZHJhbnQtbG9hZC1tb3JlIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAxcmVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG1hcmdpbi10b3A6IDAuNXJlbTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWxvYWQtbW9yZS0tdmlzaWJsZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWxvYWQtbW9yZS1zcGlubmVyIHtcclxuXHRtYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcblx0d2lkdGg6IDI0cHg7XHJcblx0aGVpZ2h0OiAyNHB4O1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBBbmltYXRlIHRoZSBPYnNpZGlhbiBsb2FkZXIgaWNvbiAqL1xyXG4udGctcXVhZHJhbnQtbG9hZC1tb3JlLXNwaW5uZXIgc3ZnIHtcclxuXHRhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtbG9hZC1tb3JlLW1lc3NhZ2Uge1xyXG5cdGZvbnQtc2l6ZTogMC44cmVtO1xyXG5cdG9wYWNpdHk6IDAuNztcclxufVxyXG5cclxuLyogQ29sdW1uIGxheW91dCBhZGp1c3RtZW50cyBmb3Igc2Nyb2xsaW5nICovXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0bWluLWhlaWdodDogNDAwcHg7XHJcblx0bWF4LWhlaWdodDogODB2aDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNvbHVtbi1jb250ZW50IHtcclxuXHRmbGV4OiAxO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRwYWRkaW5nOiAwLjVyZW07XHJcbn1cclxuXHJcbi8qIFNtb290aCBzY3JvbGxpbmcgKi9cclxuLnRnLXF1YWRyYW50LXNjcm9sbC1jb250YWluZXIge1xyXG5cdHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xyXG59XHJcblxyXG4vKiBMb2FkaW5nIHN0YXRlcyBkdXJpbmcgc2Nyb2xsICovXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4ubG9hZGluZy1tb3JlIC50Zy1xdWFkcmFudC1sb2FkLW1vcmUge1xyXG5cdG9wYWNpdHk6IDE7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi8qIEludGVyc2VjdGlvbiBvYnNlcnZlciB0YXJnZXQgc3R5bGluZyAqL1xyXG4udGctcXVhZHJhbnQtbG9hZC1tb3JlIHtcclxuXHRtaW4taGVpZ2h0OiA0MHB4O1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4vKiBFbmhhbmNlZCBlbXB0eSBzdGF0ZSBmb3Igc2Nyb2xsYWJsZSBjb250ZW50ICovXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tY29udGVudDplbXB0eTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1pbi1oZWlnaHQ6IDEwMHB4O1xyXG59XHJcblxyXG4vKiBHcmlkIGxheW91dCBhZGp1c3RtZW50cyAqL1xyXG4udGctcXVhZHJhbnQtZ3JpZCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xyXG5cdGhlaWdodDogY2FsYygxMDB2aCAtIDIwMHB4KTtcclxuXHRtaW4taGVpZ2h0OiA0MDBweDtcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBzY3JvbGwgY29udGFpbmVyIGhlaWdodHMgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG5cdC50Zy1xdWFkcmFudC1zY3JvbGwtY29udGFpbmVyIHtcclxuXHRcdG1heC1oZWlnaHQ6IDYwdmg7XHJcblx0fVxyXG5cclxuXHQudGctcXVhZHJhbnQtY29sdW1uIHtcclxuXHRcdG1heC1oZWlnaHQ6IDcwdmg7XHJcblx0fVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQudGctcXVhZHJhbnQtc2Nyb2xsLWNvbnRhaW5lciB7XHJcblx0XHRtYXgtaGVpZ2h0OiA1MHZoO1xyXG5cdH1cclxuXHJcblx0LnRnLXF1YWRyYW50LWNvbHVtbiB7XHJcblx0XHRtYXgtaGVpZ2h0OiA2MHZoO1xyXG5cdFx0bWluLWhlaWdodDogMzAwcHg7XHJcblx0fVxyXG5cclxuXHQudGctcXVhZHJhbnQtZ3JpZCB7XHJcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuXHRcdGhlaWdodDogYXV0bztcclxuXHR9XHJcbn1cclxuXHJcbi8qIFBlcmZvcm1hbmNlIG9wdGltaXphdGlvbnMgKi9cclxuLnRnLXF1YWRyYW50LWNvbHVtbi1jb250ZW50IHtcclxuXHRjb250YWluOiBsYXlvdXQgc3R5bGU7XHJcblx0d2lsbC1jaGFuZ2U6IGNvbnRlbnRzO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZCB7XHJcblx0Y29udGFpbjogbGF5b3V0IHN0eWxlIHBhaW50O1xyXG59XHJcblxyXG4vKiBTY3JvbGwgaW5kaWNhdG9ycyAqL1xyXG4udGctcXVhZHJhbnQtc2Nyb2xsLWNvbnRhaW5lci5oYXMtc2Nyb2xsOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IHN0aWNreTtcclxuXHR0b3A6IDA7XHJcblx0aGVpZ2h0OiAxcHg7XHJcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG5cdFx0dG8gYm90dG9tLFxyXG5cdFx0dmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KSxcclxuXHRcdHRyYW5zcGFyZW50XHJcblx0KTtcclxuXHR6LWluZGV4OiAxO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtc2Nyb2xsLWNvbnRhaW5lci5oYXMtc2Nyb2xsOjphZnRlciB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogc3RpY2t5O1xyXG5cdGJvdHRvbTogMDtcclxuXHRoZWlnaHQ6IDFweDtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpLCB0cmFuc3BhcmVudCk7XHJcblx0ei1pbmRleDogMTtcclxufVxyXG4iLCAiLnRnLWhhYml0LWNvbXBvbmVudC1jb250YWluZXIge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiAxcmVtOyAvKiBnYXAtNCAqL1xyXG5cdHBhZGRpbmc6IDFyZW07IC8qIHAtNCAqL1xyXG5cdGhlaWdodDogMTAwJTsgLyogQWxsb3cgc2Nyb2xsaW5nIGlmIGNvbnRlbnQgb3ZlcmZsb3dzICovXHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxufVxyXG5cclxuLyogPT09IEhhYml0IExpc3QgQ29udGFpbmVyID09PSAqL1xyXG4uaGFiaXQtbGlzdC1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgbWlubWF4KDAsIDFmcikpO1xyXG5cdGdhcDogMXJlbTsgLyogZ2FwLTQgKi9cclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyogXHU1QzBGXHU1QzRGXHU1RTU1XHU4QkJFXHU1OTA3ICovXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcblx0LmhhYml0LWxpc3QtY29udGFpbmVyIHtcclxuXHRcdHBhZGRpbmc6IDAuNXJlbTtcclxuXHRcdGdhcDogMC43NXJlbTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIFx1NEUyRFx1N0I0OVx1NUM0Rlx1NUU1NVx1OEJCRVx1NTkwNyB+NzY4cHggKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuXHQuaGFiaXQtbGlzdC1jb250YWluZXIge1xyXG5cdFx0bWFyZ2luLWxlZnQ6IGF1dG87XHJcblx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XHJcblx0XHRtYXgtd2lkdGg6IDQwMHB4O1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0fVxyXG59XHJcblxyXG4vKiBcdTU5MjdcdTVDNEZcdTVFNTVcdThCQkVcdTU5MDcgKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XHJcblx0LmhhYml0LWxpc3QtY29udGFpbmVyIHtcclxuXHRcdG1heC13aWR0aDogNTAwcHg7XHJcblx0fVxyXG59XHJcbi8qIEFkanVzdCBtYXgtd2lkdGgvY29sdW1ucyBiYXNlZCBvbiBkZXNpcmVkIGxheW91dCAqL1xyXG5cclxuLmhhYml0LWNhcmQtd3JhcHBlciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWluLWhlaWdodDogZml0LWNvbnRlbnQ7XHJcbn1cclxuXHJcbi8qID09PSBDcmVhdGUgSGFiaXQgQnV0dG9uID09PSAqL1xyXG4uaGFiaXQtY3JlYXRlLWJ1dHRvbi1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG59XHJcblxyXG4vKiA9PT0gQmFzZSBDYXJkIFN0eWxlcyA9PT0gKi9cclxuLmhhYml0LWNhcmQge1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7IC8qIFN0YW5kYXJkIG1lZGl1bSByYWRpdXMgKi9cclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLyogU3RhY2sgaGVhZGVyIGFuZCBjb250ZW50ICovXHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdG1pbi1oZWlnaHQ6IGZpdC1jb250ZW50O1xyXG59XHJcblxyXG4uaGFiaXQtY2FyZCAuY2FyZC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0cGFkZGluZzogMC41cmVtIDFyZW07XHJcblx0Z2FwOiAwLjVyZW07XHJcblx0LyogYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTsgKi9cclxufVxyXG5cclxuLmhhYml0LWNhcmQgLmNhcmQtdGl0bGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDAuNXJlbTsgLyogZ2FwLTIgKi9cclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbGFyZ2UpOyAvKiBMYXJnZXIgVUkgZm9udCAqL1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7IC8qIGZvbnQtc2VtaWJvbGQgKi9cclxuXHRmbGV4LWdyb3c6IDE7IC8qIEFsbG93IHRpdGxlIHRvIHRha2Ugc3BhY2UgKi9cclxuXHRvdmVyZmxvdzogaGlkZGVuOyAvKiBQcmV2ZW50IGxvbmcgbmFtZXMgYnJlYWtpbmcgbGF5b3V0ICovXHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLmhhYml0LW5hbWUuaGFiaXQtbmFtZTpob3ZlciB7XHJcblx0LyogU3BlY2lmaWNpdHkgZm9yIGhvdmVyICovXHJcblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uaGFiaXQtY2FyZCAuY2FyZC1jb250ZW50LXdyYXBwZXIge1xyXG5cdHBhZGRpbmc6IDAuNzVyZW0gMXJlbTsgLyogQ29uc2lzdGVudCBwYWRkaW5nICovXHJcblx0ZmxleC1ncm93OiAxOyAvKiBBbGxvdyBjb250ZW50IHRvIGZpbGwgc3BhY2UgKi9cclxuXHQvKiBMYXlvdXQgc3BlY2lmaWNzIGRlZmluZWQgcGVyIGNhcmQgdHlwZSAqL1xyXG59XHJcblxyXG4vKiA9PT0gRGFpbHkgSGFiaXQgQ2FyZCA9PT0gKi9cclxuLmRhaWx5LWhhYml0LWNhcmQgLmNhcmQtaGVhZGVyIHtcclxuXHQvKiBObyBib3JkZXIgbmVlZGVkIGlmIGNoZWNrYm94IGlzIG1haW4gYWN0aW9uICovXHJcblx0LyogYm9yZGVyLWJvdHRvbTogbm9uZTsgKi9cclxufVxyXG4uZGFpbHktaGFiaXQtY2FyZCAuaGFiaXQtY2hlY2tib3gtY29udGFpbmVyIHtcclxuXHQvKiBTdHlsZSBjb250YWluZXIgaWYgbmVlZGVkICovXHJcbn1cclxuLmRhaWx5LWhhYml0LWNhcmQgLmhhYml0LWNoZWNrYm94IHtcclxuXHQtLWNoZWNrYm94LXNpemU6IDEuMjVyZW07XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGFjY2VudC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTsgLyogU3R5bGUgY2hlY2tib3ggY29sb3IgKi9cclxufVxyXG4uZGFpbHktaGFiaXQtY2FyZCAuY2FyZC1jb250ZW50LXdyYXBwZXIge1xyXG5cdC8qIENvbnRhaW5zIGhlYXRtYXAgKi9cclxuXHRwYWRkaW5nOiAwcmVtIDFyZW0gMC43NXJlbTsgLyogQWRqdXN0IHBhZGRpbmcgYXJvdW5kIGhlYXRtYXAgKi9cclxufVxyXG5cclxuLyogPT09IENvdW50IEhhYml0IENhcmQgPT09ICovXHJcbi5jb3VudC1oYWJpdC1jYXJkIC5jYXJkLWNvbnRlbnQtd3JhcHBlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvKiBEZWZhdWx0IG1vYmlsZSBsYXlvdXQgKi9cclxuXHRnYXA6IDAuNzVyZW07IC8qIEFkanVzdGVkIGdhcCAqL1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5jb3VudC1oYWJpdC1jYXJkIC5oYWJpdC1pY29uLWJ1dHRvbiB7XHJcblx0LS1pY29uLXNpemU6IDJyZW07XHJcblx0aGVpZ2h0OiA0cmVtOyAvKiBTbGlnaHRseSBzbWFsbGVyIHRoYW4gaC0xNiAqL1xyXG5cdHdpZHRoOiA0cmVtO1xyXG5cdGFzcGVjdC1yYXRpbzogMTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7IC8qIFNtYWxsZXIgcmFkaXVzICovXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGZvbnQtc2l6ZTogMS41cmVtOyAvKiBGb3IgaWNvbiAqL1xyXG59XHJcblxyXG4uY291bnQtaGFiaXQtY2FyZCAuaGFiaXQtaWNvbi1idXR0b24ge1xyXG5cdGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxufVxyXG5cclxuLmNvdW50LWhhYml0LWNhcmQgLmhhYml0LWljb24tYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi5jb3VudC1oYWJpdC1jYXJkIC5oYWJpdC1jYXJkLW5hbWUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1sYXJnZSk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuLmNvdW50LWhhYml0LWNhcmQgLmhhYml0LWFjdGl2ZS1kYXkge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtd2VpZ2h0OiA0MDA7XHJcbn1cclxuXHJcbi5jb3VudC1oYWJpdC1jYXJkIC5oYWJpdC1pbmZvIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjsgLyogQ2VudGVyIHRleHQgb24gbW9iaWxlICovXHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGZsZXgtZ3JvdzogMTtcclxufVxyXG4uY291bnQtaGFiaXQtY2FyZCAuaGFiaXQtaW5mbyBoMyB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLWxhcmdlKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4uY291bnQtaGFiaXQtY2FyZCAuaGFiaXQtcHJvZ3Jlc3MtYXJlYSB7XHJcblx0d2lkdGg6IDEwMCU7IC8qIEZ1bGwgd2lkdGggb24gbW9iaWxlICovXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAwLjVyZW07XHJcbn1cclxuXHJcbi8qIFRhYmxldC9EZXNrdG9wIGxheW91dCBmb3IgQ291bnQgQ2FyZCAqL1xyXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcclxuXHQvKiBzbSBicmVha3BvaW50ICovXHJcblx0LmNvdW50LWhhYml0LWNhcmQgLmNhcmQtY29udGVudC13cmFwcGVyIHtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyOyAvKiBBbGlnbiBpdGVtcyB2ZXJ0aWNhbGx5ICovXHJcblx0XHRnYXA6IDFyZW07XHJcblx0fVxyXG5cdC5jb3VudC1oYWJpdC1jYXJkIC5oYWJpdC1wcm9ncmVzcy1hcmVhIHtcclxuXHRcdHdpZHRoOiBhdXRvOyAvKiBBbGxvdyBpdCB0byBzaHJpbmsgKi9cclxuXHRcdG1pbi13aWR0aDogMTUwcHg7IC8qIEVuc3VyZSBtaW5pbXVtIHdpZHRoIGZvciBoZWF0bWFwL3Byb2dyZXNzICovXHJcblx0XHRhbGlnbi1pdGVtczogZmxleC1lbmQ7IC8qIEFsaWduIHByb2dyZXNzIHRvIHRoZSByaWdodCAqL1xyXG5cdH1cclxuXHQuY291bnQtaGFiaXQtY2FyZCAuaGFiaXQtaGVhdG1hcC1zbWFsbCB7XHJcblx0XHR3aWR0aDogMTAwJTsgLyogQWxsb3cgaGVhdG1hcCB0byBkZWZpbmUgaXRzIG93biB3aWR0aCAqL1xyXG5cdH1cclxufVxyXG5cclxuLyogPT09IFNjaGVkdWxlZCBIYWJpdCBDYXJkID09PSAqL1xyXG4uc2NoZWR1bGVkLWhhYml0LWNhcmQgLmNhcmQtaGVhZGVyIHtcclxuXHRwYWRkaW5nLWJvdHRvbTogMC41cmVtOyAvKiBwYi0yICovXHJcbn1cclxuLnNjaGVkdWxlZC1oYWJpdC1jYXJkIC5jYXJkLWNvbnRlbnQtd3JhcHBlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvKiBNb2JpbGUgZGVmYXVsdCAqL1xyXG5cdGdhcDogMC43NXJlbTtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyOyAvKiBDZW50ZXIgb24gbW9iaWxlICovXHJcbn1cclxuXHJcbi5zY2hlZHVsZWQtaGFiaXQtY2FyZCAuaGFiaXQtaGVhdG1hcC1tZWRpdW0ge1xyXG5cdHdpZHRoOiAxMDAlOyAvKiBGdWxsIHdpZHRoIGhlYXRtYXAgb24gbW9iaWxlICovXHJcbn1cclxuXHJcbi5zY2hlZHVsZWQtaGFiaXQtY2FyZCAuaGFiaXQtY29udHJvbHMge1xyXG5cdHdpZHRoOiAxMDAlOyAvKiBGdWxsIHdpZHRoIGNvbnRyb2xzIG9uIG1vYmlsZSAqL1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyOyAvKiBDZW50ZXIgY29udHJvbHMgb24gbW9iaWxlICovXHJcbn1cclxuXHJcbi5zY2hlZHVsZWQtaGFiaXQtY2FyZCAuaGFiaXQtZXZlbnQtZHJvcGRvd24ge1xyXG5cdHdpZHRoOiBhdXRvOyAvKiBBdXRvIHdpZHRoIGRyb3Bkb3duICovXHJcblx0bWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vKiBUYWJsZXQvRGVza3RvcCBsYXlvdXQgZm9yIFNjaGVkdWxlZCBDYXJkICovXHJcbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xyXG5cdC5zY2hlZHVsZWQtaGFiaXQtY2FyZCAuY2FyZC1jb250ZW50LXdyYXBwZXIge1xyXG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyAvKiBBbGlnbiB0b3AgKi9cclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHR9XHJcblx0LnNjaGVkdWxlZC1oYWJpdC1jYXJkIC5oYWJpdC1oZWF0bWFwLW1lZGl1bSB7XHJcblx0XHR3aWR0aDogYXV0bzsgLyogQWxsb3cgaGVhdG1hcCB0byBzaHJpbmsgKi9cclxuXHRcdGZsZXgtZ3JvdzogMTsgLyogQWxsb3cgaGVhdG1hcCB0byB0YWtlIGF2YWlsYWJsZSBzcGFjZSAqL1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAxcmVtOyAvKiBTcGFjZSBiZXR3ZWVuIGhlYXRtYXAgYW5kIGNvbnRyb2xzICovXHJcblx0fVxyXG5cdC5zY2hlZHVsZWQtaGFiaXQtY2FyZCAuaGFiaXQtY29udHJvbHMge1xyXG5cdFx0d2lkdGg6IGF1dG87IC8qIFNocmluayBjb250cm9scyAqL1xyXG5cdFx0bWluLXdpZHRoOiAxNTBweDsgLyogTWluaW11bSB3aWR0aCAqL1xyXG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IC8qIEFsaWduIGNvbnRyb2xzIGxlZnQgKi9cclxuXHR9XHJcbn1cclxuXHJcbi8qID09PSBNYXBwaW5nIEhhYml0IENhcmQgPT09ICovXHJcbi5tYXBwaW5nLWhhYml0LWNhcmQgLmNhcmQtaGVhZGVyIHtcclxuXHRwYWRkaW5nLWJvdHRvbTogMC41cmVtOyAvKiBwYi0yICovXHJcbn1cclxuLm1hcHBpbmctaGFiaXQtY2FyZCAuY2FyZC1jb250ZW50LXdyYXBwZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLyogTW9iaWxlIGRlZmF1bHQgKi9cclxuXHRnYXA6IDAuNzVyZW07XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nLXRvcDogMDtcclxuXHRwYWRkaW5nLWJvdHRvbTogMS4ycmVtO1xyXG59XHJcbi5tYXBwaW5nLWhhYml0LWNhcmQgLmhhYml0LWhlYXRtYXAtbWVkaXVtIHtcclxuXHR3aWR0aDogMTAwJTsgLyogRnVsbCB3aWR0aCBoZWF0bWFwIG9uIG1vYmlsZSAqL1xyXG59XHJcbi5tYXBwaW5nLWhhYml0LWNhcmQgLmhhYml0LWNvbnRyb2xzIHtcclxuXHR3aWR0aDogMTAwJTsgLyogRnVsbCB3aWR0aCBjb250cm9scyBvbiBtb2JpbGUgKi9cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDAuNXJlbTtcclxufVxyXG5cclxuLm1hcHBpbmctaGFiaXQtY2FyZCAuaGFiaXQtbWFwcGluZy1idXR0b24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRmb250LXNpemU6IDEuNzVyZW07IC8qIExhcmdlciBlbW9qaS90ZXh0ICovXHJcblx0cGFkZGluZzogMC41cmVtO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1heC13aWR0aDogMTAwcHg7IC8qIExpbWl0IGJ1dHRvbiB3aWR0aCAqL1xyXG5cdGhlaWdodDogMy41cmVtOyAvKiBoLTE2IGVxdWl2YWxlbnQgKi9cclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1idXR0b24tc2Vjb25kYXJ5LWJvcmRlci1jb2xvcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnV0dG9uLXNlY29uZGFyeS1iZyk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTsgLyogRW5zdXJlIGVtb2ppIHZpc2liaWxpdHkgKi9cclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG59XHJcbi5tYXBwaW5nLWhhYml0LWNhcmQgLmhhYml0LW1hcHBpbmctYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idXR0b24tc2Vjb25kYXJ5LWhvdmVyLWJnKTtcclxufVxyXG5cclxuLm1hcHBpbmctaGFiaXQtY2FyZCAuaGFiaXQtc2xpZGVyLXNldHRpbmcge1xyXG5cdHdpZHRoOiAxMDAlOyAvKiBTbGlkZXIgdGFrZXMgZnVsbCB3aWR0aCAqL1xyXG5cdG1heC13aWR0aDogMjAwcHg7IC8qIExpbWl0IHNsaWRlciB3aWR0aCAqL1xyXG59XHJcbi5tYXBwaW5nLWhhYml0LWNhcmQgLmhhYml0LXNsaWRlci1zZXR0aW5nIC5zZXR0aW5nLWl0ZW0taW5mbyB7XHJcblx0ZGlzcGxheTogbm9uZTsgLyogSGlkZSBzbGlkZXIgbGFiZWwgKi9cclxufVxyXG4ubWFwcGluZy1oYWJpdC1jYXJkIC5oYWJpdC1zbGlkZXItc2V0dGluZyAuc2V0dGluZy1pdGVtIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGJvcmRlcjogbm9uZTtcclxufVxyXG4ubWFwcGluZy1oYWJpdC1jYXJkIC5oYWJpdC1zbGlkZXItc2V0dGluZyAuc2V0dGluZy1pdGVtLWNvbnRyb2wge1xyXG5cdHdpZHRoOiAxMDAlOyAvKiBNYWtlIHNsaWRlciBjb250cm9sIHRha2UgZnVsbCB3aWR0aCAqL1xyXG59XHJcblxyXG4ubWFwcGluZy1oYWJpdC1jYXJkIC5oZWF0bWFwLW1kIC5oZWF0bWFwLWNvbnRhaW5lci1zaW1wbGUge1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG59XHJcblxyXG4vKiBUYWJsZXQvRGVza3RvcCBsYXlvdXQgZm9yIE1hcHBpbmcgQ2FyZCAqL1xyXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcclxuXHQubWFwcGluZy1oYWJpdC1jYXJkIC5jYXJkLWNvbnRlbnQtd3JhcHBlciB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjsgLyogQ2VudGVyIGl0ZW1zIHZlcnRpY2FsbHkgKi9cclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHR9XHJcblx0Lm1hcHBpbmctaGFiaXQtY2FyZCAuaGFiaXQtaGVhdG1hcC1tZWRpdW0ge1xyXG5cdFx0d2lkdGg6IGF1dG87XHJcblx0XHRmbGV4LWdyb3c6IDE7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDFyZW07XHJcblx0fVxyXG5cdC5tYXBwaW5nLWhhYml0LWNhcmQgLmhhYml0LWNvbnRyb2xzIHtcclxuXHRcdHdpZHRoOiBhdXRvO1xyXG5cdFx0bWluLXdpZHRoOiA4MHB4OyAvKiBXaWR0aCBmb3IgYnV0dG9uICsgc2xpZGVyICovXHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvKiBLZWVwIGJ1dHRvbiBhYm92ZSBzbGlkZXIgKi9cclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRnYXA6IDAuNzVyZW07XHJcblx0fVxyXG5cdC5tYXBwaW5nLWhhYml0LWNhcmQgLmhhYml0LW1hcHBpbmctYnV0dG9uIHtcclxuXHRcdHdpZHRoOiA0cmVtOyAvKiBGaXhlZCB3aWR0aCBidXR0b24gKi9cclxuXHRcdGhlaWdodDogNHJlbTtcclxuXHR9XHJcblx0Lm1hcHBpbmctaGFiaXQtY2FyZCAuaGFiaXQtc2xpZGVyLXNldHRpbmcge1xyXG5cdFx0d2lkdGg6IDEwMCU7IC8qIFNsaWRlciB0YWtlcyB3aWR0aCBvZiBjb250cm9sIGFyZWEgKi9cclxuXHRcdG1heC13aWR0aDogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi8qID09PSBQcm9ncmVzcyBCYXIgKENvbW1vbiBmb3IgQ291bnQvU2NoZWR1bGVkKSA9PT0gKi9cclxuLmhhYml0LXByb2dyZXNzLWNvbnRhaW5lciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAwLjc1cmVtOyAvKiBTbGlnaHRseSB0aGlja2VyICovXHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1sKTsgLyogUGlsbCBzaGFwZSAqL1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cG9zaXRpb246IHJlbGF0aXZlOyAvKiBGb3IgdGV4dCBvdmVybGF5ICovXHJcbn1cclxuLmhhYml0LXByb2dyZXNzLWJhciB7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWwpO1xyXG5cdHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbn1cclxuLmhhYml0LXByb2dyZXNzLWNvbnRhaW5lci5maWxsZWQgLmhhYml0LXByb2dyZXNzLXRleHQge1xyXG5cdG1peC1ibGVuZC1tb2RlOiB1bnNldDtcclxufVxyXG4uaGFiaXQtcHJvZ3Jlc3MtdGV4dCB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Zm9udC1zaXplOiAwLjZyZW07IC8qIFRpbnkgdGV4dCAqL1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7IC8qIFRleHQgY29sb3Igb24gZmlsbGVkIHBhcnQgKi9cclxuXHRtaXgtYmxlbmQtbW9kZTogZGlmZmVyZW5jZTsgLyogVHJ5IHRvIG1ha2UgdGV4dCB2aXNpYmxlICovXHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLyogPT09IEhlYXRtYXAgU3R5bGVzID09PSAqL1xyXG4udGctaGVhdG1hcC1yb290IHtcclxuXHR3aWR0aDogMTAwJTsgLyogVGFrZSBhdmFpbGFibGUgd2lkdGggKi9cclxufVxyXG4uaGVhdG1hcC1zbSAuaGVhdG1hcC1jb250YWluZXItc2ltcGxlIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0b3ZlcmZsb3cteDogYXV0bzsgLyogQWxsb3cgaG9yaXpvbnRhbCBzY3JvbGwgaWYgdG9vIG1hbnkgY2VsbHMgKi9cclxuXHRwYWRkaW5nLWJvdHRvbTogMnB4OyAvKiBTcGFjZSBmb3Igc2Nyb2xsYmFyICovXHJcbn1cclxuXHJcbi5oZWF0bWFwLW1kIC5oZWF0bWFwLWNvbnRhaW5lci1zaW1wbGUge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNiwgMWZyKTtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxuXHRvdmVyZmxvdy14OiBhdXRvOyAvKiBBbGxvdyBob3Jpem9udGFsIHNjcm9sbCBpZiB0b28gbWFueSBjZWxscyAqL1xyXG5cdHBhZGRpbmctYm90dG9tOiAycHg7IC8qIFNwYWNlIGZvciBzY3JvbGxiYXIgKi9cclxuXHRqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5oZWF0bWFwLWxnIC5oZWF0bWFwLWNvbnRhaW5lci1zaW1wbGUge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTAsIDFmcik7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0b3ZlcmZsb3cteDogYXV0bzsgLyogQWxsb3cgaG9yaXpvbnRhbCBzY3JvbGwgaWYgdG9vIG1hbnkgY2VsbHMgKi9cclxuXHRwYWRkaW5nLWJvdHRvbTogMnB4OyAvKiBTcGFjZSBmb3Igc2Nyb2xsYmFyICovXHJcblx0anVzdGlmeS1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4uaGVhdG1hcC1jZWxsIHtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7IC8qIFNtYWxsIHJhZGl1cyAqL1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0ZmxleC1zaHJpbms6IDA7IC8qIFByZXZlbnQgY2VsbHMgZnJvbSBzaHJpbmtpbmcgKi9cclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoXHJcblx0XHQtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyXHJcblx0KTsgLyogRGVmYXVsdCBiYWNrZ3JvdW5kICovXHJcblx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IC8qIEJvcmRlciBmb3IgYmxhbmsvY3VzdG9tICovXHJcbn1cclxuXHJcbi8qIEhlYXRtYXAgU2hhcGVzICovXHJcbi5oZWF0bWFwLWNlbGwtc3F1YXJlIHtcclxuXHQvKiBEZWZpbmVkIGJ5IHNpemUgKi9cclxufVxyXG4uaGVhdG1hcC1jZWxsLWRvdCB7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG59XHJcblxyXG4vKiBIZWF0bWFwIFNpemVzICovXHJcbi5oZWF0bWFwLXNtIC5oZWF0bWFwLWNlbGwge1xyXG5cdHdpZHRoOiAwLjc1cmVtO1xyXG5cdGhlaWdodDogMC43NXJlbTtcclxufVxyXG4uaGFiaXQtaGVhdG1hcC1tZWRpdW0gLmhlYXRtYXAtbWQgLmhlYXRtYXAtY2VsbCB7XHJcblx0d2lkdGg6IDEuNHJlbTtcclxuXHRoZWlnaHQ6IDEuNHJlbTtcclxuXHRmb250LXNpemU6IDAuN3JlbTtcclxufVxyXG5cclxuLmhlYXRtYXAtbWQgLmhlYXRtYXAtY2VsbCB7XHJcblx0d2lkdGg6IDEuMXJlbTtcclxuXHRoZWlnaHQ6IDEuMXJlbTtcclxuXHRmb250LXNpemU6IDAuN3JlbTtcclxufSAvKiBNYXBwaW5nL1NjaGVkdWxlZCAqL1xyXG4uaGVhdG1hcC1sZyAuaGVhdG1hcC1jZWxsIHtcclxuXHR3aWR0aDogMS4yNXJlbTtcclxuXHRoZWlnaHQ6IDEuMjVyZW07XHJcblx0Zm9udC1zaXplOiAwLjc1cmVtO1xyXG59IC8qIERhaWx5ICovXHJcblxyXG4vKiBIZWF0bWFwIFZhcmlhbnRzICovXHJcbi5oZWF0bWFwLWNlbGwuZGVmYXVsdCB7XHJcblx0LyogRGVmYXVsdCBzdHlsZXMgYWxyZWFkeSBzZXQgKi9cclxufVxyXG4uaGVhdG1hcC1jZWxsLmZpbGxlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpOyAvKiBUZXh0IG9uIGZpbGxlZCAoZS5nLiwgZW1vamkpICovXHJcbn1cclxuXHJcbi5oZWF0bWFwLWNlbGwuaGFzLWN1c3RvbS1jb250ZW50OmhhcygucGllLWRvdC1jb250YWluZXIpIHtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRib3JkZXI6IHVuc2V0O1xyXG59XHJcblxyXG4vKiBTdHlsZSBmb3IgY2VsbHMgd2l0aCBjdXN0b20gY29udGVudCBsaWtlIFBpZURvdCBvciBFbW9qaSAqL1xyXG4uaGVhdG1hcC1jZWxsLmhhcy1jdXN0b20tY29udGVudCxcclxuLmhlYXRtYXAtY2VsbC5oYXMtdGV4dC1jb250ZW50IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7IC8qIFVzZSBjYXJkIGJhY2tncm91bmQgKi9cclxuXHRib3JkZXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTsgLyogQWRkIGJvcmRlciAqL1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7IC8qIEVuc3VyZSB0ZXh0L2Vtb2ppIGlzIHZpc2libGUgKi9cclxufVxyXG4uaGVhdG1hcC1jZWxsLmhhcy10ZXh0LWNvbnRlbnQge1xyXG5cdGxpbmUtaGVpZ2h0OiAxOyAvKiBDZW50ZXIgZW1vamkgdmVydGljYWxseSAqL1xyXG59XHJcblxyXG4vKiBQaWVEb3QgQ29udGFpbmVyICovXHJcbi5waWUtZG90LWNvbnRhaW5lciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG4ucGllLWRvdC1jb250YWluZXIgc3ZnIHtcclxuXHRkaXNwbGF5OiBibG9jazsgLyogUmVtb3ZlIGV4dHJhIHNwYWNlIGJlbG93IFNWRyAqL1xyXG59XHJcblxyXG4vKiA9PT0gRW1wdHkgU3RhdGUgPT09ICovXHJcbi5oYWJpdC1lbXB0eS1zdGF0ZSB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDJyZW0gMXJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuLmhhYml0LWVtcHR5LXN0YXRlIGgyIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbGFyZ2UpO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0bWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG59XHJcbi5oYWJpdC1lbXB0eS1zdGF0ZSBwIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbm9ybWFsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcbn1cclxuXHJcbi8qID09PSBJY29ucyBQbGFjZWhvbGRlciA9PT0gKi9cclxuLmhhYml0LWljb24ge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHQvKiB3aWR0aDogMWVtOyAqL1xyXG5cdGhlaWdodDogMWVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdG1hcmdpbi1yaWdodDogMC4yNWVtO1xyXG5cdC0taWNvbi1zaXplOiAxLjVyZW07XHJcbn1cclxuXHJcbi8qID09PSBIYWJpdCBDaGFydCBNb2RhbCA9PT0gKi9cclxuLmhhYml0LWNoYXJ0LWNvbnRyb2xzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiAwLjVyZW07XHJcblx0bWFyZ2luLWJvdHRvbTogMC43NXJlbTtcclxufVxyXG4uaGFiaXQtY2hhcnQtZmlsdGVycyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0Z2FwOiAwLjVyZW07XHJcbn1cclxuLmhhYml0LWNoYXJ0LWZpbHRlcnMgLmZpbHRlci1idG4ge1xyXG5cdHBhZGRpbmc6IDAuMjVyZW0gMC42cmVtO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbi5oYWJpdC1jaGFydC1maWx0ZXJzIC5maWx0ZXItYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xyXG59XHJcbi5oYWJpdC1jaGFydC15ZWFycyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMC41cmVtO1xyXG59XHJcbi5oYWJpdC1jaGFydC15ZWFycyAueWVhcnMtbGFiZWwge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcbi5oYWJpdC1jaGFydC15ZWFycyAueWVhcnMtYmFyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtd3JhcDogbm93cmFwO1xyXG5cdGdhcDogMC40cmVtO1xyXG5cdG92ZXJmbG93LXg6IGF1dG87XHJcblx0cGFkZGluZy1ib3R0b206IDJweDtcclxufVxyXG4uaGFiaXQtY2hhcnQteWVhcnMgLnllYXItYnRuIHtcclxuXHRwYWRkaW5nOiAwLjJyZW0gMC41cmVtO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG4uaGFiaXQtY2hhcnQteWVhcnMgLnllYXItYnRuLnNlbGVjdGVkLFxyXG4uaGFiaXQtY2hhcnQteWVhcnMgLnllYXItYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcbi5oYWJpdC1jaGFydC1oZWF0bWFwIHtcclxuXHQvKiBSZXVzZSB0aGUgaGVhdG1hcCBncmlkIHN0eWxlczsgYWxsb3cgb3ZlcmZsb3cgKi9cclxuXHRtYXgtaGVpZ2h0OiA2MHZoO1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG59XHJcbiIsICIvKiBEZWZpbmUgdGhlbWUgdmFyaWFibGVzICovXHJcbjpyb290IHtcclxuXHQvKiBUYXNrIHN0YXR1cyBjb2xvcnMgKi9cclxuXHQtLXRhc2stY29tcGxldGVkLWNvbG9yOiAjNGNhZjUwO1xyXG5cdC0tdGFzay1kb2luZy1jb2xvcjogIzgwZGVlNTtcclxuXHQtLXRhc2staW4tcHJvZ3Jlc3MtY29sb3I6ICNmOWQ5MjM7XHJcblx0LS10YXNrLWFiYW5kb25lZC1jb2xvcjogI2ViNTM1MztcclxuXHQtLXRhc2stcGxhbm5lZC1jb2xvcjogIzljMjdiMDsgLyogUGxhbm5lZCB0YXNrIGNvbG9yICovXHJcblx0LS10YXNrLXF1ZXN0aW9uLWNvbG9yOiAjMjE5NmYzOyAvKiBRdWVzdGlvbiB0YXNrcyAqL1xyXG5cdC0tdGFzay1pbXBvcnRhbnQtY29sb3I6ICNmNDQzMzY7IC8qIEltcG9ydGFudCB0YXNrcyAqL1xyXG5cdC0tdGFzay1zdGFyLWNvbG9yOiAjZmZjMTA3OyAvKiBTdGFyIHRhc2tzICovXHJcblx0LS10YXNrLXF1b3RlLWNvbG9yOiAjNjA3ZDhiOyAvKiBRdW90ZSB0YXNrcyAqL1xyXG5cdC0tdGFzay1sb2NhdGlvbi1jb2xvcjogIzc5NTU0ODsgLyogTG9jYXRpb24gdGFza3MgKi9cclxuXHQtLXRhc2stYm9va21hcmstY29sb3I6ICNmZjk4MDA7IC8qIEJvb2ttYXJrIHRhc2tzICovXHJcblx0LS10YXNrLWluZm9ybWF0aW9uLWNvbG9yOiAjMDBiY2Q0OyAvKiBJbmZvcm1hdGlvbiB0YXNrcyAqL1xyXG5cdC0tdGFzay1pZGVhLWNvbG9yOiAjOWMyN2IwOyAvKiBJZGVhIHRhc2tzICovXHJcblx0LS10YXNrLXByb3MtY29sb3I6ICM0Y2FmNTA7IC8qIFByb3MgdGFza3MgKi9cclxuXHQtLXRhc2stY29ucy1jb2xvcjogI2Y0NDMzNjsgLyogQ29ucyB0YXNrcyAqL1xyXG5cdC0tdGFzay1maXJlLWNvbG9yOiAjZmY1NzIyOyAvKiBGaXJlIHRhc2tzICovXHJcblx0LS10YXNrLWtleS1jb2xvcjogI2ZmZDcwMDsgLyogS2V5IHRhc2tzICovXHJcblx0LS10YXNrLXdpbi1jb2xvcjogIzY2YmI2YTsgLyogV2luIHRhc2tzICovXHJcblx0LS10YXNrLXVwLWNvbG9yOiAjNGNhZjUwOyAvKiBVcCB0YXNrcyAqL1xyXG5cdC0tdGFzay1kb3duLWNvbG9yOiAjZjQ0MzM2OyAvKiBEb3duIHRhc2tzICovXHJcblx0LS10YXNrLW5vdGUtY29sb3I6ICM5ZTllOWU7IC8qIE5vdGUgdGFza3MgKi9cclxuXHQtLXRhc2stYW1vdW50LWNvbG9yOiAjOGJjMzRhOyAvKiBBbW91bnQvc2F2aW5ncyB0YXNrcyAqL1xyXG5cdC0tdGFzay1zcGVlY2gtY29sb3I6ICMwM2E5ZjQ7IC8qIFNwZWVjaCBidWJibGUgdGFza3MgKi9cclxuXHJcblx0LyogUHJvZ3Jlc3MgYmFyIGdyYWRpZW50IGNvbG9ycyAtIGxpZ2h0IHRoZW1lICovXHJcblx0LS1wcm9ncmVzcy0wLWNvbG9yOiAjYWU0MzFlO1xyXG5cdC0tcHJvZ3Jlc3MtMjUtY29sb3I6ICNlNTg5MGE7XHJcblx0LS1wcm9ncmVzcy01MC1jb2xvcjogI2I0YzZhNjtcclxuXHQtLXByb2dyZXNzLTc1LWNvbG9yOiAjNmJjYjc3O1xyXG5cdC0tcHJvZ3Jlc3MtMTAwLWNvbG9yOiAjNGQ5NmZmO1xyXG5cclxuXHQtLXByb2dyZXNzLWJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XHJcbn1cclxuXHJcbi8qIERhcmsgdGhlbWUgY29sb3IgYWRqdXN0bWVudHMgKi9cclxuLnRoZW1lLWRhcmsge1xyXG5cdC0tdGFzay1jb21wbGV0ZWQtY29sb3I6ICM0Y2FmNTA7XHJcblx0LS10YXNrLWRvaW5nLWNvbG9yOiAjMzc5ZmE3O1xyXG5cdC0tdGFzay1pbi1wcm9ncmVzcy1jb2xvcjogI2ZmYzEwNztcclxuXHQtLXRhc2stYWJhbmRvbmVkLWNvbG9yOiAjZjQ0MzM2O1xyXG5cdC0tdGFzay1wbGFubmVkLWNvbG9yOiAjY2U5M2Q4OyAvKiBQbGFubmVkIHRhc2sgY29sb3IgZm9yIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2stcXVlc3Rpb24tY29sb3I6ICM0MmE1ZjU7IC8qIFF1ZXN0aW9uIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2staW1wb3J0YW50LWNvbG9yOiAjZWY1MzUwOyAvKiBJbXBvcnRhbnQgdGFza3MgZGFyayB0aGVtZSAqL1xyXG5cdC0tdGFzay1zdGFyLWNvbG9yOiAjZmZkNTRmOyAvKiBTdGFyIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2stcXVvdGUtY29sb3I6ICM5MGE0YWU7IC8qIFF1b3RlIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2stbG9jYXRpb24tY29sb3I6ICM4ZDZlNjM7IC8qIExvY2F0aW9uIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2stYm9va21hcmstY29sb3I6ICNmZmI3NGQ7IC8qIEJvb2ttYXJrIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2staW5mb3JtYXRpb24tY29sb3I6ICMyNmM2ZGE7IC8qIEluZm9ybWF0aW9uIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2staWRlYS1jb2xvcjogI2NlOTNkODsgLyogSWRlYSB0YXNrcyBkYXJrIHRoZW1lICovXHJcblx0LS10YXNrLXByb3MtY29sb3I6ICM2NmJiNmE7IC8qIFByb3MgdGFza3MgZGFyayB0aGVtZSAqL1xyXG5cdC0tdGFzay1jb25zLWNvbG9yOiAjZWY1MzUwOyAvKiBDb25zIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2stZmlyZS1jb2xvcjogI2ZmNzA0MzsgLyogRmlyZSB0YXNrcyBkYXJrIHRoZW1lICovXHJcblx0LS10YXNrLWtleS1jb2xvcjogI2ZmZDcwMDsgLyogS2V5IHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2std2luLWNvbG9yOiAjODFjNzg0OyAvKiBXaW4gdGFza3MgZGFyayB0aGVtZSAqL1xyXG5cdC0tdGFzay11cC1jb2xvcjogIzY2YmI2YTsgLyogVXAgdGFza3MgZGFyayB0aGVtZSAqL1xyXG5cdC0tdGFzay1kb3duLWNvbG9yOiAjZWY1MzUwOyAvKiBEb3duIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2stbm90ZS1jb2xvcjogI2JkYmRiZDsgLyogTm90ZSB0YXNrcyBkYXJrIHRoZW1lICovXHJcblx0LS10YXNrLWFtb3VudC1jb2xvcjogI2FlZDU4MTsgLyogQW1vdW50L3NhdmluZ3MgdGFza3MgZGFyayB0aGVtZSAqL1xyXG5cdC0tdGFzay1zcGVlY2gtY29sb3I6ICMyOWI2ZjY7IC8qIFNwZWVjaCBidWJibGUgdGFza3MgZGFyayB0aGVtZSAqL1xyXG5cclxuXHQtLXByb2dyZXNzLTAtY29sb3I6ICNhZTQzMWU7XHJcblx0LS1wcm9ncmVzcy0yNS1jb2xvcjogI2U1ODkwYTtcclxuXHQtLXByb2dyZXNzLTUwLWNvbG9yOiAjYjRjNmE2O1xyXG5cdC0tcHJvZ3Jlc3MtNzUtY29sb3I6ICM2YmNiNzc7XHJcblx0LS1wcm9ncmVzcy0xMDAtY29sb3I6ICM0ZDk2ZmY7XHJcblxyXG5cdC0tcHJvZ3Jlc3MtYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcclxufVxyXG4iLCAiLnRhc2stZ2VuaXVzLXZpZXctY29uZmlnLW1vZGFsIHtcclxuXHR3aWR0aDogbWF4KDcwJSwgNTAwcHgpO1xyXG59XHJcblxyXG4vKiBTdHlsaW5nIGZvciB0aGUgVmlldyBDb25maWd1cmF0aW9uIE1vZGFsICovXHJcbi50YXNrLWdlbml1cy12aWV3LWNvbmZpZy1tb2RhbCAuc2V0dGluZy1pdGVtIHtcclxuXHQvKiBBZGQgc29tZSBzcGFjaW5nIGJldHdlZW4gc2V0dGluZ3MgaW4gdGhlIG1vZGFsICovXHJcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXctY29uZmlnLW1vZGFsXHJcblx0LnNldHRpbmctaXRlbTpub3QoLnNldHRpbmctaXRlbS1oZWFkaW5nKVxyXG5cdC5zZXR0aW5nLWl0ZW0taW5mbyB7XHJcblx0LyogRW5zdXJlIGxhYmVscyBhcmUgYWxpZ25lZCB3ZWxsICovXHJcblx0d2lkdGg6IDEyMHB4O1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldy1jb25maWctbW9kYWwgLnNldHRpbmctaXRlbS1jb250cm9sIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxyXG4udGFzay1nZW5pdXMtdmlldy1jb25maWctbW9kYWwgLnNldHRpbmctaXRlbS1jb250cm9sIGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xyXG5cdC8qIEVuc3VyZSB0ZXh0IGlucHV0cyB0YWtlIGF2YWlsYWJsZSB3aWR0aCAqL1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldy1jb25maWctbW9kYWwgLnNldHRpbmctaXRlbS1kZXNjcmlwdGlvbiB7XHJcblx0LyogU3R5bGUgZGVzY3JpcHRpb25zICovXHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tdG9wOiAycHg7XHJcbn1cclxuXHJcbi8qIFN0eWxpbmcgZm9yIHRoZSBWaWV3IE1hbmFnZW1lbnQgTGlzdCBpbiBTZXR0aW5ncyBUYWIgKi9cclxuLnZpZXctbWFuYWdlbWVudC1saXN0IC5zZXR0aW5nLWl0ZW0ge1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0cGFkZGluZzogMTBweCAwO1xyXG5cdGRpc3BsYXk6IGZsZXg7IC8qIFVzZSBmbGV4IGZvciBiZXR0ZXIgY29udHJvbCAqL1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8qIEFsaWduIGl0ZW1zIHZlcnRpY2FsbHkgKi9cclxufVxyXG5cclxuLnZpZXctbWFuYWdlbWVudC1saXN0IC5zZXR0aW5nLWl0ZW0taW5mbyB7XHJcblx0ZmxleC1ncm93OiAxOyAvKiBBbGxvdyBuYW1lL2Rlc2NyaXB0aW9uIHRvIHRha2UgdXAgc3BhY2UgKi9cclxuXHRtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbn1cclxuXHJcbi52aWV3LW1hbmFnZW1lbnQtbGlzdCAuc2V0dGluZy1pdGVtLWNvbnRyb2wge1xyXG5cdC8qIEtlZXAgY29udHJvbHMgdG9nZXRoZXIgKi9cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA4cHg7IC8qIFNwYWNlIGJldHdlZW4gdG9nZ2xlcy9idXR0b25zICovXHJcbn1cclxuXHJcbi52aWV3LW1hbmFnZW1lbnQtbGlzdCAuc2V0dGluZy1pdGVtLWNvbnRyb2wgLmJ1dHRvbi1jb21wb25lbnQge1xyXG5cdHBhZGRpbmc6IDVweDsgLyogU21hbGxlciBwYWRkaW5nIGZvciBpY29uIGJ1dHRvbnMgKi9cclxuXHRoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi52aWV3LW1hbmFnZW1lbnQtbGlzdCAudmlldy1vcmRlci1idXR0b24sXHJcbi52aWV3LW1hbmFnZW1lbnQtbGlzdCAudmlldy1kZWxldGUtYnV0dG9uIHtcclxuXHQvKiBTdHlsZSBhY3Rpb24gYnV0dG9ucyAqL1xyXG5cdG1hcmdpbi1sZWZ0OiA1cHg7XHJcbn1cclxuXHJcbi52aWV3LW1hbmFnZW1lbnQtbGlzdCAuc2V0dGluZy1pdGVtOmxhc3QtY2hpbGQge1xyXG5cdGJvcmRlci1ib3R0b206IG5vbmU7XHJcbn1cclxuXHJcbi8qIFNwZWNpZmljIHN0eWxpbmcgZm9yIHRvZ2dsZXMgaW4gdGhlIGxpc3QgKi9cclxuLnZpZXctbWFuYWdlbWVudC1saXN0IC5zZXR0aW5nLWl0ZW0tY29udHJvbCAuY2hlY2tib3gtY29udGFpbmVyIHtcclxuXHRtYXJnaW46IDA7IC8qIFJlbW92ZSBkZWZhdWx0IG1hcmdpbnMgaWYgYW55ICovXHJcbn1cclxuXHJcbi8qIEljb24gUGlja2VyIE1lbnUgU3R5bGVzIChTY29wZWQpICovXHJcbi50Zy1pY29uLW1lbnUge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR6LWluZGV4OiAxMDA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LWwpO1xyXG5cdHBhZGRpbmc6IDhweDtcclxuXHRtYXgtaGVpZ2h0OiAzMDBweDsgLyogTGltaXQgb3ZlcmFsbCBtZW51IGhlaWdodCAqL1xyXG5cdHdpZHRoOiAyNTBweDtcclxuXHRkaXNwbGF5OiBmbGV4OyAvKiBVc2UgZmxleGJveCAqL1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0LyogUHJldmVudCBwYWRkaW5nIGZyb20gYWZmZWN0aW5nIG1heC1oZWlnaHQgY2FsY3VsYXRpb24gZm9yIGZsZXggY2hpbGRyZW4gKi9cclxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG4vKiBSZW1vdmUgc3R5bGVzIGZvciB0aGUgaW50ZXJtZWRpYXRlIGNvbnRhaW5lciAqL1xyXG4vKiAuYm0tcGx1Z2luLWljb24tbWVudSAuYm0tbWVudS1jb250ZW50IHsgXHJcblx0ZmxleC1ncm93OiAxOyBcclxuXHRvdmVyZmxvdy15OiBhdXRvOyBcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0bWluLWhlaWdodDogMDsgXHJcbn0gKi9cclxuXHJcbi50Zy1pY29uLW1lbnUgLnRnLW1lbnUtc2VhcmNoIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiA2cHggOHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdGZsZXgtc2hyaW5rOiAwOyAvKiBQcmV2ZW50IHNlYXJjaCBiYXIgZnJvbSBzaHJpbmtpbmcgKi9cclxufVxyXG5cclxuLnRnLWljb24tbWVudSAudGctbWVudS1pY29ucyB7XHJcblx0ZmxleC1ncm93OiAxOyAvKiBJY29uIGxpc3QgdGFrZXMgcmVtYWluaW5nIHZlcnRpY2FsIHNwYWNlICovXHJcblx0b3ZlcmZsb3cteTogYXV0bzsgLyogTWFrZSB0aGUgaWNvbiBsaXN0IHNjcm9sbGFibGUgKi9cclxuXHRtaW4taGVpZ2h0OiAwOyAvKiBDcnVjaWFsIGZvciBhbGxvd2luZyBmbGV4IGNoaWxkIHRvIHNocmluayBhbmQgc2Nyb2xsICovXHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMnB4LCAxZnIpKTtcclxuXHRnYXA6IDRweDtcclxuXHQvKiBSZW1vdmUgbWluLWhlaWdodCBwcmV2aW91c2x5IG5lZWRlZCBmb3IgZ3JpZCBpbiBmbGV4ICovXHJcbn1cclxuXHJcbi8qIFNjb3BlIHRoZSBjbGlja2FibGUgaWNvbiAqd2l0aGluKiB0aGUgbWVudSAqL1xyXG4udGctaWNvbi1tZW51IC5jbGlja2FibGUtaWNvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDZweDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xcyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLnRnLWljb24tbWVudSAuY2xpY2thYmxlLWljb246aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGctaWNvbi1tZW51IC5jbGlja2FibGUtaWNvbiBzdmcge1xyXG5cdHdpZHRoOiAyMHB4O1xyXG5cdGhlaWdodDogMjBweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuIiwgIi8qIENoZWNrYm94IFN0YXR1cyBTd2l0Y2hlciBTdHlsZXMgKi9cclxuLnRhc2stc3RhdHVzLXdpZGdldCB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtYm9sZCk7XHJcbn1cclxuXHJcbi50YXNrLXN0YXRlLmxpdmUtcHJldmlldy1tb2RlIHtcclxuXHRwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHBhZGRpbmctaW5saW5lLWVuZDogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4udGFzay1zdGF0dXMtd2lkZ2V0IC5saXN0LWJ1bGxldDo6YWZ0ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpc3QtbWFya2VyLWNvbG9yKSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBUT0RPIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCIgXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBET0lORyBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiL1wiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stZG9pbmctY29sb3IpO1xyXG59XHJcblxyXG4vKiBJTi1QUk9HUkVTUyBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiPlwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2staW4tcHJvZ3Jlc3MtY29sb3IpO1xyXG59XHJcblxyXG4vKiBET05FIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCJ4XCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCJYXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1jb21wbGV0ZWQtY29sb3IpO1xyXG59XHJcblxyXG4vKiBDQU5DRUxMRUQgc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cIi1cIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLWFiYW5kb25lZC1jb2xvcik7XHJcbn1cclxuXHJcbi8qIFNDSEVEVUxFRCBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiPFwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stcGxhbm5lZC1jb2xvcik7XHJcbn1cclxuXHJcbi8qIFFVRVNUSU9OIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCI/XCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1xdWVzdGlvbi1jb2xvcik7XHJcbn1cclxuXHJcbi8qIElNUE9SVEFOVCBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiIVwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2staW1wb3J0YW50LWNvbG9yKTtcclxufVxyXG5cclxuLyogU1RBUiBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiKlwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stc3Rhci1jb2xvcik7XHJcbn1cclxuXHJcbi8qIFFVT1RFIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9J1wiJ10ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLXF1b3RlLWNvbG9yKTtcclxufVxyXG5cclxuLyogTE9DQVRJT04gc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cImxcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLWxvY2F0aW9uLWNvbG9yKTtcclxufVxyXG5cclxuLyogQk9PS01BUksgc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cImJcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLWJvb2ttYXJrLWNvbG9yKTtcclxufVxyXG5cclxuLyogSU5GT1JNQVRJT04gc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cImlcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLWluZm9ybWF0aW9uLWNvbG9yKTtcclxufVxyXG5cclxuLyogSURFQSBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiSVwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2staWRlYS1jb2xvcik7XHJcbn1cclxuXHJcbi8qIFBST1Mgc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cInBcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLXByb3MtY29sb3IpO1xyXG59XHJcblxyXG4vKiBDT05TIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCJjXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1jb25zLWNvbG9yKTtcclxufVxyXG5cclxuLyogRklSRSBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiZlwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stZmlyZS1jb2xvcik7XHJcbn1cclxuXHJcbi8qIEtFWSBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwia1wiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2sta2V5LWNvbG9yKTtcclxufVxyXG5cclxuLyogV0lOIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCJ3XCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay13aW4tY29sb3IpO1xyXG59XHJcblxyXG4vKiBVUCBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwidVwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stdXAtY29sb3IpO1xyXG59XHJcblxyXG4vKiBET1dOIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCJkXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1kb3duLWNvbG9yKTtcclxufVxyXG5cclxuLyogTk9URSBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiblwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stbm90ZS1jb2xvcik7XHJcbn1cclxuXHJcbi8qIEFNT1VOVC9TQVZJTkdTIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCJTXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1hbW91bnQtY29sb3IpO1xyXG59XHJcblxyXG4vKiBTUEVFQ0ggQlVCQkxFIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCIwXCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCIxXCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCIyXCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCIzXCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCI0XCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCI1XCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCI2XCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCI3XCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCI4XCJdLFxyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCI5XCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1zcGVlY2gtY29sb3IpO1xyXG59XHJcblxyXG4udGFzay1mYWtlLWJ1bGxldCB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdHdpZHRoOiA1cHg7XHJcblx0aGVpZ2h0OiA1cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRtYXJnaW4tcmlnaHQ6IDRweDtcclxuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG5vbCA+IC50YXNrLWxpc3QtaXRlbSAudGFzay1mYWtlLWJ1bGxldCB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxub2wgPiAudGFzay1saXN0LWl0ZW0gLnRhc2stc3RhdGUtY29udGFpbmVyIHtcclxuXHRtYXJnaW4taW5saW5lLXN0YXJ0OiAwO1xyXG59XHJcbiIsICIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKiBUYXNrIEdlbml1cyBPbmJvYXJkaW5nIFN0eWxlcyAqL1xyXG4vKiBzaGFkY24gRGVzaWduIFByaW5jaXBsZXMgQXBwbGllZCAqL1xyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogTWFpbiBvbmJvYXJkaW5nIHN0eWxlcyAtIHNoYXJlZCBieSBtb2RhbCBhbmQgdmlldyAqL1xyXG4ub25ib2FyZGluZy12aWV3IHtcclxuXHQtLWRpYWxvZy13aWR0aDogODAwcHg7XHJcblx0LS1kaWFsb2ctbWF4LXdpZHRoOiA5MHZ3O1xyXG5cdC0tZGlhbG9nLW1heC1oZWlnaHQ6IDkwdmg7XHJcblx0LS1vbmJvYXJkaW5nLXNwYWNpbmc6IHZhcigtLXNpemUtNC00KTtcclxuXHQtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1czogOHB4O1xyXG5cdC0tb25ib2FyZGluZy10cmFuc2l0aW9uOiBhbGwgMjAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcclxuXHJcblx0Lyogc2hhZGNuIGRlc2lnbiB0b2tlbnMgKi9cclxuXHQtLXNoYWRvdy1zbTogMCAxcHggMnB4IDAgcmdiKDAgMCAwIC8gMC4wNSk7XHJcblx0LS1zaGFkb3ctbWQ6IDAgMXB4IDNweCAwIHJnYigwIDAgMCAvIDAuMSksIDAgMXB4IDJweCAtMXB4IHJnYigwIDAgMCAvIDAuMSk7XHJcblx0LS1zaGFkb3ctbGc6IDAgNHB4IDZweCAtMXB4IHJnYigwIDAgMCAvIDAuMSksIDAgMnB4IDRweCAtMnB4IHJnYigwIDAgMCAvIDAuMSk7XHJcblx0LS1zaGFkb3cteGw6IDAgMTBweCAxNXB4IC0zcHggcmdiKDAgMCAwIC8gMC4xKSwgMCA0cHggNnB4IC00cHggcmdiKDAgMCAwIC8gMC4xKTtcclxufVxyXG5cclxuLyogTW9kYWwgc3BlY2lmaWMgc3R5bGVzICovXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm1vZGFsLWNvbnRlbnQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1vZGFsLWJhY2tncm91bmQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW1vZGFsLXJhZGl1cyk7XHJcblx0bWF4LXdpZHRoOiB2YXIoLS1kaWFsb2ctbWF4LXdpZHRoKTtcclxuXHRtYXgtaGVpZ2h0OiB2YXIoLS1kaWFsb2ctbWF4LWhlaWdodCk7XHJcblx0aGVpZ2h0OiA5MHZoO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRvdmVyZmxvdzogYXV0bztcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0bWluLWhlaWdodDogMTAwcHg7XHJcbn1cclxuXHJcbi8qIFZpZXcgc3BlY2lmaWMgc3R5bGVzICovXHJcbi5vbmJvYXJkaW5nLXZpZXcge1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAudmlldy1jb250ZW50IHtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4vKiBIZWFkZXIgc2VjdGlvbiAqL1xyXG4ub25ib2FyZGluZy12aWV3IC5vbmJvYXJkaW5nLWhlYWRlciB7XHJcblx0cGFkZGluZzogY2FsYyh2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpICogNCkgdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKSB2YXIoLS1zaXplLTQtMikgdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIEhpZGUgb25ib2FyZGluZy1oZWFkZXIgaWYgbm8gaGVhZGVyIGNvbnRlbnQgKi9cclxuLm9uYm9hcmRpbmctdmlldyAub25ib2FyZGluZy1oZWFkZXI6ZW1wdHkge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctc3VidGl0bGUge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuOTVlbTtcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi8qIENvbnRlbnQgc2VjdGlvbiAqL1xyXG4ub25ib2FyZGluZy12aWV3IC5vbmJvYXJkaW5nLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcblx0cGFkZGluZzogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdG1pbi1oZWlnaHQ6IDA7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXJcclxufVxyXG5cclxuLyogRm9vdGVyIHNlY3Rpb24gLSBNb2Rlcm4gZGVzaWduICovXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctZm9vdGVyIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCkgdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci10b3A6IG5vbmU7XHJcblx0Ym94LXNoYWRvdzogMCAtMnB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjA2KTtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxufVxyXG5cclxuLyogR2xhc3MgbW9ycGhpc20gZWZmZWN0IGZvciBtb2Rlcm4gbG9vayAqL1xyXG4ub25ib2FyZGluZy12aWV3IC5vbmJvYXJkaW5nLWZvb3Rlcjo6YmVmb3JlIHtcclxuXHRjb250ZW50OiAnJztcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0cmlnaHQ6IDA7XHJcblx0Ym90dG9tOiAwO1xyXG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSksIHRyYW5zcGFyZW50KTtcclxuXHRvcGFjaXR5OiAwLjU7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctYnV0dG9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ei1pbmRleDogMTtcclxufVxyXG5cclxuLyogQnV0dG9uIGdyb3VwcyAtIGxlZnQgYW5kIHJpZ2h0ICovXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmJ1dHRvbnMtbGVmdCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5idXR0b25zLXJpZ2h0IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0bWFyZ2luLWxlZnQ6IGF1dG87XHJcbn1cclxuXHJcbi8qIEVuaGFuY2VkIGJ1dHRvbiBzdHlsZXMgKi9cclxuLm9uYm9hcmRpbmctdmlldyAub25ib2FyZGluZy1idXR0b25zIGJ1dHRvbiB7XHJcblx0bWluLWhlaWdodDogMzZweDtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctYnV0dG9ucyBidXR0b246bm90KC5tb2QtY3RhKTpob3ZlciB7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG59XHJcblxyXG4vKiBSaXBwbGUgZWZmZWN0IG9uIGJ1dHRvbiBjbGljayAqL1xyXG4ub25ib2FyZGluZy12aWV3IC5vbmJvYXJkaW5nLWJ1dHRvbnMgYnV0dG9uOjphZnRlciB7XHJcblx0Y29udGVudDogJyc7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogNTAlO1xyXG5cdGxlZnQ6IDUwJTtcclxuXHR3aWR0aDogMDtcclxuXHRoZWlnaHQ6IDA7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuXHR0cmFuc2l0aW9uOiB3aWR0aCAwLjZzLCBoZWlnaHQgMC42cztcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAub25ib2FyZGluZy1idXR0b25zIGJ1dHRvbjphY3RpdmU6OmFmdGVyIHtcclxuXHR3aWR0aDogMjAwcHg7XHJcblx0aGVpZ2h0OiAyMDBweDtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIFNldHRpbmdzIENoZWNrIFN0ZXAgKi9cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zZXR0aW5ncy1jaGVjay1jb250ZW50IHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDEuMmZyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTYpO1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLyogQ3VycmVudCBjb25maWd1cmF0aW9uIGNhcmQgKi9cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stY3VycmVudC1jYXJkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zbSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmdzLWNoZWNrLWNhcmQtaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY2hlY2staGVhZGVyLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0Zm9udC1zaXplOiAxLjVlbTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY2hlY2staGVhZGVyLXRpdGxlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY2hlY2staGVhZGVyLXRpdGxlIGgzIHtcclxuXHRtYXJnaW46IDA7XHJcblx0Zm9udC1zaXplOiAxLjFlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zZXR0aW5ncy1jaGVjay1jYXJkLWJvZHkge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY2hlY2stY2FyZC1kZXNjIHtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stY2hhbmdlcy1saXN0IHtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stY2hhbmdlcy1saXN0IGxpIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5jaGFuZ2UtY2hlY2staWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLyogQWN0aW9ucyBjb250YWluZXIgKi9cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTMpO1xyXG59XHJcblxyXG4vKiBBY3Rpb24gY2FyZHMgKi9cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stYWN0aW9uLWNhcmQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAycHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiB2YXIoLS1vbmJvYXJkaW5nLXRyYW5zaXRpb24pO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zbSk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi8qIFNlbGVjdGVkIGNhcmQgc3RhdGUgKi9cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stYWN0aW9uLWNhcmQuaXMtc2VsZWN0ZWQge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcblx0XHQxMzVkZWcsXHJcblx0XHRyZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjA1KSAwJSxcclxuXHRcdHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSkgMTAwJVxyXG5cdCk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LW1kKSwgMCAwIDAgM3B4IHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuMSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmdzLWNoZWNrLWFjdGlvbi1jYXJkOmhvdmVyIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LWxnKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmdzLWNoZWNrLWFjdGlvbi1jYXJkOmhvdmVyOjpiZWZvcmUge1xyXG5cdHRyYW5zZm9ybTogc2NhbGVYKDEpO1xyXG59XHJcblxyXG4vKiBXaXphcmQgY2FyZCAocHJpbWFyeSkgKi9cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stYWN0aW9uLXdpemFyZCB7XHJcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG5cdFx0MTM1ZGVnLFxyXG5cdFx0dmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KSAwJSxcclxuXHRcdHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KSAxMDAlXHJcblx0KTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stYWN0aW9uLXdpemFyZDo6YmVmb3JlIHtcclxuXHR0cmFuc2Zvcm06IHNjYWxlWCgxKTtcclxufVxyXG5cclxuLyogS2VlcCBjYXJkIChzZWNvbmRhcnkpICovXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmdzLWNoZWNrLWFjdGlvbi1rZWVwIHtcclxuXHRvcGFjaXR5OiAwLjk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmdzLWNoZWNrLWFjdGlvbi1rZWVwOmhvdmVyIHtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4vKiBBY3Rpb24gY2FyZCBjb250ZW50ICovXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmFjdGlvbi1jYXJkLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuYWN0aW9uLWNhcmQtaWNvbiB7XHJcblx0Zm9udC1zaXplOiAyZW07XHJcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTQtMyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmFjdGlvbi1jYXJkLWNvbnRlbnQgaDMge1xyXG5cdG1hcmdpbjogMCAwIHZhcigtLXNpemUtNC0yKSAwO1xyXG5cdGZvbnQtc2l6ZTogMS4yZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5hY3Rpb24tY2FyZC1jb250ZW50ID4gcCB7XHJcblx0bWFyZ2luOiAwIDAgdmFyKC0tc2l6ZS00LTMpIDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuYWN0aW9uLWNhcmQtZmVhdHVyZXMge1xyXG5cdGxpc3Qtc3R5bGU6IG5vbmU7XHJcblx0cGFkZGluZzogMDtcclxuXHRtYXJnaW46IHZhcigtLXNpemUtNC0zKSAwIDAgMDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmFjdGlvbi1jYXJkLWZlYXR1cmVzIGxpIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5hY3Rpb24tY2FyZC1mZWF0dXJlcyAuZmVhdHVyZS1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuYWN0aW9uLWNhcmQtbm90ZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMykgdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC1zaXplOiAwLjg1ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5hY3Rpb24tY2FyZC1ub3RlIC5ub3RlLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgYWRqdXN0bWVudHMgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0Lm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stY29udGVudCB7XHJcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuXHR9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKiBXZWxjb21lIFN0ZXAgKi9cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ub25ib2FyZGluZy12aWV3IC53ZWxjb21lLXNlY3Rpb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZlYXR1cmVzLW92ZXJ2aWV3IHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjgwcHgsIDFmcikpO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdG1hcmdpbjogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKSAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mZWF0dXJlLWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1vbmJvYXJkaW5nLWJvcmRlci1yYWRpdXMpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mZWF0dXJlLWljb24ge1xyXG5cdGZvbnQtc2l6ZTogMS41ZW07XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0bGluZS1oZWlnaHQ6IDE7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHVwLW5vdGUge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHVwLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjk1ZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNTtcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKiBVc2VyIExldmVsIFNlbGVjdGlvbiAqL1xyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnVzZXItbGV2ZWwtY2FyZHMge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyNTBweCwgMWZyKSk7XHJcblx0Z2FwOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG5cdG1hcmdpbjogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKSAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC51c2VyLWxldmVsLWNhcmQge1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1vbmJvYXJkaW5nLWJvcmRlci1yYWRpdXMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IHZhcigtLW9uYm9hcmRpbmctdHJhbnNpdGlvbik7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctc20pO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC51c2VyLWxldmVsLWNhcmQuY2FyZC1ob3ZlciB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbGcpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC51c2VyLWxldmVsLWNhcmQuc2VsZWN0ZWQge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4xKTtcclxufVxyXG5cclxuLnVzZXItbGV2ZWwtY2FyZCAuY2FyZC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi51c2VyLWxldmVsLWNhcmQgLmNhcmQtaWNvbiB7XHJcblx0Zm9udC1zaXplOiAxLjhlbTtcclxuXHRsaW5lLWhlaWdodDogMTtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLnVzZXItbGV2ZWwtY2FyZCAuY2FyZC10aXRsZSB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiAxLjJlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4udXNlci1sZXZlbC1jYXJkIC5jYXJkLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG5cdG1hcmdpbjogMCAwIHZhcigtLXNpemUtNC0yKSAwO1xyXG59XHJcblxyXG4udXNlci1sZXZlbC1jYXJkIC5jYXJkLWZlYXR1cmVzIHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi51c2VyLWxldmVsLWNhcmQgLmNhcmQtZmVhdHVyZXMgdWwge1xyXG5cdG1hcmdpbjogMDtcclxuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtNC0zKTtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcblxyXG4udXNlci1sZXZlbC1jYXJkIC5jYXJkLWZlYXR1cmVzIGxpIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4udXNlci1sZXZlbC1jYXJkIC5jYXJkLWZlYXR1cmVzIGxpOmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcdTIwMjJcIjtcclxuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogY2FsYygtMSAqIHZhcigtLXNpemUtNC0zKSk7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi51c2VyLWxldmVsLWNhcmQgLnJlY29tbWVuZGF0aW9uLWJhZGdlIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cmlnaHQ6IHZhcigtLXNpemUtNC0yKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtNC0xKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC1zaXplOiAwLjdlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIENvbmZpZ3VyYXRpb24gUHJldmlldyAqL1xyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNvbmZpZy1vdmVydmlldyB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWF4LXdpZHRoOiA4MDBweDtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5tb2RlLWljb24ge1xyXG5cdC0taWNvbi1zaXplOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNvbmZpZy1zZXR0aW5ncyB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWF4LXdpZHRoOiA4MDBweDtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5jb25maWctZmVhdHVyZXMge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1heC13aWR0aDogODAwcHg7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY29uZmlnLXZpZXdzIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXgtd2lkdGg6IDgwMHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmVuYWJsZWQtZmVhdHVyZXMtbGlzdCB7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1hcmdpbjogMDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmVuYWJsZWQtZmVhdHVyZXMtbGlzdCBsaSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZmVhdHVyZS1jaGVjayB7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAudmlld3MtZ3JpZCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDEyMHB4LCAxZnIpKTtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAudmlldy1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnZpZXctaWNvbiB7XHJcblx0Zm9udC1zaXplOiAxLjJlbTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnZpZXctbmFtZSB7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zZXR0aW5ncy1zdW1tYXJ5LWxpc3Qge1xyXG5cdGxpc3Qtc3R5bGU6IG5vbmU7XHJcblx0cGFkZGluZzogMDtcclxuXHRtYXJnaW46IDA7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zZXR0aW5ncy1zdW1tYXJ5LWxpc3QgbGkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSAwO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3Mtc3VtbWFyeS1saXN0IGxpOmxhc3QtY2hpbGQge1xyXG5cdGJvcmRlci1ib3R0b206IG5vbmU7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmctbGFiZWwge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZy12YWx1ZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5jb25maWctb3B0aW9ucyB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWF4LXdpZHRoOiA4MDBweDtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5jdXN0b21pemF0aW9uLW5vdGUge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1heC13aWR0aDogODAwcHg7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAubm90ZS10ZXh0IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRtYXJnaW46IDA7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4vKiBDb25maWd1cmF0aW9uIENoYW5nZXMgUHJldmlldyAqL1xyXG4ub25ib2FyZGluZy12aWV3IC5jb25maWctY2hhbmdlcy1zdW1tYXJ5IHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXgtd2lkdGg6IDgwMHB4O1xyXG5cdG1hcmdpbjogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKSAwO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hhbmdlcyB7XHJcblx0bWFyZ2luOiB2YXIoLS1zaXplLTQtMikgMDtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnByZXNlcnZlZC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0xKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnByZXNlcnZlZC1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cdGZvbnQtc2l6ZTogMS4xZW07XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNoYW5nZS10ZXh0IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAudXBkYXRlZC12aWV3cyxcclxuLm9uYm9hcmRpbmctbW9kYWwgLnVwZGF0ZWQtdmlld3Mge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNoYW5nZS1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRmb250LXNpemU6IDEuMWVtO1xyXG5cdG1hcmdpbi1yaWdodDogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmdzLWNoYW5nZXMtbGlzdCB7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1hcmdpbjogdmFyKC0tc2l6ZS00LTEpIDAgMCB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmdzLWNoYW5nZXMtbGlzdCBsaSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2FmZXR5LW5vdGUge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblx0YmFja2dyb3VuZDogcmdiYSh2YXIoLS1jb2xvci1ibHVlLXJnYiksIDAuMSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0xKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2FmZXR5LWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ibHVlKTtcclxuXHRmb250LXNpemU6IDEuMWVtO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2FmZXR5LXRleHQge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ibHVlKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIFRhc2sgQ3JlYXRpb24gR3VpZGUgKi9cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ub25ib2FyZGluZy12aWV3IC50YXNrLWd1aWRlLWludHJvIHtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5ndWlkZS1kZXNjcmlwdGlvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45NWVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjU7XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zaG9ydGN1dHMtc2VjdGlvbiB7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZm9ybWF0LWV4YW1wbGUge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC00KTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZvcm1hdC1leGFtcGxlIGNvZGUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtNC0xKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRtYXJnaW46IHZhcigtLXNpemUtMi0xKSAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mb3JtYXQtbGVnZW5kIHNtYWxsIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTItMSk7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm1ldGFkYXRhLXN5bWJvbHMge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc3RhdHVzLWxpc3QgbGksXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnN5bWJvbHMtbGlzdCB7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRtYXJnaW46IDA7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1vbmJvYXJkaW5nLWJvcmRlci1yYWRpdXMpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zdGF0dXMtbGlzdCBsaSxcclxuLm9uYm9hcmRpbmctdmlldyAuc3ltYm9scy1saXN0IGxpIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIDA7XHJcblx0Zm9udC1zaXplOiAwLjg1ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc3RhdHVzLWxpc3QgY29kZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTQtMSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XHJcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblx0bWluLXdpZHRoOiA0MHB4O1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZGVtby1jb250ZW50IHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmRlbW8tYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKSB2YXIoLS1zaXplLTQtNCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLXJhZGl1cyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0dHJhbnNpdGlvbjogdmFyKC0tb25ib2FyZGluZy10cmFuc2l0aW9uKTtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmRlbW8tYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5wcmFjdGljZS1mZWVkYmFjayB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC52YWxpZGF0aW9uLW1lc3NhZ2Uge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1vbmJvYXJkaW5nLWJvcmRlci1yYWRpdXMpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC52YWxpZGF0aW9uLXN1Y2Nlc3Mge1xyXG5cdGJhY2tncm91bmQ6IHJnYmEodmFyKC0tY29sb3ItZ3JlZW4tcmdiKSwgMC4xKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAudmFsaWRhdGlvbi1lcnJvciB7XHJcblx0YmFja2dyb3VuZDogcmdiYSh2YXIoLS1jb2xvci1yZWQtcmdiKSwgMC4xKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1yZWQpO1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC52YWxpZGF0aW9uLXdhcm5pbmcge1xyXG5cdGJhY2tncm91bmQ6IHJnYmEodmFyKC0tY29sb3Itb3JhbmdlLXJnYiksIDAuMSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3Itb3JhbmdlKTtcclxuXHRjb2xvcjogdmFyKC0tY29sb3Itb3JhbmdlKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAudmFsaWRhdGlvbi1pbmZvIHtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWNvbG9yLWJsdWUtcmdiKSwgMC4xKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibHVlKTtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItYmx1ZSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNob3J0Y3V0cy1saXN0IHtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1vbmJvYXJkaW5nLWJvcmRlci1yYWRpdXMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2hvcnRjdXRzLWxpc3QgbGkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgMDtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNob3J0Y3V0cy1saXN0IGNvZGUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtNC0yKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLXNpemUtNC0zKTtcclxuXHRtaW4td2lkdGg6IDEwMHB4O1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKiBDb21wbGV0aW9uIFBhZ2UgKi9cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5jb21wbGV0aW9uLXN1Y2Nlc3Mge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zdWNjZXNzLWljb24ge1xyXG5cdGZvbnQtc2l6ZTogM2VtO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc3VjY2Vzcy1tZXNzYWdlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjk1ZW07XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mZWVkYmFjay1zZWN0aW9uIHtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5jb25maWctc3VtbWFyeS1jYXJkIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNvbmZpZy1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNvbmZpZy1pY29uIHtcclxuXHRmb250LXNpemU6IDEuNWVtO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5jb25maWctbmFtZSB7XHJcblx0Zm9udC1zaXplOiAxLjFlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNvbmZpZy1kZXNjcmlwdGlvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5xdWljay1zdGFydC1zdGVwcyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5xdWljay1zdGFydC1zdGVwIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc3RlcC1udW1iZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHR3aWR0aDogMjRweDtcclxuXHRoZWlnaHQ6IDI0cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnN0ZXAtY29udGVudCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm5leHQtc3RlcHMtbGlzdCB7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1hcmdpbjogMDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAubmV4dC1zdGVwcy1saXN0IGxpIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnN0ZXAtY2hlY2sge1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zdGVwLXRleHQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5yZXNvdXJjZXMtbGlzdCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDIwMHB4LCAxZnIpKTtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAucmVzb3VyY2UtaXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0dHJhbnNpdGlvbjogdmFyKC0tb25ib2FyZGluZy10cmFuc2l0aW9uKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAucmVzb3VyY2UtY2xpY2thYmxlIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnJlc291cmNlLWNsaWNrYWJsZTpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnJlc291cmNlLWljb24ge1xyXG5cdGZvbnQtc2l6ZTogMS41ZW07XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZlZWRiYWNrLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG5cdG1hcmdpbjogMCAwIHZhcigtLXNpemUtNC0yKSAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mZWVkYmFjay1idXR0b25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mZWVkYmFjay1idXR0b24ge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1yYWRpdXMpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdHRyYW5zaXRpb246IHZhcigtLW9uYm9hcmRpbmctdHJhbnNpdGlvbik7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZlZWRiYWNrLXBvc2l0aXZlOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mZWVkYmFjay1uZWdhdGl2ZTpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItcmVkKTtcclxuXHRjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZlZWRiYWNrLXRoYW5rcyB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZmVlZGJhY2stdGhhbmtzLW1lc3NhZ2Uge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRtYXJnaW46IDAgMCB2YXIoLS1zaXplLTQtMikgMDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZmVlZGJhY2stdGhhbmtzIGEge1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZmVlZGJhY2stdGhhbmtzIGE6aG92ZXIge1xyXG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5maW5hbC1tZXNzYWdlIHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5maW5hbC1tZXNzYWdlLXRleHQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDFlbTtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuLyogUmVzcG9uc2l2ZSBEZXNpZ24gKi9cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQub25ib2FyZGluZy12aWV3IHtcclxuXHRcdC0tZGlhbG9nLXdpZHRoOiA5NXZ3O1xyXG5cdFx0LS1kaWFsb2ctbWF4LXdpZHRoOiA5NXZ3O1xyXG5cdFx0LS1kaWFsb2ctbWF4LWhlaWdodDogOTV2aDtcclxuXHR9XHJcblxyXG5cdC5vbmJvYXJkaW5nLXZpZXcgLnVzZXItbGV2ZWwtY2FyZHMge1xyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcblx0fVxyXG5cclxuXHQub25ib2FyZGluZy12aWV3IC5mZWF0dXJlcy1vdmVydmlldyB7XHJcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuXHR9XHJcblxyXG5cdC5vbmJvYXJkaW5nLXZpZXcgLnZpZXdzLWdyaWQge1xyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxMDBweCwgMWZyKSk7XHJcblx0fVxyXG5cclxuXHQub25ib2FyZGluZy12aWV3IC5yZXNvdXJjZXMtbGlzdCB7XHJcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuXHR9XHJcblxyXG5cdC5vbmJvYXJkaW5nLXZpZXcgLmZlZWRiYWNrLWJ1dHRvbnMge1xyXG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHR9XHJcblxyXG5cdC5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctYnV0dG9ucyB7XHJcblx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR9XHJcblxyXG5cdC8qIE1vZGUgYW5kIFBsYWNlbWVudCBTZWxlY3Rpb24gLSBNb2JpbGUgTGF5b3V0ICovXHJcblx0Lm1vZGUtb3B0aW9ucyxcclxuXHQucGxhY2VtZW50LW9wdGlvbnMge1xyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcblx0fVxyXG5cclxuXHQubW9kZS1jYXJkLXByZXZpZXcge1xyXG5cdFx0aGVpZ2h0OiAxMDBweDtcclxuXHR9XHJcblxyXG5cdC5wbGFjZW1lbnQtY2FyZC1wcmV2aWV3IHtcclxuXHRcdGhlaWdodDogODBweDtcclxuXHR9XHJcblxyXG5cdC5tb2RlLWNhcmQsXHJcblx0LnBsYWNlbWVudC1jYXJkIHtcclxuXHRcdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHR9XHJcblxyXG5cdC8qIEludHJvIG1vZGUgc2VsZWN0aW9uIC0gTW9iaWxlIGFkanVzdG1lbnRzICovXHJcblx0LmludHJvLW1vZGUtc2VsZWN0aW9uLWNvbnRhaW5lciB7XHJcblx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHRwYWRkaW5nOiAwIHZhcigtLXNpemUtNC0xKTtcclxuXHR9XHJcblxyXG5cdC5pbnRyby10eXBpbmcge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpIHZhcigtLXNpemUtNC0yKTtcclxuXHR9XHJcblxyXG5cdC8qIEZvb3RlciBhZGp1c3RtZW50cyBmb3IgbW9iaWxlICovXHJcblx0Lm9uYm9hcmRpbmctdmlldyAub25ib2FyZGluZy1mb290ZXIge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpIHZhcigtLXNpemUtNC0yKTtcclxuXHR9XHJcblxyXG5cdC5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctYnV0dG9ucyB7XHJcblx0XHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHR9XHJcblxyXG5cdC5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctYnV0dG9ucyBidXR0b24ge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC0zKTtcclxuXHRcdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0fVxyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuLyogRGFyayBUaGVtZSBBZGp1c3RtZW50cyAqL1xyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qIERhcmsgdGhlbWUgYWRqdXN0bWVudHMgZm9yIGZvb3RlciAqL1xyXG4udGhlbWUtZGFyayAudGhlbWUtZGFyayAub25ib2FyZGluZy12aWV3IC5vbmJvYXJkaW5nLWZvb3RlciB7XHJcblx0Ym94LXNoYWRvdzogMCAtMnB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xyXG59XHJcblxyXG4udGhlbWUtZGFyayAudGhlbWUtZGFyayAub25ib2FyZGluZy12aWV3IC5vbmJvYXJkaW5nLWZvb3Rlcjo6YmVmb3JlIHtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDAsIDAsIDAsIDAuMiksIHRyYW5zcGFyZW50KTtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIEFuaW1hdGlvbiBhbmQgVHJhbnNpdGlvbnMgKi9cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5vbmJvYXJkaW5nLWNvbnRlbnQge1xyXG5cdGFuaW1hdGlvbjogZmFkZUluVXAgMC4zcyBlYXNlLW91dDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW5VcCB7XHJcblx0ZnJvbSB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xyXG5cdH1cclxuXHR0byB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG5cdH1cclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAudXNlci1sZXZlbC1jYXJkLnNlbGVjdGVkIHtcclxuXHRhbmltYXRpb246IGNhcmRTZWxlY3QgMC4ycyBlYXNlLW91dDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBjYXJkU2VsZWN0IHtcclxuXHQwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG5cdH1cclxuXHQ1MCUge1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjAyKTtcclxuXHR9XHJcblx0MTAwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG5cdH1cclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIE1vZGUgU2VsZWN0aW9uIC0gRmx1ZW50IHZzIExlZ2FjeSAqL1xyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5tb2RlLXNlbGVjdGlvbiB7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxufVxyXG5cclxuLm1vZGUtb3B0aW9ucyB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDI4MHB4LCAxZnIpKTtcclxuXHRnYXA6IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcblx0bWFyZ2luOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpIDA7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm1vZGUtY2FyZCB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0cGFkZGluZzogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogdmFyKC0tb25ib2FyZGluZy10cmFuc2l0aW9uKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxufVxyXG5cclxuLm1vZGUtY2FyZDpob3ZlciB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcbn1cclxuXHJcbi5tb2RlLWNhcmQuaXMtc2VsZWN0ZWQge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4yKTtcclxufVxyXG5cclxuLm1vZGUtY2FyZC1oZWFkZXIge1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxufVxyXG5cclxuLm1vZGUtY2FyZC10aXRsZSB7XHJcblx0Zm9udC1zaXplOiAxLjFlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ubW9kZS1jYXJkLWJvZHkge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm1vZGUtY2FyZC1wcmV2aWV3IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogM2VtO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ubW9kZS1mbHVlbnQgLm1vZGUtY2FyZC1wcmV2aWV3IHtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSkgMCUsIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpIDEwMCUpO1xyXG59XHJcblxyXG4ubW9kZS1sZWdhY3kgLm1vZGUtY2FyZC1wcmV2aWV3IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4ubW9kZS1jYXJkLWRlc2Mge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjU7XHJcblx0bWluLWhlaWdodDogM2VtO1xyXG59XHJcblxyXG4vKiBTZWN0aW9uIHNoYXJlZCBzdHlsZXMgKi9cclxuLnNlY3Rpb24tdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogMS4yNWVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uc2VjdGlvbi1kZXNjIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjk1ZW07XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG59XHJcblxyXG4ubW9kZS10aXBzLFxyXG4ucGxhY2VtZW50LXRpcHMge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcblx0dGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG5cclxuLm1vZGUtdGlwcyBwLFxyXG4ucGxhY2VtZW50LXRpcHMgcCB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKiBQbGFjZW1lbnQgU2VsZWN0aW9uIC0gU2lkZWxlYXZlcyB2cyBJbmxpbmUgKi9cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ucGxhY2VtZW50LXNlbGVjdGlvbiB7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxufVxyXG5cclxuLnBsYWNlbWVudC1vcHRpb25zIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjgwcHgsIDFmcikpO1xyXG5cdGdhcDogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxuXHRtYXJnaW46IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZykgMDtcclxufVxyXG5cclxuLnBsYWNlbWVudC1jYXJkIHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiB2YXIoLS1vbmJvYXJkaW5nLXRyYW5zaXRpb24pO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LWNhcmQ6aG92ZXIge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctcyk7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LWNhcmQuaXMtc2VsZWN0ZWQge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4yKTtcclxufVxyXG5cclxuLnBsYWNlbWVudC1jYXJkLWhlYWRlciB7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTMpO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LWNhcmQtdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogMS4xZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLnBsYWNlbWVudC1jYXJkLWJvZHkge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLnBsYWNlbWVudC1jYXJkLXByZXZpZXcge1xyXG5cdGhlaWdodDogMTAwcHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi8qIFZpc3VhbCByZXByZXNlbnRhdGlvbnMgZm9yIHBsYWNlbWVudCBtb2RlcyAqL1xyXG4ucGxhY2VtZW50LXNpZGVsZWF2ZXMgLnBsYWNlbWVudC1jYXJkLXByZXZpZXcge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMmZyIDFmcjtcclxuXHRnYXA6IDRweDtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5wbGFjZW1lbnQtcHJldmlldy1jb2wge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LXByZXZpZXctY29sLnBsYWNlbWVudC1wcmV2aWV3LW1haW4ge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0b3BhY2l0eTogMC4zO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LWlubGluZSAucGxhY2VtZW50LWNhcmQtcHJldmlldyB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LXByZXZpZXctc2luZ2xlIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRvcGFjaXR5OiAwLjM7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG59XHJcblxyXG4ucGxhY2VtZW50LWNhcmQtZGVzYyB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNTtcclxuXHRtaW4taGVpZ2h0OiAzZW07XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKiBBSS1TdHlsZSBJbnRybyBUeXBpbmcgQW5pbWF0aW9uICovXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogV3JhcHBlciB0byBwcmV2ZW50IGxheW91dCBzaGlmdCAqL1xyXG4uaW50cm8tdHlwaW5nLXdyYXBwZXIge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1heC13aWR0aDogbWF4KDkwMHB4LCA3MCUpO1xyXG5cdG1hcmdpbjogMCBhdXRvO1xyXG59XHJcblxyXG4uaW50cm8tdHlwaW5nIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNikgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5pbnRyby1saW5lIHtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0bGluZS1oZWlnaHQ6IDEuNjtcclxufVxyXG5cclxuLmludHJvLWxpbmUtMSB7XHJcblx0LyogXCJIaSxcIiAtIExhcmdlIHJlc3BvbnNpdmUgZ3JlZXRpbmcgKi9cclxuXHRmb250LXNpemU6IGNsYW1wKDNyZW0sIDZ2dywgNXJlbSk7XHJcblx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxuXHRsaW5lLWhlaWdodDogMS4yO1xyXG59XHJcblxyXG4uaW50cm8tbGluZS0yIHtcclxuXHQvKiBcIlRoYW5rIHlvdSBmb3IgdXNpbmcgVGFzayBHZW5pdXNcIiAtIFNlY29uZGFyeSBncmVldGluZyAqL1xyXG5cdGZvbnQtc2l6ZTogY2xhbXAoMS41cmVtLCAzdncsIDIuNXJlbSk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC02KTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG59XHJcblxyXG4uaW50cm8tbGluZS0zLFxyXG4uaW50cm8tbGluZS00IHtcclxuXHQvKiBEZXNjcmlwdGlvbiB0ZXh0IC0gUmVzcG9uc2l2ZSBib2R5IHRleHQgKi9cclxuXHRmb250LXNpemU6IGNsYW1wKDFyZW0sIDJ2dywgMS40cmVtKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bGluZS1oZWlnaHQ6IDEuODtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtNSk7XHJcbn1cclxuXHJcbi8qIEFJLXN0eWxlIHN0cmVhbWluZyBjaGFyYWN0ZXJzICovXHJcbi5pbnRyby1jaGFyIHtcclxuXHRkaXNwbGF5OiBpbmxpbmU7XHJcblx0b3BhY2l0eTogMDtcclxuXHRmaWx0ZXI6IGJsdXIoNHB4KTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSksXHJcblx0ZmlsdGVyIDAuNHMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKSxcclxuXHR0cmFuc2Zvcm0gMC40cyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLmludHJvLWNoYXItdmlzaWJsZSB7XHJcblx0b3BhY2l0eTogMTtcclxuXHRmaWx0ZXI6IGJsdXIoMHB4KTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbn1cclxuXHJcbi8qIFNwYWNlIGNoYXJhY3RlciBoYW5kbGluZyAqL1xyXG4uaW50cm8tY2hhci1zcGFjZSB7XHJcblx0d2lkdGg6IDAuMjVlbTtcclxufVxyXG5cclxuLyogU3RyZWFtaW5nIGN1cnNvciB0aGF0IGZvbGxvd3MgY2hhcmFjdGVycyAqL1xyXG4uaW50cm8tY3Vyc29yIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0bWFyZ2luLWxlZnQ6IDFweDtcclxuXHRvcGFjaXR5OiAwLjc7XHJcblx0YW5pbWF0aW9uOiBjdXJzb3JCbGluayAxcyBpbmZpbml0ZTtcclxuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRmb250LXdlaWdodDogbm9ybWFsO1xyXG5cdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxufVxyXG5cclxuQGtleWZyYW1lcyBjdXJzb3JCbGluayB7XHJcblx0MCUsIDQ5JSB7XHJcblx0XHRvcGFjaXR5OiAwLjc7XHJcblx0fVxyXG5cdDUwJSwgMTAwJSB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdH1cclxufVxyXG5cclxuLyogQ29tcGxldGVkIHN0cmVhbSBsaW5lICovXHJcbi5zdHJlYW0tY29tcGxldGUge1xyXG5cdGFuaW1hdGlvbjogc3RyZWFtQ29tcGxldGUgMC4zcyBlYXNlLW91dDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBzdHJlYW1Db21wbGV0ZSB7XHJcblx0MCUge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcblx0NTAlIHtcclxuXHRcdG9wYWNpdHk6IDAuOTU7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIEZhZGUgb3V0IGFuaW1hdGlvbiBmb3IgcmVtb3ZpbmcgbGluZXMgKi9cclxuLmludHJvLWxpbmUtZmFkZW91dCB7XHJcblx0b3BhY2l0eTogMDtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuNXMgZWFzZS1vdXQ7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi8qIE1vZGUgc2VsZWN0aW9uIGNvbnRhaW5lciB0aGF0IGFwcGVhcnMgYWZ0ZXIgaW50cm8gdHlwaW5nICovXHJcbi5pbnRyby1tb2RlLXNlbGVjdGlvbi1jb250YWluZXIge1xyXG5cdGFuaW1hdGlvbjogZmFkZUluRnJvbUJvdHRvbSAwLjZzIGVhc2Utb3V0O1xyXG5cdGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluRnJvbUJvdHRvbSB7XHJcblx0ZnJvbSB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xyXG5cdH1cclxuXHR0byB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG5cdH1cclxufVxyXG5cclxuLyogRW5oYW5jZWQgcmVhZGFiaWxpdHkgb24gZGlmZmVyZW50IHRoZW1lcyAqL1xyXG4udGhlbWUtZGFyayAuaW50cm8tbGluZS0xIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdHRleHQtc2hhZG93OiAwIDAgMjBweCByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjEpO1xyXG59XHJcblxyXG4udGhlbWUtZGFyayAuaW50cm8tY2hhci12aXNpYmxlIHtcclxuXHQvKiBTdWJ0bGUgZ2xvdyBlZmZlY3QgZm9yIGRhcmsgdGhlbWUgKi9cclxuXHR0ZXh0LXNoYWRvdzogMCAwIDhweCByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjA1KTtcclxufVxyXG5cclxuLyogU21vb3RoIGFwcGVhcmFuY2UgZm9yIHdob2xlIHR5cGluZyBjb250YWluZXIgKi9cclxuLmludHJvLXR5cGluZyB7XHJcblx0YW5pbWF0aW9uOiBmYWRlSW5UeXBpbmcgMC41cyBlYXNlLW91dDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW5UeXBpbmcge1xyXG5cdGZyb20ge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIFRyYW5zaXRpb24gbWVzc2FnZSBjb250YWluZXIgKi9cclxuLmludHJvLXRyYW5zaXRpb24tY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0bWluLWhlaWdodDogNjBweDtcclxufVxyXG5cclxuLmludHJvLXRyYW5zaXRpb24tbWVzc2FnZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKSB2YXIoLS1zaXplLTQtNCk7XHJcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG5cdFx0MTM1ZGVnLFxyXG5cdFx0cmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4wOCkgMCUsXHJcblx0XHRyZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjAzKSAxMDAlXHJcblx0KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNtKTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcclxufVxyXG5cclxuLmludHJvLXRyYW5zaXRpb24tbWVzc2FnZSAudHJhbnNpdGlvbi1pY29uIHtcclxuXHRmb250LXNpemU6IDEuNWVtO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdGFuaW1hdGlvbjogc3BhcmtsZSAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xyXG59XHJcblxyXG4uaW50cm8tdHJhbnNpdGlvbi1tZXNzYWdlIC50cmFuc2l0aW9uLXRleHQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiAwLjk1ZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNTtcclxufVxyXG5cclxuQGtleWZyYW1lcyBzcGFya2xlIHtcclxuXHQwJSxcclxuXHQxMDAlIHtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxuXHQ1MCUge1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xyXG5cdFx0b3BhY2l0eTogMC44O1xyXG5cdH1cclxufVxyXG5cclxuLyogQ29uZmlnIGNoZWNrIHR5cGluZyBhbmltYXRpb24gKi9cclxuLmNvbmZpZy1jaGVjay10eXBpbmcge1xyXG5cdG1pbi1oZWlnaHQ6IDIwMHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLmNvbmZpZy1jaGVjay10eXBpbmcgLmNoZWNrLWxpbmUge1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC00KTtcclxuXHRsaW5lLWhlaWdodDogMS42O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5jb25maWctY2hlY2stdHlwaW5nIC5jaGVjay1saW5lLTEge1xyXG5cdC8qIEZpcnN0IGxpbmUgLSBhdHRlbnRpb24gZ3JhYmJlciAqL1xyXG5cdGZvbnQtc2l6ZTogY2xhbXAoMS4ycmVtLCAyLjV2dywgMS44cmVtKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG59XHJcblxyXG4uY29uZmlnLWNoZWNrLXR5cGluZyAuY2hlY2stbGluZS0yLFxyXG4uY29uZmlnLWNoZWNrLXR5cGluZyAuY2hlY2stbGluZS0zIHtcclxuXHQvKiBQcm9ncmVzcyBtZXNzYWdlcyAqL1xyXG5cdGZvbnQtc2l6ZTogY2xhbXAoMXJlbSwgMnZ3LCAxLjNyZW0pO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG59XHJcblxyXG4uY29uZmlnLWNoZWNrLXR5cGluZyAuY2hlY2stbGluZS1yZXN1bHQge1xyXG5cdC8qIFJlc3VsdCBtZXNzYWdlIC0gaGlnaGxpZ2h0ZWQgY2FyZCAqL1xyXG5cdGZvbnQtc2l6ZTogY2xhbXAoMS4xcmVtLCAyLjJ2dywgMS42cmVtKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC00KTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCkgdmFyKC0tc2l6ZS00LTUpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcblx0XHQxMzVkZWcsXHJcblx0XHRyZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjA1KSAwJSxcclxuXHRcdHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuMDIpIDEwMCVcclxuXHQpO1xyXG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG59XHJcblxyXG4uY29uZmlnLWNoZWNrLXR5cGluZyAuY2hlY2stbGluZS1zdWNjZXNzIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cdGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG5cdFx0MTM1ZGVnLFxyXG5cdFx0cmdiYSh2YXIoLS1jb2xvci1ncmVlbi1yZ2IpLCAwLjA4KSAwJSxcclxuXHRcdHJnYmEodmFyKC0tY29sb3ItZ3JlZW4tcmdiKSwgMC4wMikgMTAwJVxyXG5cdCk7XHJcbn1cclxuXHJcbi5jb25maWctY2hlY2stdHlwaW5nIC5jaGVjay1saW5lLWZyZXNoIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKiBOZXcgVUkgQ29tcG9uZW50cyAoc2hhZGNuIERlc2lnbikgKi9cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiA9PT09PSBTZWxlY3RhYmxlIENhcmQgQ29tcG9uZW50ID09PT09ICovXHJcbi5zZWxlY3RhYmxlLWNhcmRzLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDI4MHB4LCAxZnIpKTtcclxuXHRnYXA6IHZhcigtLXNpemUtNC00KTtcclxuXHRtYXJnaW46IHZhcigtLXNpemUtNC00KSAwO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkIHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IHZhcigtLW9uYm9hcmRpbmctdHJhbnNpdGlvbik7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctc20pO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkOmhvdmVyIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sZyk7XHJcbn1cclxuXHJcbi5zZWxlY3RhYmxlLWNhcmQuaXMtc2VsZWN0ZWQge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4xKTtcclxufVxyXG5cclxuLnNlbGVjdGFibGUtY2FyZC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XHJcbn1cclxuXHJcbi5zZWxlY3RhYmxlLWNhcmQtaWNvbiB7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxuXHRvcGFjaXR5OiAwLjg7XHJcbn1cclxuXHJcbi5zZWxlY3RhYmxlLWNhcmQtdGl0bGUtY29udGFpbmVyIHtcclxuXHRmbGV4OiAxO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkLXRpdGxlIHtcclxuXHRtYXJnaW46IDA7XHJcblx0Zm9udC1zaXplOiAxLjFlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5zZWxlY3RhYmxlLWNhcmQtc3VidGl0bGUge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtMi0xKTtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxufVxyXG5cclxuLnNlbGVjdGFibGUtY2FyZC1iYWRnZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTQtMik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGZvbnQtc2l6ZTogMC43ZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjAyZW07XHJcbn1cclxuXHJcbi5zZWxlY3RhYmxlLWNhcmQtYm9keSB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkLXByZXZpZXcge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdG1pbi1oZWlnaHQ6IDEwMHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG5cdG1hcmdpbjogMCAwIHZhcigtLXNpemUtNC0yKSAwO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkLWZlYXR1cmVzIHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5zZWxlY3RhYmxlLWNhcmQtZmVhdHVyZXMgdWwge1xyXG5cdG1hcmdpbjogMDtcclxuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtNC0zKTtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkLWZlYXR1cmVzIGxpIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkLWZlYXR1cmVzIGxpOmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcdTIwMjJcIjtcclxuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogY2FsYygtMSAqIHZhcigtLXNpemUtNC0zKSk7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi8qID09PT09IEZlYXR1cmUgTGlzdCBDb21wb25lbnQgPT09PT0gKi9cclxuLmZlYXR1cmUtbGlzdCB7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1hcmdpbjogMDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5mZWF0dXJlLWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi5mZWF0dXJlLWl0ZW0taWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG59XHJcblxyXG4uZmVhdHVyZS1pdGVtLXRleHQge1xyXG5cdGZsZXg6IDE7XHJcbn1cclxuXHJcbi8qID09PT09IEJhZGdlIENvbXBvbmVudCA9PT09PSAqL1xyXG4ub25ib2FyZGluZy1iYWRnZSB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LXNpemU6IDAuNzVlbTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjAxZW07XHJcblx0dHJhbnNpdGlvbjogdmFyKC0tb25ib2FyZGluZy10cmFuc2l0aW9uKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYmFkZ2UtZGVmYXVsdCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1iYWRnZS1zdWNjZXNzIHtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWNvbG9yLWdyZWVuLXJnYiksIDAuMSk7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmVlbik7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLWJhZGdlLXdhcm5pbmcge1xyXG5cdGJhY2tncm91bmQ6IHJnYmEodmFyKC0tY29sb3Itb3JhbmdlLXJnYiksIDAuMSk7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3Itb3JhbmdlKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYmFkZ2UtaW5mbyB7XHJcblx0YmFja2dyb3VuZDogcmdiYSh2YXIoLS1jb2xvci1ibHVlLXJnYiksIDAuMSk7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWJsdWUpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1iYWRnZS1hY2NlbnQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXI6IG5vbmU7XHJcbn1cclxuXHJcbi8qID09PT09IEFsZXJ0IENvbXBvbmVudCA9PT09PSAqL1xyXG4ub25ib2FyZGluZy1hbGVydCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHR0cmFuc2l0aW9uOiB2YXIoLS1vbmJvYXJkaW5nLXRyYW5zaXRpb24pO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC1pY29uIHtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLWFsZXJ0LWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLWFsZXJ0LXRpdGxlIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0xKTtcclxuXHRmb250LXNpemU6IDAuOTVlbTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYWxlcnQtbWVzc2FnZSB7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC1pbmZvIHtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWNvbG9yLWJsdWUtcmdiKSwgMC4xKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJsdWUpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC1pbmZvIC5vbmJvYXJkaW5nLWFsZXJ0LWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ibHVlKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYWxlcnQtaW5mbyAub25ib2FyZGluZy1hbGVydC10aXRsZSxcclxuLm9uYm9hcmRpbmctYWxlcnQtaW5mbyAub25ib2FyZGluZy1hbGVydC1tZXNzYWdlIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItYmx1ZSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLWFsZXJ0LXN1Y2Nlc3Mge1xyXG5cdGJhY2tncm91bmQ6IHJnYmEodmFyKC0tY29sb3ItZ3JlZW4tcmdiKSwgMC4xKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYWxlcnQtc3VjY2VzcyAub25ib2FyZGluZy1hbGVydC1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC1zdWNjZXNzIC5vbmJvYXJkaW5nLWFsZXJ0LXRpdGxlLFxyXG4ub25ib2FyZGluZy1hbGVydC1zdWNjZXNzIC5vbmJvYXJkaW5nLWFsZXJ0LW1lc3NhZ2Uge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLWFsZXJ0LXdhcm5pbmcge1xyXG5cdGJhY2tncm91bmQ6IHJnYmEodmFyKC0tY29sb3Itb3JhbmdlLXJnYiksIDAuMSk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC13YXJuaW5nIC5vbmJvYXJkaW5nLWFsZXJ0LWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC13YXJuaW5nIC5vbmJvYXJkaW5nLWFsZXJ0LXRpdGxlLFxyXG4ub25ib2FyZGluZy1hbGVydC13YXJuaW5nIC5vbmJvYXJkaW5nLWFsZXJ0LW1lc3NhZ2Uge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC1lcnJvciB7XHJcblx0YmFja2dyb3VuZDogcmdiYSh2YXIoLS1jb2xvci1yZWQtcmdiKSwgMC4xKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXJlZCk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLWFsZXJ0LWVycm9yIC5vbmJvYXJkaW5nLWFsZXJ0LWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC1lcnJvciAub25ib2FyZGluZy1hbGVydC10aXRsZSxcclxuLm9uYm9hcmRpbmctYWxlcnQtZXJyb3IgLm9uYm9hcmRpbmctYWxlcnQtbWVzc2FnZSB7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLXJlZCk7XHJcbn1cclxuXHJcbi8qID09PT09IFByb2dyZXNzIERvdHMgQ29tcG9uZW50ID09PT09ICovXHJcbi5wcm9ncmVzcy1kb3RzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0bWFyZ2luOiB2YXIoLS1zaXplLTQtMykgMDtcclxufVxyXG5cclxuLnByb2dyZXNzLWRvdC13cmFwcGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0xKTtcclxufVxyXG5cclxuLnByb2dyZXNzLWRvdCB7XHJcblx0d2lkdGg6IDhweDtcclxuXHRoZWlnaHQ6IDhweDtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHRyYW5zaXRpb246IHZhcigtLW9uYm9hcmRpbmctdHJhbnNpdGlvbik7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1kb3QuaXMtYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdHRyYW5zZm9ybTogc2NhbGUoMS41KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4yKTtcclxufVxyXG5cclxuLnByb2dyZXNzLWRvdC5pcy1jb21wbGV0ZWQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0b3BhY2l0eTogMC42O1xyXG59XHJcblxyXG4ucHJvZ3Jlc3MtZG90LWxhYmVsIHtcclxuXHRmb250LXNpemU6IDAuN2VtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcbiIsICIvKiBOb2lzZSBMYXllciBFZmZlY3QgKi9cclxuLnRnLW5vaXNlLWxheWVyIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi50Zy1ub2lzZS1sYXllcjo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0b3BhY2l0eTogMC4yNTtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgd2lkdGg9XCIxOTAxXCIgaGVpZ2h0PVwiOTYxXCIgdmlld0JveD1cIjAgMCAxOTAxIDk2MVwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPjxnIG9wYWNpdHk9XCIwLjI1XCIgZmlsdGVyPVwidXJsKCUyM2ZpbHRlcjBfbl8xXzIpXCI+PHJlY3Qgd2lkdGg9XCIxOTAxXCIgaGVpZ2h0PVwiOTYxXCIgZmlsbD1cIiUyM0VGRUZFRlwiLz48L2c+PGRlZnM+PGZpbHRlciBpZD1cImZpbHRlcjBfbl8xXzJcIiB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCIxOTAxXCIgaGVpZ2h0PVwiOTYxXCIgZmlsdGVyVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz1cInNSR0JcIj48ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PVwiMFwiIHJlc3VsdD1cIkJhY2tncm91bmRJbWFnZUZpeFwiLz48ZmVCbGVuZCBtb2RlPVwibm9ybWFsXCIgaW49XCJTb3VyY2VHcmFwaGljXCIgaW4yPVwiQmFja2dyb3VuZEltYWdlRml4XCIgcmVzdWx0PVwic2hhcGVcIi8+PGZlVHVyYnVsZW5jZSB0eXBlPVwiZnJhY3RhbE5vaXNlXCIgYmFzZUZyZXF1ZW5jeT1cIjEuMjUgMS4yNVwiIHN0aXRjaFRpbGVzPVwic3RpdGNoXCIgbnVtT2N0YXZlcz1cIjNcIiByZXN1bHQ9XCJub2lzZVwiIHNlZWQ9XCI1MzM5XCIgLz48ZmVDb2xvck1hdHJpeCBpbj1cIm5vaXNlXCIgdHlwZT1cImx1bWluYW5jZVRvQWxwaGFcIiByZXN1bHQ9XCJhbHBoYU5vaXNlXCIgLz48ZmVDb21wb25lbnRUcmFuc2ZlciBpbj1cImFscGhhTm9pc2VcIiByZXN1bHQ9XCJjb2xvcmVkTm9pc2UxXCI+PGZlRnVuY0EgdHlwZT1cImRpc2NyZXRlXCIgdGFibGVWYWx1ZXM9XCIxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIFwiLz48L2ZlQ29tcG9uZW50VHJhbnNmZXI+PGZlQ29tcG9zaXRlIG9wZXJhdG9yPVwiaW5cIiBpbjI9XCJzaGFwZVwiIGluPVwiY29sb3JlZE5vaXNlMVwiIHJlc3VsdD1cIm5vaXNlMUNsaXBwZWRcIiAvPjxmZUZsb29kIGZsb29kLWNvbG9yPVwicmdiYSgwLCAwLCAwLCAwLjI1KVwiIHJlc3VsdD1cImNvbG9yMUZsb29kXCIgLz48ZmVDb21wb3NpdGUgb3BlcmF0b3I9XCJpblwiIGluMj1cIm5vaXNlMUNsaXBwZWRcIiBpbj1cImNvbG9yMUZsb29kXCIgcmVzdWx0PVwiY29sb3IxXCIgLz48ZmVNZXJnZSByZXN1bHQ9XCJlZmZlY3QxX25vaXNlXzFfMlwiPjxmZU1lcmdlTm9kZSBpbj1cInNoYXBlXCIgLz48ZmVNZXJnZU5vZGUgaW49XCJjb2xvcjFcIiAvPjwvZmVNZXJnZT48L2ZpbHRlcj48L2RlZnM+PC9zdmc+Jyk7XHJcblx0YmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHR6LWluZGV4OiAxO1xyXG59XHJcblxyXG4udGctbm9pc2UtbGF5ZXIgPiAqIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ei1pbmRleDogMjtcclxufVxyXG4iLCAiLyogVGltZWxpbmUgU2lkZWJhciBWaWV3IFN0eWxlcyAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtc2lkZWJhci1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWludGVyZmFjZSk7XHJcblx0cGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBIZWFkZXIgKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMykgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG5cdFx0MTM1ZGVnLFxyXG5cdFx0dmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpIDAlLFxyXG5cdFx0dmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3ZlcikgMTAwJVxyXG5cdCk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0YmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG5cdC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1jb250cm9scyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiB2YXIoLS1zaXplLTQtOCk7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtOCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWJ0bjpob3ZlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWJ0bi5pcy1hY3RpdmUge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLyogVGltZWxpbmUgQ29udGVudCAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtY29udGVudCB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKSAwO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl1cclxuLnRpbWVsaW5lLWNvbnRlbnQuZm9jdXMtbW9kZVxyXG4udGltZWxpbmUtZGF0ZS1ncm91cDpub3QoLmlzLXRvZGF5KSB7XHJcblx0b3BhY2l0eTogMC4zO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZW1wdHkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTgpO1xyXG59XHJcblxyXG4vKiBEYXRlIEdyb3VwcyAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZGF0ZS1ncm91cCB7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWRhdGUtZ3JvdXAuaXMtdG9kYXkge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0bWFyZ2luOiAwIHZhcigtLXNpemUtNC0yKSB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZGF0ZS1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC00KTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxuXHRwb3NpdGlvbjogc3RpY2t5O1xyXG5cdHRvcDogMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdHotaW5kZXg6IDE7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1kYXRlLWdyb3VwLmlzLXRvZGF5XHJcbi50aW1lbGluZS1kYXRlLWhlYWRlciB7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdG1hcmdpbjogMCAwIHZhcigtLXNpemUtNC0yKSAwO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZGF0ZS1yZWxhdGl2ZSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXdlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG4vKiBFdmVudHMgTGlzdCAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnRzLWxpc3Qge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0xKTtcclxuXHRwYWRkaW5nOiAwIHZhcigtLXNpemUtMi0zKTtcclxufVxyXG5cclxuLyogVGltZWxpbmUgRXZlbnRzICovXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQ6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudDpob3ZlcjpoYXMoLnRpbWVsaW5lLWV2ZW50LWNoZWNrYm94OmhvdmVyKSB7XHJcblx0dHJhbnNmb3JtOiBub25lO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQuaXMtY29tcGxldGVkIHtcclxuXHRvcGFjaXR5OiAwLjY7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudC5pcy1jb21wbGV0ZWRcclxuLnRpbWVsaW5lLWV2ZW50LXRleHQge1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogRXZlbnQgVGltZSAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtdGltZSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG5cdG1pbi13aWR0aDogNDVweDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0bWFyZ2luLXRvcDogMnB4O1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTEpIHZhcigtLXNpemUtNC0yKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLyogRW5oYW5jZWQgdGltZSBkaXNwbGF5IHN0eWxlcyAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtdGltZS50aW1lbGluZS1ldmVudC10aW1lLXNpbmdsZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC10aW1lLnRpbWVsaW5lLWV2ZW50LXRpbWUtcmFuZ2Uge1xyXG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCkgMCUsIHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3ZlcikgMTAwJSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdG1pbi13aWR0aDogODBweDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0YW5pbWF0aW9uOiBzdWJ0bGUtcHVsc2UgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC10aW1lLnRpbWVsaW5lLWV2ZW50LXRpbWUtcmFuZ2U6OmFmdGVyIHtcclxuXHRjb250ZW50OiBcIlx1MjNGMVwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IC02cHg7XHJcblx0cmlnaHQ6IC02cHg7XHJcblx0Zm9udC1zaXplOiAxMHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogOTk5cHg7XHJcblx0bWluLXdpZHRoOiAxOHB4O1xyXG5cdGhlaWdodDogMTZweDtcclxuXHRwYWRkaW5nOiAwIDRweDtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxuXHRsaW5lLWhlaWdodDogMTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4vKiBXaGVuIGR1cmF0aW9uIGlzIHByb3ZpZGVkLCBzaG93IGl0IGluc3RlYWQgb2YgdGhlIGljb24gKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWV2ZW50LXRpbWUudGltZWxpbmUtZXZlbnQtdGltZS1yYW5nZVtkYXRhLWR1cmF0aW9uXTo6YWZ0ZXIge1xyXG5cdGNvbnRlbnQ6IGF0dHIoZGF0YS1kdXJhdGlvbik7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC10aW1lLnRpbWVsaW5lLWV2ZW50LXRpbWUtZGVmYXVsdCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWV2ZW50LXRpbWUudGltZWxpbmUtZXZlbnQtdGltZS1ncm91cCB7XHJcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdmFyKC0tdGV4dC1hY2NlbnQpIDAlLCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpIDEwMCUpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRtaW4td2lkdGg6IDYwcHg7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC10aW1lLnRpbWVsaW5lLWV2ZW50LXRpbWUtZGF0ZS1vbmx5IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdG1pbi13aWR0aDogNjBweDtcclxufVxyXG5cclxuLyogVGltZSBHcm91cCBTdHlsZXMgKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLXRpbWUtZ3JvdXAge1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtdGltZS1ncm91cC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS10aW1lLWdyb3VwLWNvdW50IHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS10aW1lLWdyb3VwLWV2ZW50cyB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQudGltZWxpbmUtZXZlbnQtZ3JvdXBlZCB7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC50aW1lbGluZS1ldmVudC1ncm91cGVkOmxhc3QtY2hpbGQge1xyXG5cdG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi8qIERhdGUtb25seSBFdmVudHMgU2VjdGlvbiAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZGF0ZS1vbmx5LXNlY3Rpb24ge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC00KTtcclxuXHRwYWRkaW5nLXRvcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJvcmRlci10b3A6IDJweCBkYXNoZWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG5cclxuLyogSGlkZSBwZXItZXZlbnQgdGltZSBsYWJlbHMgaW5zaWRlIEFsbCBkYXkgc2VjdGlvbiBhcyBzYWZldHkgbmV0ICovXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1kYXRlLW9ubHktc2VjdGlvbiAudGltZWxpbmUtZXZlbnQgLnRpbWVsaW5lLWV2ZW50LXRpbWUge1xyXG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWRhdGUtb25seS1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC0zKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1kYXRlLW9ubHktdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4vKiBFdmVudCBDb250ZW50ICovXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC1jb250ZW50IHtcclxuXHRmbGV4OiAxO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0bWluLXdpZHRoOiAwO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtY2hlY2tib3gge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRtYXJnaW4tdG9wOiAycHg7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudC1jaGVja2JveFxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG5cdG1hcmdpbjogMDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC10ZXh0IHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxuXHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtaWNvbiB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0bWFyZ2luLXRvcDogMXB4O1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtY29udGVudC10ZXh0IHtcclxuXHRmbGV4OiAxO1xyXG5cdHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbn1cclxuXHJcbi8qIEV2ZW50IEFjdGlvbnMgKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWV2ZW50LWFjdGlvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMSk7XHJcblx0b3BhY2l0eTogMDtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl1cclxuLnRpbWVsaW5lLWV2ZW50OmhvdmVyXHJcbi50aW1lbGluZS1ldmVudC1hY3Rpb25zIHtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtYWN0aW9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IHZhcigtLXNpemUtNC02KTtcclxuXHRoZWlnaHQ6IHZhcigtLXNpemUtNC02KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtYWN0aW9uOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLyogUXVpY2sgSW5wdXQgQXJlYSAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtcXVpY2staW5wdXQge1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC00KTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0cGFkZGluZy1ib3R0b206IHZhcigtLXNpemUtNC0xMik7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHRyYW5zaXRpb246IGFsbCAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi8qIENvbGxhcHNlZCBzdGF0ZSAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtcXVpY2staW5wdXQuaXMtY29sbGFwc2VkIHtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGdhcDogMDtcclxuXHRoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1xdWljay1pbnB1dC5pcy1jb2xsYXBzZWRcclxuLnF1aWNrLWlucHV0LWhlYWRlcixcclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl1cclxuLnRpbWVsaW5lLXF1aWNrLWlucHV0LmlzLWNvbGxhcHNlZFxyXG4ucXVpY2staW5wdXQtZWRpdG9yLFxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtcXVpY2staW5wdXQuaXMtY29sbGFwc2VkXHJcbi5xdWljay1pbnB1dC1hY3Rpb25zIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiBBbmltYXRpb24gc3RhdGVzICovXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1xdWljay1pbnB1dC5pcy1jb2xsYXBzaW5nIHtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtcXVpY2staW5wdXQuaXMtZXhwYW5kaW5nIHtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vKiBDb2xsYXBzZWQgaGVhZGVyICovXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC5xdWljay1pbnB1dC1oZWFkZXItY29sbGFwc2VkIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKSB2YXIoLS1zaXplLTQtNCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXMgZWFzZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWhlYWRlci1jb2xsYXBzZWQ6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAuY29sbGFwc2VkLWV4cGFuZC1idG4ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogdmFyKC0tc2l6ZS00LTYpO1xyXG5cdGhlaWdodDogdmFyKC0tc2l6ZS00LTYpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAuY29sbGFwc2VkLWV4cGFuZC1idG46aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAuY29sbGFwc2VkLXRpdGxlIHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1sZWZ0OiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC5jb2xsYXBzZWQtcXVpY2stYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLmNvbGxhcHNlZC1xdWljay1jYXB0dXJlLFxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAuY29sbGFwc2VkLW1vcmUtb3B0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiB2YXIoLS1zaXplLTQtNyk7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtNyk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC5jb2xsYXBzZWQtcXVpY2stY2FwdHVyZTpob3ZlcixcclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLmNvbGxhcHNlZC1tb3JlLW9wdGlvbnM6aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAuY29sbGFwc2VkLXF1aWNrLWNhcHR1cmU6aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBFeHBhbmRlZCBoZWFkZXIgd2l0aCBjb2xsYXBzZSBidXR0b24gKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2staW5wdXQtaGVhZGVyLWxlZnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWNvbGxhcHNlLWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiB2YXIoLS1zaXplLTQtNik7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtNik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC5xdWljay1pbnB1dC1jb2xsYXBzZS1idG46aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4vKiBSb3RhdGUgY29sbGFwc2UgYnV0dG9uIGljb24gKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWNvbGxhcHNlLWJ0biBzdmcge1xyXG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcyBlYXNlO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtcXVpY2staW5wdXQuaXMtY29sbGFwc2VkXHJcbi5xdWljay1pbnB1dC1jb2xsYXBzZS1idG5cclxuc3ZnIHtcclxuXHR0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2staW5wdXQtdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2staW5wdXQtdGFyZ2V0LWluZm8ge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0xKSB2YXIoLS1zaXplLTQtMik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWVkaXRvciB7XHJcblx0bWluLWhlaWdodDogODBweDtcclxuXHRib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXRleHQpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0cmVzaXplOiB2ZXJ0aWNhbDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2staW5wdXQtZWRpdG9yOmZvY3VzLXdpdGhpbiB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2staW5wdXQtZWRpdG9yIC5jbS1lZGl0b3Ige1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2staW5wdXQtZWRpdG9yIC5jbS1mb2N1c2VkIHtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4ucXVpY2staW5wdXQtZWRpdG9yXHJcbi5jbS1lZGl0b3IuY20tZm9jdXNlZCB7XHJcblx0b3V0bGluZTogbm9uZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWFjdGlvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWNhcHR1cmUtYnRuLFxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2stbW9kYWwtYnRuIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMykgdmFyKC0tc2l6ZS00LTYpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG5cdGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC5xdWljay1jYXB0dXJlLWJ0biB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2stY2FwdHVyZS1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG5cdGJveC1zaGFkb3c6IDAgNHB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2stbW9kYWwtYnRuIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLW1vZGFsLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxuXHRib3gtc2hhZG93OiAwIDRweCA4cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBEZXNpZ24gKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0ZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWhlYWRlciB7XHJcblx0XHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTMpO1xyXG5cdH1cclxuXHJcblx0ZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWNvbnRyb2xzIHtcclxuXHRcdGdhcDogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdH1cclxuXHJcblx0ZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWJ0biB7XHJcblx0XHR3aWR0aDogdmFyKC0tc2l6ZS00LTcpO1xyXG5cdFx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtNyk7XHJcblx0fVxyXG5cclxuXHRkaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnRzLWxpc3Qge1xyXG5cdFx0cGFkZGluZzogMCB2YXIoLS1zaXplLTItMyk7XHJcblx0fVxyXG5cclxuXHRkaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdH1cclxuXHJcblx0ZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLXF1aWNrLWlucHV0IHtcclxuXHRcdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHR9XHJcblxyXG5cdGRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcblx0LnRpbWVsaW5lLXF1aWNrLWlucHV0LmlzLWNvbGxhcHNlZCB7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdH1cclxuXHJcblx0ZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWVkaXRvciB7XHJcblx0XHRtaW4taGVpZ2h0OiA2MHB4O1xyXG5cdH1cclxuXHJcblx0ZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWhlYWRlci1jb2xsYXBzZWQge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC0zKTtcclxuXHR9XHJcblxyXG5cdGRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC5jb2xsYXBzZWQtcXVpY2stY2FwdHVyZSxcclxuXHRkaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAuY29sbGFwc2VkLW1vcmUtb3B0aW9ucyB7XHJcblx0XHR3aWR0aDogdmFyKC0tc2l6ZS00LTYpO1xyXG5cdFx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtNik7XHJcblx0fVxyXG59XHJcblxyXG4vKiBTY3JvbGxiYXIgU3R5bGluZyAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG5cdHdpZHRoOiA2cHg7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4vKiBBbmltYXRpb24gKi9cclxuQGtleWZyYW1lcyBmYWRlSW4ge1xyXG5cdGZyb20ge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuXHR9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc3VidGxlLXB1bHNlIHtcclxuXHQwJSwgMTAwJSB7XHJcblx0XHRib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuNCk7XHJcblx0fVxyXG5cdDUwJSB7XHJcblx0XHRib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4xKTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIEZvY3VzIE1vZGUgKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWNvbnRlbnQuZm9jdXMtbW9kZSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtY29udGVudC5mb2N1cy1tb2RlOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdGJvdHRvbTogMDtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcblx0XHR0byBib3R0b20sXHJcblx0XHRyZ2JhKHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1yZ2IpLCAwLjkpIDAlLFxyXG5cdFx0cmdiYSh2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktcmdiKSwgMC43KSA1MCUsXHJcblx0XHRyZ2JhKHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1yZ2IpLCAwLjkpIDEwMCVcclxuXHQpO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdHotaW5kZXg6IDA7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1jb250ZW50LmZvY3VzLW1vZGVcclxuLnRpbWVsaW5lLWRhdGUtZ3JvdXAuaXMtdG9kYXkge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR6LWluZGV4OiAxO1xyXG59XHJcblxyXG4vKiBNYXJrZG93biByZW5kZXJlciBzdHlsZXMgaW4gdGltZWxpbmUgZXZlbnRzICovXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudC1jb250ZW50LXRleHRcclxuLm1hcmtkb3duLWJsb2NrIHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxuXHRmb250LXNpemU6IGluaGVyaXQ7XHJcblx0bGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudC1jb250ZW50LXRleHRcclxuLm1hcmtkb3duLWJsb2NrXHJcbnAge1xyXG5cdG1hcmdpbjogMDtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuXHRsaW5lLWhlaWdodDogaW5oZXJpdDtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl1cclxuLnRpbWVsaW5lLWV2ZW50LWNvbnRlbnQtdGV4dFxyXG4ubWFya2Rvd24tYmxvY2tcclxuc3Ryb25nLFxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtZXZlbnQtY29udGVudC10ZXh0XHJcbi5tYXJrZG93bi1ibG9ja1xyXG5lbSxcclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl1cclxuLnRpbWVsaW5lLWV2ZW50LWNvbnRlbnQtdGV4dFxyXG4ubWFya2Rvd24tYmxvY2tcclxuY29kZSB7XHJcblx0Zm9udC1zaXplOiBpbmhlcml0O1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtZXZlbnQtY29udGVudC10ZXh0XHJcbi5tYXJrZG93bi1ibG9ja1xyXG5hIHtcclxuXHRjb2xvcjogdmFyKC0tbGluay1jb2xvcik7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtZXZlbnQtY29udGVudC10ZXh0XHJcbi5tYXJrZG93bi1ibG9ja1xyXG5hOmhvdmVyIHtcclxuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl1cclxuLnRpbWVsaW5lLWV2ZW50LWNvbnRlbnQtdGV4dFxyXG4ubWFya2Rvd24tYmxvY2tcclxudWwsXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudC1jb250ZW50LXRleHRcclxuLm1hcmtkb3duLWJsb2NrXHJcbm9sIHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudC1jb250ZW50LXRleHRcclxuLm1hcmtkb3duLWJsb2NrXHJcbmxpIHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxufVxyXG4iLCAiLyogU3R5bGVzIGZvciB0aGUgUmV3YXJkIE1vZGFsICovXHJcbi5yZXdhcmQtbW9kYWwtY29udGVudCB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyOyAvKiBDZW50ZXIgYWxpZ24gY29udGVudCAqL1xyXG59XHJcblxyXG4ucmV3YXJkLW1vZGFsIC5tb2RhbC10aXRsZSB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4ucmV3YXJkLW5hbWUge1xyXG5cdGZvbnQtc2l6ZTogMS4yZW07XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxufVxyXG5cclxuLnJld2FyZC1pbWFnZS1jb250YWluZXIge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0ZGlzcGxheTogZmxleDsgLyogVXNlIGZsZXhib3ggZm9yIGNlbnRlcmluZyAqL1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyOyAvKiBDZW50ZXIgaG9yaXpvbnRhbGx5ICovXHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjsgLyogQ2VudGVyIHZlcnRpY2FsbHkgKi9cclxufVxyXG5cclxuLnJld2FyZC1pbWFnZSB7XHJcblx0bWF4LXdpZHRoOiA4MCU7IC8qIExpbWl0IGltYWdlIHdpZHRoICovXHJcblx0bWF4LWhlaWdodDogMzAwcHg7IC8qIExpbWl0IGltYWdlIGhlaWdodCAqL1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDsgLyogT3B0aW9uYWw6IGFkZCByb3VuZGVkIGNvcm5lcnMgKi9cclxuXHRib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpOyAvKiBPcHRpb25hbDogYWRkIHN1YnRsZSBzaGFkb3cgKi9cclxufVxyXG5cclxuLnJld2FyZC1pbWFnZS1lcnJvciB7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTsgLyogVXNlIE9ic2lkaWFuJ3MgbXV0ZWQgdGV4dCBjb2xvciAqL1xyXG59XHJcblxyXG4ucmV3YXJkLXNwYWNlciB7XHJcblx0aGVpZ2h0OiAyMHB4OyAvKiBBZGQgc29tZSBzcGFjZSBiZWZvcmUgdGhlIGJ1dHRvbnMgKi9cclxufVxyXG5cclxuLyogU3R5bGUgdGhlIGJ1dHRvbnMgd2l0aGluIHRoZSBtb2RhbCAqL1xyXG4udGFzay1nZW5pdXMtcmV3YXJkLW1vZGFsIC5zZXR0aW5nLWl0ZW0tY29udHJvbCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLyogQ2VudGVyIGJ1dHRvbnMgKi9cclxuXHRnYXA6IDEwcHg7IC8qIEFkZCBzcGFjZSBiZXR3ZWVuIGJ1dHRvbnMgKi9cclxufVxyXG4iLCAiLm1hcmtkb3duLXNvdXJjZS12aWV3Lm1vZC1jbTYgLmNtLWd1dHRlcnMudGFzay1ndXR0ZXIge1xyXG5cdG1hcmdpbi1pbmxpbmUtZW5kOiAwICFpbXBvcnRhbnQ7XHJcblx0bWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0tZmlsZS1mb2xkaW5nLW9mZnNldCk7XHJcbn1cclxuXHJcbi5pcy1tb2JpbGUgLm1hcmtkb3duLXNvdXJjZS12aWV3Lm1vZC1jbTYgLmNtLWd1dHRlcnMudGFzay1ndXR0ZXIge1xyXG5cdG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnRhc2stZGV0YWlscy1wb3BvdmVyLnRnLW1lbnUge1xyXG5cdHotaW5kZXg6IDIwO1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sKTtcclxufVxyXG5cclxuLnRhc2stZ3V0dGVyIHtcclxuXHR3aWR0aDogMjZweDtcclxufVxyXG5cclxuLnRhc2stZ3V0dGVyLW1hcmtlciB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zbWFsbGVyKTtcclxuXHRvcGFjaXR5OiAwLjE7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi50YXNrLWd1dHRlci1tYXJrZXI6aG92ZXIge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi50YXNrLXBvcG92ZXItY29udGVudCB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdG1heC13aWR0aDogMzAwcHg7XHJcblx0bWF4LWhlaWdodDogNDAwcHg7XHJcblx0b3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuXHJcbi50YXNrLW1ldGFkYXRhLWVkaXRvciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5maWVsZC1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi5maWVsZC1sYWJlbCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXNtYWxsZXN0KTtcclxuXHRmb250LXdlaWdodDogdmFyKC0tZm9udC1ib2xkKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4uYWN0aW9uLWJ1dHRvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0yKTtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLmFjdGlvbi1idXR0b24ge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKSB2YXIoLS1zaXplLTQtMik7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXNtYWxsZXN0KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4udGFzay1ndXR0ZXItbWFya2VyLmNsaWNrYWJsZS1pY29uIHtcclxuXHR3aWR0aDogMjRweDtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4vKiBUYWJiZWQgSW50ZXJmYWNlIFN0eWxlcyAqL1xyXG4udGFzay1kZXRhaWxzLXBvcG92ZXIgLnRhYnMtbWFpbi1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHR3aWR0aDogMTAwJTsgLyogRW5zdXJlIGl0IHRha2VzIGF2YWlsYWJsZSB3aWR0aCAqL1xyXG59XHJcblxyXG4udGFzay1kZXRhaWxzLXBvcG92ZXIgLnRhYnMtbmF2aWdhdGlvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi50YXNrLWRldGFpbHMtcG9wb3ZlciAudGFiLWJ1dHRvbiB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpIHZhcigtLXNpemUtNC0yKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTsgLyogQWRqdXN0ZWQgZm9yIGNvbnNpc3RlbmN5ICovXHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdG1hcmdpbi1ib3R0b206IC0xcHg7IC8qIEFsaWduIHdpdGggcGFyZW50IGJvcmRlciAqL1xyXG5cdHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnRhc2stZGV0YWlscy1wb3BvdmVyIC50YWItYnV0dG9uOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGFzay1kZXRhaWxzLXBvcG92ZXIgLnRhYi1idXR0b24uYWN0aXZlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWJvbGQpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi50YXNrLWRldGFpbHMtcG9wb3ZlciAudGFiLXBhbmUge1xyXG5cdGRpc3BsYXk6IG5vbmU7IC8qIEhpZGUgaW5hY3RpdmUgcGFuZXMgYnkgZGVmYXVsdCAqL1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IC8qIEVuc3VyZSBjb250ZW50IHdpdGhpbiBwYW5lIGZsb3dzIHZlcnRpY2FsbHkgKi9cclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTsgLyogQWRkIHNvbWUgZ2FwIGJldHdlZW4gZWxlbWVudHMgaW4gdGhlIHBhbmUgKi9cclxufVxyXG5cclxuLnRhc2stZGV0YWlscy1wb3BvdmVyIC50YWItcGFuZS5hY3RpdmUge1xyXG5cdGRpc3BsYXk6IGZsZXg7IC8qIFNob3cgYWN0aXZlIHBhbmUgKi9cclxufVxyXG5cclxuLnRhc2stZGV0YWlscy1wb3BvdmVyIC5kZXRhaWxzLXN0YXR1cy1zZWxlY3RvcixcclxuLnRhc2stc3RhdHVzLWVkaXRvciAuZGV0YWlscy1zdGF0dXMtc2VsZWN0b3Ige1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi50YXNrLWRldGFpbHMtcG9wb3ZlciAucXVpY2stY2FwdHVyZS1zdGF0dXMtc2VsZWN0b3IsXHJcbi50YXNrLXN0YXR1cy1lZGl0b3IgLnF1aWNrLWNhcHR1cmUtc3RhdHVzLXNlbGVjdG9yIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxufVxyXG5cclxuLnRhc2stZGV0YWlscy1wb3BvdmVyIC5xdWljay1jYXB0dXJlLXN0YXR1cy1zZWxlY3Rvci1sYWJlbCxcclxuLnRhc2stc3RhdHVzLWVkaXRvciAucXVpY2stY2FwdHVyZS1zdGF0dXMtc2VsZWN0b3ItbGFiZWwge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5tb2RhbC1jb250ZW50LnRhc2stbWV0YWRhdGEtZWRpdG9yIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5tZXRhZGF0YS1mdWxsLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ubWV0YWRhdGEtZnVsbC1jb250YWluZXIgLmRhdGVzLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcbiIsICIuaW50ZXJuYWwtZW1iZWQgLnRhc2stZ2VuaXVzLWNvbnRhaW5lciB7XHJcblx0bWF4LWhlaWdodDogODAwcHg7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZCAudGFzay1nZW5pdXMtY29udGFpbmVyIC50YXNrLXNpZGViYXIge1xyXG5cdHdpZHRoOiA0NHB4O1xyXG5cdG1pbi13aWR0aDogNDRweDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uaW50ZXJuYWwtZW1iZWQgLnRhc2stZ2VuaXVzLWNvbnRhaW5lciAudGFzay1zaWRlYmFyIC5zaWRlYmFyLW5hdi1pdGVtIHtcclxuXHRwYWRkaW5nOiA4cHggMTBweDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogdmFyKC0tc2l6ZS00LTkpO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZS1pbi1vdXQsIGZsZXgtc2hyaW5rIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZCAudGFzay1nZW5pdXMtY29udGFpbmVyIC50YXNrLXNpZGViYXIgLnNpZGViYXItbmF2IHtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4uaW50ZXJuYWwtZW1iZWQgLnRhc2stZ2VuaXVzLWNvbnRhaW5lciAudGFzay1zaWRlYmFyIC5zaWRlYmFyLW5hdi1pdGVtIHtcclxuXHRwYWRkaW5nOiA4cHggMTBweDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogdmFyKC0tc2l6ZS00LTkpO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cclxuXHR0cmFuc2l0aW9uOiB3aWR0aCAwLjNzIGVhc2UtaW4tb3V0LCBmbGV4LXNocmluayAwLjNzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4uaW50ZXJuYWwtZW1iZWQgLnRhc2stZ2VuaXVzLWNvbnRhaW5lciAudGFzay1zaWRlYmFyIC5uYXYtaXRlbS1pY29uIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDA7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZCAudGFzay1nZW5pdXMtY29udGFpbmVyIC50YXNrLWxpc3Qge1xyXG5cdG1heC1oZWlnaHQ6IDgwMHB4O1xyXG59XHJcblxyXG4uaW50ZXJuYWwtZW1iZWQgLnByb2plY3RzLWNvbnRhaW5lciB7XHJcblx0ZmxleDogMTtcclxuXHRoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZCAuZm9yZWNhc3QtbGVmdC1jb2x1bW4ge1xyXG5cdHdpZHRoOiAyNDBweDtcclxufVxyXG5cclxuLmludGVybmFsLWVtYmVkIC5mb3JlY2FzdC1sZWZ0LWNvbHVtbiAubWluaS1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWdyaWQge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTtcclxuXHRnYXA6IDFweDtcclxuXHRwYWRkaW5nOiAwIDVweDtcclxufVxyXG5cclxuLmludGVybmFsLWVtYmVkXHJcblx0LmZvcmVjYXN0LWxlZnQtY29sdW1uXHJcblx0Lm1pbmktY2FsZW5kYXItY29udGFpbmVyXHJcblx0LmNhbGVuZGFyLWRheS1oZWFkZXIge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRmb250LXNpemU6IDAuN2VtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRwYWRkaW5nOiAzcHggMDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG1hcmdpbi1ib3R0b206IDNweDtcclxufVxyXG5cclxuLmludGVybmFsLWVtYmVkXHJcblx0LmZvcmVjYXN0LWxlZnQtY29sdW1uXHJcblx0Lm1pbmktY2FsZW5kYXItY29udGFpbmVyXHJcblx0LmNhbGVuZGFyLWRheS1oZWFkZXIuY2FsZW5kYXItd2Vla2VuZCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLmludGVybmFsLWVtYmVkIC5mb3JlY2FzdC1sZWZ0LWNvbHVtbiAubWluaS1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWRheSB7XHJcblx0YXNwZWN0LXJhdGlvOiAxO1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRwYWRkaW5nOiAxcHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZFxyXG5cdC5mb3JlY2FzdC1sZWZ0LWNvbHVtblxyXG5cdC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lclxyXG5cdC5jYWxlbmRhci1kYXk6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4uaW50ZXJuYWwtZW1iZWRcclxuXHQuZm9yZWNhc3QtbGVmdC1jb2x1bW5cclxuXHQubWluaS1jYWxlbmRhci1jb250YWluZXJcclxuXHQuY2FsZW5kYXItZGF5LnNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZFxyXG5cdC5mb3JlY2FzdC1sZWZ0LWNvbHVtblxyXG5cdC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lclxyXG5cdC5jYWxlbmRhci1kYXkudG9kYXkge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLmludGVybmFsLWVtYmVkXHJcblx0LmZvcmVjYXN0LWxlZnQtY29sdW1uXHJcblx0Lm1pbmktY2FsZW5kYXItY29udGFpbmVyXHJcblx0LmNhbGVuZGFyLWRheS5wYXN0LWR1ZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4uaW50ZXJuYWwtZW1iZWRcclxuXHQuZm9yZWNhc3QtbGVmdC1jb2x1bW5cclxuXHQubWluaS1jYWxlbmRhci1jb250YWluZXJcclxuXHQuY2FsZW5kYXItZGF5Lm90aGVyLW1vbnRoIHtcclxuXHRvcGFjaXR5OiAwLjU7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZFxyXG5cdC5mb3JlY2FzdC1sZWZ0LWNvbHVtblxyXG5cdC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lclxyXG5cdC5jYWxlbmRhci1kYXktbnVtYmVyIHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0Zm9udC1zaXplOiAwLjc1ZW07XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRwYWRkaW5nOiAxcHg7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZFxyXG5cdC5mb3JlY2FzdC1sZWZ0LWNvbHVtblxyXG5cdC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lclxyXG5cdC5jYWxlbmRhci1kYXktY291bnQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRmb250LXNpemU6IDAuNmVtO1xyXG5cdHBhZGRpbmc6IDFweCAzcHg7XHJcblx0bWFyZ2luOiAxcHggYXV0bztcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0d2lkdGg6IGZpdC1jb250ZW50O1xyXG59XHJcblxyXG4uaW50ZXJuYWwtZW1iZWRcclxuXHQuZm9yZWNhc3QtbGVmdC1jb2x1bW5cclxuXHQubWluaS1jYWxlbmRhci1jb250YWluZXJcclxuXHQuY2FsZW5kYXItZGF5LWNvdW50Lmhhcy1wcmlvcml0eSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZCAudGFncy1jb250YWluZXIge1xyXG5cdGhlaWdodDogYXV0bztcclxuXHRtYXgtaGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4uaW50ZXJuYWwtZW1iZWRcclxuXHQudGFzay1nZW5pdXMtY29udGFpbmVyOmhhcygudGFzay1kZXRhaWxzLnZpc2libGUpXHJcblx0LnRhZ3MtbGVmdC1jb2x1bW4ge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZFxyXG5cdC50YXNrLWdlbml1cy1jb250YWluZXI6aGFzKC50YXNrLWRldGFpbHMudmlzaWJsZSlcclxuXHQucHJvamVjdHMtbGVmdC1jb2x1bW4ge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5pbnRlcm5hbC1lbWJlZCAuZnVsbC1jYWxlbmRhci1jb250YWluZXIge1xyXG5cdGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLmludGVybmFsLWVtYmVkIC50Zy1rYW5iYW4tdmlldyB7XHJcblx0aGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4uYmFzZXMtdmlldy50YXNrLWdlbml1cy1jb250YWluZXIge1xyXG5cdGJvcmRlci10b3A6IHVuc2V0O1xyXG59XHJcblxyXG4vKiBCYXNlcyB1cGRhdGUgZXJyb3Igbm90aWZpY2F0aW9uICovXHJcbi5iYXNlcy11cGRhdGUtZXJyb3Itbm90aWZpY2F0aW9uIHtcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0dG9wOiAyMHB4O1xyXG5cdHJpZ2h0OiAyMHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0cGFkZGluZzogMTJweCAxNnB4O1xyXG5cdG1heC13aWR0aDogNDAwcHg7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpO1xyXG5cdHotaW5kZXg6IDEwMDA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGFuaW1hdGlvbjogc2xpZGVJblJpZ2h0IDAuM3MgZWFzZS1vdXQ7XHJcbn1cclxuXHJcbi5iYXNlcy11cGRhdGUtZXJyb3Itbm90aWZpY2F0aW9uOmhvdmVyIHtcclxuXHRvcGFjaXR5OiAwLjg7XHJcbn1cclxuXHJcbi5iYXNlcy11cGRhdGUtZXJyb3Itbm90aWZpY2F0aW9uIC5lcnJvci1pY29uIHtcclxuXHRmb250LXNpemU6IDE2cHg7XHJcblx0bWFyZ2luLWJvdHRvbTogOHB4O1xyXG59XHJcblxyXG4uYmFzZXMtdXBkYXRlLWVycm9yLW5vdGlmaWNhdGlvbiAuZXJyb3ItbWVzc2FnZSAuZXJyb3ItdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdG1hcmdpbi1ib3R0b206IDRweDtcclxufVxyXG5cclxuLmJhc2VzLXVwZGF0ZS1lcnJvci1ub3RpZmljYXRpb24gLmVycm9yLW1lc3NhZ2UgLmVycm9yLWRldGFpbHMge1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZUluUmlnaHQge1xyXG5cdGZyb20ge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcbn1cclxuIiwgIi8qIFYyIFZpZXcgTWFpbiBMYXlvdXQgKi9cclxuLnRhc2stZ2VuaXVzLXYyLXZpZXcge1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi50Zy12Mi1jb250YWluZXIge1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnZpZXctY29udGVudC50YXNrLWdlbml1cy12Mi12aWV3IHtcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4udGctdjItbGF5b3V0IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vKiBTaWRlYmFyIFN0eWxlcyAqL1xyXG4udGctdjItc2lkZWJhci1jb250YWluZXIge1xyXG5cdHdpZHRoOiAyNjBweDtcclxuXHRtaW4td2lkdGg6IDIwMHB4O1xyXG5cdG1heC13aWR0aDogNDAwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnYyLXNpZGViYXIge1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbi52Mi1zaWRlYmFyLWhlYWRlciB7XHJcblx0cGFkZGluZzogMTJweDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4vKiBXb3Jrc3BhY2UgU2VsZWN0b3IgKi9cclxuLndvcmtzcGFjZS1zZWxlY3Rvci1idXR0b24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0cGFkZGluZzogOHB4O1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXM7XHJcbn1cclxuXHJcbi53b3Jrc3BhY2Utc2VsZWN0b3ItYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLndvcmtzcGFjZS1pbmZvIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAxMnB4O1xyXG59XHJcblxyXG4ud29ya3NwYWNlLWljb24ge1xyXG5cdHdpZHRoOiAzMnB4O1xyXG5cdGhlaWdodDogMzJweDtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLndvcmtzcGFjZS1pY29uIHN2ZyB7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG59XHJcblxyXG4ud29ya3NwYWNlLWRldGFpbHMge1xyXG5cdHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi53b3Jrc3BhY2UtbmFtZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ud29ya3NwYWNlLWxhYmVsIHtcclxuXHRmb250LXNpemU6IDEycHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4ud29ya3NwYWNlLWRyb3Bkb3duLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogTmV3IFRhc2sgQnV0dG9uICovXHJcbi52Mi1uZXctdGFzay1idG4ge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1hcmdpbi10b3A6IDEycHg7XHJcblx0cGFkZGluZzogMTBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRnYXA6IDhweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cztcclxufVxyXG5cclxuLnYyLW5ldy10YXNrLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLnYyLW5ldy10YXNrLWljb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcbi8qIFNpZGViYXIgQ29udGVudCAqL1xyXG4udjItc2lkZWJhci1jb250ZW50IHtcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0cGFkZGluZzogOHB4IDA7XHJcblx0LS1pY29uLXNpemU6IDE2cHg7XHJcbn1cclxuXHJcbi52Mi1zaWRlYmFyLXNlY3Rpb24ge1xyXG5cdHBhZGRpbmc6IDhweCAwO1xyXG59XHJcblxyXG4udjItc2lkZWJhci1zZWN0aW9uICsgLnYyLXNpZGViYXItc2VjdGlvbiB7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnYyLXNlY3Rpb24taGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdHBhZGRpbmc6IDRweCAxNnB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDRweDtcclxufVxyXG5cclxuLnYyLXNlY3Rpb24taGVhZGVyIHNwYW4ge1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4udjItcHJvamVjdC1oZWFkZXItYnV0dG9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogOHB4O1xyXG59XHJcblxyXG4udjItYWRkLXByb2plY3QtYnRuLFxyXG4udjItc29ydC1wcm9qZWN0LWJ0bixcclxuLnYyLXRyZWUtdG9nZ2xlLWJ0biB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR0cmFuc2l0aW9uOiBjb2xvciAwLjE1cztcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDIwcHg7XHJcblx0aGVpZ2h0OiAyMHB4O1xyXG59XHJcblxyXG4udjItYWRkLXByb2plY3QtYnRuOmhvdmVyLFxyXG4udjItc29ydC1wcm9qZWN0LWJ0bjpob3ZlcixcclxuLnYyLXRyZWUtdG9nZ2xlLWJ0bjpob3ZlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLyogTmF2aWdhdGlvbiBJdGVtcyAqL1xyXG4udjItbmF2aWdhdGlvbi1saXN0IHtcclxuXHRwYWRkaW5nOiAwIDhweDtcclxufVxyXG5cclxuLnYyLW5hdmlnYXRpb24taXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMTJweDtcclxuXHRwYWRkaW5nOiA2cHggOHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cztcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi52Mi1uYXZpZ2F0aW9uLWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4udjItbmF2aWdhdGlvbi1pdGVtLmlzLWFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUtaG92ZXIpO1xyXG59XHJcblxyXG4udjItbmF2aWdhdGlvbi1pY29uIHtcclxuXHR3aWR0aDogMjBweDtcclxuXHRoZWlnaHQ6IDIwcHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnYyLW5hdmlnYXRpb24taXRlbS5pcy1hY3RpdmUgLnYyLW5hdmlnYXRpb24taWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnYyLW5hdmlnYXRpb24tbGFiZWwge1xyXG5cdGZsZXg6IDE7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi52Mi1uYXZpZ2F0aW9uLWJhZGdlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Zm9udC1zaXplOiAxMXB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0cGFkZGluZzogMnB4IDZweDtcclxuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xyXG5cdG1pbi13aWR0aDogMThweDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIFByb2plY3QgTGlzdCAqL1xyXG4udjItcHJvamVjdC1zY3JvbGwge1xyXG5cdG1heC1oZWlnaHQ6IDMwMHB4O1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0cGFkZGluZzogMCA4cHg7XHJcbn1cclxuXHJcbi52Mi1wcm9qZWN0LWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDEwcHg7XHJcblx0cGFkZGluZzogNnB4IDhweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXM7XHJcbn1cclxuXHJcbi52Mi1wcm9qZWN0LWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4udjItcHJvamVjdC1pdGVtLmlzLWFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUtaG92ZXIpO1xyXG59XHJcblxyXG4udjItcHJvamVjdC1jb2xvciB7XHJcblx0d2lkdGg6IDEycHg7XHJcblx0aGVpZ2h0OiAxMnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLnYyLXByb2plY3QtY29sb3ItZGFzaGVkIHtcclxuXHR3aWR0aDogMTJweDtcclxuXHRoZWlnaHQ6IDEycHg7XHJcblx0Ym9yZGVyOiAxLjVweCBkYXNoZWQgdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG59XHJcblxyXG4udjItcHJvamVjdC1uYW1lIHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLnYyLWFkZC1wcm9qZWN0IC52Mi1wcm9qZWN0LW5hbWUge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnYyLXByb2plY3QtY291bnQge1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi8qIFRyZWUgVmlldyBTdHlsZXMgKi9cclxuLnYyLXByb2plY3QtbGlzdC5pcy10cmVlLXZpZXcgLnYyLXByb2plY3QtaXRlbSB7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7XHJcbn1cclxuXHJcbi52Mi1wcm9qZWN0LWNoZXZyb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMTZweDtcclxuXHRoZWlnaHQ6IDE2cHg7XHJcblx0bWFyZ2luLXJpZ2h0OiA0cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgZWFzZTtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLnYyLXByb2plY3QtY2hldnJvbjpob3ZlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnYyLXByb2plY3QtY2hldnJvbiBzdmcge1xyXG5cdHdpZHRoOiAxMnB4O1xyXG5cdGhlaWdodDogMTJweDtcclxufVxyXG5cclxuLnYyLXByb2plY3QtY2hldnJvbi1zcGFjZXIge1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxuXHRtYXJnaW4tcmlnaHQ6IDRweDtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLyogVHJlZSBpbmRlbnRhdGlvbiAqL1xyXG4udjItcHJvamVjdC1saXN0LmlzLXRyZWUtdmlldyAudjItcHJvamVjdC1pdGVtW2RhdGEtbGV2ZWw9XCIxXCJdIHtcclxuXHRwYWRkaW5nLWxlZnQ6IDI4cHg7XHJcbn1cclxuXHJcbi52Mi1wcm9qZWN0LWxpc3QuaXMtdHJlZS12aWV3IC52Mi1wcm9qZWN0LWl0ZW1bZGF0YS1sZXZlbD1cIjJcIl0ge1xyXG5cdHBhZGRpbmctbGVmdDogNDhweDtcclxufVxyXG5cclxuLnYyLXByb2plY3QtbGlzdC5pcy10cmVlLXZpZXcgLnYyLXByb2plY3QtaXRlbVtkYXRhLWxldmVsPVwiM1wiXSB7XHJcblx0cGFkZGluZy1sZWZ0OiA2OHB4O1xyXG59XHJcblxyXG4vKiBUcmVlIGhpZXJhcmNoeSBsaW5lcyAob3B0aW9uYWwgLSBjYW4gYmUgYWRkZWQgbGF0ZXIpICovXHJcbi52Mi1wcm9qZWN0LWxpc3QuaXMtdHJlZS12aWV3IC52Mi1wcm9qZWN0LWl0ZW06OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogOHB4O1xyXG5cdHRvcDogMDtcclxuXHRib3R0b206IDA7XHJcblx0d2lkdGg6IDFweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0b3BhY2l0eTogMDtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzO1xyXG59XHJcblxyXG4udjItcHJvamVjdC1saXN0LmlzLXRyZWUtdmlld1xyXG4udjItcHJvamVjdC1pdGVtW2RhdGEtbGV2ZWxdOm5vdChbZGF0YS1sZXZlbD1cIjBcIl0pOmhvdmVyOjpiZWZvcmUge1xyXG5cdG9wYWNpdHk6IDAuMztcclxufVxyXG5cclxuLyogVmlydHVhbCBwcm9qZWN0IG5vZGVzIChpbnRlcm1lZGlhdGUgZm9sZGVycykgKi9cclxuLnYyLXByb2plY3QtaXRlbS5pcy12aXJ0dWFsIC52Mi1wcm9qZWN0LW5hbWUge1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRvcGFjaXR5OiAwLjg1O1xyXG59XHJcblxyXG4udjItcHJvamVjdC1pdGVtLmlzLXZpcnR1YWwgLnYyLXByb2plY3QtY29sb3Ige1xyXG5cdG9wYWNpdHk6IDAuNjtcclxufVxyXG5cclxuLnYyLXByb2plY3QtaXRlbS5pcy12aXJ0dWFsOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLyogTWFpbiBDb250YWluZXIgKi9cclxuLnRnLXYyLW1haW4tY29udGFpbmVyIHtcclxuXHRmbGV4OiAxO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vKiBUb3AgTmF2aWdhdGlvbiAqL1xyXG4udGctdjItdG9wLW5hdiB7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG59XHJcblxyXG4udjItdG9wLW5hdmlnYXRpb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0aGVpZ2h0OiA1NnB4O1xyXG5cdHBhZGRpbmc6IDAgMjBweDtcclxuXHRnYXA6IDIwcHg7XHJcbn1cclxuXHJcbi52Mi1uYXYtbGVmdCB7XHJcblx0ZmxleDogMCAxIDQwMHB4O1xyXG59XHJcblxyXG4udjItc2VhcmNoLWNvbnRhaW5lciB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcblx0bWF4LXdpZHRoOiA0MDBweDtcclxuXHRmbGV4OiAxO1xyXG59XHJcblxyXG4vKiBDZW50ZXIgTmF2aWdhdGlvbiAqL1xyXG4udjItbmF2LWNlbnRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMTJweDtcclxufVxyXG5cclxuLnYyLXZpZXctdGFicyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdHBhZGRpbmc6IDJweDtcclxufVxyXG5cclxuLnYyLXZpZXctdGFiIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA2cHg7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjE1cztcclxufVxyXG5cclxuLnYyLXZpZXctdGFiOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udjItdmlldy10YWIuaXMtYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Ym94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxufVxyXG5cclxuLnYyLXZpZXctdGFiLWljb24ge1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi52Mi1uYXYtc2VwYXJhdG9yIHtcclxuXHR3aWR0aDogMXB4O1xyXG5cdGhlaWdodDogMjRweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi52Mi1uYXYtYnV0dG9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA2cHg7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4xNXM7XHJcbn1cclxuXHJcbi52Mi1uYXYtYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLnYyLW5hdi1idXR0b24taWNvbiB7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcbi8qIFJpZ2h0IE5hdmlnYXRpb24gKi9cclxuLnYyLW5hdi1yaWdodCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMTJweDtcclxufVxyXG5cclxuLnYyLW5hdi1pY29uLWJ1dHRvbiB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiAzNnB4O1xyXG5cdGhlaWdodDogMzZweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzO1xyXG59XHJcblxyXG4udjItbmF2LWljb24tYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udjItbm90aWZpY2F0aW9uLWJhZGdlIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAtMnB4O1xyXG5cdHJpZ2h0OiAtMnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxuXHRmb250LXNpemU6IDEwcHg7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRwYWRkaW5nOiAycHggNXB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcblx0bWluLXdpZHRoOiAxNnB4O1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLyogQ29udGVudCBBcmVhICovXHJcbi50Zy12Mi1jb250ZW50IHtcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4udGctdjItY29udGVudCAuY29udGVudC1oZWFkZXIsXHJcbi50Zy12Mi1jb250ZW50IC50Zy1rYW5iYW4tZmlsdGVycyB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLyogVmlldy1zcGVjaWZpYyBzdHlsZXMgKi9cclxuLnRnLXYyLWxpc3QtdmlldyxcclxuLnRnLXYyLWthbmJhbi12aWV3LFxyXG4udGctdjItdHJlZS12aWV3LFxyXG4udGctdjItY2FsZW5kYXItdmlldyB7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4vKiBSZXNwb25zaXZlIGFkanVzdG1lbnRzICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC50Zy12Mi1zaWRlYmFyLWNvbnRhaW5lcjpub3QoLmlzLW1vYmlsZS1kcmF3ZXIpIHtcclxuXHRcdHdpZHRoOiAyMDBweDtcclxuXHR9XHJcblxyXG5cdC52Mi1uYXYtY2VudGVyIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG5cclxuXHQudjItc2VhcmNoLWNvbnRhaW5lciB7XHJcblx0XHRmbGV4OiAxO1xyXG5cdH1cclxuXHJcblx0LnYyLW5hdi1sZWZ0IC5zZWFyY2gtaW5wdXQtY29udGFpbmVyIHtcclxuXHRcdHdpZHRoOiAzMDBweDtcclxuXHR9XHJcbn1cclxuXHJcbi8qIE1vYmlsZS1zcGVjaWZpYyBtZWRpYSBxdWVyeSAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcclxuXHQvKiBFbnN1cmUgZHJhd2VyIHRha2VzIGFwcHJvcHJpYXRlIHdpZHRoIG9uIHNtYWxsIHNjcmVlbnMgKi9cclxuXHQudGctdjItc2lkZWJhci1jb250YWluZXIuaXMtbW9iaWxlLWRyYXdlciB7XHJcblx0XHR3aWR0aDogNzV2dyAhaW1wb3J0YW50O1xyXG5cdFx0bWF4LXdpZHRoOiAzMjBweCAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHJcblx0LyogTWFrZSBoYW1idXJnZXIgYnV0dG9uIG1vcmUgcHJvbWluZW50IG9uIG1vYmlsZSAqL1xyXG5cdC52Mi1oYW1idXJnZXItYnV0dG9uIHtcclxuXHRcdHdpZHRoOiA0NHB4O1xyXG5cdFx0aGVpZ2h0OiA0NHB4O1xyXG5cdH1cclxuXHJcblx0LyogQWRqdXN0IHRvcCBuYXZpZ2F0aW9uIHNwYWNpbmcgb24gbW9iaWxlICovXHJcblx0LnYyLXRvcC1uYXZpZ2F0aW9uIHtcclxuXHRcdHBhZGRpbmc6IDAgMTJweDtcclxuXHR9XHJcblxyXG5cdC8qIEhpZGUgdmlldyB0YWJzIG9uIHZlcnkgc21hbGwgc2NyZWVucyAqL1xyXG5cdC52Mi12aWV3LXRhYnMge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblxyXG5cdC8qIE9wdGltaXplIHNlYXJjaCBjb250YWluZXIgb24gbW9iaWxlICovXHJcblx0LnYyLXNlYXJjaC1jb250YWluZXIge1xyXG5cdFx0ZmxleDogMTtcclxuXHRcdG1heC13aWR0aDogY2FsYygxMDB2dyAtIDE4MHB4KTtcclxuXHR9XHJcbn1cclxuXHJcbi8qID09PT09IENvbGxhcHNlZCBTaWRlYmFyIChSYWlsKSA9PT09PSAqL1xyXG4udGctdjItc2lkZWJhci1jb250YWluZXIge1xyXG5cdHRyYW5zaXRpb246IHdpZHRoIDAuMnMgZWFzZSwgbWluLXdpZHRoIDAuMnMgZWFzZSwgbWF4LXdpZHRoIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLyogV2hlbiB0aGUgc2lkZWJhciBlbGVtZW50IGl0c2VsZiBpcyBjb2xsYXBzZWQgKi9cclxuLnRnLXYyLXNpZGViYXItY29udGFpbmVyLmlzLWNvbGxhcHNlZCxcclxuXHQvKiBPciB3aGVuIHRoZSByb290IGFkZHMgYSBoZWxwZXIgY2xhc3MgKi9cclxuLnYyLXNpZGViYXItY29sbGFwc2VkIC50Zy12Mi1zaWRlYmFyLWNvbnRhaW5lciB7XHJcblx0d2lkdGg6IDQ0cHg7XHJcblx0bWluLXdpZHRoOiA0NHB4O1xyXG5cdG1heC13aWR0aDogNDRweDtcclxufVxyXG5cclxuLyogUmFpbCBsYXlvdXQgKi9cclxuLnYyLXNpZGViYXItcmFpbCB7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogOHB4O1xyXG5cdHBhZGRpbmc6IDhweCA0cHg7XHJcbn1cclxuXHJcbi52Mi1yYWlsLWJ0biB7XHJcblx0d2lkdGg6IDM2cHg7XHJcblx0aGVpZ2h0OiAzNnB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UsIGNvbG9yIDAuMTVzIGVhc2U7XHJcbn1cclxuXHJcbi52Mi1yYWlsLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnYyLXJhaWwtYnRuIHN2ZyB7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG59XHJcblxyXG4vKiBBY3RpdmUgc3RhdGUgZm9yIHJhaWwgYnV0dG9ucyAqL1xyXG4udjItcmFpbC1idG4uaXMtYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZS1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnRnLWJldGEge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLnRnLWJldGE6OmFmdGVyIHtcclxuXHRjb250ZW50OiBcImJldGFcIjtcclxuXHRmb250LXNpemU6IDAuNDRlbTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudC1pbnZlcnRlZCk7XHJcblx0cGFkZGluZy1sZWZ0OiAycHg7XHJcblx0cGFkZGluZy1yaWdodDogMnB4O1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdG1hcmdpbi1sZWZ0OiA0cHg7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogLTFweDtcclxuXHRyaWdodDogLTJweDtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRwYWRkaW5nLXRvcDogMXB4O1xyXG59XHJcblxyXG4vKiA9PT09PSBNb2JpbGUgRHJhd2VyIFN0eWxlcyA9PT09PSAqL1xyXG4uZHJhd2VyLW92ZXJsYXkge1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHRyaWdodDogMDtcclxuXHRib3R0b206IDA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xyXG5cdHotaW5kZXg6IDk5OTtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4uZHJhd2VyLW9wZW4gLmRyYXdlci1vdmVybGF5IHtcclxuXHRvcGFjaXR5OiAxO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG59XHJcblxyXG4vKiBNb2JpbGUgZHJhd2VyIHNpZGViYXIgKi9cclxuLnRnLXYyLXNpZGViYXItY29udGFpbmVyLmlzLW1vYmlsZS1kcmF3ZXIge1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHRib3R0b206IDA7XHJcblx0d2lkdGg6IDI4MHB4ICFpbXBvcnRhbnQ7XHJcblx0bWF4LXdpZHRoOiA4NXZ3ICFpbXBvcnRhbnQ7XHJcblx0bWluLXdpZHRoOiAyODBweCAhaW1wb3J0YW50O1xyXG5cdHotaW5kZXg6IDEwMDA7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG5cdGJveC1zaGFkb3c6IDRweCAwIDIwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxufVxyXG5cclxuLyogV2hlbiBkcmF3ZXIgaXMgb3BlbiAqL1xyXG4uZHJhd2VyLW9wZW4gLnRnLXYyLXNpZGViYXItY29udGFpbmVyLmlzLW1vYmlsZS1kcmF3ZXIge1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxufVxyXG5cclxuLyogRW5zdXJlIHNpZGViYXIgY29udGVudCBpcyB2aXNpYmxlIG9uIG1vYmlsZSBldmVuIHdoZW4gXCJjb2xsYXBzZWRcIiAqL1xyXG4udGctdjItc2lkZWJhci1jb250YWluZXIuaXMtbW9iaWxlLWRyYXdlciAudjItc2lkZWJhci5pcy1jb2xsYXBzZWQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIEhpZGUgcmFpbCBtb2RlIG9uIG1vYmlsZSAqL1xyXG4udGctdjItc2lkZWJhci1jb250YWluZXIuaXMtbW9iaWxlLWRyYXdlciAudjItc2lkZWJhci1yYWlsIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiBNb2JpbGUtc3BlY2lmaWMgc2lkZWJhciBjb250ZW50IGFkanVzdG1lbnRzICovXHJcbi5pcy1tb2JpbGUgLnYyLXNpZGViYXIge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0b3ZlcmZsb3cteDogaGlkZGVuO1xyXG59XHJcblxyXG4uaXMtbW9iaWxlIC52Mi1zaWRlYmFyLWhlYWRlciB7XHJcblx0cGFkZGluZzogMTZweDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4vKiBFbnN1cmUgYWxsIHNlY3Rpb25zIGFyZSB2aXNpYmxlIG9uIG1vYmlsZSAqL1xyXG4uaXMtbW9iaWxlIC52Mi1zaWRlYmFyLWNvbnRlbnQge1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0bWF4LWhlaWdodDogY2FsYyhcclxuXHRcdDEwMHZoIC0gMTUwcHhcclxuXHQpOyAvKiBBY2NvdW50IGZvciBoZWFkZXIgYW5kIG5ldyB0YXNrIGJ1dHRvbiAqL1xyXG59XHJcblxyXG4uaXMtbW9iaWxlIC52Mi1zaWRlYmFyLXNlY3Rpb24ge1xyXG5cdGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcblx0dmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBFbnN1cmUgc2VjdGlvbiBoZWFkZXJzIGFyZSB2aXNpYmxlIG9uIG1vYmlsZSAqL1xyXG4uaXMtbW9iaWxlIC52Mi1zZWN0aW9uLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xyXG5cdHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmlzLW1vYmlsZSAudjItbmF2aWdhdGlvbi1pdGVtLFxyXG4uaXMtbW9iaWxlIC52Mi1wcm9qZWN0LWl0ZW0ge1xyXG5cdHBhZGRpbmc6IDEwcHggMTZweDtcclxuXHRmb250LXNpemU6IDE1cHg7XHJcbn1cclxuXHJcbi5pcy1tb2JpbGUgLnYyLW5ldy10YXNrLWJ0biB7XHJcblx0cGFkZGluZzogMTJweDtcclxuXHRmb250LXNpemU6IDE1cHg7XHJcbn1cclxuXHJcbi5pcy1tb2JpbGUgLnYyLW5hdmlnYXRpb24tbGlzdCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLmlzLW1vYmlsZSBzcGFuLnYyLW5hdmlnYXRpb24tbGFiZWwge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIFRvdWNoLWZyaWVuZGx5IHNpemluZyAqL1xyXG4uaXMtbW9iaWxlIC52Mi1uYXZpZ2F0aW9uLWl0ZW0sXHJcbi5pcy1tb2JpbGUgLnYyLXByb2plY3QtaXRlbSxcclxuLmlzLW1vYmlsZSAudjItYWRkLXByb2plY3Qge1xyXG5cdG1pbi1oZWlnaHQ6IDQ0cHg7XHJcbn1cclxuXHJcbi8qIEFkanVzdCBtYWluIGNvbnRhaW5lciBvbiBtb2JpbGUgd2hlbiBkcmF3ZXIgaXMgb3BlbiAqL1xyXG4uZHJhd2VyLW9wZW4gLnRnLXYyLW1haW4tY29udGFpbmVyIHtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLyogSGFtYnVyZ2VyIG1lbnUgYnV0dG9uIGZvciBtb2JpbGUgKi9cclxuLnYyLWhhbWJ1cmdlci1idXR0b24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogNDBweDtcclxuXHRoZWlnaHQ6IDQwcHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLCBjb2xvciAwLjE1cyBlYXNlO1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4udjItaGFtYnVyZ2VyLWJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnYyLWhhbWJ1cmdlci1idXR0b24gc3ZnIHtcclxuXHR3aWR0aDogMjBweDtcclxuXHRoZWlnaHQ6IDIwcHg7XHJcbn1cclxuXHJcbi8qIEFkanVzdCBzZWFyY2ggY29udGFpbmVyIG9uIG1vYmlsZSB3aGVuIGhhbWJ1cmdlciBpcyBwcmVzZW50ICovXHJcbi52Mi1uYXYtbGVmdCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogOHB4O1xyXG59XHJcblxyXG4vKiBIaWRlIHNpZGViYXIgdG9nZ2xlIG9uIGRlc2t0b3Agd2hlbiBpbiBtb2JpbGUgZHJhd2VyIG1vZGUgKi9cclxuLnRnLXYyLXNpZGViYXItY29udGFpbmVyLmlzLW1vYmlsZS1kcmF3ZXJcclxufiAudGctdjItbWFpbi1jb250YWluZXJcclxuLnNpZGViYXItdG9nZ2xlIHtcclxuXHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIEFuaW1hdGlvbiBmb3IgZHJhd2VyIGZyb20gcmlnaHQgKG9wdGlvbmFsIC0gY2FuIGJlIGNvbmZpZ3VyZWQpICovXHJcbi50Zy12Mi1zaWRlYmFyLWNvbnRhaW5lci5pcy1tb2JpbGUtZHJhd2VyLmRyYXdlci1yaWdodCB7XHJcblx0bGVmdDogYXV0bztcclxuXHRyaWdodDogMDtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XHJcblx0Ym94LXNoYWRvdzogLTRweCAwIDIwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxufVxyXG5cclxuLmRyYXdlci1vcGVuIC50Zy12Mi1zaWRlYmFyLWNvbnRhaW5lci5pcy1tb2JpbGUtZHJhd2VyLmRyYXdlci1yaWdodCB7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG59XHJcblxyXG4udmlldy1jb250ZW50OmhhcygudGctcmlnaHQtZGV0YWlsLXZpZXcpIHtcclxuXHRwYWRkaW5nLWxlZnQ6IDA7XHJcblx0cGFkZGluZy1yaWdodDogMDtcclxuXHRwYWRkaW5nLXRvcDogMDtcclxufVxyXG5cclxuLnRnLXJpZ2h0LWRldGFpbC12aWV3IC50YXNrLWRldGFpbHMge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vKiBTbW9vdGggYW5pbWF0aW9ucyBmb3IgYWxsIHRyYW5zaXRpb25zICovXHJcbkBrZXlmcmFtZXMgc2xpZGVJbkZyb21MZWZ0IHtcclxuXHRmcm9tIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XHJcblx0XHRvcGFjaXR5OiAwLjg7XHJcblx0fVxyXG5cdHRvIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0fVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNsaWRlSW5Gcm9tUmlnaHQge1xyXG5cdGZyb20ge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG5cdFx0b3BhY2l0eTogMC44O1xyXG5cdH1cclxuXHR0byB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi5vbmJvYXJkaW5nLXNoYWRvdyB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGJhY2tncm91bmQ6IGhzbCh2YXIoLS1jb2xvci1hY2NlbnQtaHNsKSwgMCk7XHJcblx0Ym9yZGVyLXJhZGl1czogMjRweDtcclxuXHRyb3RhdGU6IDM1ZGVnO1xyXG5cdHdpZHRoOiAyNjBweDtcclxuXHR0b3A6IDIwMHB4O1xyXG5cdGhlaWdodDogNDAwcHg7XHJcblx0ZmlsdGVyOiBibHVyKDE1MHB4KTtcclxuXHRhbmltYXRpb246IHNoYWRvdy1zbGlkZSBpbmZpbml0ZSA0cyBsaW5lYXIgYWx0ZXJuYXRlO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNoYWRvdy1zbGlkZSB7XHJcblx0MCUge1xyXG5cdFx0YmFja2dyb3VuZDogaHNsKHZhcigtLWNvbG9yLWFjY2VudC1oc2wpLCAwLjIpO1xyXG5cdFx0cmlnaHQ6IDM2MHB4XHJcblx0fVxyXG5cdHRvIHtcclxuXHRcdGJhY2tncm91bmQ6IGhzbCh2YXIoLS1jb2xvci1hY2NlbnQtaHNsKSwgMC44KTtcclxuXHRcdHJpZ2h0OiAxNjBweFxyXG5cdH1cclxufVxyXG4iLCAiLyogVGFzayBHZW5pdXMgVjIgRW5oYW5jZWQgU3R5bGVzIC0gU2hhZGNuLWluc3BpcmVkICovXHJcblxyXG4vKiA9PT09PT09PT09IEJhc2UgVmFyaWFibGVzID09PT09PT09PT0gKi9cclxuOnJvb3Qge1xyXG5cdC8qIFNoYWRvd3MgKi9cclxuXHQtLXRnLXNoYWRvdy1zbTogMCAxcHggMnB4IDAgcmdiKDAgMCAwIC8gMC4wNSk7XHJcblx0LS10Zy1zaGFkb3c6IDAgMXB4IDNweCAwIHJnYigwIDAgMCAvIDAuMSksIDAgMXB4IDJweCAtMXB4IHJnYigwIDAgMCAvIDAuMSk7XHJcblx0LS10Zy1zaGFkb3ctbWQ6IDAgNHB4IDZweCAtMXB4IHJnYigwIDAgMCAvIDAuMSksIDAgMnB4IDRweCAtMnB4IHJnYigwIDAgMCAvIDAuMSk7XHJcblx0LS10Zy1zaGFkb3ctbGc6IDAgMTBweCAxNXB4IC0zcHggcmdiKDAgMCAwIC8gMC4xKSwgMCA0cHggNnB4IC00cHggcmdiKDAgMCAwIC8gMC4xKTtcclxuXHQtLXRnLXNoYWRvdy14bDogMCAyMHB4IDI1cHggLTVweCByZ2IoMCAwIDAgLyAwLjEpLCAwIDhweCAxMHB4IC02cHggcmdiKDAgMCAwIC8gMC4xKTtcclxuXHJcblx0LyogQW5pbWF0aW9ucyAqL1xyXG5cdC0tdGctdHJhbnNpdGlvbi1mYXN0OiAxNTBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG5cdC0tdGctdHJhbnNpdGlvbi1iYXNlOiAyMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG5cdC0tdGctdHJhbnNpdGlvbi1zbG93OiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG5cclxuXHQvKiBCb3JkZXIgcmFkaXVzICovXHJcblx0LS10Zy1yYWRpdXMtc206IDAuMjVyZW07XHJcblx0LS10Zy1yYWRpdXM6IDAuMzc1cmVtO1xyXG5cdC0tdGctcmFkaXVzLW1kOiAwLjVyZW07XHJcblx0LS10Zy1yYWRpdXMtbGc6IDAuNzVyZW07XHJcblx0LS10Zy1yYWRpdXMtZnVsbDogOTk5OXB4O1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09IFRhc2sgTGlzdCBWaWV3IFN0eWxlcyA9PT09PT09PT09ICovXHJcbi50YXNrLWxpc3QtY29udGFpbmVyIHtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nOiAxLjVyZW07XHJcblx0YW5pbWF0aW9uOiBmYWRlSW4gdmFyKC0tdGctdHJhbnNpdGlvbi1iYXNlKTtcclxufVxyXG5cclxuLnRhc2stbGlzdC13cmFwcGVyIHtcclxuXHRtYXgtd2lkdGg6IDEyMDBweDtcclxuXHRtYXJnaW46IDAgYXV0bztcclxufVxyXG5cclxuLnRhc2stbGlzdC1pdGVtIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS10Zy1yYWRpdXMtbWQpO1xyXG5cdG1hcmdpbi1ib3R0b206IDAuNzVyZW07XHJcblx0cGFkZGluZzogMXJlbSAxLjI1cmVtO1xyXG5cdHRyYW5zaXRpb246IGFsbCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4udGFzay1saXN0LWl0ZW06OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogMDtcclxuXHR0b3A6IDA7XHJcblx0Ym90dG9tOiAwO1xyXG5cdHdpZHRoOiAzcHg7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG59XHJcblxyXG4udGFzay1saXN0LWl0ZW06aG92ZXIge1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXRnLXNoYWRvdyk7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLnRhc2stbGlzdC1pdGVtOmhvdmVyOjpiZWZvcmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi50YXNrLWxpc3QtaXRlbS5pcy1jb21wbGV0ZWQge1xyXG5cdG9wYWNpdHk6IDAuNjtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi50YXNrLWxpc3QtaXRlbS5pcy1vdmVyZHVlOjpiZWZvcmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4udGFzay1saXN0LWVtcHR5IHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogM3JlbSAxLjVyZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45cmVtO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09IFRhc2sgVHJlZSBWaWV3IFN0eWxlcyA9PT09PT09PT09ICovXHJcbi50YXNrLXRyZWUtY29udGFpbmVyIHtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nOiAxLjVyZW07XHJcblx0YW5pbWF0aW9uOiBmYWRlSW4gdmFyKC0tdGctdHJhbnNpdGlvbi1iYXNlKTtcclxufVxyXG5cclxuLnRhc2stdHJlZS13cmFwcGVyIHtcclxuXHRtYXgtd2lkdGg6IDEyMDBweDtcclxuXHRtYXJnaW46IDAgYXV0bztcclxufVxyXG5cclxuLnRhc2stdHJlZS1wcm9qZWN0IHtcclxuXHRtYXJnaW4tYm90dG9tOiAxLjVyZW07XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzLWxnKTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRyYW5zaXRpb246IGFsbCB2YXIoLS10Zy10cmFuc2l0aW9uLWJhc2UpO1xyXG59XHJcblxyXG4udGFzay10cmVlLXByb2plY3Q6aG92ZXIge1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXRnLXNoYWRvdy1tZCk7XHJcbn1cclxuXHJcbi50YXNrLXRyZWUtcHJvamVjdC1oZWFkZXIge1xyXG5cdHBhZGRpbmc6IDFyZW0gMS4yNXJlbTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGZvbnQtc2l6ZTogMC45NXJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdGctdHJhbnNpdGlvbi1mYXN0KTtcclxufVxyXG5cclxuLnRhc2stdHJlZS1wcm9qZWN0LWhlYWRlcjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi50YXNrLXRyZWUtcHJvamVjdC1oZWFkZXI6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcdTI1QjZcIjtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0bWFyZ2luLXJpZ2h0OiAwLjVyZW07XHJcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRnLXRyYW5zaXRpb24tZmFzdCk7XHJcblx0Zm9udC1zaXplOiAwLjc1cmVtO1xyXG59XHJcblxyXG4udGFzay10cmVlLXByb2plY3QuaXMtZXhwYW5kZWQgLnRhc2stdHJlZS1wcm9qZWN0LWhlYWRlcjo6YmVmb3JlIHtcclxuXHR0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbn1cclxuXHJcbi50YXNrLXRyZWUtdGFza3Mge1xyXG5cdHBhZGRpbmc6IDAuNXJlbTtcclxufVxyXG5cclxuLnRhc2stdHJlZS1pdGVtIHtcclxuXHRwYWRkaW5nOiAwLjc1cmVtIDFyZW07XHJcblx0bWFyZ2luOiAwLjI1cmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cyk7XHJcblx0dHJhbnNpdGlvbjogYWxsIHZhcigtLXRnLXRyYW5zaXRpb24tZmFzdCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHBhZGRpbmctbGVmdDogMnJlbTtcclxufVxyXG5cclxuLnRhc2stdHJlZS1pdGVtOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IDFyZW07XHJcblx0dG9wOiA1MCU7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG5cdHdpZHRoOiA0cHg7XHJcblx0aGVpZ2h0OiA0cHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzLWZ1bGwpO1xyXG59XHJcblxyXG4udGFzay10cmVlLWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGFzay10cmVlLWVtcHR5IHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogM3JlbSAxLjVyZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45cmVtO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09IEZpbHRlciBQYW5lbCBTdHlsZXMgPT09PT09PT09PSAqL1xyXG4udGctdjItZmlsdGVyLXBhbmVsIHtcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0cmlnaHQ6IC0zODBweDtcclxuXHR0b3A6IDA7XHJcblx0Ym90dG9tOiAwO1xyXG5cdHdpZHRoOiAzODBweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXRnLXNoYWRvdy14bCk7XHJcblx0dHJhbnNpdGlvbjogcmlnaHQgdmFyKC0tdGctdHJhbnNpdGlvbi1zbG93KTtcclxuXHR6LWluZGV4OiAxMDAwO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4udGctdjItZmlsdGVyLXBhbmVsLmlzLW9wZW4ge1xyXG5cdHJpZ2h0OiAwO1xyXG59XHJcblxyXG4uZmlsdGVyLXBhbmVsLWhlYWRlciB7XHJcblx0cGFkZGluZzogMS4yNXJlbTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbn1cclxuXHJcbi5maWx0ZXItcGFuZWwtdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogMS4xcmVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmZpbHRlci1wYW5lbC1jbG9zZSB7XHJcblx0d2lkdGg6IDMycHg7XHJcblx0aGVpZ2h0OiAzMnB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS10Zy1yYWRpdXMpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIHZhcigtLXRnLXRyYW5zaXRpb24tZmFzdCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4uZmlsdGVyLXBhbmVsLWNsb3NlOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uZmlsdGVyLXBhbmVsLWNvbnRlbnQge1xyXG5cdHBhZGRpbmc6IDEuMjVyZW07XHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAge1xyXG5cdG1hcmdpbi1ib3R0b206IDEuNXJlbTtcclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1sYWJlbCB7XHJcblx0Zm9udC1zaXplOiAwLjg3NXJlbTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wMjVlbTtcclxufVxyXG5cclxuLmZpbHRlci1vcHRpb25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiAwLjVyZW07XHJcbn1cclxuXHJcbi5maWx0ZXItb3B0aW9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMC41cmVtIDAuNzVyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG59XHJcblxyXG4uZmlsdGVyLW9wdGlvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi5maWx0ZXItb3B0aW9uLmlzLXNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5maWx0ZXItY2hlY2tib3gge1xyXG5cdG1hcmdpbi1yaWdodDogMC43NXJlbTtcclxufVxyXG5cclxuLyogRmlsdGVyIHNwZWNpZmljIHN0eWxlcyAqL1xyXG4uZmlsdGVyLXNlbGVjdCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0cGFkZGluZzogMC41cmVtIDAuNzVyZW07XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1mb3JtLWZpZWxkKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtc2l6ZTogMC44NzVyZW07XHJcblx0dHJhbnNpdGlvbjogYWxsIHZhcigtLXRnLXRyYW5zaXRpb24tZmFzdCk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uZmlsdGVyLXNlbGVjdDpob3ZlciB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4uZmlsdGVyLXNlbGVjdDpmb2N1cyB7XHJcblx0b3V0bGluZTogbm9uZTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi5maWx0ZXItdGFncy1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdGdhcDogMC41cmVtO1xyXG5cdHBhZGRpbmc6IDAuNXJlbSAwO1xyXG59XHJcblxyXG4uZmlsdGVyLXRhZyB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzLWZ1bGwpO1xyXG5cdGZvbnQtc2l6ZTogMC44NzVyZW07XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG59XHJcblxyXG4uZmlsdGVyLXRhZzpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi5maWx0ZXItdGFnLmlzLXNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4uZmlsdGVyLWRhdGUtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiAwLjc1cmVtO1xyXG59XHJcblxyXG4uZmlsdGVyLWRhdGUtZmllbGQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDAuNXJlbTtcclxufVxyXG5cclxuLmZpbHRlci1kYXRlLWZpZWxkIHNwYW4ge1xyXG5cdG1pbi13aWR0aDogNTBweDtcclxuXHRmb250LXNpemU6IDAuODc1cmVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLmZpbHRlci1kYXRlLWlucHV0IHtcclxuXHRmbGV4OiAxO1xyXG5cdHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZm9ybS1maWVsZCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cyk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDAuODc1cmVtO1xyXG5cdHRyYW5zaXRpb246IGFsbCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG59XHJcblxyXG4uZmlsdGVyLWRhdGUtaW5wdXQ6aG92ZXIge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLmZpbHRlci1kYXRlLWlucHV0OmZvY3VzIHtcclxuXHRvdXRsaW5lOiBub25lO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLmZpbHRlci1hY3Rpb24tYnV0dG9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDAuNzVyZW07XHJcblx0bWFyZ2luLXRvcDogMS41cmVtO1xyXG5cdHBhZGRpbmctdG9wOiAxLjVyZW07XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLmZpbHRlci1hY3Rpb24tYnV0dG9ucyBidXR0b24ge1xyXG5cdGZsZXg6IDE7XHJcbn1cclxuXHJcbi5wcmlvcml0eS1jb2xvci1kb3Qge1xyXG5cdHdpZHRoOiAxMnB4O1xyXG5cdGhlaWdodDogMTJweDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS10Zy1yYWRpdXMtZnVsbCk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT0gTG9hZGluZyBTdGF0ZXMgPT09PT09PT09PSAqL1xyXG4udGctdjItbG9hZGluZyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGdhcDogMXJlbTtcclxufVxyXG5cclxuLnRnLXYyLXNwaW5uZXIge1xyXG5cdHdpZHRoOiAzMnB4O1xyXG5cdGhlaWdodDogMzJweDtcclxuXHRib3JkZXI6IDNweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXRvcC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS10Zy1yYWRpdXMtZnVsbCk7XHJcblx0YW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcclxufVxyXG5cclxuQGtleWZyYW1lcyBzcGluIHtcclxuXHR0byB7XHJcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG5cdH1cclxufVxyXG5cclxuLnRnLXYyLWxvYWRpbmctdGV4dCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45cmVtO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09IEVtcHR5IFN0YXRlcyA9PT09PT09PT09ICovXHJcbi50Zy12Mi1lbXB0eS1zdGF0ZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdHBhZGRpbmc6IDJyZW07XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4udGctdjItZW1wdHktaWNvbiB7XHJcblx0d2lkdGg6IDY0cHg7XHJcblx0aGVpZ2h0OiA2NHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDFyZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdG9wYWNpdHk6IDAuNTtcclxufVxyXG5cclxuLnRnLXYyLWVtcHR5LXRpdGxlIHtcclxuXHRmb250LXNpemU6IDEuMjVyZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1ib3R0b206IDAuNXJlbTtcclxufVxyXG5cclxuLnRnLXYyLWVtcHR5LWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luLWJvdHRvbTogMS41cmVtO1xyXG5cdG1heC13aWR0aDogNDAwcHg7XHJcbn1cclxuXHJcbi50Zy12Mi1lbXB0eS1hY3Rpb24ge1xyXG5cdHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzLW1kKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGctdHJhbnNpdGlvbi1mYXN0KTtcclxufVxyXG5cclxuLnRnLXYyLWVtcHR5LWFjdGlvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tdGctc2hhZG93KTtcclxufVxyXG5cclxuLyogPT09PT09PT09PSBUb29sdGlwcyA9PT09PT09PT09ICovXHJcbi50Zy12Mi10b29sdGlwIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0cGFkZGluZzogMC41cmVtIDAuNzVyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzKTtcclxuXHRmb250LXNpemU6IDAuODc1cmVtO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXRnLXNoYWRvdy1sZyk7XHJcblx0ei1pbmRleDogOTk5OTtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpO1xyXG5cdHRyYW5zaXRpb246IGFsbCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG59XHJcblxyXG4udGctdjItdG9vbHRpcC5pcy12aXNpYmxlIHtcclxuXHRvcGFjaXR5OiAxO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxufVxyXG5cclxuLyogPT09PT09PT09PSBDYXJkcyA9PT09PT09PT09ICovXHJcbi50Zy12Mi1jYXJkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS10Zy1yYWRpdXMtbGcpO1xyXG5cdHBhZGRpbmc6IDEuMjVyZW07XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGctdHJhbnNpdGlvbi1iYXNlKTtcclxufVxyXG5cclxuLnRnLXYyLWNhcmQ6aG92ZXIge1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXRnLXNoYWRvdy1tZCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4udGctdjItY2FyZC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHRwYWRkaW5nLWJvdHRvbTogMC43NXJlbTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4udGctdjItY2FyZC10aXRsZSB7XHJcblx0Zm9udC1zaXplOiAxcmVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnRnLXYyLWNhcmQtYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDAuNXJlbTtcclxufVxyXG5cclxuLnRnLXYyLWNhcmQtYWN0aW9uIHtcclxuXHR3aWR0aDogMjhweDtcclxuXHRoZWlnaHQ6IDI4cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnRnLXYyLWNhcmQtYWN0aW9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09IEJ1dHRvbnMgPT09PT09PT09PSAqL1xyXG4udGctdjItYnV0dG9uIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGdhcDogMC41cmVtO1xyXG5cdHBhZGRpbmc6IDAuNjI1cmVtIDEuMjVyZW07XHJcblx0Zm9udC1zaXplOiAwLjg3NXJlbTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cy1tZCk7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGctdHJhbnNpdGlvbi1mYXN0KTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnRnLXYyLWJ1dHRvbjo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDUwJTtcclxuXHRsZWZ0OiA1MCU7XHJcblx0d2lkdGg6IDA7XHJcblx0aGVpZ2h0OiAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cy1mdWxsKTtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblx0dHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGctdHJhbnNpdGlvbi1zbG93KSxcclxuXHRoZWlnaHQgdmFyKC0tdGctdHJhbnNpdGlvbi1zbG93KTtcclxufVxyXG5cclxuLnRnLXYyLWJ1dHRvbjphY3RpdmU6OmJlZm9yZSB7XHJcblx0d2lkdGg6IDMwMHB4O1xyXG5cdGhlaWdodDogMzAwcHg7XHJcbn1cclxuXHJcbi50Zy12Mi1idXR0b24tcHJpbWFyeSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4udGctdjItYnV0dG9uLXByaW1hcnk6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXRnLXNoYWRvdyk7XHJcbn1cclxuXHJcbi50Zy12Mi1idXR0b24tc2Vjb25kYXJ5IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi50Zy12Mi1idXR0b24tc2Vjb25kYXJ5OmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi50Zy12Mi1idXR0b24tZ2hvc3Qge1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50Zy12Mi1idXR0b24tZ2hvc3Q6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGctdjItYnV0dG9uLWRhbmdlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG4udGctdjItYnV0dG9uLWRhbmdlcjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogI2RjMjYyNjtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tdGctc2hhZG93KTtcclxufVxyXG5cclxuLyogPT09PT09PT09PSBBbmltYXRpb25zID09PT09PT09PT0gKi9cclxuQGtleWZyYW1lcyBmYWRlSW4ge1xyXG5cdGZyb20ge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpO1xyXG5cdH1cclxuXHR0byB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG5cdH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZUluIHtcclxuXHRmcm9tIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG5cdH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZVVwIHtcclxuXHRmcm9tIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG5cdH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBwdWxzZSB7XHJcblx0MCUsXHJcblx0MTAwJSB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxuXHQ1MCUge1xyXG5cdFx0b3BhY2l0eTogMC41O1xyXG5cdH1cclxufVxyXG5cclxuLyogPT09PT09PT09PSBSZXNwb25zaXZlIERlc2lnbiA9PT09PT09PT09ICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuXHQudGFzay1saXN0LWNvbnRhaW5lcixcclxuXHQudGFzay10cmVlLWNvbnRhaW5lciB7XHJcblx0XHRwYWRkaW5nOiAxcmVtO1xyXG5cdH1cclxuXHJcblx0LnRnLXYyLWZpbHRlci1wYW5lbCB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdHJpZ2h0OiAtMTAwJTtcclxuXHR9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA2NDBweCkge1xyXG5cdC50YXNrLWxpc3QtaXRlbSB7XHJcblx0XHRwYWRkaW5nOiAwLjc1cmVtIDFyZW07XHJcblx0fVxyXG5cclxuXHQudGFzay10cmVlLXByb2plY3QtaGVhZGVyIHtcclxuXHRcdHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcclxuXHR9XHJcblxyXG5cdC50Zy12Mi1jYXJkIHtcclxuXHRcdHBhZGRpbmc6IDFyZW07XHJcblx0fVxyXG59XHJcblxyXG4vKiA9PT09PT09PT09IERhcmsgTW9kZSBBZGp1c3RtZW50cyA9PT09PT09PT09ICovXHJcbi50aGVtZS1kYXJrIHtcclxuXHQtLXRnLXNoYWRvdy1zbTogMCAxcHggMnB4IDAgcmdiKDAgMCAwIC8gMC4zKTtcclxuXHQtLXRnLXNoYWRvdzogMCAxcHggM3B4IDAgcmdiKDAgMCAwIC8gMC40KSwgMCAxcHggMnB4IC0xcHggcmdiKDAgMCAwIC8gMC4zKTtcclxuXHQtLXRnLXNoYWRvdy1tZDogMCA0cHggNnB4IC0xcHggcmdiKDAgMCAwIC8gMC40KSwgMCAycHggNHB4IC0ycHggcmdiKDAgMCAwIC8gMC4zKTtcclxuXHQtLXRnLXNoYWRvdy1sZzogMCAxMHB4IDE1cHggLTNweCByZ2IoMCAwIDAgLyAwLjQpLCAwIDRweCA2cHggLTRweCByZ2IoMCAwIDAgLyAwLjMpO1xyXG5cdC0tdGctc2hhZG93LXhsOiAwIDIwcHggMjVweCAtNXB4IHJnYigwIDAgMCAvIDAuNCksIDAgOHB4IDEwcHggLTZweCByZ2IoMCAwIDAgLyAwLjMpO1xyXG59XHJcblxyXG4udGhlbWUtZGFyayAudGctdjItY2FyZDpob3ZlcixcclxuLnRoZW1lLWRhcmsgLnRhc2stbGlzdC1pdGVtOmhvdmVyLFxyXG4udGhlbWUtZGFyayAudGFzay10cmVlLXByb2plY3Q6aG92ZXIge1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDFweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpLFxyXG5cdHZhcigtLXRnLXNoYWRvdy1tZCk7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT0gUHJvZ3Jlc3MgQmFycyA9PT09PT09PT09ICovXHJcbi50Zy12Mi1wcm9ncmVzcyB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiA2cHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cy1mdWxsKTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdG1hcmdpbjogMC41cmVtIDA7XHJcbn1cclxuXHJcbi50Zy12Mi1wcm9ncmVzcy1iYXIge1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cy1mdWxsKTtcclxuXHR0cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10Zy10cmFuc2l0aW9uLXNsb3cpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4udGctdjItcHJvZ3Jlc3MtYmFyOjphZnRlciB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0cmlnaHQ6IDA7XHJcblx0Ym90dG9tOiAwO1xyXG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuXHRcdDkwZGVnLFxyXG5cdFx0dHJhbnNwYXJlbnQsXHJcblx0XHRyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyksXHJcblx0XHR0cmFuc3BhcmVudFxyXG5cdCk7XHJcblx0YW5pbWF0aW9uOiBzaGltbWVyIDJzIGluZmluaXRlO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNoaW1tZXIge1xyXG5cdDAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG5cdH1cclxufVxyXG5cclxuLyogPT09PT09PT09PSBUYWdzID09PT09PT09PT0gKi9cclxuLnRnLXYyLXRhZyB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAwLjI1cmVtIDAuNjI1cmVtO1xyXG5cdGZvbnQtc2l6ZTogMC43NXJlbTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cy1mdWxsKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0bWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xyXG5cdHRyYW5zaXRpb246IGFsbCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG59XHJcblxyXG4udGctdjItdGFnOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi50Zy12Mi10YWctcHJpbWFyeSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLnRnLXYyLXRhZy1zdWNjZXNzIHtcclxuXHRiYWNrZ3JvdW5kOiAjMTBiOTgxO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxuXHRib3JkZXItY29sb3I6ICMxMGI5ODE7XHJcbn1cclxuXHJcbi50Zy12Mi10YWctd2FybmluZyB7XHJcblx0YmFja2dyb3VuZDogI2Y1OWUwYjtcclxuXHRjb2xvcjogd2hpdGU7XHJcblx0Ym9yZGVyLWNvbG9yOiAjZjU5ZTBiO1xyXG59XHJcblxyXG4udGctdjItdGFnLWRhbmdlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcbn1cclxuXHJcbi53b3Jrc3BhY2UtbmFtZS13aXRoLWljb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuIiwgIi8qIFRhc2sgR2VuaXVzIFYyIENvbnRlbnQgSGVhZGVyIFN0eWxlcyAqL1xyXG5cclxuLyogPT09IENvbnRlbnQgV3JhcHBlciA9PT0gKi9cclxuLnRnLXYyLWNvbnRlbnQtd3JhcHBlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vKiA9PT0gQ29udGVudCBIZWFkZXIgPT09ICovXHJcbi52Mi1jb250ZW50LWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRwYWRkaW5nOiAxMnB4IDIwcHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG1pbi1oZWlnaHQ6IDU2cHg7XHJcblx0Z2FwOiAxNnB4O1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4udjItY29udGVudC1oZWFkZXIgLmhlYWRlci1sZWZ0LXNlY3Rpb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDEycHg7XHJcblx0bWluLXdpZHRoOiAyMDBweDtcclxufVxyXG5cclxuLnYyLWNvbnRlbnQtaGVhZGVyIC5jb250ZW50LXRpdGxlIHtcclxuXHRmb250LXNpemU6IDEuMjVyZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi52Mi1jb250ZW50LWhlYWRlciAudGFzay1jb3VudCB7XHJcblx0Zm9udC1zaXplOiAwLjg3NXJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0cGFkZGluZzogMnB4IDhweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi52Mi1jb250ZW50LWhlYWRlciAuaGVhZGVyLWNlbnRlci1zZWN0aW9uIHtcclxuXHRmbGV4OiAxO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0bWF4LXdpZHRoOiA1MDBweDtcclxuXHRtYXJnaW46IDAgYXV0bztcclxufVxyXG5cclxuLnYyLWNvbnRlbnQtaGVhZGVyIC5jb250ZW50LWZpbHRlciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi52Mi1jb250ZW50LWhlYWRlciAuZmlsdGVyLWlucHV0IHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktYWx0KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGZvbnQtc2l6ZTogMC44NzVyZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udjItY29udGVudC1oZWFkZXIgLmZpbHRlci1pbnB1dDo6cGxhY2Vob2xkZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnYyLWNvbnRlbnQtaGVhZGVyIC5maWx0ZXItaW5wdXQ6Zm9jdXMge1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjIpO1xyXG59XHJcblxyXG4udjItY29udGVudC1oZWFkZXIgLmhlYWRlci1yaWdodC1zZWN0aW9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA4cHg7XHJcbn1cclxuXHJcbi52Mi1jb250ZW50LWhlYWRlciAudmlldy10b2dnbGUtYnRuLFxyXG4udjItY29udGVudC1oZWFkZXIgLnNvcnQtYnV0dG9uLFxyXG4udjItY29udGVudC1oZWFkZXIgLmZpbHRlci1idXR0b24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMzJweDtcclxuXHRoZWlnaHQ6IDMycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnYyLWNvbnRlbnQtaGVhZGVyIC52aWV3LXRvZ2dsZS1idG46aG92ZXIsXHJcbi52Mi1jb250ZW50LWhlYWRlciAuc29ydC1idXR0b246aG92ZXIsXHJcbi52Mi1jb250ZW50LWhlYWRlciAuZmlsdGVyLWJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnYyLWNvbnRlbnQtaGVhZGVyIC52aWV3LXRvZ2dsZS1idG46YWN0aXZlLFxyXG4udjItY29udGVudC1oZWFkZXIgLnNvcnQtYnV0dG9uOmFjdGl2ZSxcclxuLnYyLWNvbnRlbnQtaGVhZGVyIC5maWx0ZXItYnV0dG9uOmFjdGl2ZSB7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcclxufVxyXG5cclxuLnYyLWNvbnRlbnQtaGVhZGVyIC52aWV3LXRvZ2dsZS1idG4gc3ZnLFxyXG4udjItY29udGVudC1oZWFkZXIgLnNvcnQtYnV0dG9uIHN2ZyxcclxuLnYyLWNvbnRlbnQtaGVhZGVyIC5maWx0ZXItYnV0dG9uIHN2ZyB7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG59XHJcblxyXG4vKiA9PT0gQ29udGVudCBBcmVhICh3aXRoIGhlYWRlcikgPT09ICovXHJcbi50Zy12Mi1jb250ZW50IHtcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxufVxyXG5cclxuLyogPT09IFJlc3BvbnNpdmUgYWRqdXN0bWVudHMgPT09ICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC52Mi1jb250ZW50LWhlYWRlciB7XHJcblx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRwYWRkaW5nOiA4cHggMTJweDtcclxuXHR9XHJcblxyXG5cdC52Mi1jb250ZW50LWhlYWRlciAuaGVhZGVyLWxlZnQtc2VjdGlvbiB7XHJcblx0XHRtaW4td2lkdGg6IGF1dG87XHJcblx0fVxyXG5cclxuXHQudjItY29udGVudC1oZWFkZXIgLmhlYWRlci1jZW50ZXItc2VjdGlvbiB7XHJcblx0XHRvcmRlcjogMztcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWF4LXdpZHRoOiBub25lO1xyXG5cdFx0bWFyZ2luLXRvcDogOHB4O1xyXG5cdH1cclxuXHJcblx0LnYyLWNvbnRlbnQtaGVhZGVyIC5jb250ZW50LXRpdGxlIHtcclxuXHRcdGZvbnQtc2l6ZTogMS4xcmVtO1xyXG5cdH1cclxufVxyXG4iLCAiLyogUHJvamVjdCBQb3BvdmVyIFN0eWxlcyAqL1xyXG4udjItcHJvamVjdC1wb3BvdmVyLWNvbnRhaW5lciB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHotaW5kZXg6IDEwMDA7XHJcbn1cclxuXHJcbi52Mi1wcm9qZWN0LXBvcG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRib3gtc2hhZG93OiAwIDRweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcblx0bWluLXdpZHRoOiAzMjBweDtcclxuXHRtYXgtd2lkdGg6IDQwMHB4O1xyXG5cdGFuaW1hdGlvbjogcG9wb3Zlci1mYWRlLWluIDAuMnMgZWFzZS1vdXQ7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcG9wb3Zlci1mYWRlLWluIHtcclxuXHRmcm9tIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7XHJcblx0fVxyXG5cdHRvIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcblx0fVxyXG59XHJcblxyXG4udjItcG9wb3Zlci1hcnJvdyxcclxuLnYyLXBvcG92ZXItYXJyb3c6OmJlZm9yZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHdpZHRoOiAxMHB4O1xyXG5cdGhlaWdodDogMTBweDtcclxuXHRiYWNrZ3JvdW5kOiBpbmhlcml0O1xyXG59XHJcblxyXG4udjItcG9wb3Zlci1hcnJvdyB7XHJcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xyXG59XHJcblxyXG4udjItcG9wb3Zlci1hcnJvdzo6YmVmb3JlIHtcclxuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0dHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4vKiBBcnJvdyBwb3NpdGlvbmluZyBmb3IgZGlmZmVyZW50IHBsYWNlbWVudHMgKi9cclxuLnYyLXByb2plY3QtcG9wb3ZlcltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwidG9wXCJdIC52Mi1wb3BvdmVyLWFycm93IHtcclxuXHRib3R0b206IC01cHg7XHJcbn1cclxuXHJcbi52Mi1wcm9qZWN0LXBvcG92ZXJbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInRvcFwiXSAudjItcG9wb3Zlci1hcnJvdzo6YmVmb3JlIHtcclxuXHRib3JkZXItdG9wOiBub25lO1xyXG5cdGJvcmRlci1sZWZ0OiBub25lO1xyXG59XHJcblxyXG4udjItcHJvamVjdC1wb3BvdmVyW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJib3R0b21cIl0gLnYyLXBvcG92ZXItYXJyb3cge1xyXG5cdHRvcDogLTVweDtcclxufVxyXG5cclxuLnYyLXByb2plY3QtcG9wb3ZlcltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwiYm90dG9tXCJdIC52Mi1wb3BvdmVyLWFycm93OjpiZWZvcmUge1xyXG5cdGJvcmRlci1yaWdodDogbm9uZTtcclxuXHRib3JkZXItYm90dG9tOiBub25lO1xyXG59XHJcblxyXG4udjItcHJvamVjdC1wb3BvdmVyW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJsZWZ0XCJdIC52Mi1wb3BvdmVyLWFycm93IHtcclxuXHRyaWdodDogLTVweDtcclxufVxyXG5cclxuLnYyLXByb2plY3QtcG9wb3ZlcltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwibGVmdFwiXSAudjItcG9wb3Zlci1hcnJvdzo6YmVmb3JlIHtcclxuXHRib3JkZXItYm90dG9tOiBub25lO1xyXG5cdGJvcmRlci1sZWZ0OiBub25lO1xyXG59XHJcblxyXG4udjItcHJvamVjdC1wb3BvdmVyW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJyaWdodFwiXSAudjItcG9wb3Zlci1hcnJvdyB7XHJcblx0bGVmdDogLTVweDtcclxufVxyXG5cclxuLnYyLXByb2plY3QtcG9wb3ZlcltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwicmlnaHRcIl0gLnYyLXBvcG92ZXItYXJyb3c6OmJlZm9yZSB7XHJcblx0Ym9yZGVyLXRvcDogbm9uZTtcclxuXHRib3JkZXItcmlnaHQ6IG5vbmU7XHJcbn1cclxuXHJcbi52Mi1wb3BvdmVyLWNvbnRlbnQge1xyXG5cdHBhZGRpbmc6IDE2cHg7XHJcbn1cclxuXHJcbi52Mi1wb3BvdmVyLWhlYWRlciB7XHJcblx0bWFyZ2luLWJvdHRvbTogMTZweDtcclxuXHRwYWRkaW5nLWJvdHRvbTogMTJweDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4udjItcG9wb3Zlci1oZWFkZXIgaDMge1xyXG5cdG1hcmdpbjogMDtcclxuXHRmb250LXNpemU6IDE2cHg7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udjItcG9wb3Zlci1zZWN0aW9uIHtcclxuXHRtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG59XHJcblxyXG4udjItcG9wb3Zlci1zZWN0aW9uIGxhYmVsIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRtYXJnaW4tYm90dG9tOiA4cHg7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xyXG59XHJcblxyXG4udjItcG9wb3Zlci1pbnB1dCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0cGFkZGluZzogOHB4IDEycHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzO1xyXG59XHJcblxyXG4udjItcG9wb3Zlci1pbnB1dDpmb2N1cyB7XHJcblx0b3V0bGluZTogbm9uZTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi52Mi1wb3BvdmVyLWlucHV0LmlzLWVycm9yIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGFuaW1hdGlvbjogc2hha2UgMC4zcztcclxufVxyXG5cclxuQGtleWZyYW1lcyBzaGFrZSB7XHJcblx0MCUsXHJcblx0MTAwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcblx0fVxyXG5cdDI1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTRweCk7XHJcblx0fVxyXG5cdDc1JSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTtcclxuXHR9XHJcbn1cclxuXHJcbi52Mi1jb2xvci1ncmlkIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDUsIDFmcik7XHJcblx0Z2FwOiA4cHg7XHJcbn1cclxuXHJcbi52Mi1jb2xvci1idXR0b24ge1xyXG5cdHdpZHRoOiAzNnB4O1xyXG5cdGhlaWdodDogMzZweDtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzO1xyXG5cdGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLnYyLWNvbG9yLWJ1dHRvbjpob3ZlciB7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xyXG59XHJcblxyXG4udjItY29sb3ItYnV0dG9uLmlzLXNlbGVjdGVkIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi52Mi1jb2xvci1idXR0b24uaXMtc2VsZWN0ZWQ6OmFmdGVyIHtcclxuXHRjb250ZW50OiBcIlx1MjcxM1wiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDUwJTtcclxuXHRsZWZ0OiA1MCU7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG5cdGZvbnQtc2l6ZTogMTZweDtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHR0ZXh0LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcclxufVxyXG5cclxuLnYyLXBvcG92ZXItYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdGdhcDogOHB4O1xyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0cGFkZGluZy10b3A6IDE2cHg7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnYyLWJ1dHRvbiB7XHJcblx0cGFkZGluZzogNnB4IDE2cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycztcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0b3V0bGluZTogbm9uZTtcclxufVxyXG5cclxuLnYyLWJ1dHRvbi1wcmltYXJ5IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi52Mi1idXR0b24tcHJpbWFyeTpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLnYyLWJ1dHRvbi1zZWNvbmRhcnkge1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi52Mi1idXR0b24tc2Vjb25kYXJ5OmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4vKiBNb2RhbCBTdHlsZXMgdXNpbmcgT2JzaWRpYW4gbmF0aXZlIE1vZGFsICovXHJcbi52Mi1wcm9qZWN0LW1vZGFsIHtcclxuXHQvKiBNb2RhbCB3aWxsIHVzZSBPYnNpZGlhbidzIGRlZmF1bHQgc3R5bGluZyAqL1xyXG59XHJcblxyXG4udjItcHJvamVjdC1tb2RhbCAubW9kYWwtY29udGVudCBoMiB7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRmb250LXNpemU6IDIwcHg7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udjItbW9kYWwtc2VjdGlvbiB7XHJcblx0bWFyZ2luLWJvdHRvbTogMjRweDtcclxufVxyXG5cclxuLnYyLW1vZGFsLXNlY3Rpb24gbGFiZWwge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi52Mi1tb2RhbC1pbnB1dCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0cGFkZGluZzogMTBweCAxNHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRmb250LXNpemU6IDE2cHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycztcclxufVxyXG5cclxuLnYyLW1vZGFsLWlucHV0OmZvY3VzIHtcclxuXHRvdXRsaW5lOiBub25lO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAzcHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLnYyLW1vZGFsLWlucHV0LmlzLWVycm9yIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGFuaW1hdGlvbjogc2hha2UgMC4zcztcclxufVxyXG5cclxuLnYyLW1vZGFsLWNvbG9yLWdyaWQge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTtcclxuXHRnYXA6IDEycHg7XHJcbn1cclxuXHJcbi52Mi1tb2RhbC1jb2xvci1idXR0b24ge1xyXG5cdHdpZHRoOiA0OHB4O1xyXG5cdGhlaWdodDogNDhweDtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzO1xyXG5cdGJvcmRlcjogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLnYyLW1vZGFsLWNvbG9yLWJ1dHRvbjpob3ZlciB7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xyXG59XHJcblxyXG4udjItbW9kYWwtY29sb3ItYnV0dG9uLmlzLXNlbGVjdGVkIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgM3B4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi52Mi1tb2RhbC1jb2xvci1idXR0b24uaXMtc2VsZWN0ZWQ6OmFmdGVyIHtcclxuXHRjb250ZW50OiBcIlx1MjcxM1wiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDUwJTtcclxuXHRsZWZ0OiA1MCU7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG5cdGZvbnQtc2l6ZTogMjBweDtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHR0ZXh0LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC40KTtcclxufVxyXG5cclxuLnYyLW1vZGFsLXByZXZpZXcge1xyXG5cdHBhZGRpbmc6IDEycHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxufVxyXG5cclxuLnYyLXByb2plY3QtaXRlbS1wcmV2aWV3IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAxMnB4O1xyXG5cdHBhZGRpbmc6IDhweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxufVxyXG5cclxuLnYyLXByb2plY3QtaXRlbS1wcmV2aWV3IC52Mi1wcm9qZWN0LWNvbG9yIHtcclxuXHR3aWR0aDogOHB4O1xyXG5cdGhlaWdodDogMzJweDtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi52Mi1wcm9qZWN0LWl0ZW0tcHJldmlldyAudjItcHJvamVjdC1uYW1lIHtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udjItbW9kYWwtZm9vdGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0Z2FwOiAxMnB4O1xyXG5cdHBhZGRpbmc6IDIwcHg7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnYyLW1vZGFsLWZvb3RlciAudjItYnV0dG9uIHtcclxuXHRwYWRkaW5nOiAxMHB4IDI0cHg7XHJcblx0Zm9udC1zaXplOiAxNXB4O1xyXG59XHJcbiJdLAogICJtYXBwaW5ncyI6ICI7QUFDQSxDQUFDO0FBQ0EsV0FBUztBQUNULFlBQVU7QUFDVixlQUFhO0FBQ2IsaUJBQWU7QUFDaEI7QUFFQSxDQUFDLGdCQUFnQixDQVBoQjtBQVFBLFdBQVM7QUFDVjtBQUVBLENBQUMsZUFBZSxDQVhmO0FBWUEsV0FBUztBQUNULFlBQVU7QUFDVixlQUFhO0FBQ2IsaUJBQWU7QUFDaEI7QUFFQSxDQUFDO0FBQ0Es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 */