@codemieai/code 0.0.34 → 0.0.36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (206) hide show
  1. package/README.md +10 -5
  2. package/bin/codemie-claude-acp.js +21 -0
  3. package/bin/codemie.js +13 -0
  4. package/dist/agents/codemie-code/agent.d.ts +23 -5
  5. package/dist/agents/codemie-code/agent.d.ts.map +1 -1
  6. package/dist/agents/codemie-code/agent.js +293 -197
  7. package/dist/agents/codemie-code/agent.js.map +1 -1
  8. package/dist/agents/codemie-code/index.d.ts +1 -1
  9. package/dist/agents/codemie-code/index.d.ts.map +1 -1
  10. package/dist/agents/codemie-code/index.js +9 -6
  11. package/dist/agents/codemie-code/index.js.map +1 -1
  12. package/dist/agents/codemie-code/prompts.d.ts +9 -11
  13. package/dist/agents/codemie-code/prompts.d.ts.map +1 -1
  14. package/dist/agents/codemie-code/prompts.js +43 -16
  15. package/dist/agents/codemie-code/prompts.js.map +1 -1
  16. package/dist/agents/codemie-code/skills/core/SkillDiscovery.d.ts.map +1 -0
  17. package/dist/{skills → agents/codemie-code/skills}/core/SkillDiscovery.js +1 -1
  18. package/dist/agents/codemie-code/skills/core/SkillDiscovery.js.map +1 -0
  19. package/dist/agents/codemie-code/skills/core/SkillManager.d.ts.map +1 -0
  20. package/dist/{skills → agents/codemie-code/skills}/core/SkillManager.js +1 -1
  21. package/dist/agents/codemie-code/skills/core/SkillManager.js.map +1 -0
  22. package/dist/agents/codemie-code/skills/core/types.d.ts.map +1 -0
  23. package/dist/agents/codemie-code/skills/core/types.js.map +1 -0
  24. package/dist/agents/codemie-code/skills/index.d.ts.map +1 -0
  25. package/dist/agents/codemie-code/skills/index.js.map +1 -0
  26. package/dist/agents/codemie-code/skills/utils/content-loader.d.ts.map +1 -0
  27. package/dist/{skills → agents/codemie-code/skills}/utils/content-loader.js +1 -1
  28. package/dist/agents/codemie-code/skills/utils/content-loader.js.map +1 -0
  29. package/dist/agents/codemie-code/skills/utils/frontmatter.d.ts.map +1 -0
  30. package/dist/agents/codemie-code/skills/utils/frontmatter.js.map +1 -0
  31. package/dist/agents/codemie-code/skills/utils/pattern-matcher.d.ts.map +1 -0
  32. package/dist/agents/codemie-code/skills/utils/pattern-matcher.js.map +1 -0
  33. package/dist/agents/codemie-code/toolMetadata.d.ts.map +1 -1
  34. package/dist/agents/codemie-code/toolMetadata.js +9 -8
  35. package/dist/agents/codemie-code/toolMetadata.js.map +1 -1
  36. package/dist/agents/codemie-code/tools/assistant-invocation.d.ts +47 -0
  37. package/dist/agents/codemie-code/tools/assistant-invocation.d.ts.map +1 -0
  38. package/dist/agents/codemie-code/tools/assistant-invocation.js +129 -0
  39. package/dist/agents/codemie-code/tools/assistant-invocation.js.map +1 -0
  40. package/dist/agents/codemie-code/tools/index.d.ts +70 -4
  41. package/dist/agents/codemie-code/tools/index.d.ts.map +1 -1
  42. package/dist/agents/codemie-code/tools/index.js +57 -44
  43. package/dist/agents/codemie-code/tools/index.js.map +1 -1
  44. package/dist/agents/codemie-code/tools/planning.d.ts +6 -5
  45. package/dist/agents/codemie-code/tools/planning.d.ts.map +1 -1
  46. package/dist/agents/codemie-code/tools/planning.js +12 -10
  47. package/dist/agents/codemie-code/tools/planning.js.map +1 -1
  48. package/dist/agents/codemie-code/types.d.ts +25 -4
  49. package/dist/agents/codemie-code/types.d.ts.map +1 -1
  50. package/dist/agents/codemie-code/types.js +24 -0
  51. package/dist/agents/codemie-code/types.js.map +1 -1
  52. package/dist/agents/codemie-code/ui/autocomplete.d.ts +98 -0
  53. package/dist/agents/codemie-code/ui/autocomplete.d.ts.map +1 -0
  54. package/dist/agents/codemie-code/ui/autocomplete.js +145 -0
  55. package/dist/agents/codemie-code/ui/autocomplete.js.map +1 -0
  56. package/dist/agents/codemie-code/ui/keyHandlers.d.ts +112 -0
  57. package/dist/agents/codemie-code/ui/keyHandlers.d.ts.map +1 -0
  58. package/dist/agents/codemie-code/ui/keyHandlers.js +415 -0
  59. package/dist/agents/codemie-code/ui/keyHandlers.js.map +1 -0
  60. package/dist/agents/codemie-code/ui/mentions.d.ts +86 -0
  61. package/dist/agents/codemie-code/ui/mentions.d.ts.map +1 -0
  62. package/dist/agents/codemie-code/ui/mentions.js +122 -0
  63. package/dist/agents/codemie-code/ui/mentions.js.map +1 -0
  64. package/dist/agents/codemie-code/ui/terminalCodes.d.ts +38 -0
  65. package/dist/agents/codemie-code/ui/terminalCodes.d.ts.map +1 -0
  66. package/dist/agents/codemie-code/ui/terminalCodes.js +42 -0
  67. package/dist/agents/codemie-code/ui/terminalCodes.js.map +1 -0
  68. package/dist/agents/codemie-code/ui/todoPanel.d.ts.map +1 -1
  69. package/dist/agents/codemie-code/ui/todoPanel.js +3 -4
  70. package/dist/agents/codemie-code/ui/todoPanel.js.map +1 -1
  71. package/dist/agents/codemie-code/ui.d.ts +8 -7
  72. package/dist/agents/codemie-code/ui.d.ts.map +1 -1
  73. package/dist/agents/codemie-code/ui.js +87 -145
  74. package/dist/agents/codemie-code/ui.js.map +1 -1
  75. package/dist/agents/core/AgentCLI.d.ts +5 -0
  76. package/dist/agents/core/AgentCLI.d.ts.map +1 -1
  77. package/dist/agents/core/AgentCLI.js +22 -0
  78. package/dist/agents/core/AgentCLI.js.map +1 -1
  79. package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
  80. package/dist/agents/core/BaseAgentAdapter.js +58 -28
  81. package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
  82. package/dist/agents/core/extension/BaseExtensionInstaller.d.ts +7 -1
  83. package/dist/agents/core/extension/BaseExtensionInstaller.d.ts.map +1 -1
  84. package/dist/agents/core/extension/BaseExtensionInstaller.js +58 -15
  85. package/dist/agents/core/extension/BaseExtensionInstaller.js.map +1 -1
  86. package/dist/agents/core/types.d.ts +17 -0
  87. package/dist/agents/core/types.d.ts.map +1 -1
  88. package/dist/agents/plugins/claude/claude-acp.plugin.d.ts +27 -0
  89. package/dist/agents/plugins/claude/claude-acp.plugin.d.ts.map +1 -0
  90. package/dist/agents/plugins/claude/claude-acp.plugin.js +63 -0
  91. package/dist/agents/plugins/claude/claude-acp.plugin.js.map +1 -0
  92. package/dist/agents/plugins/claude/claude-message-types.d.ts +1 -0
  93. package/dist/agents/plugins/claude/claude-message-types.d.ts.map +1 -1
  94. package/dist/agents/plugins/claude/claude.plugin.d.ts +1 -1
  95. package/dist/agents/plugins/claude/claude.plugin.d.ts.map +1 -1
  96. package/dist/agents/plugins/claude/claude.plugin.js +66 -29
  97. package/dist/agents/plugins/claude/claude.plugin.js.map +1 -1
  98. package/dist/agents/plugins/claude/claude.session.d.ts.map +1 -1
  99. package/dist/agents/plugins/claude/claude.session.js +14 -7
  100. package/dist/agents/plugins/claude/claude.session.js.map +1 -1
  101. package/dist/agents/plugins/claude/plugin/.claude-plugin/plugin.json +1 -1
  102. package/dist/agents/plugins/claude/plugin/commands/codemie-subagents.md +4 -4
  103. package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.d.ts.map +1 -1
  104. package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.js +43 -8
  105. package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.js.map +1 -1
  106. package/dist/agents/plugins/claude/session/processors/claude.metrics-processor.d.ts.map +1 -1
  107. package/dist/agents/plugins/claude/session/processors/claude.metrics-processor.js +68 -40
  108. package/dist/agents/plugins/claude/session/processors/claude.metrics-processor.js.map +1 -1
  109. package/dist/agents/registry.d.ts +1 -1
  110. package/dist/agents/registry.d.ts.map +1 -1
  111. package/dist/agents/registry.js +3 -1
  112. package/dist/agents/registry.js.map +1 -1
  113. package/dist/cli/commands/assistants/chat.d.ts +11 -0
  114. package/dist/cli/commands/assistants/chat.d.ts.map +1 -0
  115. package/dist/cli/commands/assistants/chat.js +201 -0
  116. package/dist/cli/commands/assistants/chat.js.map +1 -0
  117. package/dist/cli/commands/assistants/constants.d.ts +81 -0
  118. package/dist/cli/commands/assistants/constants.d.ts.map +1 -0
  119. package/dist/cli/commands/assistants/constants.js +75 -0
  120. package/dist/cli/commands/assistants/constants.js.map +1 -0
  121. package/dist/cli/commands/assistants/generators/claude-agent-generator.d.ts +26 -0
  122. package/dist/cli/commands/assistants/generators/claude-agent-generator.d.ts.map +1 -0
  123. package/dist/cli/commands/assistants/generators/claude-agent-generator.js +115 -0
  124. package/dist/cli/commands/assistants/generators/claude-agent-generator.js.map +1 -0
  125. package/dist/cli/commands/assistants/index.d.ts +11 -0
  126. package/dist/cli/commands/assistants/index.d.ts.map +1 -0
  127. package/dist/cli/commands/assistants/index.js +28 -0
  128. package/dist/cli/commands/assistants/index.js.map +1 -0
  129. package/dist/cli/commands/assistants/list.d.ts +11 -0
  130. package/dist/cli/commands/assistants/list.d.ts.map +1 -0
  131. package/dist/cli/commands/assistants/list.js +323 -0
  132. package/dist/cli/commands/assistants/list.js.map +1 -0
  133. package/dist/cli/commands/install.d.ts.map +1 -1
  134. package/dist/cli/commands/install.js +26 -6
  135. package/dist/cli/commands/install.js.map +1 -1
  136. package/dist/cli/commands/self-update.d.ts +3 -0
  137. package/dist/cli/commands/self-update.d.ts.map +1 -0
  138. package/dist/cli/commands/self-update.js +55 -0
  139. package/dist/cli/commands/self-update.js.map +1 -0
  140. package/dist/cli/commands/skill.js +1 -1
  141. package/dist/cli/commands/skill.js.map +1 -1
  142. package/dist/cli/commands/update.d.ts.map +1 -1
  143. package/dist/cli/commands/update.js +8 -0
  144. package/dist/cli/commands/update.js.map +1 -1
  145. package/dist/cli/index.d.ts.map +1 -1
  146. package/dist/cli/index.js +8 -4
  147. package/dist/cli/index.js.map +1 -1
  148. package/dist/env/types.d.ts +13 -0
  149. package/dist/env/types.d.ts.map +1 -1
  150. package/dist/env/types.js +1 -1
  151. package/dist/env/types.js.map +1 -1
  152. package/dist/utils/auth.d.ts +22 -0
  153. package/dist/utils/auth.d.ts.map +1 -0
  154. package/dist/utils/auth.js +50 -0
  155. package/dist/utils/auth.js.map +1 -0
  156. package/dist/utils/cli-updater.d.ts +70 -0
  157. package/dist/utils/cli-updater.d.ts.map +1 -0
  158. package/dist/utils/cli-updater.js +339 -0
  159. package/dist/utils/cli-updater.js.map +1 -0
  160. package/dist/utils/config.d.ts +6 -1
  161. package/dist/utils/config.d.ts.map +1 -1
  162. package/dist/utils/config.js +13 -0
  163. package/dist/utils/config.js.map +1 -1
  164. package/dist/utils/native-installer.d.ts.map +1 -1
  165. package/dist/utils/native-installer.js +85 -17
  166. package/dist/utils/native-installer.js.map +1 -1
  167. package/dist/utils/processes.js +1 -1
  168. package/dist/utils/profile.d.ts +2 -0
  169. package/dist/utils/profile.d.ts.map +1 -1
  170. package/dist/utils/profile.js +5 -0
  171. package/dist/utils/profile.js.map +1 -1
  172. package/dist/utils/sdk-client.d.ts +15 -0
  173. package/dist/utils/sdk-client.d.ts.map +1 -0
  174. package/dist/utils/sdk-client.js +92 -0
  175. package/dist/utils/sdk-client.js.map +1 -0
  176. package/dist/utils/windows-path.d.ts +54 -0
  177. package/dist/utils/windows-path.d.ts.map +1 -0
  178. package/dist/utils/windows-path.js +347 -0
  179. package/dist/utils/windows-path.js.map +1 -0
  180. package/package.json +7 -2
  181. package/dist/agents/plugins/claude/plugin/commands/codemie-pr.md +0 -25
  182. package/dist/skills/core/SkillDiscovery.d.ts.map +0 -1
  183. package/dist/skills/core/SkillDiscovery.js.map +0 -1
  184. package/dist/skills/core/SkillManager.d.ts.map +0 -1
  185. package/dist/skills/core/SkillManager.js.map +0 -1
  186. package/dist/skills/core/types.d.ts.map +0 -1
  187. package/dist/skills/core/types.js.map +0 -1
  188. package/dist/skills/index.d.ts.map +0 -1
  189. package/dist/skills/index.js.map +0 -1
  190. package/dist/skills/utils/content-loader.d.ts.map +0 -1
  191. package/dist/skills/utils/content-loader.js.map +0 -1
  192. package/dist/skills/utils/frontmatter.d.ts.map +0 -1
  193. package/dist/skills/utils/frontmatter.js.map +0 -1
  194. package/dist/skills/utils/pattern-matcher.d.ts.map +0 -1
  195. package/dist/skills/utils/pattern-matcher.js.map +0 -1
  196. /package/dist/{skills → agents/codemie-code/skills}/core/SkillDiscovery.d.ts +0 -0
  197. /package/dist/{skills → agents/codemie-code/skills}/core/SkillManager.d.ts +0 -0
  198. /package/dist/{skills → agents/codemie-code/skills}/core/types.d.ts +0 -0
  199. /package/dist/{skills → agents/codemie-code/skills}/core/types.js +0 -0
  200. /package/dist/{skills → agents/codemie-code/skills}/index.d.ts +0 -0
  201. /package/dist/{skills → agents/codemie-code/skills}/index.js +0 -0
  202. /package/dist/{skills → agents/codemie-code/skills}/utils/content-loader.d.ts +0 -0
  203. /package/dist/{skills → agents/codemie-code/skills}/utils/frontmatter.d.ts +0 -0
  204. /package/dist/{skills → agents/codemie-code/skills}/utils/frontmatter.js +0 -0
  205. /package/dist/{skills → agents/codemie-code/skills}/utils/pattern-matcher.d.ts +0 -0
  206. /package/dist/{skills → agents/codemie-code/skills}/utils/pattern-matcher.js +0 -0
