@calliopelabs/cli 0.4.6 → 0.6.0

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 (112) hide show
  1. package/README.md +258 -105
  2. package/dist/branching.d.ts +56 -0
  3. package/dist/branching.d.ts.map +1 -0
  4. package/dist/branching.js +211 -0
  5. package/dist/branching.js.map +1 -0
  6. package/dist/cli.d.ts.map +1 -1
  7. package/dist/cli.js +235 -2
  8. package/dist/cli.js.map +1 -1
  9. package/dist/completion.d.ts +75 -0
  10. package/dist/completion.d.ts.map +1 -0
  11. package/dist/completion.js +234 -0
  12. package/dist/completion.js.map +1 -0
  13. package/dist/config.d.ts +36 -0
  14. package/dist/config.d.ts.map +1 -1
  15. package/dist/config.js +90 -0
  16. package/dist/config.js.map +1 -1
  17. package/dist/diff.d.ts +73 -0
  18. package/dist/diff.d.ts.map +1 -0
  19. package/dist/diff.js +317 -0
  20. package/dist/diff.js.map +1 -0
  21. package/dist/errors.d.ts +41 -0
  22. package/dist/errors.d.ts.map +1 -0
  23. package/dist/errors.js +199 -0
  24. package/dist/errors.js.map +1 -0
  25. package/dist/file-watcher.d.ts +91 -0
  26. package/dist/file-watcher.d.ts.map +1 -0
  27. package/dist/file-watcher.js +269 -0
  28. package/dist/file-watcher.js.map +1 -0
  29. package/dist/files.d.ts +49 -0
  30. package/dist/files.d.ts.map +1 -0
  31. package/dist/files.js +191 -0
  32. package/dist/files.js.map +1 -0
  33. package/dist/fuzzy-search.d.ts +75 -0
  34. package/dist/fuzzy-search.d.ts.map +1 -0
  35. package/dist/fuzzy-search.js +240 -0
  36. package/dist/fuzzy-search.js.map +1 -0
  37. package/dist/hooks.d.ts +79 -0
  38. package/dist/hooks.d.ts.map +1 -0
  39. package/dist/hooks.js +271 -0
  40. package/dist/hooks.js.map +1 -0
  41. package/dist/keyboard.d.ts +57 -0
  42. package/dist/keyboard.d.ts.map +1 -0
  43. package/dist/keyboard.js +265 -0
  44. package/dist/keyboard.js.map +1 -0
  45. package/dist/markdown.d.ts +14 -0
  46. package/dist/markdown.d.ts.map +1 -0
  47. package/dist/markdown.js +248 -0
  48. package/dist/markdown.js.map +1 -0
  49. package/dist/mcp.d.ts +90 -0
  50. package/dist/mcp.d.ts.map +1 -0
  51. package/dist/mcp.js +290 -0
  52. package/dist/mcp.js.map +1 -0
  53. package/dist/memory.d.ts +104 -0
  54. package/dist/memory.d.ts.map +1 -0
  55. package/dist/memory.js +394 -0
  56. package/dist/memory.js.map +1 -0
  57. package/dist/model-router.d.ts +67 -0
  58. package/dist/model-router.d.ts.map +1 -0
  59. package/dist/model-router.js +289 -0
  60. package/dist/model-router.js.map +1 -0
  61. package/dist/parallel-tools.d.ts +51 -0
  62. package/dist/parallel-tools.d.ts.map +1 -0
  63. package/dist/parallel-tools.js +278 -0
  64. package/dist/parallel-tools.js.map +1 -0
  65. package/dist/project-config.d.ts +84 -0
  66. package/dist/project-config.d.ts.map +1 -0
  67. package/dist/project-config.js +250 -0
  68. package/dist/project-config.js.map +1 -0
  69. package/dist/providers.d.ts +10 -2
  70. package/dist/providers.d.ts.map +1 -1
  71. package/dist/providers.js +240 -38
  72. package/dist/providers.js.map +1 -1
  73. package/dist/risk.d.ts +31 -0
  74. package/dist/risk.d.ts.map +1 -0
  75. package/dist/risk.js +367 -0
  76. package/dist/risk.js.map +1 -0
  77. package/dist/sandbox.d.ts +49 -0
  78. package/dist/sandbox.d.ts.map +1 -0
  79. package/dist/sandbox.js +347 -0
  80. package/dist/sandbox.js.map +1 -0
  81. package/dist/skills.d.ts +71 -0
  82. package/dist/skills.d.ts.map +1 -0
  83. package/dist/skills.js +383 -0
  84. package/dist/skills.js.map +1 -0
  85. package/dist/storage.d.ts +139 -0
  86. package/dist/storage.d.ts.map +1 -0
  87. package/dist/storage.js +508 -0
  88. package/dist/storage.js.map +1 -0
  89. package/dist/streaming.d.ts +94 -0
  90. package/dist/streaming.d.ts.map +1 -0
  91. package/dist/streaming.js +305 -0
  92. package/dist/streaming.js.map +1 -0
  93. package/dist/summarization.d.ts +76 -0
  94. package/dist/summarization.d.ts.map +1 -0
  95. package/dist/summarization.js +242 -0
  96. package/dist/summarization.js.map +1 -0
  97. package/dist/themes.d.ts +110 -0
  98. package/dist/themes.d.ts.map +1 -0
  99. package/dist/themes.js +329 -0
  100. package/dist/themes.js.map +1 -0
  101. package/dist/tools.d.ts.map +1 -1
  102. package/dist/tools.js +335 -1
  103. package/dist/tools.js.map +1 -1
  104. package/dist/types.d.ts +56 -1
  105. package/dist/types.d.ts.map +1 -1
  106. package/dist/types.js +105 -0
  107. package/dist/types.js.map +1 -1
  108. package/dist/ui-cli.d.ts +9 -2
  109. package/dist/ui-cli.d.ts.map +1 -1
  110. package/dist/ui-cli.js +1315 -220
  111. package/dist/ui-cli.js.map +1 -1
  112. package/package.json +1 -1
