sub-agents-mcp 0.10.0 → 0.11.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.
@@ -1,7 +1,13 @@
1
1
  import { spawn } from 'node:child_process';
2
+ import fs from 'node:fs';
3
+ import os from 'node:os';
4
+ import path from 'node:path';
5
+ import { StringDecoder } from 'node:string_decoder';
2
6
  import { Logger } from '../utils/Logger.js';
3
7
  import { StreamProcessor } from './StreamProcessor.js';
4
8
  export const DEFAULT_EXECUTION_TIMEOUT = 300000; // 5 minutes
9
+ const MAX_CAPTURED_OUTPUT_BYTES = 16 * 1024 * 1024;
10
+ const TERMINATION_GRACE_MS = 1000;
5
11
  const GLM_BASE_URL = 'https://api.z.ai/api/anthropic';
6
12
  const GLM_MISSING_API_KEY_ERROR = 'GLM backend needs a Z.ai API token in the CLI_API_KEY environment variable. ' +
7
13
  'Add CLI_API_KEY to this MCP server environment in your MCP client configuration, ' +
@@ -11,10 +17,22 @@ const GLM_MISSING_API_KEY_ERROR = 'GLM backend needs a Z.ai API token in the CLI
11
17
  * Supported agent runtimes. Single source of truth for both runtime validation
12
18
  * (ServerConfig) and static typing.
13
19
  */
14
- export const AGENT_TYPES = ['cursor', 'claude', 'gemini', 'codex', 'glm', 'grok'];
20
+ export const AGENT_TYPES = [
21
+ 'cursor',
22
+ 'claude',
23
+ 'gemini',
24
+ 'codex',
25
+ 'glm',
26
+ 'grok',
27
+ 'opencode',
28
+ ];
15
29
  export function isAgentType(value) {
16
30
  return typeof value === 'string' && AGENT_TYPES.includes(value);
17
31
  }