@@ -2,11 +2,15 @@ import { intro, outro, text, spinner, note, isCancel } from '@clack/prompts';
2
2
  import chalk from 'chalk';
3
3
  import { formatToolMetadata } from './toolMetadata.js';
4
4
  import { formatCost, formatTokens, formatTokenUsageSummary } from './tokenUtils.js';
5
- import { hasClipboardImage, getClipboardImage } from '../../utils/clipboard.js';
6
5
  import { TodoPanel } from './ui/todoPanel.js';
7
6
  import { getProgressTracker } from './ui/progressTracker.js';
8
7
  import { TodoStateManager } from './tools/planning.js';
9
8
  import { logger } from '../../utils/logger.js';
9
+ import { loadRegisteredAssistants } from '../../utils/config.js';
10
+ import { highlightMentionsInText } from './ui/mentions.js';
11
+ import { startsWithEscape } from './ui/terminalCodes.js';
12
+ import { processKeyInput } from './ui/keyHandlers.js';
13
+ import { ReadFileTool, ListDirectoryTool, ExecuteCommandTool } from './tools/index.js';
10
14
  /**
11
15
  * Terminal UI interface for CodeMie Agent using Clack
12
16
  */
@@ -17,6 +21,7 @@ export class CodeMieTerminalUI {
17
21
  progressTracker;
18
22
  planMode = false;
19
23
  activePlanningPhase = null;
24
+ assistantSuggestions = [];
20
25
  constructor(agent) {
21
26
  this.agent = agent;
22
27
  this.todoPanel = new TodoPanel({
@@ -28,7 +33,7 @@ export class CodeMieTerminalUI {
28
33
  showCelebrations: true,
29
34
  compact: true
30
35
  });
31
- // Register for todo update events
36
+ // Register for to_do update events
32
37
  TodoStateManager.addEventCallback(this.handleTodoUpdate.bind(this));
33
38
  }
34
39
  /**
@@ -77,6 +82,11 @@ export class CodeMieTerminalUI {
77
82
  * Get input from user with Shift+Enter multiline support and image pasting
78
83
  */
79
84
  async getMultilineInput() {
85
+ // Load assistants for autocomplete
86
+ if (this.assistantSuggestions.length === 0) {
87
+ const assistants = await loadRegisteredAssistants();
88
+ this.assistantSuggestions = assistants.map(a => ({ slug: a.slug, name: a.name }));
89
+ }
80
90
  return new Promise((resolve) => {
81
91
  if (!process.stdin.setRawMode) {
82
92
  // Fallback for environments without raw mode
@@ -118,7 +128,11 @@ export class CodeMieTerminalUI {
118
128
  let isFirstLine = true;
119
129
  let escapeSequence = '';
120
130
  let images = [];
121
- let imageCounter = 0;
131
+ // Autocomplete state
132
+ let autocompleteActive = false;
133
+ let autocompleteList = [];
134
+ let autocompleteIndex = 0;
135
+ let autocompleteStartPos = -1; // Position where @ was typed
122
136
  const writePrompt = () => {
123
137
  try {
124
138
  const prompt = isFirstLine ? '> ' : '... ';
@@ -129,145 +143,67 @@ export class CodeMieTerminalUI {
129
143
  }
130
144
  };
131
145
  writePrompt();
132
- process.stdin.on('data', (key) => {
146
+ process.stdin.on('data', async (key) => {
133
147
  if (cleanupDone)
134
148
  return; // Prevent processing after cleanup
135
149
  try {
136
150
  const data = key.toString('utf8');
137
- // Handle escape sequences
138
- if (data.startsWith('\x1b')) {
139
- escapeSequence += data;
140
- // Wait for complete escape sequence (timeout after short delay)
141
- setTimeout(() => {
142
- escapeSequence = '';
143
- }, 10);
144
- return;
145
- }
146
- // Check for Shift+Enter patterns on macOS
147
- // Shift+Enter in macOS Terminal typically sends: \r\n or \n\r
148
- if (data === '\r\n' || data === '\n\r' || (escapeSequence && data === '\r')) {
149
- // This is Shift+Enter - add line and continue
150
- lines.push(currentLine);
151
- currentLine = '';
152
- isFirstLine = false;
153
- process.stdout.write('\n');
154
- writePrompt();
155
- escapeSequence = '';
156
- return;
157
- }
158
- // Regular Enter - send message
159
- if (data === '\r' || data === '\n') {
160
- if (currentLine.trim() === '' && lines.length === 0) {
161
- // Empty input, continue asking
162
- writePrompt();
163
- return;
164
- }
165
- // Send the message
166
- if (currentLine.trim() !== '') {
167
- lines.push(currentLine);
168
- }
169
- process.stdout.write('\n');
170
- performCleanup();
171
- resolve({
172
- text: lines.join('\n'),
173
- images: images
151
+ const config = this.agent.getConfig();
152
+ if (config?.debug && autocompleteActive) {
153
+ logger.debug('Key pressed during autocomplete', {
154
+ data: data.split('').map(c => c.codePointAt(0) ?? 0).join(','),
155
+ escapeSeq: escapeSequence.split('').map(c => c.codePointAt(0) ?? 0).join(','),
156
+ listLength: autocompleteList.length
174
157
  });
175
- return;
176
- }
177
- // Ctrl+C
178
- if (data === '\u0003') {
179
- performCleanup();
180
- resolve(null);
181
- return;
182
158
  }
183
- // Backspace - MUST be checked FIRST before Ctrl+H to avoid conflicts
184
- // Some terminals (Windows/macOS/Linux) send \b (\u0008) for Backspace, which conflicts with Ctrl+H
185
- if (data === '\u007F' || data === '\b') {
186
- if (currentLine.length > 0) {
187
- currentLine = currentLine.slice(0, -1);
188
- process.stdout.write('\b \b');
159
+ // Accumulate escape sequences
160
+ if (startsWithEscape(data) || escapeSequence.length > 0) {
161
+ if (!startsWithEscape(data) && escapeSequence.length > 0) {
162
+ escapeSequence += data;
163
+ }
164
+ else if (startsWithEscape(data)) {
165
+ escapeSequence = data;
189
166
  }
190
- return;
191
- }
192
- // Hotkeys for mode switching
193
- // Ctrl+P - Toggle plan mode
194
- if (data === '\u0010') {
195
- this.handleHotkey('toggle-plan-mode');
196
- // Mode change notification is handled in showModeChangeNotification()
197
- writePrompt();
198
- process.stdout.write(currentLine);
199
- return;
200
- }
201
- // Ctrl+H - Show hotkey help
202
- if (data === '\u0008') {
203
- this.showHotkeyHelp();
204
- writePrompt();
205
- process.stdout.write(currentLine);
206
- return;
207
- }
208
- // Ctrl+T - Show current todos
209
- if (data === '\u0014') {
210
- this.handleHotkey('show-todos');
211
- writePrompt();
212
- process.stdout.write(currentLine);
213
- return;
214
- }
215
- // Ctrl+S - Show current mode status (changed from Ctrl+M to avoid Enter conflict)
216
- if (data === '\u0013') {
217
- this.showModeStatus();
218
- writePrompt();
219
- process.stdout.write(currentLine);
220
- return;
221
- }
222
- // Alt+M - Show mode status (Alt key sequences start with \x1b)
223
- if (data === 'm' && escapeSequence.includes('\x1b')) {
224
- this.showModeStatus();
225
- writePrompt();
226
- process.stdout.write(currentLine);
227
- escapeSequence = '';
228
- return;
229
167
  }
230
- // Ctrl+I - Insert image from clipboard (Tab key)
231
- if (data === '\u0009') {
232
- // Check if there's an image in clipboard
233
- hasClipboardImage().then(hasImage => {
234
- if (hasImage) {
235
- getClipboardImage().then(clipboardImage => {
236
- if (clipboardImage) {
237
- imageCounter++;
238
- images.push(clipboardImage);
239
- // Insert visual indicator in current line
240
- const imageIndicator = chalk.blueBright(`[Image #${imageCounter}]`);
241
- currentLine += imageIndicator;
242
- process.stdout.write(imageIndicator);
243
- console.log(chalk.green(`\n📸 Image #${imageCounter} added from clipboard (${clipboardImage.mimeType})`));
244
- writePrompt();
245
- process.stdout.write(currentLine);
246
- }
247
- });
248
- }
249
- else {
250
- console.log(chalk.yellow('\n⚠️ No image found in clipboard'));
251
- writePrompt();
252
- process.stdout.write(currentLine);
253
- }
254
- }).catch(() => {
255
- console.log(chalk.rgb(255, 120, 120)('\n❌ Error accessing clipboard'));
168
+ // Build state object for key handler
169
+ const state = {
170
+ currentLine,
171
+ lines,
172
+ isFirstLine,
173
+ autocompleteActive,
174
+ autocompleteList,
175
+ autocompleteIndex,
176
+ autocompleteStartPos,
177
+ escapeSequence,
178
+ images,
179
+ ui: this,
180
+ };
181
+ // Process key through handler registry
182
+ const result = await processKeyInput(data, state);
183
+ // Update local variables from state
184
+ currentLine = state.currentLine;
185
+ lines = state.lines;
186
+ isFirstLine = state.isFirstLine;
187
+ autocompleteActive = state.autocompleteActive;
188
+ autocompleteList = state.autocompleteList;
189
+ autocompleteIndex = state.autocompleteIndex;
190
+ autocompleteStartPos = state.autocompleteStartPos;
191
+ escapeSequence = state.escapeSequence;
192
+ // images array is modified by reference
193
+ // Handle result
194
+ if (result.handled) {
195
+ if (result.shouldRewritePrompt) {
256
196
  writePrompt();
257
197
  process.stdout.write(currentLine);
258
- });
259
- return;
260
- }
261
- // Handle clipboard paste (Cmd+V on macOS, Ctrl+V on Windows/Linux)
262
- // Pasted content can be multiple characters, so handle any printable text
263
- if (data.length > 1 || (data.length === 1 && (data.charCodeAt(0) >= 32 || data === '\t'))) {
264
- // Filter out non-printable characters except tabs
265
- const printableData = data.split('').filter(char => char.charCodeAt(0) >= 32 || char === '\t').join('');
266
- if (printableData.length > 0) {
267
- currentLine += printableData;
268
- process.stdout.write(printableData);
269
198
  }
199
+ if (result.shouldReturn) {
200
+ performCleanup();
201
+ resolve(result.value ?? null);
202
+ return;
203
+ }
204
+ return; // Handler processed the key
270
205
  }
206
+ // Clear escape sequence if no handler matched (shouldn't happen)
271
207
  escapeSequence = '';
272
208
  }
273
209
  catch (error) {
@@ -386,7 +322,7 @@ export class CodeMieTerminalUI {
386
322
  }
387
323
  this.currentSpinner.start(chalk.white('Thinking...'));
388
324
  break;
389
- case 'content_chunk':
325
+ case 'content_chunk': {
390
326
  if (!hasStarted) {
391
327
  // Stop any existing spinner and start response
392
328
  if (this.currentSpinner) {
@@ -396,14 +332,17 @@ export class CodeMieTerminalUI {
396
332
  console.log(chalk.cyan('\nCodeMie Thoughts:'));
397
333
  hasStarted = true;
398
334
  }
399
- process.stdout.write(event.content || '');
335
+ // Highlight [Assistant @slug] prefix in responses
336
+ const highlightedContent = highlightMentionsInText(event.content || '');
337
+ process.stdout.write(highlightedContent);
400
338
  break;
339
+ }
401
340
  case 'tool_call_start':
402
341
  toolCallCount++;
403
342
  if (!this.currentSpinner) {
404
343
  this.currentSpinner = spinner();
405
344
  }
406
- this.currentSpinner.start(chalk.yellow(`Using ${event.toolName}...`));
345
+ this.currentSpinner.start(chalk.yellow(`Using ${event.toolName}`));
407
346
  break;
408
347
  case 'tool_call_progress':
409
348
  if (this.currentSpinner && event.toolProgress) {
@@ -422,12 +361,13 @@ export class CodeMieTerminalUI {
422
361
  const message = event.toolMetadata
423
362
  ? formatToolMetadata(event.toolName || 'tool', event.toolMetadata)
424
363
  : `✓ ${event.toolName} completed`;
425
- this.currentSpinner.stop(chalk.green(message));
364
+ this.currentSpinner.stop();
365
+ this.currentSpinner = undefined;
366
+ console.log(chalk.green(`◇ ${message}`));
426
367
  // Show additional details if available and not an error (but avoid duplication)
427
368
  if (event.toolMetadata && event.toolMetadata.success && this.shouldShowDetails(event.toolName || '')) {
428
369
  this.showToolDetails(event.toolName || '', event.toolMetadata);
429
370
  }
430
- this.currentSpinner = undefined;
431
371
  }
432
372
  break;
433
373
  case 'complete':
@@ -734,22 +674,22 @@ export class CodeMieTerminalUI {
734
674
  */
735
675
  shouldShowDetails(toolName) {
736
676
  // Show details for these tools when they have interesting information
737
- return ['read_file', 'list_directory', 'execute_command'].includes(toolName);
677
+ return [ReadFileTool.name, ListDirectoryTool.name, ExecuteCommandTool.name].includes(toolName);
738
678
  }
739
679
  /**
740
680
  * Show additional tool details
741
681
  */
742
682
  showToolDetails(toolName, metadata) {
743
- if (!metadata || !metadata.success)
683
+ if (!metadata?.success)
744
684
  return;
745
685
  let details = '';
746
686
  switch (toolName) {
747
- case 'read_file':
687
+ case ReadFileTool.name:
748
688
  if (metadata.contentPreview) {
749
689
  details = chalk.white(`Preview:\n${metadata.contentPreview}`);
750
690
  }
751
691
  break;
752
- case 'list_directory':
692
+ case ListDirectoryTool.name:
753
693
  if (metadata.contentPreview && metadata.contentPreview !== 'Empty directory') {
754
694
  // Parse the content preview and format each item on a new line
755
695
  const preview = metadata.contentPreview;
@@ -768,7 +708,7 @@ export class CodeMieTerminalUI {
768
708
  }
769
709
  }
770
710
  break;
771
- case 'execute_command':
711
+ case ExecuteCommandTool.name:
772
712
  if (metadata.outputPreview && metadata.outputPreview !== 'No output') {
773
713
  details = chalk.white(`Output:\n${metadata.outputPreview}`);
774
714
  }
@@ -891,16 +831,18 @@ export class CodeMieTerminalUI {
891
831
  */
892
832
  showTaskWelcome(task) {
893
833
  intro(chalk.cyan('🤖 CodeMie Native Agent'));
834
+ // Highlight @ mentions in the task
835
+ const highlightedTask = highlightMentionsInText(task);
894
836
  if (this.planMode) {
895
837
  console.log(chalk.cyan('◇ Task Execution'));
896
- console.log(` Task: ${chalk.yellow(task)}`);
838
+ console.log(` Task: ${highlightedTask}`);
897
839
  console.log(` Mode: ${chalk.cyan('Plan Mode')} - Structured planning enabled`);
898
840
  console.log('');
899
841
  this.showPlanningWelcome();
900
842
  }
901
843
  else {
902
844
  console.log(chalk.cyan('◇ Task Execution'));
903
- console.log(` Task: ${chalk.yellow(task)}`);
845
+ console.log(` Task: ${highlightedTask}`);
904
846
  console.log('');
905
847
  }
906
848
  }
@@ -1075,9 +1017,9 @@ export class CodeMieTerminalUI {
1075
1017
  if (!toolInfo)
1076
1018
  return;
1077
1019
  const toolNames = {
1078
- 'list_directory': 'Exploring',
1079
- 'read_file': 'Reading',
1080
- 'execute_command': 'Executing',
1020
+ [ListDirectoryTool.name]: 'Exploring',
1021
+ [ReadFileTool.name]: 'Reading',
1022
+ [ExecuteCommandTool.name]: 'Executing',
1081
1023
  'llm_analysis': 'Analyzing',
1082
1024
  'llm_plan_generation': 'Generating Plan',
1083
1025
  'plan_validation': 'Validating',
@@ -1 +1 @@
1
- {"version":3,"file":"ui.js","sourceRoot":"","sources":["../../../src/agents/codemie-code/ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC7E,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AACpF,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAuB,MAAM,0BAA0B,CAAC;AACrG,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAmB,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C;;GAEG;AACH,MAAM,OAAO,iBAAiB;IACpB,KAAK,CAAe;IACpB,cAAc,CAAO;IACrB,SAAS,CAAY;IACrB,eAAe,CAAkB;IACjC,QAAQ,GAAG,KAAK,CAAC;IACjB,mBAAmB,GAAkB,IAAI,CAAC;IAElD,YAAY,KAAmB;QAC7B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC;YAC7B,YAAY,EAAE,IAAI;YAClB,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QACH,IAAI,CAAC,eAAe,GAAG,kBAAkB,CAAC;YACxC,eAAe,EAAE,IAAI;YACrB,gBAAgB,EAAE,IAAI;YACtB,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,kCAAkC;QAClC,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACtE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB;QACpB,kBAAkB;QAClB,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC;QAE7C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACtC,IAAI,MAAM,EAAE,CAAC;YACX,kFAAkF;YAClF,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,IAAI,MAAM,CAAC,QAAQ,CAAC;YAClE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;YAC7D,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACrD,OAAO,CAAC,GAAG,CAAC,yBAAyB,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;YAC7E,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAClG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC,CAAC;QACnE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC,CAAC;QACrF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,6DAA6D,CAAC,CAAC,CAAC;QACxF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAC,CAAC;QAEtF,wBAAwB;QACxB,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAE7C,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACnB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;gBAClC,MAAM;YACR,CAAC;YAED,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAElC,0BAA0B;YAC1B,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAClD,IAAI,OAAO,KAAK,MAAM;oBAAE,MAAM;gBAC9B,SAAS;YACX,CAAC;YAED,IAAI,OAAO,KAAK,EAAE;gBAAE,SAAS;YAE7B,+DAA+D;YAC/D,MAAM,IAAI,CAAC,0BAA0B,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,iBAAiB;QAC7B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;gBAC9B,6CAA6C;gBAC7C,IAAI,CAAC,gBAAgB,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;gBACjE,OAAO;YACT,CAAC;YAED,IAAI,WAAW,GAAG,KAAK,CAAC;YAExB,MAAM,cAAc,GAAG,GAAG,EAAE;gBAC1B,IAAI,WAAW;oBAAE,OAAO;gBACxB,WAAW,GAAG,IAAI,CAAC;gBAEnB,IAAI,CAAC;oBACH,IAAI,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;wBAC7B,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;oBAClC,CAAC;oBACD,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;oBACtB,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;oBACzC,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;gBAC5C,CAAC;gBAAC,MAAM,CAAC;oBACP,wBAAwB;gBAC1B,CAAC;YACH,CAAC,CAAC;YAEF,8BAA8B;YAC9B,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBACpC,cAAc,EAAE,CAAC;gBACjB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;gBACtC,IAAI,MAAM,EAAE,KAAK,EAAE,CAAC;oBAClB,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;gBACtC,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC;gBACH,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBAC/B,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;gBACvB,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;gBAElC,IAAI,KAAK,GAAa,EAAE,CAAC;gBACzB,IAAI,WAAW,GAAG,EAAE,CAAC;gBACrB,IAAI,WAAW,GAAG,IAAI,CAAC;gBACvB,IAAI,cAAc,GAAG,EAAE,CAAC;gBACxB,IAAI,MAAM,GAAqB,EAAE,CAAC;gBAClC,IAAI,YAAY,GAAG,CAAC,CAAC;gBAErB,MAAM,WAAW,GAAG,GAAG,EAAE;oBACvB,IAAI,CAAC;wBACH,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;wBAC3C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAC/B,CAAC;oBAAC,MAAM,CAAC;wBACP,6BAA6B;oBAC/B,CAAC;gBACH,CAAC,CAAC;gBAEF,WAAW,EAAE,CAAC;gBAEd,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,GAAW,EAAE,EAAE;oBACvC,IAAI,WAAW;wBAAE,OAAO,CAAC,mCAAmC;oBAE5D,IAAI,CAAC;wBACH,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;wBAEtC,0BAA0B;wBAC1B,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;4BAC5B,cAAc,IAAI,IAAI,CAAC;4BACvB,gEAAgE;4BAChE,UAAU,CAAC,GAAG,EAAE;gCACd,cAAc,GAAG,EAAE,CAAC;4BACtB,CAAC,EAAE,EAAE,CAAC,CAAC;4BACP,OAAO;wBACT,CAAC;wBAED,0CAA0C;wBAC1C,8DAA8D;wBAC9D,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,MAAM,IAAI,CAAC,cAAc,IAAI,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;4BAC5E,8CAA8C;4BAC9C,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;4BACxB,WAAW,GAAG,EAAE,CAAC;4BACjB,WAAW,GAAG,KAAK,CAAC;4BACpB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;4BAC3B,WAAW,EAAE,CAAC;4BACd,cAAc,GAAG,EAAE,CAAC;4BACpB,OAAO;wBACT,CAAC;wBAED,+BAA+B;wBAC/B,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;4BACnC,IAAI,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gCACpD,+BAA+B;gCAC/B,WAAW,EAAE,CAAC;gCACd,OAAO;4BACT,CAAC;4BAEC,mBAAmB;4BACnB,IAAI,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gCAC9B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;4BAC1B,CAAC;4BAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;4BAC3B,cAAc,EAAE,CAAC;4BACjB,OAAO,CAAC;gCACN,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;gCACtB,MAAM,EAAE,MAAM;6BACf,CAAC,CAAC;4BACH,OAAO;wBACX,CAAC;wBAEG,SAAS;wBACT,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;4BACtB,cAAc,EAAE,CAAC;4BACjB,OAAO,CAAC,IAAI,CAAC,CAAC;4BACd,OAAO;wBACT,CAAC;wBAEL,qEAAqE;wBACrE,mGAAmG;wBACnG,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;4BACvC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gCAC3B,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gCACvC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;4BAChC,CAAC;4BACD,OAAO;wBACT,CAAC;wBAED,6BAA6B;wBAC7B,4BAA4B;wBAC5B,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;4BACtB,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;4BACtC,sEAAsE;4BACtE,WAAW,EAAE,CAAC;4BACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;4BAClC,OAAO;wBACT,CAAC;wBAED,4BAA4B;wBAC5B,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;4BACtB,IAAI,CAAC,cAAc,EAAE,CAAC;4BACtB,WAAW,EAAE,CAAC;4BACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;4BAClC,OAAO;wBACT,CAAC;wBAED,8BAA8B;wBAC9B,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;4BACtB,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;4BAChC,WAAW,EAAE,CAAC;4BACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;4BAClC,OAAO;wBACT,CAAC;wBAED,kFAAkF;wBAClF,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;4BACtB,IAAI,CAAC,cAAc,EAAE,CAAC;4BACtB,WAAW,EAAE,CAAC;4BACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;4BAClC,OAAO;wBACT,CAAC;wBAED,+DAA+D;wBAC/D,IAAI,IAAI,KAAK,GAAG,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;4BACpD,IAAI,CAAC,cAAc,EAAE,CAAC;4BACtB,WAAW,EAAE,CAAC;4BACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;4BAClC,cAAc,GAAG,EAAE,CAAC;4BACpB,OAAO;wBACT,CAAC;wBAED,iDAAiD;wBACjD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;4BACtB,yCAAyC;4BACzC,iBAAiB,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;gCAClC,IAAI,QAAQ,EAAE,CAAC;oCACb,iBAAiB,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE;wCACxC,IAAI,cAAc,EAAE,CAAC;4CACnB,YAAY,EAAE,CAAC;4CACf,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;4CAE5B,0CAA0C;4CAC1C,MAAM,cAAc,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,YAAY,GAAG,CAAC,CAAC;4CACpE,WAAW,IAAI,cAAc,CAAC;4CAC9B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;4CAErC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,YAAY,0BAA0B,cAAc,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;4CAC1G,WAAW,EAAE,CAAC;4CACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;wCACpC,CAAC;oCACH,CAAC,CAAC,CAAC;gCACL,CAAC;qCAAM,CAAC;oCACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,mCAAmC,CAAC,CAAC,CAAC;oCAC/D,WAAW,EAAE,CAAC;oCACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gCACpC,CAAC;4BACH,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gCACZ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC;gCACvE,WAAW,EAAE,CAAC;gCACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;4BACpC,CAAC,CAAC,CAAC;4BACH,OAAO;wBACT,CAAC;wBAED,mEAAmE;wBACnE,0EAA0E;wBAC1E,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC;4BAC1F,kDAAkD;4BAClD,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CACjD,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,KAAK,IAAI,CAC1C,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;4BAEX,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gCAC7B,WAAW,IAAI,aAAa,CAAC;gCAC7B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;4BACtC,CAAC;wBACH,CAAC;wBAEG,cAAc,GAAG,EAAE,CAAC;oBACtB,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,2CAA2C;wBAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;wBACtC,IAAI,MAAM,EAAE,KAAK,EAAE,CAAC;4BAClB,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;wBACjD,CAAC;wBACD,yDAAyD;oBAC3D,CAAC;gBACH,CAAC,CAAC,CAAC;YAEL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,cAAc,EAAE,CAAC;gBACjB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;gBACtC,IAAI,MAAM,EAAE,KAAK,EAAE,CAAC;oBAClB,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;gBAC5C,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,gBAAgB;QAC5B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC;YACvB,OAAO,EAAE,GAAG;YACZ,WAAW,EAAE,sDAAsD;SACpE,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,SAAS,GAAG,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAE7E,gEAAgE;QAChE,8CAA8C;QAC9C,OAAO;YACL,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,EAAE;SACX,CAAC;IACJ,CAAC;IAGD;;OAEG;IACK,KAAK,CAAC,aAAa,CAAC,OAAe;QACzC,MAAM,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAE1C,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,MAAM;gBACT,IAAI,CACF,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,6BAA6B;oBACnD,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,iCAAiC;oBACxD,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,4BAA4B;oBACnD,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,0CAA0C;oBACjE,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,yBAAyB;oBACjD,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,uBAAuB;oBAC/C,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,uBAAuB;oBAC7C,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI;oBAC/B,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,8BAA8B;oBACvD,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,gCAAgC;oBACzD,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,6BAA6B;oBACtD,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,iCAAiC;oBAC1D,GAAG,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI;oBACtC,KAAK,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB;oBAC3C,KAAK,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,iCAAiC;oBAC/D,KAAK,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,gCAAgC;oBACjE,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,kCAAkC;oBACxD,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,6BAA6B;oBACtD,GAAG,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI;oBACrC,wCAAwC;oBACxC,WAAW,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI;oBAC/E,2CAA2C;oBAC3C,wCAAwC,EACxC,oBAAoB,CACrB,CAAC;gBACF,MAAM;YAER,KAAK,OAAO;gBACV,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;gBAC1B,IAAI,CAAC,8BAA8B,EAAE,SAAS,CAAC,CAAC;gBAChD,MAAM;YAER,KAAK,OAAO;gBACV,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;gBACvB,MAAM;YAER,KAAK,OAAO;gBACV,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;gBACvB,MAAM;YAER,KAAK,QAAQ;gBACX,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;gBACxB,MAAM;YAER,KAAK,QAAQ;gBACX,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;gBAC5B,MAAM;YAER,KAAK,MAAM;gBACT,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;gBAClC,OAAO,MAAM,CAAC;YAEhB;gBACE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,oBAAoB,OAAO,qCAAqC,CAAC,EAAE,OAAO,CAAC,CAAC;gBAC1G,MAAM;QACV,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,iBAAiB,CAAC,IAAY,EAAE,SAA2B,EAAE;QACzE,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,IAAI,aAAa,GAAG,CAAC,CAAC;QAEtB,IAAI,CAAC;YACH,iDAAiD;YACjD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC9D,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,MAAM,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,cAAc,UAAU,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC;YACvH,CAAC;YAED,uCAAuC;YACvC,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC1C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;oBACnB,KAAK,gBAAgB;wBACnB,8DAA8D;wBAC9D,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;4BACzB,IAAI,CAAC,cAAc,GAAG,OAAO,EAAE,CAAC;wBAClC,CAAC;wBACD,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;wBACtD,MAAM;oBAER,KAAK,eAAe;wBAClB,IAAI,CAAC,UAAU,EAAE,CAAC;4BAChB,+CAA+C;4BAC/C,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gCACxB,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;gCAC3B,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;4BAClC,CAAC;4BACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;4BAC/C,UAAU,GAAG,IAAI,CAAC;wBACpB,CAAC;wBAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;wBAC1C,MAAM;oBAER,KAAK,iBAAiB;wBACpB,aAAa,EAAE,CAAC;wBAChB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;4BACzB,IAAI,CAAC,cAAc,GAAG,OAAO,EAAE,CAAC;wBAClC,CAAC;wBACD,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,KAAK,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC;wBACtE,MAAM;oBAER,KAAK,oBAAoB;wBACvB,IAAI,IAAI,CAAC,cAAc,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;4BAC9C,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,YAAY,CAAC;4BAC9D,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;4BAC3D,IAAI,OAAO,GAAG,GAAG,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,WAAW,EAAE,CAAC;4BAEvE,IAAI,OAAO,EAAE,CAAC;gCACZ,OAAO,IAAI,KAAK,OAAO,GAAG,CAAC;4BAC7B,CAAC;4BAED,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;wBACnD,CAAC;wBACD,MAAM;oBAER,KAAK,kBAAkB;wBACrB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;4BACxB,2EAA2E;4BAC3E,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY;gCAChC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,IAAI,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC;gCAClE,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,YAAY,CAAC;4BAEpC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;4BAE/C,gFAAgF;4BAChF,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY,CAAC,OAAO,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC;gCACrG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;4BACjE,CAAC;4BAED,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;wBAClC,CAAC;wBACD,MAAM;oBAER,KAAK,UAAU;wBACb,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;4BACxB,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;4BAC3B,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;wBAClC,CAAC;wBACD,IAAI,UAAU,EAAE,CAAC;4BACf,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,6BAA6B;wBAClD,CAAC;wBAED,6BAA6B;wBAC7B,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;wBACpC,MAAM;oBAER,KAAK,OAAO;wBACV,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;4BACxB,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;4BAC3B,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;wBAClC,CAAC;wBACD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;wBAClD,MAAM;gBACV,CAAC;YACH,CAAC,EAAE,MAAM,CAAC,CAAC;QAEb,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxB,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;gBAC3B,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;YAClC,CAAC;YAED,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,YAAY,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;QAChE,CAAC;gBAAS,CAAC;YACT,mBAAmB;QACrB,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,SAAS;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QAEpC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,IAAI,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;YACzC,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAG;YAChB,GAAG,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE;YACjC,YAAY,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE;YACzD,aAAa,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,GAAG,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;YACxJ,YAAY,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE;YACzD,WAAW,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,EAAE;YAC9D,EAAE;YACF,GAAG,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE;YACrC,gBAAgB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;YAC5C,iBAAiB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,aAAa,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU;YACtI,kBAAkB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE;YAC3D,eAAe,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,EAAE;SACzD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEb,IAAI,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;QAEpC,4CAA4C;QAC5C,IAAI,KAAK,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,UAAU;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAEtC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC,4BAA4B,EAAE,QAAQ,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QAED,kFAAkF;QAClF,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,IAAI,MAAM,CAAC,QAAQ,CAAC;QAClE,MAAM,UAAU,GAAG;YACjB,aAAa,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE;YAC5C,UAAU,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YACpC,aAAa,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;YAC1C,sBAAsB,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE;YAC5D,eAAe,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;YAChF,YAAY,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE;SACjD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEb,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;IACpC,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,cAAc;QAC1B,MAAM,aAAa,GAAG,OAAO,EAAE,CAAC;QAChC,aAAa,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAE/C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YAE9C,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAChC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;gBAEvD,MAAM,UAAU,GAAG;oBACjB,WAAW,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;oBACnC,aAAa,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;oBAC5C,UAAU,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;oBACpC,UAAU,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE;iBACzC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAEb,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACN,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,CAAC;gBACvD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,eAAe,CAAC,EAAE,qBAAqB,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,CAAC;YACvD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACnF,CAAC;IACH,CAAC;IAED;;OAEG;IACK,YAAY,CAAC,QAAgB;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;QAEvC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,OAAO,GAAG,KAAK,KAAK,OAAO,GAAG,EAAE,KAAK,OAAO,GAAG,EAAE,GAAG,CAAC;QACvD,CAAC;aAAM,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,GAAG,OAAO,KAAK,OAAO,GAAG,EAAE,GAAG,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,OAAO,GAAG,CAAC;QACvB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,IAAY,EAAE,SAA2B,EAAE;QACjE,MAAM,WAAW,GAAG,OAAO,EAAE,CAAC;QAE9B,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,IAAI,UAAU,GAAG,KAAK,CAAC;QAEvB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC1C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;oBACnB,KAAK,gBAAgB;wBACnB,sDAAsD;wBACtD,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;wBAC9C,MAAM;oBAER,KAAK,eAAe;wBAClB,IAAI,CAAC,UAAU,EAAE,CAAC;4BAChB,wEAAwE;4BACxE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;4BACvD,UAAU,GAAG,IAAI,CAAC;wBACpB,CAAC;wBACD,QAAQ,IAAI,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;wBAChC,MAAM;oBAER,KAAK,iBAAiB;wBACpB,aAAa,EAAE,CAAC;wBAChB,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,KAAK,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC;wBAChE,MAAM;oBAER,KAAK,oBAAoB;wBACvB,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;4BACvB,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,YAAY,CAAC;4BAC9D,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;4BAC3D,IAAI,OAAO,GAAG,GAAG,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,WAAW,EAAE,CAAC;4BAEvE,IAAI,OAAO,EAAE,CAAC;gCACZ,OAAO,IAAI,KAAK,OAAO,GAAG,CAAC;4BAC7B,CAAC;4BAED,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC3C,CAAC;wBACD,MAAM;oBAER,KAAK,kBAAkB;wBACrB,kDAAkD;wBAClD,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;4BACvB,MAAM,OAAO,GAAG,kBAAkB,CAAC,KAAK,CAAC,QAAQ,IAAI,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;4BACjF,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC5C,CAAC;6BAAM,CAAC;4BACN,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;wBACzD,CAAC;wBACD,MAAM;oBAER,KAAK,UAAU;wBACb,WAAW,CAAC,IAAI,EAAE,CAAC;wBACnB,MAAM;oBAER,KAAK,OAAO;wBACV,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;wBACrD,MAAM;gBACV,CAAC;YACH,CAAC,EAAE,MAAM,CAAC,CAAC;YAEX,wCAAwC;YACxC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpC,MAAM,YAAY,GAAa,EAAE,CAAC;YAElC,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;gBACtB,YAAY,CAAC,IAAI,CAAC,QAAQ,aAAa,QAAQ,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACjF,CAAC;YAED,IAAI,KAAK,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;gBAC1B,YAAY,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YACjE,CAAC;YAED,IAAI,KAAK,CAAC,kBAAkB,GAAG,CAAC,EAAE,CAAC;gBACjC,YAAY,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;YAC/D,CAAC;YAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YAC5D,CAAC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;YAC3C,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB,CAAC,IAAY,EAAE,UAAiB,EAAE,EAAE,QAAQ,GAAG,KAAK;QAC3E,MAAM,WAAW,GAAG,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,cAAc,GAAG,WAAW,CAAC,CAAC,+CAA+C;QAClF,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAErE,IAAI,CAAC;YACH,kBAAkB;YAClB,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;YACzD,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE;gBACxC,eAAe,EAAE,IAAI;gBACrB,iBAAiB,EAAE,IAAI;gBACvB,oBAAoB,EAAE,IAAI;aAC3B,CAAC,CAAC;YAEH,uFAAuF;YACvF,MAAM,eAAe,GAAG,CAAC,KAAU,EAAE,EAAE;gBACrC,kCAAkC;gBAClC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;gBAEjC,sCAAsC;gBACtC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;oBACnB,KAAK,gBAAgB;wBACnB,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;wBAChD,MAAM;oBAER,KAAK,eAAe;wBAClB,2EAA2E;wBAC3E,MAAM;oBAER,KAAK,iBAAiB;wBACpB,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,KAAK,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC;wBAChE,MAAM;oBAER,KAAK,oBAAoB;wBACvB,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;4BACvB,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,YAAY,CAAC;4BAC9D,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;4BAC3D,IAAI,OAAO,GAAG,GAAG,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,WAAW,EAAE,CAAC;4BAEvE,IAAI,OAAO,EAAE,CAAC;gCACZ,OAAO,IAAI,KAAK,OAAO,GAAG,CAAC;4BAC7B,CAAC;4BAED,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC3C,CAAC;wBACD,MAAM;oBAER,KAAK,kBAAkB;wBACrB,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;4BACvB,MAAM,OAAO,GAAG,kBAAkB,CAAC,KAAK,CAAC,QAAQ,IAAI,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;4BACjF,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC5C,CAAC;6BAAM,CAAC;4BACN,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;wBACpD,CAAC;wBACD,MAAM;oBAER,KAAK,UAAU;wBACb,WAAW,CAAC,IAAI,EAAE,CAAC;wBACnB,MAAM;oBAER,KAAK,OAAO;wBACV,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;wBACrD,MAAM;gBACV,CAAC;YACH,CAAC,CAAC;YAEF,IAAI,QAAQ,EAAE,CAAC;gBACb,oCAAoC;gBACpC,MAAM,cAAc,GAAG,MAAO,QAAgB,CAAC,aAAa,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;gBAEpF,WAAW,CAAC,IAAI,EAAE,CAAC;gBAEnB,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;oBAC5B,MAAM,IAAI,KAAK,CAAC,oBAAoB,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC9D,CAAC;gBAED,OAAO,uCAAuC,cAAc,CAAC,KAAK,CAAC,MAAM,aAAa;oBAC/E,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,CAAS,EAAE,EAAE,CAChD,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE,CAC5B,CAAC,IAAI,CAAC,IAAI,CAAC;oBACZ,sBAAsB,cAAc,CAAC,YAAY,QAAQ;oBACzD,CAAC,cAAc,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;wBACtC,mBAAmB,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/F,sGAAsG,CAAC;YAChH,CAAC;YAED,4BAA4B;YAC5B,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,kBAAkB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YAExE,WAAW,CAAC,IAAI,EAAE,CAAC;YAEnB,wCAAwC;YACxC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpC,MAAM,YAAY,GAAa,EAAE,CAAC;YAElC,IAAI,KAAK,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;gBAC1B,YAAY,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YACjE,CAAC;YAED,IAAI,KAAK,CAAC,kBAAkB,GAAG,CAAC,EAAE,CAAC;gBACjC,YAAY,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;YAC/D,CAAC;YAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YAC5D,CAAC;YAED,OAAO,MAAM,CAAC;QAEhB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAC/C,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,QAAgB;QACxC,sEAAsE;QACtE,OAAO,CAAC,WAAW,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC/E,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,QAAgB,EAAE,QAAa;QACrD,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO;YAAE,OAAO;QAE3C,IAAI,OAAO,GAAG,EAAE,CAAC;QAEjB,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,WAAW;gBACd,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;oBAC5B,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAC;gBAChE,CAAC;gBACD,MAAM;YAER,KAAK,gBAAgB;gBACnB,IAAI,QAAQ,CAAC,cAAc,IAAI,QAAQ,CAAC,cAAc,KAAK,iBAAiB,EAAE,CAAC;oBAC7E,+DAA+D;oBAC/D,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC;oBACxC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;wBACxD,oEAAoE;wBACpE,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBACrD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBAEnC,sCAAsC;wBACtC,MAAM,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACjE,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,cAAc,QAAQ,YAAY,EAAE,CAAC,CAAC;oBACjE,CAAC;yBAAM,CAAC;wBACN,+CAA+C;wBAC/C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBAClC,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;oBACnE,CAAC;gBACH,CAAC;gBACD,MAAM;YAER,KAAK,iBAAiB;gBACpB,IAAI,QAAQ,CAAC,aAAa,IAAI,QAAQ,CAAC,aAAa,KAAK,WAAW,EAAE,CAAC;oBACrE,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,YAAY,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;gBAC9D,CAAC;gBACD,MAAM;QACV,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,aAAqB;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QAEpC,MAAM,YAAY,GAAa,EAAE,CAAC;QAElC,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;YACtB,YAAY,CAAC,IAAI,CAAC,QAAQ,aAAa,QAAQ,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACjF,CAAC;QAED,IAAI,KAAK,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;YAC1B,YAAY,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAClJ,CAAC;QAED,IAAI,KAAK,CAAC,kBAAkB,GAAG,CAAC,EAAE,CAAC;YACjC,YAAY,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;QAC9E,CAAC;QAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,cAAc,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAED;;OAEG;IACK,kBAAkB,CAAC,KAAsB;QAC/C,MAAM,SAAS,GAAa,EAAE,CAAC;QAE/B,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAEjD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAElE,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU;oBAC/B,CAAC,CAAC,KAAK,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG;oBAClD,CAAC,CAAC,EAAE,CAAC;gBAEP,gDAAgD;gBAChD,IAAI,QAAQ,GAAG,UAAU,CAAC;gBAC1B,IAAI,IAAI,CAAC,UAAU,KAAK,eAAe,EAAE,CAAC;oBACxC,QAAQ,GAAG,kBAAkB,CAAC;gBAChC,CAAC;qBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,wBAAwB,EAAE,CAAC;oBACxD,QAAQ,GAAG,wBAAwB,CAAC;gBACtC,CAAC;qBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,gBAAgB,EAAE,CAAC;oBAChD,QAAQ,GAAG,iBAAiB,CAAC;gBAC/B,CAAC;gBAED,SAAS,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,QAAQ,MAAM,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,SAAS,EAAE,CAAC,CAAC;YAC9G,CAAC;iBAAM,CAAC;gBACN,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,KAAK,SAAS;oBAC5C,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACxD,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACtB,SAAS,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,OAAO,IAAI,IAAI,CAAC,QAAQ,MAAM,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAClH,CAAC;QACH,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,KAAsB;QAC7C,wBAAwB;QACxB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAEnC,uEAAuE;QACvE,0EAA0E;QAC1E,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC9B,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAErD,4CAA4C;YAC5C,IAAI,KAAK,CAAC,UAAU,KAAK,QAAQ,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5D,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,4EAA4E;YAC5E,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,yFAAyF;IAC3F,CAAC;IAED;;OAEG;IACH,eAAe;QACb,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;IAC9B,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,SAAS;QACrB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QAEzC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,oEAAoE,EAAE,gBAAgB,CAAC,CAAC;YAC7F,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QAC5C,IAAI,CAAC,WAAW,EAAE,sBAAsB,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,mBAAmB;QACjB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qFAAqF,CAAC,CAAC,CAAC;YAC/G,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,IAAY;QAC1B,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC;QAE7C,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;YAC7C,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,gCAAgC,CAAC,CAAC;YACjF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC7B,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;YAC7C,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QACzC,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;QAEtD,IAAI,YAAY,IAAI,YAAY,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YAC3C,MAAM,KAAK,GAAG;gBACZ,cAAc,EAAE,YAAY,CAAC,SAAS;gBACtC,SAAS,EAAE,SAAS,CAAC,6BAA6B;aACnD,CAAC;YACF,IAAI,CAAC,eAAe,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YAElD,qCAAqC;YACrC,IAAI,YAAY,CAAC,SAAS,KAAK,YAAY,CAAC,KAAK,EAAE,CAAC;gBAClD,IAAI,CAAC,8CAA8C,EAAE,iBAAiB,CAAC,CAAC;YAC1E,CAAC;iBAAM,IAAI,YAAY,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;gBACtC,IAAI,CACF,aAAa,YAAY,CAAC,SAAS,IAAI,YAAY,CAAC,KAAK,gBAAgB,EACzE,qBAAqB,CACtB,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,KAAa;QACrB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QACzC,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;QAEtD,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,IAAI,YAAY,EAAE,WAAW,EAAE,CAAC;YAC9B,WAAW,GAAG,yCAAyC,YAAY,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QAC5F,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,KAAK,KAAK,GAAG,WAAW,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IACtE,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,0BAA0B,CAAC,IAAY,EAAE,SAA2B,EAAE;QAClF,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,4CAA4C;YAC5C,IAAI,CAAC;gBACH,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;gBACzD,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE;oBACxC,eAAe,EAAE,IAAI;oBACrB,iBAAiB,EAAE,IAAI;oBACvB,oBAAoB,EAAE,IAAI;iBAC3B,CAAC,CAAC;gBAEH,6DAA6D;gBAC7D,MAAM,cAAc,GAAG,MAAO,QAAgB,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,KAAU,EAAE,EAAE;oBAChF,sDAAsD;oBACtD,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;oBAEjC,sDAAsD;oBACtD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;wBACnB,KAAK,gBAAgB;4BACnB,0CAA0C;4BAC1C,MAAM;wBACR,KAAK,iBAAiB;4BACpB,0CAA0C;4BAC1C,MAAM;wBACR,KAAK,kBAAkB;4BACrB,0CAA0C;4BAC1C,MAAM;oBACV,CAAC;gBACH,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;oBAC5B,IAAI,CAAC,SAAS,CAAC,oBAAoB,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC3D,OAAO;gBACT,CAAC;gBAED,mDAAmD;gBACnD,MAAM,aAAa,GAAG,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,KAAK,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;gBACnG,IAAI,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;gBAEzC,uBAAuB;gBACvB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC;oBAC/B,OAAO,EAAE,oBAAoB;oBAC7B,WAAW,EAAE,0CAA0C;oBACvD,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;wBAClB,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;wBAC9C,IAAI,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;4BAClD,OAAO,2BAA2B,CAAC;wBACrC,CAAC;oBACH,CAAC;iBACF,CAAC,CAAC;gBAEH,IAAI,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;oBAC5B,IAAI,CAAC,kCAAkC,EAAE,WAAW,CAAC,CAAC;oBACtD,OAAO;gBACT,CAAC;gBAED,MAAM,QAAQ,GAAI,aAAwB,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;gBAChE,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACpC,mBAAmB;oBACnB,MAAM,QAAQ,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;wBAChD,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,kCAAkC,EAAE,WAAW,CAAC,CAAC;gBACxD,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,SAAS,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,uBAAuB;YACvB,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,KAAU;QACrC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,gBAAgB;gBACnB,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC,YAAY,EAAE,KAAK,IAAI,UAAU,CAAC;gBACnE,kEAAkE;gBAClE,MAAM;YAER,KAAK,mBAAmB;gBACtB,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;gBAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,wBAAwB,KAAK,CAAC,YAAY,EAAE,UAAU,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC9F,MAAM;YAER,KAAK,mBAAmB;gBACtB,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;gBACpD,MAAM;YAER,KAAK,oBAAoB;gBACvB,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;gBACpD,MAAM;YAER,KAAK,eAAe;gBAClB,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;oBAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACtC,CAAC;gBACD,MAAM;YAER,KAAK,aAAa;gBAChB,iEAAiE;gBACjE,+DAA+D;gBAC/D,MAAM;YAER,KAAK,OAAO;gBACV,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;gBAChC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,IAAI,eAAe,CAAC,CAAC;gBAC/C,MAAM;YAER;gBACE,oCAAoC;gBACpC,MAAM;QACV,CAAC;IACH,CAAC;IAED;;OAEG;IACK,YAAY,GAAW,EAAE,CAAC;IAC1B,WAAW,GAAW,EAAE,CAAC;IACzB,eAAe,GAAW,EAAE,CAAC;IAE7B,sBAAsB,CAAC,YAAiB;QAC9C,IAAI,CAAC,YAAY;YAAE,OAAO;QAE1B,kEAAkE;QAClE,MAAM,UAAU,GAAG;YACjB,mBAAmB,EAAE,WAAW;YAChC,eAAe,EAAE,UAAU;YAC3B,iBAAiB,EAAE,UAAU;YAC7B,iBAAiB,EAAE,YAAY;SAChC,CAAC;QAEF,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC,KAAgC,CAAC,IAAI,UAAU,CAAC;QAC5F,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACK,sBAAsB,CAAC,QAAa;QAC1C,IAAI,CAAC,QAAQ;YAAE,OAAO;QAEtB,MAAM,SAAS,GAAG;YAChB,gBAAgB,EAAE,WAAW;YAC7B,WAAW,EAAE,SAAS;YACtB,iBAAiB,EAAE,WAAW;YAC9B,cAAc,EAAE,WAAW;YAC3B,qBAAqB,EAAE,iBAAiB;YACxC,iBAAiB,EAAE,YAAY;YAC/B,sBAAsB,EAAE,cAAc;SACvC,CAAC;QAEF,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAkC,CAAC,IAAI,MAAM,CAAC;QAEpF,0CAA0C;QAC1C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QAE7E,yCAAyC;QACzC,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,QAAgB,EAAE,IAA0B;QACjE,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5C,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,4CAA4C;QAC5C,MAAM,SAAS,GAAG,CAAC,GAAW,EAAE,KAAU,EAAU,EAAE;YACpD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,wDAAwD;gBACxD,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;oBAC1C,mCAAmC;oBACnC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAC/B,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC;gBAC1C,CAAC;gBACD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oBACtB,8BAA8B;oBAC9B,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC7B,CAAC;gBACD,IAAI,KAAK,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;oBACtB,OAAO,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC;gBACxC,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,OAAO,IAAI,KAAK,CAAC,MAAM,SAAS,CAAC;YACnC,CAAC;YACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,OAAO,OAAO,CAAC;YACjB,CAAC;YACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CAAC;QAEF,2CAA2C;QAC3C,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;QAClF,MAAM,UAAU,GAAa,EAAE,CAAC;QAEhC,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;YAC/B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;gBAChB,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAC3C,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC;oBAAE,MAAM,CAAC,kBAAkB;YACvD,CAAC;QACH,CAAC;QAED,iDAAiD;QACjD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC3C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;QAED,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,KAAK,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;IACrF,CAAC;IAED;;OAEG;IACK,eAAe,GAAW,CAAC,CAAC;IAE5B,oBAAoB,CAAC,QAAiB;QAC5C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC;QAClC,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACjE,IAAI,WAAW,GAAG,YAAY,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,WAAW,EAAE,CAAC;QAEjF,iFAAiF;QACjF,yEAAyE;QACzE,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,WAAW,IAAI,KAAK,IAAI,CAAC,YAAY,aAAa,IAAI,CAAC,eAAe,GAAG,CAAC;QAC5E,CAAC;aAAM,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5B,WAAW,IAAI,KAAK,IAAI,CAAC,WAAW,GAAG,CAAC;QAC1C,CAAC;aAAM,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YAC7B,WAAW,IAAI,KAAK,IAAI,CAAC,YAAY,GAAG,CAAC;QAC3C,CAAC;QAED,gEAAgE;QAChE,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC3C,CAAC;aAAM,CAAC;YACN,0CAA0C;YAC1C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,WAAW,CAAC,CAAC;QAC3C,CAAC;QAED,+DAA+D;QAC/D,IAAI,IAAI,CAAC,eAAe,IAAI,GAAG,EAAE,CAAC;YAChC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBACtC,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;YAClC,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC7B,CAAC;YACD,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;YACvB,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;YACtB,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAC5B,CAAC;IACH,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,UAAkB,EAAE,QAAgB,EAAE;QAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;QACtD,MAAM,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;QAE7B,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QACjD,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAEhD,OAAO,IAAI,SAAS,GAAG,QAAQ,GAAG,CAAC;IACrC,CAAC;IAED;;OAEG;IACK,qBAAqB,CAAC,UAAkB,EAAE,QAAgB,EAAE;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;QACtD,MAAM,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;QAE7B,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAEhD,OAAO,IAAI,SAAS,GAAG,QAAQ,GAAG,CAAC;IACrC,CAAC;IAED;;OAEG;IACK,YAAY,CAAC,MAAc;QACjC,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,kBAAkB;gBACrB,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,MAAM;YAER,KAAK,YAAY;gBACf,IAAI,CAAC,eAAe,EAAE,CAAC;gBACvB,MAAM;YAER,KAAK,WAAW;gBACd,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,MAAM;YAER,KAAK,aAAa;gBAChB,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,MAAM;YAER;gBACE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,8BAA8B,MAAM,EAAE,CAAC,CAAC,CAAC;gBAC/D,MAAM;QACV,CAAC;IACH,CAAC;IAED;;OAEG;IACK,cAAc;QACpB,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC;QAEjC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC;QAED,gCAAgC;QAChC,IAAI,CAAC,0BAA0B,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7D,CAAC;IAED;;OAEG;IACK,0BAA0B,CAAC,UAAmB,EAAE,UAAmB;QACzE,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;QACzC,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;QAEvD,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,QAAQ,cAAc,UAAU,EAAE,CAAC,CAAC,CAAC;QAEvE,sFAAsF;QACtF,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC/B,CAAC;IACH,CAAC;IAED;;OAEG;IACK,eAAe;QACrB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QAEzC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAClD,CAAC;aAAM,CAAC;YACN,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,KAAK,WAAW,EAAE,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED;;OAEG;IACK,cAAc;QACpB,MAAM,QAAQ,GAAG;EACnB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAAC;;;IAG5C,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;IACtB,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;;;IAGtB,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;;;IAGtB,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;IACtB,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;IACnB,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;;;IAGtB,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;IACrB,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC;;;IAG3B,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;IACrB,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;IACtB,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;IACtB,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;CACxB,CAAC;QAEE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACxB,CAAC;IAED;;OAEG;IACK,cAAc;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QACzC,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;QAEtD,IAAI,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;QAEhE,mBAAmB;QACnB,UAAU,IAAI,SAAS,IAAI,CAAC,QAAQ,CAAC,CAAC;YACpC,KAAK,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;YAC7C,KAAK,CAAC,MAAM,CAAC,mCAAmC,CAAC,IAAI,CAAC;QAExD,mBAAmB;QACnB,IAAI,YAAY,IAAI,YAAY,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YAC3C,UAAU,IAAI,UAAU,YAAY,CAAC,SAAS,IAAI,YAAY,CAAC,KAAK,eAAe,YAAY,CAAC,UAAU,MAAM,CAAC;YAEjH,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC;gBAC7B,UAAU,IAAI,YAAY,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;YAC7E,CAAC;QACH,CAAC;aAAM,CAAC;YACN,UAAU,IAAI,sBAAsB,CAAC;QACvC,CAAC;QAED,eAAe;QACf,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QACzC,IAAI,UAAU,EAAE,CAAC;YACf,UAAU,IAAI,YAAY,UAAU,CAAC,SAAS,gBAAgB,UAAU,CAAC,QAAQ,cAAc,CAAC;QAClG,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC1B,CAAC;IAGD;;OAEG;IACK,oBAAoB,CAAC,KAAY,EAAE,YAAoB;QAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,oBAAoB;QAEjF,IAAI,SAAS,GAAG,wBAAwB,KAAK,CAAC,MAAM,cAAc,CAAC;QAEnE,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YAC5B,MAAM,UAAU,GAAG,GAAG,KAAK,GAAG,CAAC,IAAI,CAAC;YACpC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;YAE7B,2BAA2B;YAC3B,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;YAC5E,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAEzC,8BAA8B;YAC9B,SAAS,IAAI,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YAE1C,kDAAkD;YAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACtC,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YAC/D,CAAC;YAED,4BAA4B;YAC5B,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,SAAS,IAAI,IAAI,CAAC;YACpB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,SAAS,IAAI,sBAAsB,YAAY,MAAM,CAAC;QAEtD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACK,QAAQ,CAAC,IAAY,EAAE,QAAgB;QAC7C,IAAI,IAAI,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,WAAW,GAAG,EAAE,CAAC;QAErB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,6CAA6C;YAC7C,IAAI,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,QAAQ,EAAE,CAAC;gBACpD,IAAI,WAAW,EAAE,CAAC;oBAChB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC/B,WAAW,GAAG,IAAI,CAAC;gBACrB,CAAC;qBAAM,CAAC;oBACN,mDAAmD;oBACnD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACnB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,WAAW,EAAE,CAAC;oBAChB,WAAW,IAAI,GAAG,GAAG,IAAI,CAAC;gBAC5B,CAAC;qBAAM,CAAC;oBACN,WAAW,GAAG,IAAI,CAAC;gBACrB,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;QACjC,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;YAC3B,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QAClC,CAAC;QAED,yBAAyB;QACzB,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;QAC5B,gBAAgB,CAAC,mBAAmB,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACzE,CAAC;CACF"}
1
+ {"version":3,"file":"ui.js","sourceRoot":"","sources":["../../../src/agents/codemie-code/ui.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,11 @@ export declare class AgentCLI {
16
16
  * Setup commander program
17
17
  */
18
18
  private setupProgram;
19
+ /**
20
+ * Display Windows-specific guidance for PATH refresh issues
21
+ * Shows helpful message when agent is not detected after installation
22
+ */
23
+ private displayWindowsPathGuidance;
19
24
  /**
20
25
  * Handle main run action
21
26
  */
@@ -1 +1 @@
1
- {"version":3,"file":"AgentCLI.d.ts","sourceRoot":"","sources":["../../../src/agents/core/AgentCLI.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAU1C;;;GAGG;AACH,qBAAa,QAAQ;IAIP,OAAO,CAAC,OAAO;IAH3B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,OAAO,CAAmB;gBAEd,OAAO,EAAE,YAAY;IASzC;;OAEG;IACH,OAAO,CAAC,WAAW;IAWnB;;OAEG;IACH,OAAO,CAAC,YAAY;IA8CpB;;OAEG;YACW,SAAS;IAoGvB;;OAEG;YACW,iBAAiB;IAoB/B;;OAEG;YACW,UAAU;IAyExB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA4B9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAUxB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAgD7B;;OAEG;IACG,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAGzC"}
1
+ {"version":3,"file":"AgentCLI.d.ts","sourceRoot":"","sources":["../../../src/agents/core/AgentCLI.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAW1C;;;GAGG;AACH,qBAAa,QAAQ;IAIP,OAAO,CAAC,OAAO;IAH3B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,OAAO,CAAmB;gBAEd,OAAO,EAAE,YAAY;IASzC;;OAEG;IACH,OAAO,CAAC,WAAW;IAWnB;;OAEG;IACH,OAAO,CAAC,YAAY;IA8CpB;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAQlC;;OAEG;YACW,SAAS;IAwGvB;;OAEG;YACW,iBAAiB;IA8B/B;;OAEG;YACW,UAAU;IAyExB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA4B9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAWxB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAgD7B;;OAEG;IACG,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAGzC"}