package/dist/providers.js CHANGED
@@ -7,7 +7,66 @@ import Anthropic from '@anthropic-ai/sdk';
7
7
  import { GoogleGenerativeAI } from '@google/generative-ai';
8
8
  import OpenAI from 'openai';
9
9
  import * as config from './config.js';
10
+ import { withRetry } from './errors.js';
10
11
  import { DEFAULT_MODELS } from './types.js';
12
+ /**
13
+ * Extract text from MessageContent
14
+ */
15
+ function getTextContent(content) {
16
+ if (typeof content === 'string') {
17
+ return content;
18
+ }
19
+ return content
20
+ .filter(block => block.type === 'text')
21
+ .map(block => block.text)
22
+ .join('\n');
23
+ }
24
+ /**
25
+ * Convert MessageContent to Anthropic content format
26
+ */
27
+ function toAnthropicContent(content) {
28
+ if (typeof content === 'string') {
29
+ return content;
30
+ }
31
+ return content.map(block => {
32
+ if (block.type === 'text') {
33
+ return { type: 'text', text: block.text };
34
+ }
35
+ else if (block.type === 'image') {
36
+ return {
37
+ type: 'image',
38
+ source: {
39
+ type: 'base64',
40
+ media_type: block.mediaType,
41
+ data: block.data,
42
+ },
43
+ };
44
+ }
45
+ return { type: 'text', text: '' };
46
+ });
47
+ }
48
+ /**
49
+ * Convert MessageContent to OpenAI content format
50
+ */
51
+ function toOpenAIContent(content) {
52
+ if (typeof content === 'string') {
53
+ return content;
54
+ }
55
+ return content.map(block => {
56
+ if (block.type === 'text') {
57
+ return { type: 'text', text: block.text };
58
+ }
59
+ else if (block.type === 'image') {
60
+ return {
61
+ type: 'image_url',
62
+ image_url: {
63
+ url: `data:${block.mediaType};base64,${block.data}`,
64
+ },
65
+ };
66
+ }
67
+ return { type: 'text', text: '' };
68
+ });
69
+ }
11
70
  // Constants
12
71
  const MAX_TOKENS = 8192;
13
72
  // API base URLs for OpenAI-compatible providers