32
+ export const AGENT_EFFORT_SUPPORTED_TYPES = ['codex', 'claude', 'glm', 'grok', 'opencode'];
33
+ export function supportsAgentEffort(agentType) {
34
+ return AGENT_EFFORT_SUPPORTED_TYPES.includes(agentType);
35
+ }
18
36
  /**
19
37
  * Supported permission levels. Single source of truth for both runtime
20
38
  * validation (ServerConfig) and static typing.
@@ -65,11 +83,36 @@ const PERMISSION_FLAGS = {
65
83
  'safe-edit': ['--trust'],
66
84
  yolo: ['-f', '--trust'],
67
85
  },
86
+ // Grok's --permission-mode enforces only bypassPermissions via the flag, so
87
+ // the level is enforced by the kernel --sandbox profile (always explicit).
68
88
  grok: {
69
- 'read-only': ['--permission-mode', 'dontAsk'],
70
- 'safe-edit': ['--permission-mode', 'auto'],
71
- yolo: ['--permission-mode', 'bypassPermissions'],
89
+ 'read-only': ['--permission-mode', 'bypassPermissions', '--sandbox', 'read-only'],
90
+ 'safe-edit': ['--permission-mode', 'bypassPermissions', '--sandbox', 'workspace'],
91
+ yolo: ['--permission-mode', 'bypassPermissions', '--sandbox', 'off'],
92
+ },
93
+ // OpenCode permissions are supplied through OPENCODE_PERMISSION.
94
+ opencode: {
95
+ 'read-only': [],
96
+ 'safe-edit': [],
97
+ yolo: [],
98
+ },
99
+ };
100
+ const OPENCODE_PERMISSION_MAPPING = {
101
+ 'read-only': {
102
+ edit: 'deny',
103
+ bash: 'deny',
104
+ task: 'deny',
105
+ external_directory: 'deny',
106
+ question: 'deny',
107
+ },
108
+ 'safe-edit': {
109
+ edit: 'allow',
110
+ bash: 'allow',
111
+ task: 'deny',
112
+ external_directory: 'deny',
113
+ question: 'deny',
72
114
  },
115
+ yolo: 'allow',
73
116
  };
74
117
  /**
75
118
  * Creates a complete ExecutionConfig with the provided agent type.
@@ -82,6 +125,7 @@ export function createExecutionConfig(agentType, overrides) {
82
125
  // that bypasses TS) does not silently disable approval handling.
83
126
  return {
84
127
  executionTimeout: DEFAULT_EXECUTION_TIMEOUT,
128
+ maxOutputBytes: MAX_CAPTURED_OUTPUT_BYTES,
85
129
  ...overrides,
86
130
  permission: overrides?.permission ?? DEFAULT_AGENT_PERMISSION,
87
131
  agentType,
@@ -217,6 +261,8 @@ export class AgentExecutor {
217
261
  return this.buildCursorArgs(params, envOverrides);
218
262
  case 'grok':
219
263
  return this.buildGrokArgs(params, envOverrides);
264
+ case 'opencode':
265
+ return this.buildOpenCodeArgs(params, envOverrides);
220
266
  }
221
267
  }
222
268
  /**
@@ -240,6 +286,7 @@ export class AgentExecutor {
240
286
  // claude: handled via --settings argv below
241
287
  // glm: uses the claude binary, but intentionally avoids Claude settings.
242
288
  // grok: not supported (upstream limitation)
289
+ // opencode: uses its normal XDG/project configuration discovery.
243
290
  // gemini: not supported (upstream limitation)
244
291
  }
245
292
  return env;
@@ -247,26 +294,55 @@ export class AgentExecutor {
247
294
  permissionFlags() {
248
295
  return PERMISSION_FLAGS[this.config.agentType][this.config.permission];
249
296
  }
297
+ invocationFlags() {
298
+ const flags = [...this.permissionFlags()];
299
+ if (this.config.model) {
300
+ flags.push('--model', this.config.model);
301
+ }
302
+ if (!this.config.effort) {
303
+ return flags;
304
+ }
305
+ switch (this.config.agentType) {
306
+ case 'codex':
307
+ flags.push('-c', `model_reasoning_effort=${JSON.stringify(this.config.effort)}`);
308
+ break;
309
+ case 'claude':
310
+ case 'glm':
311
+ flags.push('--effort', this.config.effort);
312
+ break;
313
+ case 'grok':
314
+ flags.push('--reasoning-effort', this.config.effort);
315
+ break;
316
+ case 'opencode':
317
+ flags.push('--variant', this.config.effort);
318
+ break;
319
+ case 'cursor':
320
+ case 'gemini':
321
+ throw new Error(`AGENT_EFFORT is not supported for AGENT_TYPE=${this.config.agentType}. ` +
322
+ `Supported types: ${AGENT_EFFORT_SUPPORTED_TYPES.join(', ')}.`);
323
+ }
324
+ return flags;
325
+ }
250
326
  formatSystemUserPrompt(params) {
251
327
  return `[System Context]\n${params.agent}\n\n[User Prompt]\n${params.prompt}`;
252
328
  }
253
329
  buildCodexArgs(params, envOverrides) {
254
- const perm = this.permissionFlags();
330
+ const flags = this.invocationFlags();
255
331
  // System context is concatenated into the user prompt rather than injected
256
332
  // via `-c model_instructions_file=...`: that flag fully replaces codex's
257
333
  // default system prompt, which removed the built-in tool-use guidance and
258
334
  // measurably increased exploration overhead and token usage in our tests.
259
335
  // Concatenation keeps codex's defaults intact and matches the cursor path.
260
336
  const formattedPrompt = this.formatSystemUserPrompt(params);
261
- const args = [...perm, 'exec', '--json', '--skip-git-repo-check', formattedPrompt];
337
+ const args = [...flags, 'exec', '--json', '--skip-git-repo-check', formattedPrompt];
262
338
  return { command: 'codex', args, envOverrides };
263
339
  }
264
340
  buildClaudeArgs(params, envOverrides) {
265
- const perm = this.permissionFlags();
341
+ const flags = this.invocationFlags();
266
342
  const cwd = params.cwd || process.cwd();
267
343
  const systemPrompt = `cwd: ${cwd}\n\n${params.agent}`;
268
344
  const args = [
269
- ...perm,
345
+ ...flags,
270
346
  '--output-format',
271
347
  'stream-json',
272
348
  '--verbose',
@@ -285,11 +361,11 @@ export class AgentExecutor {
285
361
  if (!apiKey?.trim()) {
286
362
  throw new Error(GLM_MISSING_API_KEY_ERROR);
287
363
  }
288
- const perm = this.permissionFlags();
364
+ const flags = this.invocationFlags();
289
365
  const cwd = params.cwd || process.cwd();
290
366
  const systemPrompt = `cwd: ${cwd}\n\n${params.agent}`;
291
367
  const args = [
292
- ...perm,
368
+ ...flags,
293
369
  '--output-format',
294
370
  'stream-json',
295
371
  '--verbose',
@@ -310,12 +386,12 @@ export class AgentExecutor {
310
386
  };
311
387
  }
312
388
  buildGeminiArgs(params, envOverrides) {
313
- const perm = this.permissionFlags();
389
+ const flags = this.invocationFlags();
314
390
  // --skip-trust is unconditional: headless runs in untrusted folders are
315
391
  // refused without it (Gemini downgrades to interactive prompts which
316
392
  // deadlock here since we have no stdin).
317
393
  if (params.agentFilePath) {
318
- const args = [...perm, '--skip-trust', '--output-format', 'stream-json', '-p', params.prompt];
394
+ const args = [...flags, '--skip-trust', '--output-format', 'stream-json', '-p', params.prompt];
319
395
  return {
320
396
  command: 'gemini',
321
397
  args,
@@ -323,13 +399,13 @@ export class AgentExecutor {
323
399
  };
324
400
  }
325
401
  const formattedPrompt = this.formatSystemUserPrompt(params);
326
- const args = [...perm, '--skip-trust', '--output-format', 'stream-json', '-p', formattedPrompt];
402
+ const args = [...flags, '--skip-trust', '--output-format', 'stream-json', '-p', formattedPrompt];
327
403
  return { command: 'gemini', args, envOverrides };
328
404
  }
329
405
  buildCursorArgs(params, envOverrides) {
330
- const perm = this.permissionFlags();
406
+ const flags = this.invocationFlags();
331
407
  const formattedPrompt = this.formatSystemUserPrompt(params);
332
- const args = [...perm, '--output-format', 'json', '-p', formattedPrompt];
408
+ const args = [...flags, '--output-format', 'json', '-p', formattedPrompt];
333
409
  const env = { ...envOverrides };
334
410
  if (this.config.cursorApiKey) {
335
411
  env['CURSOR_API_KEY'] = this.config.cursorApiKey;
@@ -337,22 +413,35 @@ export class AgentExecutor {
337
413
  return { command: 'cursor-agent', args, envOverrides: env };
338
414
  }
339
415
  buildGrokArgs(params, envOverrides) {
340
- const perm = this.permissionFlags();
416
+ const flags = this.invocationFlags();
341
417
  const cwd = params.cwd || process.cwd();
342
418
  const formattedPrompt = this.formatSystemUserPrompt(params);
419
+ // Approval mode + sandbox live in PERMISSION_FLAGS.grok (via perm).
343
420
  const args = [
344
- ...perm,
421
+ ...flags,
345
422
  '--cwd',
346
423
  cwd,
347
424
  '--output-format',
348
425
  'json',
349
- '--always-approve',
350
426
  '--verbatim',
351
427
  '-p',
352
428
  formattedPrompt,
353
429
  ];
354
430
  return { command: 'grok', args, envOverrides };
355
431
  }
432
+ buildOpenCodeArgs(params, envOverrides) {
433
+ const flags = this.invocationFlags();
434
+ const formattedPrompt = this.formatSystemUserPrompt(params);
435
+ const args = [...flags, 'run', '--format', 'json', '--auto', formattedPrompt];
436
+ return {
437
+ command: 'opencode',
438
+ args,
439
+ envOverrides: {
440
+ ...envOverrides,
441
+ OPENCODE_PERMISSION: JSON.stringify(OPENCODE_PERMISSION_MAPPING[this.config.permission]),
442
+ },
443
+ };
444
+ }
356
445
  buildSpawnEnv(envOverrides) {
357
446
  const spawnEnv = { ...process.env };
358
447
  for (const [key, value] of Object.entries(envOverrides)) {
@@ -365,6 +454,53 @@ export class AgentExecutor {
365
454
  }
366
455
  return spawnEnv;
367
456
  }
457
+ async prepareSpawnEnvironment(envOverrides) {
458
+ if (this.config.agentType !== 'opencode') {
459
+ return { env: this.buildSpawnEnv(envOverrides), cleanup: async () => { } };
460
+ }
461
+ const tempDir = await fs.promises.mkdtemp(path.join(os.tmpdir(), 'subagent-opencode-'));
462
+ const dataHome = path.join(tempDir, 'data');
463
+ const stateHome = path.join(tempDir, 'state');
464
+ const isolatedOpenCodeDir = path.join(dataHome, 'opencode');
465
+ try {
466
+ await fs.promises.mkdir(isolatedOpenCodeDir, { recursive: true });
467
+ await fs.promises.mkdir(stateHome, { recursive: true });
468
+ const defaultDataHome = process.env['XDG_DATA_HOME'] || path.join(os.homedir(), '.local', 'share');
469
+ const authSource = path.join(defaultDataHome, 'opencode', 'auth.json');
470
+ const authDestination = path.join(isolatedOpenCodeDir, 'auth.json');
471
+ try {
472
+ await fs.promises.copyFile(authSource, authDestination);
473
+ }
474
+ catch (error) {
475
+ const code = this.errorCode(error);
476
+ if (code !== 'ENOENT') {
477
+ this.logger.warn('Could not copy OpenCode authentication into isolated data home', {
478
+ error: error instanceof Error ? error.message : String(error),
479
+ });
480
+ }
481
+ }
482
+ return {
483
+ env: this.buildSpawnEnv({
484
+ ...envOverrides,
485
+ XDG_DATA_HOME: dataHome,
486
+ XDG_STATE_HOME: stateHome,
487
+ }),
488
+ cleanup: async () => {
489
+ await fs.promises.rm(tempDir, { recursive: true, force: true });
490
+ },
491
+ };
492
+ }
493
+ catch (error) {
494
+ await fs.promises.rm(tempDir, { recursive: true, force: true }).catch(() => { });
495
+ throw error;
496
+ }
497
+ }
498
+ errorCode(error) {
499
+ if (typeof error !== 'object' || error === null || !('code' in error)) {
500
+ return undefined;
501
+ }
502
+ return typeof error.code === 'string' ? error.code : undefined;
503
+ }
368
504
  /**
369
505
  * Executes an agent using child_process.spawn for proper TTY handling.
370
506
  *
@@ -373,101 +509,173 @@ export class AgentExecutor {
373
509
  * @returns Promise resolving to execution result
374
510
  */