@@ -29,13 +88,13 @@ function toOpenAIMessages(messages) {
29
88
  return {
30
89
  role: 'tool',
31
90
  tool_call_id: m.toolCallId || '',
32
- content: m.content,
91
+ content: typeof m.content === 'string' ? m.content : JSON.stringify(m.content),
33
92
  };
34
93
  }
35
94
  if (m.toolCalls && m.toolCalls.length > 0) {
36
95
  return {
37
96
  role: 'assistant',
38
- content: m.content || null,
97
+ content: typeof m.content === 'string' ? m.content : (m.content ? JSON.stringify(m.content) : null),
39
98
  tool_calls: m.toolCalls.map(tc => ({
40
99
  id: tc.id,
41
100
  type: 'function',
@@ -46,9 +105,16 @@ function toOpenAIMessages(messages) {
46
105
  })),
47
106
  };
48
107
  }
108
+ // Handle multi-modal content for user messages
109
+ if (m.role === 'user' && Array.isArray(m.content)) {
110
+ return {
111
+ role: 'user',
112
+ content: toOpenAIContent(m.content),
113
+ };
114
+ }
49
115
  return {
50
116
  role: m.role,
51
- content: m.content,
117
+ content: typeof m.content === 'string' ? m.content : JSON.stringify(m.content),
52
118
  };
53
119
  });
54
120
  }
@@ -148,36 +214,44 @@ export function selectProvider(preferred) {
148
214
  throw new Error('No API keys configured. Run `calliope --setup` to configure.');
149
215
  }
150
216
  /**
151
- * Chat with the selected provider
217
+ * Chat with the selected provider (with automatic retry)
152
218
  */
153
- export async function chat(provider, messages, tools, model) {
219
+ export async function chat(provider, messages, tools, model, onToken, onRetry) {
154
220
  const actualProvider = selectProvider(provider);
155
221
  const actualModel = model || DEFAULT_MODELS[actualProvider];
156
- switch (actualProvider) {
157
- case 'anthropic':
158
- return chatAnthropic(messages, tools, actualModel);
159
- case 'google':
160
- return chatGoogle(messages, tools, actualModel);
161
- case 'openai':
162
- return chatOpenAI(messages, tools, actualModel);
163
- case 'openrouter':
164
- case 'together':
165
- case 'groq':
166
- case 'fireworks':
167
- case 'mistral':
168
- case 'ai21':
169
- case 'huggingface':
170
- case 'ollama':
171
- case 'litellm':
172
- return chatOpenAICompatible(actualProvider, messages, tools, actualModel);
173
- default:
174
- throw new Error(`Provider ${actualProvider} not implemented`);
175
- }
222
+ const doChat = async () => {
223
+ switch (actualProvider) {
224
+ case 'anthropic':
225
+ return chatAnthropic(messages, tools, actualModel, onToken);
226
+ case 'google':
227
+ return chatGoogle(messages, tools, actualModel);
228
+ case 'openai':
229
+ return chatOpenAI(messages, tools, actualModel, onToken);
230
+ case 'openrouter':
231
+ case 'together':
232
+ case 'groq':
233
+ case 'fireworks':
234
+ case 'mistral':
235
+ case 'ai21':
236
+ case 'huggingface':
237
+ case 'ollama':
238
+ case 'litellm':
239
+ return chatOpenAICompatible(actualProvider, messages, tools, actualModel, onToken);
240
+ default:
241
+ throw new Error(`Provider ${actualProvider} not implemented`);
242
+ }
243
+ };
244
+ // Wrap with retry logic
245
+ return withRetry(doChat, {
246
+ maxRetries: 2,
247
+ initialDelayMs: 1000,
248
+ onRetry: onRetry,
249
+ });
176
250
  }
177
251
  /**
178
252
  * Chat with Anthropic Claude
179
253
  */
180
- async function chatAnthropic(messages, tools, model) {
254
+ async function chatAnthropic(messages, tools, model, onToken) {
181
255
  const apiKey = config.getApiKey('anthropic');
182
256
  if (!apiKey)
183
257
  throw new Error('Anthropic API key not configured');
@@ -193,15 +267,17 @@ async function chatAnthropic(messages, tools, model) {
193
267
  content: [{
194
268
  type: 'tool_result',
195
269
  tool_use_id: m.toolCallId || '',
196
- content: m.content,
270
+ content: typeof m.content === 'string' ? m.content : JSON.stringify(m.content),
197
271
  }],
198
272
  };
199
273
  }
200
274
  if (m.toolCalls && m.toolCalls.length > 0) {
275
+ const textContent = typeof m.content === 'string' ? m.content :
276
+ (Array.isArray(m.content) ? m.content.filter(b => b.type === 'text').map(b => b.text).join('\n') : '');
201
277
  return {
202
278
  role: 'assistant',
203
279
  content: [
204
- ...(m.content ? [{ type: 'text', text: m.content }] : []),
280
+ ...(textContent ? [{ type: 'text', text: textContent }] : []),
205
281
  ...m.toolCalls.map(tc => ({
206
282
  type: 'tool_use',
207
283
  id: tc.id,
@@ -211,9 +287,16 @@ async function chatAnthropic(messages, tools, model) {
211
287
  ],
212
288
  };
213
289
  }
290
+ // Handle multi-modal content for user messages
291
+ if (m.role === 'user' && Array.isArray(m.content)) {
292
+ return {
293
+ role: 'user',
294
+ content: toAnthropicContent(m.content),
295
+ };
296
+ }
214
297
  return {
215
298
  role: m.role,
216
- content: m.content,
299
+ content: typeof m.content === 'string' ? m.content : JSON.stringify(m.content),
217
300
  };
218
301
  });
219
302
  // Convert tools to Anthropic format
@@ -222,10 +305,41 @@ async function chatAnthropic(messages, tools, model) {
222
305
  description: t.description,
223
306
  input_schema: t.parameters,
224
307
  }));
308
+ // Use streaming if callback provided and no tools (streaming tool use is complex)
309
+ if (onToken && anthropicTools.length === 0) {
310
+ let content = '';
311
+ let inputTokens = 0;
312
+ let outputTokens = 0;
313
+ const stream = await client.messages.stream({
314
+ model,
315
+ max_tokens: MAX_TOKENS,
316
+ system: systemMessage ? getTextContent(systemMessage.content) : '',
317
+ messages: anthropicMessages,
318
+ });
319
+ for await (const event of stream) {
320
+ if (event.type === 'content_block_delta' && event.delta.type === 'text_delta') {
321
+ const text = event.delta.text;
322
+ content += text;
323
+ onToken(text);
324
+ }
325
+ else if (event.type === 'message_delta' && event.usage) {
326
+ outputTokens = event.usage.output_tokens;
327
+ }
328
+ else if (event.type === 'message_start' && event.message.usage) {
329
+ inputTokens = event.message.usage.input_tokens;
330
+ }
331
+ }
332
+ return {
333
+ content,
334
+ finishReason: 'stop',
335
+ usage: { inputTokens, outputTokens },
336
+ };
337
+ }
338
+ // Non-streaming request
225
339
  const response = await client.messages.create({
226
340
  model,
227
341
  max_tokens: MAX_TOKENS,
228
- system: systemMessage?.content || '',
342
+ system: systemMessage ? getTextContent(systemMessage.content) : '',
229
343
  messages: anthropicMessages,
230
344
  tools: anthropicTools.length > 0 ? anthropicTools : undefined,
231
345
  });
@@ -244,10 +358,18 @@ async function chatAnthropic(messages, tools, model) {
244
358
  });
245
359
  }
246
360
  }