375
511
  async executeWithSpawn(params) {
512
+ const { command, args, envOverrides } = this.buildCommandArgs(params);
513
+ const preparedEnvironment = await this.prepareSpawnEnvironment(envOverrides);
376
514
  return new Promise((resolve) => {
377
- // Build command, args, and env based on agent type with system prompt separation
378
- const { command, args, envOverrides } = this.buildCommandArgs(params);
379
- // Build environment variables for spawn
380
- const spawnEnv = this.buildSpawnEnv(envOverrides);
381
515
  this.logger.debug('Executing with spawn', {
382
516
  command,
383
517
  cwd: params.cwd || process.cwd(),
384
518
  });
385
- // Spawn process
386
- const childProcess = spawn(command, args, {
387
- cwd: params.cwd || process.cwd(),
388
- stdio: ['ignore', 'pipe', 'pipe'], // stdin set to 'ignore' as cursor-agent receives prompt via args
389
- shell: false,
390
- env: spawnEnv,
391
- });
392
- // Initialize stream processor and buffers
519
+ let childProcess;
520
+ try {
521
+ childProcess = spawn(command, args, {
522
+ cwd: params.cwd || process.cwd(),
523
+ stdio: ['ignore', 'pipe', 'pipe'],
524
+ shell: false,
525
+ env: preparedEnvironment.env,
526
+ });
527
+ }
528
+ catch (error) {
529
+ void preparedEnvironment.cleanup().finally(() => {
530
+ resolve({
531
+ stdout: '',
532
+ stderr: error instanceof Error ? error.message : String(error),
533
+ exitCode: this.errorCode(error) === 'ENOENT' ? 127 : 1,
534
+ hasResult: false,
535
+ });
536
+ });
537
+ return;
538
+ }
393
539
  const streamProcessor = new StreamProcessor();
394
540
  let stdout = '';
395
541
  let stderr = '';
396
542
  let stdoutBuffer = '';
397
- // No need to handle stdin as it's set to 'ignore'
543
+ const stdoutDecoder = new StringDecoder('utf8');
544
+ const stderrDecoder = new StringDecoder('utf8');
545
+ let stdoutTruncated = false;
546
+ let stderrTruncated = false;
547
+ let capturedBytes = 0;
548
+ let timedOut = false;
549
+ let outputExceeded = false;
550
+ let processError;
551
+ let settled = false;
552
+ let forceKillTimer;
398
553
  const executionTimeout = setTimeout(() => {
554
+ timedOut = true;
399
555
  this.logger.warn('Execution timeout reached', {
400
556
  timeout: this.config.executionTimeout,
401
557
  });
402
- childProcess.kill('SIGTERM');
403
- // Get any result collected so far
404
- const result = streamProcessor.getResult();
558
+ requestTermination();
559
+ }, this.config.executionTimeout);
560
+ const clearTimers = () => {
561
+ clearTimeout(executionTimeout);
562
+ if (forceKillTimer)
563
+ clearTimeout(forceKillTimer);
564
+ };
565
+ const finish = async (code, signal) => {
566
+ if (settled)
567
+ return;
568
+ settled = true;
569
+ clearTimers();
570
+ if (!stdoutTruncated) {
571
+ const tail = stdoutDecoder.end();
572
+ stdout += tail;
573
+ stdoutBuffer += tail;
574
+ }
575
+ if (!stderrTruncated) {
576
+ stderr += stderrDecoder.end();
577
+ }
578
+ if (stdoutBuffer.trim()) {
579
+ streamProcessor.processLine(stdoutBuffer);
580
+ stdoutBuffer = '';
581
+ }
582
+ let result = streamProcessor.getResult();
583
+ if (result === null) {
584
+ streamProcessor.processCompleteOutput(stdout);
585
+ result = streamProcessor.getResult();
586
+ }
587
+ let exitCode = code ?? (signal ? 128 + this.signalNumber(signal) : 1);
588
+ if (timedOut)
589
+ exitCode = 124;
590
+ if (outputExceeded || processError)
591
+ exitCode = this.errorCode(processError) === 'ENOENT' ? 127 : 1;
592
+ const errors = [];
593
+ if (stderr)
594
+ errors.push(stderr);
595
+ if (timedOut)
596
+ errors.push(`Execution timeout: ${this.config.executionTimeout}ms`);
597
+ if (outputExceeded) {
598
+ errors.push(`Sub-agent output exceeded ${this.config.maxOutputBytes} bytes`);
599
+ }
600
+ if (processError && !stderr)
601
+ errors.push(processError.message);
602
+ try {
603
+ await preparedEnvironment.cleanup();
604
+ }
605
+ catch (error) {
606
+ this.logger.warn('Failed to clean up per-run environment', {
607
+ error: error instanceof Error ? error.message : String(error),
608
+ });
609
+ }
405
610
  resolve({
406
611
  stdout: result ? JSON.stringify(result) : stdout,
407
- stderr: stderr || `Execution timeout: ${this.config.executionTimeout}ms`,
408
- exitCode: 124, // Standard timeout exit code
612
+ stderr: errors.join('\n'),
613
+ exitCode,
409
614
  hasResult: result !== null,
410
615
  resultJson: result !== null ? result : undefined,
411
616
  });
412
- }, this.config.executionTimeout);
413
- // Handle stdout stream with simplified processing
617
+ };
618
+ const requestTermination = () => {
619
+ childProcess.kill('SIGTERM');
620
+ if (forceKillTimer)
621
+ return;
622
+ forceKillTimer = setTimeout(() => {
623
+ childProcess.kill('SIGKILL');
624
+ }, TERMINATION_GRACE_MS);
625
+ };
626
+ const captureChunk = (data, decoder, markTruncated) => {
627
+ const remaining = this.config.maxOutputBytes - capturedBytes;
628
+ if (remaining <= 0) {
629
+ outputExceeded = true;
630
+ markTruncated();
631
+ requestTermination();
632
+ return '';
633
+ }
634
+ const captured = data.length <= remaining ? data : data.subarray(0, remaining);
635
+ capturedBytes += captured.length;
636
+ if (captured.length < data.length) {
637
+ outputExceeded = true;
638
+ markTruncated();
639
+ requestTermination();
640
+ }
641
+ return decoder.write(captured);
642
+ };
414
643
  childProcess.stdout?.on('data', (data) => {
415
- const chunk = data.toString();
644
+ const chunk = captureChunk(data, stdoutDecoder, () => {
645
+ stdoutTruncated = true;
646
+ });
416
647
  stdout += chunk;
417
648
  stdoutBuffer += chunk;
418
- // Process complete lines
419
649
  const lines = stdoutBuffer.split('\n');
420
- stdoutBuffer = lines.pop() || ''; // Keep incomplete line in buffer
650
+ stdoutBuffer = lines.pop() || '';
421
651
  for (const line of lines) {
422
- // Process line returns true when final JSON is detected
423
- const isComplete = streamProcessor.processLine(line);
424
- if (isComplete) {
425
- // Ensure stdout contains the complete JSON result
426
- const completeResult = streamProcessor.getResult();
427
- if (completeResult) {
428
- stdout = JSON.stringify(completeResult);
429
- }
430
- // Processing complete, kill the process
431
- childProcess.kill('SIGTERM');
652
+ if (streamProcessor.processLine(line)) {
653
+ requestTermination();
432
654
  break;
433
655
  }
434
656
  }
435
657
  });
436
- // Handle stderr stream
437
658
  childProcess.stderr?.on('data', (data) => {
438
- stderr += data.toString();
439
- });
440
- childProcess.on('close', (code) => {
441
- clearTimeout(executionTimeout);
442
- // Get the final result JSON
443
- let result = streamProcessor.getResult();
444
- if (result === null) {
445
- streamProcessor.processCompleteOutput(stdout);
446
- result = streamProcessor.getResult();
447
- }
448
- resolve({
449
- stdout: result ? JSON.stringify(result) : stdout,
450
- stderr,
451
- exitCode: code || 0,
452
- hasResult: result !== null,
453
- resultJson: result !== null ? result : undefined,
659
+ stderr += captureChunk(data, stderrDecoder, () => {
660
+ stderrTruncated = true;
454
661
  });
455
662
  });
456
- // Handle process errors
663
+ childProcess.on('close', (code, signal) => {
664
+ void finish(code, signal);
665
+ });
457
666
  childProcess.on('error', (error) => {
458
- clearTimeout(executionTimeout);
459
- // Get any result collected before error
460
- const result = streamProcessor.getResult();
461
- resolve({
462
- stdout: result ? JSON.stringify(result) : stdout,
463
- stderr: stderr || error.message,
464
- exitCode: 1,
465
- hasResult: result !== null,
466
- resultJson: result !== null ? result : undefined,
467
- });
667
+ processError = error;
668
+ void finish(null);
468
669
  });
469
670
  });
470
671
  }
672
+ signalNumber(signal) {
673
+ if (signal === 'SIGTERM')
674
+ return 15;
675
+ if (signal === 'SIGKILL')
676
+ return 9;
677
+ return 1;
678
+ }
471
679
  /**
472
680
  * Generates a unique request ID for tracking execution requests.
473
681
  *
@@ -1 +1 @@
1
- {"version":3,"file":"AgentExecutor.js","sourceRoot":"","sources":["../../src/execution/AgentExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentExecutor.js","sourceRoot":"","sources":["../../src/execution/AgentExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC7D,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAEnD,OAAO,EAAE,MAAM,EAAiB,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAsGtD,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAAA,CAAC,YAAY;AAC5D,MAAM,yBAAyB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAA;AAElD,MAAM,oBAAoB,GAAG,IAAI,CAAA;AAIjC,MAAM,YAAY,GAAG,gCAAgC,CAAA;AAErD,MAAM,yBAAyB,GAC7B,8EAA8E;IAC9E,mFAAmF;IACnF,+EAA+E;IAC/E,qFAAqF,CAAA;AAEvF;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,KAAK;IACL,MAAM;IACN,UAAU;CACF,CAAA;AAIV,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAK,WAAiC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AACxF,CAAC;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAU,CAAA;AAEnG,MAAM,UAAU,mBAAmB,CACjC,SAAoB;IAEpB,OAAQ,4BAAqD,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;AACnF,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,MAAM,CAAU,CAAA;AAI5E,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAK,iBAAuC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAC9F,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAoB,WAAW,CAAA;AAEpE;;;;;;;;;;GAUG;AACH,MAAM,gBAAgB,GAAkE;IACtF,KAAK,EAAE;QACL,WAAW,EAAE,CAAC,IAAI,EAAE,WAAW,CAAC;QAChC,WAAW,EAAE,CAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,uBAAuB,CAAC;QACrE,IAAI,EAAE,CAAC,4CAA4C,CAAC;KACrD;IACD,MAAM,EAAE;QACN,WAAW,EAAE,CAAC,mBAAmB,EAAE,MAAM,CAAC;QAC1C,WAAW,EAAE,CAAC,mBAAmB,EAAE,aAAa,CAAC;QACjD,IAAI,EAAE,CAAC,gCAAgC,CAAC;KACzC;IACD,GAAG,EAAE;QACH,WAAW,EAAE,CAAC,mBAAmB,EAAE,MAAM,CAAC;QAC1C,WAAW,EAAE,CAAC,mBAAmB,EAAE,aAAa,CAAC;QACjD,IAAI,EAAE,CAAC,gCAAgC,CAAC;KACzC;IACD,MAAM,EAAE;QACN,WAAW,EAAE,CAAC,iBAAiB,EAAE,MAAM,CAAC;QACxC,WAAW,EAAE,CAAC,iBAAiB,EAAE,WAAW,CAAC;QAC7C,IAAI,EAAE,CAAC,IAAI,CAAC;KACb;IACD,MAAM,EAAE;QACN,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC/B,WAAW,EAAE,CAAC,SAAS,CAAC;QACxB,IAAI,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC;KACxB;IACD,4EAA4E;IAC5E,2EAA2E;IAC3E,IAAI,EAAE;QACJ,WAAW,EAAE,CAAC,mBAAmB,EAAE,mBAAmB,EAAE,WAAW,EAAE,WAAW,CAAC;QACjF,WAAW,EAAE,CAAC,mBAAmB,EAAE,mBAAmB,EAAE,WAAW,EAAE,WAAW,CAAC;QACjF,IAAI,EAAE,CAAC,mBAAmB,EAAE,mBAAmB,EAAE,WAAW,EAAE,KAAK,CAAC;KACrE;IACD,iEAAiE;IACjE,QAAQ,EAAE;QACR,WAAW,EAAE,EAAE;QACf,WAAW,EAAE,EAAE;QACf,IAAI,EAAE,EAAE;KACT;CACF,CAAA;AAED,MAAM,2BAA2B,GAA8C;IAC7E,WAAW,EAAE;QACX,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,MAAM;QACZ,kBAAkB,EAAE,MAAM;QAC1B,QAAQ,EAAE,MAAM;KACjB;IACD,WAAW,EAAE;QACX,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,MAAM;QACZ,kBAAkB,EAAE,MAAM;QAC1B,QAAQ,EAAE,MAAM;KACjB;IACD,IAAI,EAAE,OAAO;CACd,CAAA;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CACnC,SAAoB,EACpB,SAAuD;IAEvD,8EAA8E;IAC9E,4EAA4E;IAC5E,iEAAiE;IACjE,OAAO;QACL,gBAAgB,EAAE,yBAAyB;QAC3C,cAAc,EAAE,yBAAyB;QACzC,GAAG,SAAS;QACZ,UAAU,EAAE,SAAS,EAAE,UAAU,IAAI,wBAAwB;QAC7D,SAAS;KACV,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,aAAa;IACP,MAAM,CAAiB;IACvB,MAAM,CAAQ;IAE/B;;;;;OAKG;IACH,YAAY,MAAuB,EAAE,MAAe;QAClD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,+DAA+D;QAC/D,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,IAAI,MAAM,CAAE,OAAO,CAAC,GAAG,CAAC,WAAW,CAAc,IAAI,MAAM,CAAC,CAAA;IACtF,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,KAAK,CAAC,YAAY,CAAC,MAAuB;QACxC,mBAAmB;QACnB,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACrC,MAAM,KAAK,GAAG,6DAA6D,CAAA;YAC3E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0CAA0C,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;YAC3F,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,CAAA;QACxB,CAAC;QAED,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5D,MAAM,KAAK,GAAG,gEAAgE,CAAA;YAC9E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0CAA0C,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;YAC3F,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,CAAA;QACxB,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAA;QAE1C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE;YAC3C,SAAS;YACT,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM;YAClC,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC;SAC1C,CAAC,CAAA;QAEF,IAAI,CAAC;YACH,2DAA2D;YAC3D,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;YAEtD,2CAA2C;YAE3C,8CAA8C;YAC9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAA;YAElD,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;YAE5C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE;gBAC5C,SAAS;gBACT,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,aAAa;gBACb,SAAS,EAAE,MAAM,CAAC,SAAS;aAC5B,CAAC,CAAA;YAEF,OAAO;gBACL,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,aAAa;gBACb,GAAG,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC;gBACtE,GAAG,CAAC,MAAM,CAAC,UAAU,KAAK,SAAS,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;aAC1E,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;YAE5C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAAE;gBACtF,SAAS;gBACT,aAAa;aACd,CAAC,CAAA;YAEF,8BAA8B;YAC9B,IACE,KAAK,YAAY,KAAK;gBACtB,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,EAC5E,CAAC;gBACD,MAAM,KAAK,CAAA;YACb,CAAC;YAED,6CAA6C;YAC7C,OAAO;gBACL,MAAM,EAAE,EAAE;gBACV,MAAM,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,yBAAyB;gBAC1E,QAAQ,EAAE,CAAC;gBACX,aAAa;gBACb,SAAS,EAAE,KAAK;gBAChB,UAAU,EAAE,SAAS;aACtB,CAAA;QACH,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACK,gBAAgB,CAAC,MAAuB;QAK9C,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAEhD,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC9B,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;YAClD,KAAK,QAAQ;gBACX,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;YACnD,KAAK,KAAK;gBACR,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;YAChD,KAAK,QAAQ;gBACX,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;YACnD,KAAK,QAAQ;gBACX,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;YACnD,KAAK,MAAM;gBACT,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;YACjD,KAAK,UAAU;gBACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;QACvD,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACK,oBAAoB;QAC1B,MAAM,GAAG,GAAiB,EAAE,CAAA;QAC5B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB;YAAE,OAAO,GAAG,CAAA;QAC/C,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC9B,KAAK,QAAQ;gBACX,GAAG,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAA;gBACzD,MAAK;YACP,KAAK,OAAO;gBACV,GAAG,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAA;gBAClD,MAAK;YACP,4CAA4C;YAC5C,yEAAyE;YACzE,4CAA4C;YAC5C,iEAAiE;YACjE,8CAA8C;QAChD,CAAC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC;IAEO,eAAe;QACrB,OAAO,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IACxE,CAAC;IAEO,eAAe;QACrB,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,CAAA;QAEzC,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC1C,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACxB,OAAO,KAAK,CAAA;QACd,CAAC;QAED,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC9B,KAAK,OAAO;gBACV,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,0BAA0B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;gBAChF,MAAK;YACP,KAAK,QAAQ,CAAC;YACd,KAAK,KAAK;gBACR,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;gBAC1C,MAAK;YACP,KAAK,MAAM;gBACT,KAAK,CAAC,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;gBACpD,MAAK;YACP,KAAK,UAAU;gBACb,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;gBAC3C,MAAK;YACP,KAAK,QAAQ,CAAC;YACd,KAAK,QAAQ;gBACX,MAAM,IAAI,KAAK,CACb,gDAAgD,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI;oBACvE,oBAAoB,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACjE,CAAA;QACL,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;IAEO,sBAAsB,CAAC,MAAuB;QACpD,OAAO,qBAAqB,MAAM,CAAC,KAAK,sBAAsB,MAAM,CAAC,MAAM,EAAE,CAAA;IAC/E,CAAC;IAEO,cAAc,CACpB,MAAuB,EACvB,YAA0B;QAE1B,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;QACpC,2EAA2E;QAC3E,yEAAyE;QACzE,0EAA0E;QAC1E,0EAA0E;QAC1E,2EAA2E;QAC3E,MAAM,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAA;QAC3D,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,uBAAuB,EAAE,eAAe,CAAC,CAAA;QACnF,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,CAAA;IACjD,CAAC;IAEO,eAAe,CACrB,MAAuB,EACvB,YAA0B;QAE1B,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;QACpC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;QACvC,MAAM,YAAY,GAAG,QAAQ,GAAG,OAAO,MAAM,CAAC,KAAK,EAAE,CAAA;QACrD,MAAM,IAAI,GAAa;YACrB,GAAG,KAAK;YACR,iBAAiB;YACjB,aAAa;YACb,WAAW;YACX,wBAAwB;YACxB,YAAY;YACZ,IAAI;YACJ,MAAM,CAAC,MAAM;SACd,CAAA;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAA;QACzD,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,CAAA;IAClD,CAAC;IAEO,YAAY,CAClB,MAAuB,EACvB,YAA0B;QAE1B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAA;QACpC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;QAC5C,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;QACpC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;QACvC,MAAM,YAAY,GAAG,QAAQ,GAAG,OAAO,MAAM,CAAC,KAAK,EAAE,CAAA;QACrD,MAAM,IAAI,GAAa;YACrB,GAAG,KAAK;YACR,iBAAiB;YACjB,aAAa;YACb,WAAW;YACX,iBAAiB;YACjB,YAAY;YACZ,IAAI;YACJ,MAAM,CAAC,MAAM;SACd,CAAA;QAED,OAAO;YACL,OAAO,EAAE,QAAQ;YACjB,IAAI;YACJ,YAAY,EAAE;gBACZ,GAAG,YAAY;gBACf,kBAAkB,EAAE,YAAY;gBAChC,oBAAoB,EAAE,MAAM;gBAC5B,iBAAiB,EAAE,IAAI;aACxB;SACF,CAAA;IACH,CAAC;IAEO,eAAe,CACrB,MAAuB,EACvB,YAA0B;QAE1B,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;QACpC,wEAAwE;QACxE,qEAAqE;QACrE,yCAAyC;QACzC,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;YAC9F,OAAO;gBACL,OAAO,EAAE,QAAQ;gBACjB,IAAI;gBACJ,YAAY,EAAE,EAAE,GAAG,YAAY,EAAE,gBAAgB,EAAE,MAAM,CAAC,aAAa,EAAE;aAC1E,CAAA;QACH,CAAC;QACD,MAAM,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAA;QAC3D,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,IAAI,EAAE,eAAe,CAAC,CAAA;QAChG,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,CAAA;IAClD,CAAC;IAEO,eAAe,CACrB,MAAuB,EACvB,YAA0B;QAE1B,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;QACpC,MAAM,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAA;QAC3D,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,CAAC,CAAA;QACzE,MAAM,GAAG,GAAiB,EAAE,GAAG,YAAY,EAAE,CAAA;QAC7C,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;YAC7B,GAAG,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAA;QAClD,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,CAAA;IAC7D,CAAC;IAEO,aAAa,CACnB,MAAuB,EACvB,YAA0B;QAE1B,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;QACpC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;QACvC,MAAM,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAA;QAC3D,oEAAoE;QACpE,MAAM,IAAI,GAAG;YACX,GAAG,KAAK;YACR,OAAO;YACP,GAAG;YACH,iBAAiB;YACjB,MAAM;YACN,YAAY;YACZ,IAAI;YACJ,eAAe;SAChB,CAAA;QACD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,CAAA;IAChD,CAAC;IAEO,iBAAiB,CACvB,MAAuB,EACvB,YAA0B;QAE1B,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;QACpC,MAAM,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAA;QAC3D,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAA;QAC7E,OAAO;YACL,OAAO,EAAE,UAAU;YACnB,IAAI;YACJ,YAAY,EAAE;gBACZ,GAAG,YAAY;gBACf,mBAAmB,EAAE,IAAI,CAAC,SAAS,CAAC,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;aACzF;SACF,CAAA;IACH,CAAC;IAEO,aAAa,CAAC,YAA0B;QAC9C,MAAM,QAAQ,GAAsB,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;QACtD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;YACxD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACnB,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAA;YACtB,CAAC;iBAAM,CAAC;gBACN,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;YACvB,CAAC;QACH,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;IAEO,KAAK,CAAC,uBAAuB,CAAC,YAA0B;QAI9D,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,KAAK,UAAU,EAAE,CAAC;YACzC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC,EAAE,CAAA;QAC3E,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,oBAAoB,CAAC,CAAC,CAAA;QACvF,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAC7C,MAAM,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;QAE3D,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;YACjE,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;YAEvD,MAAM,eAAe,GACnB,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;YAC5E,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,UAAU,EAAE,WAAW,CAAC,CAAA;YACtE,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAA;YAEnE,IAAI,CAAC;gBACH,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC,CAAA;YACzD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;gBAClC,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACtB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gEAAgE,EAAE;wBACjF,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;qBAC9D,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;YAED,OAAO;gBACL,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC;oBACtB,GAAG,YAAY;oBACf,aAAa,EAAE,QAAQ;oBACvB,cAAc,EAAE,SAAS;iBAC1B,CAAC;gBACF,OAAO,EAAE,KAAK,IAAI,EAAE;oBAClB,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;gBACjE,CAAC;aACF,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;YAC/E,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAEO,SAAS,CAAC,KAAc;QAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,EAAE,CAAC;YACtE,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,OAAO,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;IAChE,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,gBAAgB,CAAC,MAAuB;QAOpD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAA;QACrE,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC,CAAA;QAE5E,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE;gBACxC,OAAO;gBACP,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE;aACjC,CAAC,CAAA;YAEF,IAAI,YAA0B,CAAA;YAC9B,IAAI,CAAC;gBACH,YAAY,GAAG,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE;oBAClC,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE;oBAChC,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;oBACjC,KAAK,EAAE,KAAK;oBACZ,GAAG,EAAE,mBAAmB,CAAC,GAAG;iBAC7B,CAAC,CAAA;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,KAAK,mBAAmB,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;oBAC9C,OAAO,CAAC;wBACN,MAAM,EAAE,EAAE;wBACV,MAAM,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;wBAC9D,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;wBACtD,SAAS,EAAE,KAAK;qBACjB,CAAC,CAAA;gBACJ,CAAC,CAAC,CAAA;gBACF,OAAM;YACR,CAAC;YAED,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAA;YAC7C,IAAI,MAAM,GAAG,EAAE,CAAA;YACf,IAAI,MAAM,GAAG,EAAE,CAAA;YACf,IAAI,YAAY,GAAG,EAAE,CAAA;YACrB,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAA;YAC/C,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAA;YAC/C,IAAI,eAAe,GAAG,KAAK,CAAA;YAC3B,IAAI,eAAe,GAAG,KAAK,CAAA;YAC3B,IAAI,aAAa,GAAG,CAAC,CAAA;YACrB,IAAI,QAAQ,GAAG,KAAK,CAAA;YACpB,IAAI,cAAc,GAAG,KAAK,CAAA;YAC1B,IAAI,YAA+B,CAAA;YACnC,IAAI,OAAO,GAAG,KAAK,CAAA;YACnB,IAAI,cAA0C,CAAA;YAE9C,MAAM,gBAAgB,GAAG,UAAU,CAAC,GAAG,EAAE;gBACvC,QAAQ,GAAG,IAAI,CAAA;gBACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE;oBAC5C,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB;iBACtC,CAAC,CAAA;gBACF,kBAAkB,EAAE,CAAA;YACtB,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAA;YAEhC,MAAM,WAAW,GAAG,GAAG,EAAE;gBACvB,YAAY,CAAC,gBAAgB,CAAC,CAAA;gBAC9B,IAAI,cAAc;oBAAE,YAAY,CAAC,cAAc,CAAC,CAAA;YAClD,CAAC,CAAA;YAED,MAAM,MAAM,GAAG,KAAK,EAAE,IAAmB,EAAE,MAA8B,EAAE,EAAE;gBAC3E,IAAI,OAAO;oBAAE,OAAM;gBACnB,OAAO,GAAG,IAAI,CAAA;gBACd,WAAW,EAAE,CAAA;gBAEb,IAAI,CAAC,eAAe,EAAE,CAAC;oBACrB,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,EAAE,CAAA;oBAChC,MAAM,IAAI,IAAI,CAAA;oBACd,YAAY,IAAI,IAAI,CAAA;gBACtB,CAAC;gBACD,IAAI,CAAC,eAAe,EAAE,CAAC;oBACrB,MAAM,IAAI,aAAa,CAAC,GAAG,EAAE,CAAA;gBAC/B,CAAC;gBAED,IAAI,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;oBACxB,eAAe,CAAC,WAAW,CAAC,YAAY,CAAC,CAAA;oBACzC,YAAY,GAAG,EAAE,CAAA;gBACnB,CAAC;gBAED,IAAI,MAAM,GAAG,eAAe,CAAC,SAAS,EAAE,CAAA;gBACxC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;oBACpB,eAAe,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAA;oBAC7C,MAAM,GAAG,eAAe,CAAC,SAAS,EAAE,CAAA;gBACtC,CAAC;gBAED,IAAI,QAAQ,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBACrE,IAAI,QAAQ;oBAAE,QAAQ,GAAG,GAAG,CAAA;gBAC5B,IAAI,cAAc,IAAI,YAAY;oBAChC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;gBAChE,MAAM,MAAM,GAAa,EAAE,CAAA;gBAC3B,IAAI,MAAM;oBAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBAC/B,IAAI,QAAQ;oBAAE,MAAM,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,CAAC,CAAA;gBACjF,IAAI,cAAc,EAAE,CAAC;oBACnB,MAAM,CAAC,IAAI,CAAC,6BAA6B,IAAI,CAAC,MAAM,CAAC,cAAc,QAAQ,CAAC,CAAA;gBAC9E,CAAC;gBACD,IAAI,YAAY,IAAI,CAAC,MAAM;oBAAE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;gBAE9D,IAAI,CAAC;oBACH,MAAM,mBAAmB,CAAC,OAAO,EAAE,CAAA;gBACrC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wCAAwC,EAAE;wBACzD,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;qBAC9D,CAAC,CAAA;gBACJ,CAAC;gBAED,OAAO,CAAC;oBACN,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM;oBAChD,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;oBACzB,QAAQ;oBACR,SAAS,EAAE,MAAM,KAAK,IAAI;oBAC1B,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;iBACjD,CAAC,CAAA;YACJ,CAAC,CAAA;YAED,MAAM,kBAAkB,GAAG,GAAG,EAAE;gBAC9B,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBAC5B,IAAI,cAAc;oBAAE,OAAM;gBAC1B,cAAc,GAAG,UAAU,CAAC,GAAG,EAAE;oBAC/B,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBAC9B,CAAC,EAAE,oBAAoB,CAAC,CAAA;YAC1B,CAAC,CAAA;YAED,MAAM,YAAY,GAAG,CACnB,IAAY,EACZ,OAAsB,EACtB,aAAyB,EACjB,EAAE;gBACV,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,GAAG,aAAa,CAAA;gBAC5D,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;oBACnB,cAAc,GAAG,IAAI,CAAA;oBACrB,aAAa,EAAE,CAAA;oBACf,kBAAkB,EAAE,CAAA;oBACpB,OAAO,EAAE,CAAA;gBACX,CAAC;gBAED,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAA;gBAC9E,aAAa,IAAI,QAAQ,CAAC,MAAM,CAAA;gBAChC,IAAI,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;oBAClC,cAAc,GAAG,IAAI,CAAA;oBACrB,aAAa,EAAE,CAAA;oBACf,kBAAkB,EAAE,CAAA;gBACtB,CAAC;gBACD,OAAO,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAChC,CAAC,CAAA;YAED,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBAC/C,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE;oBACnD,eAAe,GAAG,IAAI,CAAA;gBACxB,CAAC,CAAC,CAAA;gBACF,MAAM,IAAI,KAAK,CAAA;gBACf,YAAY,IAAI,KAAK,CAAA;gBAErB,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBACtC,YAAY,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAA;gBAEhC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,IAAI,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;wBACtC,kBAAkB,EAAE,CAAA;wBACpB,MAAK;oBACP,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBAC/C,MAAM,IAAI,YAAY,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE;oBAC/C,eAAe,GAAG,IAAI,CAAA;gBACxB,CAAC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;YAEF,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAmB,EAAE,MAA8B,EAAE,EAAE;gBAC/E,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YAC3B,CAAC,CAAC,CAAA;YAEF,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE;gBACxC,YAAY,GAAG,KAAK,CAAA;gBACpB,KAAK,MAAM,CAAC,IAAI,CAAC,CAAA;YACnB,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,YAAY,CAAC,MAAsB;QACzC,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,EAAE,CAAA;QACnC,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,CAAC,CAAA;QAClC,OAAO,CAAC,CAAA;IACV,CAAC;IAED;;;;;OAKG;IACK,iBAAiB;QACvB,OAAO,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAA;IACvE,CAAC;CACF"}
@@ -1,13 +1,14 @@
1
1
  /**
2
2
  * StreamProcessor - Simplified stream processing for agent output
3
3
  *
4
- * Handles cursor, claude, gemini, codex, and grok output in JSON format.
4
+ * Handles cursor, claude, gemini, codex, grok, and OpenCode output in JSON format.
5
5
  * - Cursor/Claude: Use --output-format json, return a single JSON with type: "result"
6
6
  * - Gemini: Uses --output-format stream-json, returns multiple JSON lines,
7
7
  * assistant messages contain the response, type: "result" signals completion
8
8
  * - Codex: Uses --json flag with exec subcommand, returns stream of JSON events,
9
9
  * agent_message items contain the response, turn.completed signals completion
10
10
  * - Grok: Uses --output-format json, returns a complete JSON object after exit
11
+ * - OpenCode: Uses --format json, returns step and text events as NDJSON
11
12
  */
12
13
  export declare class StreamProcessor {
13
14
  private resultJson;
@@ -16,6 +17,8 @@ export declare class StreamProcessor {
16
17
  private isCodexFormat;
17
18
  private codexAgentMessages;
18
19
  private codexUsage;
20
+ private isOpenCodeFormat;
21
+ private openCodeResponseParts;
19
22
  /**
20
23
  * Process a single line from the agent output stream.
21
24
  * Returns true when a valid result JSON is detected, false otherwise.
@@ -38,6 +41,7 @@ export declare class StreamProcessor {
38
41
  * @returns true if processing is complete, false otherwise
39
42
  */
40
43
  processCompleteOutput(output: string): boolean;
44
+ private normalizeFatalError;
41
45
  private normalizeCompleteOutput;
42
46
  /**
43
47
  * Type guard for Codex item structure
@@ -1 +1 @@
1
- {"version":3,"file":"StreamProcessor.d.ts","sourceRoot":"","sources":["../../src/execution/StreamProcessor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,mBAAmB,CAAe;IAC1C,OAAO,CAAC,kBAAkB,CAAQ;IAClC,OAAO,CAAC,aAAa,CAAQ;IAC7B,OAAO,CAAC,kBAAkB,CAAe;IACzC,OAAO,CAAC,UAAU,CAAgB;IAElC;;;;;;;;;;OAUG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAsGlC;;;;;;;;OAQG;IACH,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAuB9C,OAAO,CAAC,uBAAuB;IAwB/B;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,QAAQ;IAIhB;;;OAGG;IACH,SAAS,IAAI,OAAO;CAGrB"}
1
+ {"version":3,"file":"StreamProcessor.d.ts","sourceRoot":"","sources":["../../src/execution/StreamProcessor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,mBAAmB,CAAe;IAC1C,OAAO,CAAC,kBAAkB,CAAQ;IAClC,OAAO,CAAC,aAAa,CAAQ;IAC7B,OAAO,CAAC,kBAAkB,CAAe;IACzC,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,gBAAgB,CAAQ;IAChC,OAAO,CAAC,qBAAqB,CAAe;IAE5C;;;;;;;;;;OAUG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAyIlC;;;;;;;;OAQG;IACH,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAqC9C,OAAO,CAAC,mBAAmB;IAgD3B,OAAO,CAAC,uBAAuB;IAwB/B;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,QAAQ;IAIhB;;;OAGG;IACH,SAAS,IAAI,OAAO;CAGrB"}