361
+ // Map Anthropic stop reasons to our finish reasons
362
+ let finishReason = 'stop';
363
+ if (response.stop_reason === 'tool_use') {
364
+ finishReason = 'tool_use';
365
+ }
366
+ else if (response.stop_reason === 'max_tokens') {
367
+ finishReason = 'length';
368
+ }
247
369
  return {
248
370
  content,
249
371
  toolCalls: toolCalls.length > 0 ? toolCalls : undefined,
250
- finishReason: response.stop_reason === 'tool_use' ? 'tool_use' : 'stop',
372
+ finishReason,
251
373
  usage: {
252
374
  inputTokens: response.usage.input_tokens,
253
375
  outputTokens: response.usage.output_tokens,
@@ -266,7 +388,7 @@ async function chatGoogle(messages, tools, model) {
266
388
  // Build history (exclude last message)
267
389
  const history = messages.slice(0, -1).filter(m => m.role !== 'system').map(m => ({
268
390
  role: m.role === 'assistant' ? 'model' : 'user',
269
- parts: [{ text: m.content }],
391
+ parts: [{ text: getTextContent(m.content) }],
270
392
  }));
271
393
  if (messages.length === 0) {
272
394
  throw new Error('No messages provided');
@@ -275,9 +397,29 @@ async function chatGoogle(messages, tools, model) {
275
397
  const systemMessage = messages.find(m => m.role === 'system');
276
398
  const chat = genModel.startChat({
277
399
  history,
278
- systemInstruction: systemMessage?.content,
400
+ systemInstruction: systemMessage ? getTextContent(systemMessage.content) : undefined,
279
401
  });
280
- const result = await chat.sendMessage(lastMessage.content);
402
+ // Convert last message to Gemini format (with image support)
403
+ const lastMessageParts = [];
404
+ if (typeof lastMessage.content === 'string') {
405
+ lastMessageParts.push({ text: lastMessage.content });
406
+ }
407
+ else {
408
+ for (const block of lastMessage.content) {
409
+ if (block.type === 'text') {
410
+ lastMessageParts.push({ text: block.text });
411
+ }
412
+ else if (block.type === 'image') {
413
+ lastMessageParts.push({
414
+ inlineData: {
415
+ mimeType: block.mediaType,
416
+ data: block.data,
417
+ },
418
+ });
419
+ }
420
+ }
421
+ }
422
+ const result = await chat.sendMessage(lastMessageParts);
281
423
  const response = result.response;
282
424
  const text = response.text();
283
425
  // Check for function calls
@@ -303,13 +445,35 @@ async function chatGoogle(messages, tools, model) {
303
445
  /**
304
446
  * Chat with OpenAI
305
447
  */
306
- async function chatOpenAI(messages, tools, model) {
448
+ async function chatOpenAI(messages, tools, model, onToken) {
307
449
  const apiKey = config.getApiKey('openai');
308
450
  if (!apiKey)
309
451
  throw new Error('OpenAI API key not configured');
310
452
  const client = new OpenAI({ apiKey });
311
453
  const openaiMessages = toOpenAIMessages(messages);
312
454
  const openaiTools = toOpenAITools(tools);
455
+ // Use streaming if callback provided and no tools
456
+ if (onToken && openaiTools.length === 0) {
457
+ let content = '';
458
+ const stream = await client.chat.completions.create({
459
+ model,
460
+ messages: openaiMessages,
461
+ max_tokens: MAX_TOKENS,
462
+ stream: true,
463
+ });
464
+ for await (const chunk of stream) {
465
+ const delta = chunk.choices[0]?.delta?.content;
466
+ if (delta) {
467
+ content += delta;
468
+ onToken(delta);
469
+ }
470
+ }
471
+ return {
472
+ content,
473
+ finishReason: 'stop',
474
+ };
475
+ }
476
+ // Non-streaming request
313
477
  const response = await client.chat.completions.create({
314
478
  model,
315
479
  messages: openaiMessages,
@@ -322,10 +486,18 @@ async function chatOpenAI(messages, tools, model) {
322
486
  const choice = response.choices[0];
323
487
  const message = choice.message;
324
488
  const toolCalls = parseOpenAIToolCalls(message.tool_calls);
489
+ // Map OpenAI finish reasons
490
+ let finishReason = 'stop';
491
+ if (choice.finish_reason === 'tool_calls') {
492
+ finishReason = 'tool_use';
493
+ }
494
+ else if (choice.finish_reason === 'length') {
495
+ finishReason = 'length';
496
+ }
325
497
  return {
326
498
  content: message.content || '',
327
499
  toolCalls: toolCalls.length > 0 ? toolCalls : undefined,
328
- finishReason: choice.finish_reason === 'tool_calls' ? 'tool_use' : 'stop',
500
+ finishReason,
329
501
  usage: response.usage ? {
330
502
  inputTokens: response.usage.prompt_tokens,
331
503
  outputTokens: response.usage.completion_tokens,
@@ -335,7 +507,7 @@ async function chatOpenAI(messages, tools, model) {
335
507
  /**
336
508
  * Chat with OpenAI-compatible APIs (OpenRouter, Together, Groq, Mistral, etc.)
337
509
  */
338
- async function chatOpenAICompatible(provider, messages, tools, model) {
510
+ async function chatOpenAICompatible(provider, messages, tools, model, onToken) {
339
511
  // Ollama and LiteLLM use base URL, others use API key
340
512
  let apiKey;
341
513
  let baseURL;
@@ -358,6 +530,28 @@ async function chatOpenAICompatible(provider, messages, tools, model) {
358
530
  const client = new OpenAI({ apiKey, baseURL });
359
531
  const openaiMessages = toOpenAIMessages(messages);
360
532
  const openaiTools = toOpenAITools(tools);
533
+ // Use streaming if callback provided and no tools
534
+ if (onToken && openaiTools.length === 0) {
535
+ let content = '';
536
+ const stream = await client.chat.completions.create({
537
+ model,
538
+ messages: openaiMessages,
539
+ max_tokens: MAX_TOKENS,
540
+ stream: true,
541
+ });
542
+ for await (const chunk of stream) {
543
+ const delta = chunk.choices[0]?.delta?.content;
544
+ if (delta) {
545
+ content += delta;
546
+ onToken(delta);
547
+ }
548
+ }
549
+ return {
550
+ content,
551
+ finishReason: 'stop',
552
+ };
553
+ }
554
+ // Non-streaming request
361
555
  const response = await client.chat.completions.create({
362
556
  model,
363
557
  messages: openaiMessages,
@@ -370,10 +564,18 @@ async function chatOpenAICompatible(provider, messages, tools, model) {
370
564
  const choice = response.choices[0];
371
565
  const message = choice.message;
372
566
  const toolCalls = parseOpenAIToolCalls(message.tool_calls);
567
+ // Map finish reasons
568
+ let finishReason = 'stop';
569
+ if (choice.finish_reason === 'tool_calls') {
570
+ finishReason = 'tool_use';
571
+ }
572
+ else if (choice.finish_reason === 'length') {
573
+ finishReason = 'length';
574
+ }
373
575
  return {
374
576
  content: message.content || '',
375
577
  toolCalls: toolCalls.length > 0 ? toolCalls : undefined,
376
- finishReason: choice.finish_reason === 'tool_calls' ? 'tool_use' : 'stop',
578
+ finishReason,
377
579
  usage: response.usage ? {
378
580
  inputTokens: response.usage.prompt_tokens,
379
581
  outputTokens: response.usage.completion_tokens,
@@ -1 +1 @@
1
- {"version":3,"file":"providers.js","sourceRoot":"","sources":["../src/providers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"providers.js","sourceRoot":"","sources":["../src/providers.ts"],"names":[],"mappings":"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"}
package/dist/risk.d.ts ADDED
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Calliope CLI - Risk Assessment
3
+ *
4
+ * Evaluates the risk level of tool operations and shell commands.
5
+ */
6
+ import type { RiskLevel, RiskAssessment, ToolCall } from './types.js';
7
+ /**
8
+ * Assess risk level for a shell command
9
+ */
10
+ export declare function assessShellRisk(command: string): RiskAssessment;
11
+ /**
12
+ * Assess risk level for a tool call
13
+ */
14
+ export declare function assessToolRisk(toolCall: ToolCall): RiskAssessment;
15
+ /**
16
+ * Format risk level as a visual bar
17
+ */
18
+ export declare function formatRiskBar(level: RiskLevel): string;
19
+ /**
20
+ * Check if an operation requires confirmation regardless of mode
21
+ */
22
+ export declare function requiresConfirmation(risk: RiskAssessment, godMode: boolean): boolean;
23
+ /**
24
+ * Detect if a user prompt suggests a complex operation
25
+ * that should trigger planning in hybrid mode
26
+ */
27
+ export declare function detectComplexity(prompt: string): {
28
+ isComplex: boolean;
29
+ reason?: string;
30
+ };
31
+ //# sourceMappingURL=risk.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"risk.d.ts","sourceRoot":"","sources":["../src/risk.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AA6ItE;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,CAoE/D;AAaD;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,GAAG,cAAc,CAgDjE;AAsBD;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAStD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAapF;AAsCD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG;IAChD,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAwBA"}