@cereworker/core 0.2.0 → 0.5.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,20 +1,104 @@
1
1
  import { TypedEventEmitter } from './events.js';
2
2
  import { ConversationStore } from './conversation.js';
3
+ import { SubAgentManager } from './sub-agent-manager.js';
4
+ import { createSubAgentTools } from './sub-agent-tools.js';
5
+ import { createLogger } from './logger.js';
6
+ import { estimateMessageTokens, shouldCompact, buildCompactionMessages } from './context.js';
7
+ const log = createLogger('orchestrator');
3
8
  export class Orchestrator extends TypedEventEmitter {
4
9
  conversations;
5
10
  cerebrum = null;
11
+ cerebellum = null;
12
+ subAgentManager = null;
6
13
  tools = new Map();
7
14
  activeConversationId = null;
8
- constructor() {
15
+ systemContext = null;
16
+ verificationEnabled = true;
17
+ verificationTimeoutMs = 5000;
18
+ monitorIntervalMs = 30_000;
19
+ monitorTimer = null;
20
+ abortController = null;
21
+ autoMode = false;
22
+ compactionConfig = {
23
+ enabled: true,
24
+ threshold: 0.8,
25
+ keepRecentMessages: 10,
26
+ contextWindow: 128000,
27
+ };
28
+ constructor(options) {
9
29
  super();
10
- this.conversations = new ConversationStore();
30
+ this.conversations = options?.conversationStore ?? new ConversationStore();
31
+ if (options?.compaction) {
32
+ this.compactionConfig = { ...this.compactionConfig, ...options.compaction };
33
+ }
11
34
  }
12
35
  setCerebrum(cerebrum) {
13
36
  this.cerebrum = cerebrum;
14
37
  }
38
+ setCerebellum(cerebellum, options) {
39
+ this.cerebellum = cerebellum;
40
+ if (options?.enabled !== undefined)
41
+ this.verificationEnabled = options.enabled;
42
+ if (options?.timeoutMs !== undefined)
43
+ this.verificationTimeoutMs = options.timeoutMs;
44
+ }
45
+ /** Set system context (e.g. skills prompt) prepended to every Cerebrum call */
46
+ setSystemContext(context) {
47
+ this.systemContext = context;
48
+ log.info('System context updated', { length: context.length });
49
+ }
50
+ getSystemContext() {
51
+ return this.systemContext;
52
+ }
53
+ setupSubAgents(options) {
54
+ if (!this.cerebrum)
55
+ return null;
56
+ if (options?.monitorIntervalMs)
57
+ this.monitorIntervalMs = options.monitorIntervalMs;
58
+ this.subAgentManager = new SubAgentManager({
59
+ cerebrum: this.cerebrum,
60
+ tools: this.tools,
61
+ maxConcurrent: options?.maxConcurrent,
62
+ baseDir: options?.baseDir,
63
+ });
64
+ // Register sub-agent tools with the orchestrator
65
+ const agentTools = createSubAgentTools(this.subAgentManager);
66
+ for (const [name, tool] of Object.entries(agentTools)) {
67
+ this.tools.set(name, tool);
68
+ }
69
+ return this.subAgentManager;
70
+ }
71
+ getSubAgentManager() {
72
+ return this.subAgentManager;
73
+ }
74
+ getConversationStore() {
75
+ return this.conversations;
76
+ }
15
77
  registerTool(name, tool) {
16
78
  this.tools.set(name, tool);
17
79
  }
80
+ setAutoMode(enabled) {
81
+ this.autoMode = enabled;
82
+ log.info('Auto mode changed', { autoMode: enabled });
83
+ }
84
+ getAutoMode() {
85
+ return this.autoMode;
86
+ }
87
+ emergencyStop() {
88
+ // 1. Abort current stream
89
+ this.abortController?.abort();
90
+ this.abortController = null;
91
+ // 2. Cancel all sub-agents
92
+ if (this.subAgentManager) {
93
+ const agents = this.subAgentManager.listAgents();
94
+ agents
95
+ .filter((a) => a.status === 'running' || a.status === 'pending')
96
+ .forEach((a) => this.subAgentManager.cancel(a.id));
97
+ }
98
+ // 3. Emit event
99
+ this.emit({ type: 'emergency:stop' });
100
+ log.warn('Emergency stop triggered');
101
+ }
18
102
  getActiveConversationId() {
19
103
  return this.activeConversationId;
20
104
  }
@@ -30,8 +114,18 @@ export class Orchestrator extends TypedEventEmitter {
30
114
  startConversation() {
31
115
  const conversation = this.conversations.create();
32
116
  this.activeConversationId = conversation.id;
117
+ log.info('Started conversation', { id: conversation.id });
33
118
  return conversation.id;
34
119
  }
120
+ /** Resume an existing conversation by ID */
121
+ resumeConversation(id) {
122
+ const conversation = this.conversations.get(id);
123
+ if (!conversation)
124
+ return false;
125
+ this.activeConversationId = id;
126
+ log.info('Resumed conversation', { id, messageCount: conversation.messages.length });
127
+ return true;
128
+ }
35
129
  async sendMessage(content, conversationId) {
36
130
  if (!this.cerebrum)
37
131
  throw new Error('Cerebrum not connected');
@@ -41,11 +135,38 @@ export class Orchestrator extends TypedEventEmitter {
41
135
  const userMessage = this.conversations.appendMessage(convId, 'user', content);
42
136
  this.emit({ type: 'message:user', message: userMessage });
43
137
  this.emit({ type: 'message:cerebrum:start', conversationId: convId });
44
- const messages = this.conversations.getMessages(convId);
138
+ let messages = this.conversations.getMessages(convId);
139
+ // Context window compaction
140
+ if (this.compactionConfig.enabled &&
141
+ this.cerebrum?.summarize &&
142
+ shouldCompact(messages, this.compactionConfig.contextWindow, this.compactionConfig.threshold)) {
143
+ try {
144
+ const keepRecent = this.compactionConfig.keepRecentMessages;
145
+ const olderMessages = messages.slice(0, Math.max(0, messages.length - keepRecent));
146
+ if (olderMessages.length > 0) {
147
+ log.info('Compacting conversation', {
148
+ totalMessages: messages.length,
149
+ compactingMessages: olderMessages.length,
150
+ estimatedTokens: estimateMessageTokens(messages),
151
+ });
152
+ const summary = await this.cerebrum.summarize(olderMessages);
153
+ messages = buildCompactionMessages(messages, summary, keepRecent);
154
+ }
155
+ }
156
+ catch (error) {
157
+ log.warn('Compaction failed, continuing with full context', {
158
+ error: error instanceof Error ? error.message : String(error),
159
+ });
160
+ }
161
+ }
162
+ // Prepend system context if set
163
+ const allMessages = this.systemContext
164
+ ? [{ id: 'system', role: 'system', content: this.systemContext, timestamp: 0 }, ...messages]
165
+ : messages;
45
166
  const toolDefs = Object.fromEntries(this.tools);
46
167
  let fullContent = '';
47
168
  try {
48
- await this.cerebrum.stream(messages, toolDefs, {
169
+ await this.cerebrum.stream(allMessages, toolDefs, {
49
170
  onChunk: (chunk) => {
50
171
  fullContent += chunk;
51
172
  this.emit({ type: 'message:cerebrum:chunk', chunk });
@@ -72,6 +193,39 @@ export class Orchestrator extends TypedEventEmitter {
72
193
  result = { callId: toolCall.id, output: `Unknown tool: ${toolCall.name}`, isError: true };
73
194
  }
74
195
  this.emit({ type: 'tool:end', result });
196
+ // Cerebellum verification (non-blocking)
197
+ if (this.cerebellum?.isConnected() && this.verificationEnabled) {
198
+ try {
199
+ this.emit({ type: 'verification:start', callId: toolCall.id, toolName: toolCall.name });
200
+ const toolArgs = {};
201
+ for (const [k, v] of Object.entries(toolCall.args)) {
202
+ toolArgs[k] = String(v);
203
+ }
204
+ const verifyPromise = this.cerebellum.verifyToolResult(toolCall.name, toolArgs, result.output, !result.isError);
205
+ const timeoutPromise = new Promise((resolve) => setTimeout(() => resolve(null), this.verificationTimeoutMs));
206
+ const verification = await Promise.race([verifyPromise, timeoutPromise]);
207
+ if (verification && !verification.passed) {
208
+ const failedChecks = verification.checks
209
+ .filter((c) => !c.passed)
210
+ .map((c) => c.description)
211
+ .join(', ');
212
+ result.output += `\n[Cerebellum warning: ${failedChecks}]`;
213
+ }
214
+ if (verification) {
215
+ const vResult = {
216
+ passed: verification.passed,
217
+ checks: verification.checks,
218
+ modelVerdict: verification.modelVerdict,
219
+ toolCallId: toolCall.id,
220
+ toolName: toolCall.name,
221
+ };
222
+ this.emit({ type: 'verification:end', result: vResult });
223
+ }
224
+ }
225
+ catch {
226
+ // Verification failure should never block tool execution
227
+ }
228
+ }
75
229
  this.conversations.appendMessage(convId, 'tool', result.output, {
76
230
  toolResult: result,
77
231
  });
@@ -82,24 +236,81 @@ export class Orchestrator extends TypedEventEmitter {
82
236
  this.emit({ type: 'message:cerebrum:end', message: cerebrumMessage });
83
237
  },
84
238
  onError: (error) => {
239
+ log.error('Cerebrum stream error', { error: error.message });
85
240
  this.emit({ type: 'error', error });
86
241
  },
87
242
  });
88
243
  }
89
244
  catch (error) {
90
- this.emit({
91
- type: 'error',
92
- error: error instanceof Error ? error : new Error(String(error)),
93
- });
245
+ const err = error instanceof Error ? error : new Error(String(error));
246
+ log.error('Send message failed', { error: err.message });
247
+ this.emit({ type: 'error', error: err });
94
248
  }
95
249
  }
96
250
  async start() {
97
251
  if (!this.activeConversationId) {
98
252
  this.startConversation();
99
253
  }
254
+ // Start sub-agent monitoring loop if cerebellum + sub-agents are enabled
255
+ if (this.subAgentManager && this.cerebellum?.reportAgentStates) {
256
+ this.startMonitorLoop();
257
+ }
100
258
  }
101
259
  async stop() {
260
+ if (this.monitorTimer) {
261
+ clearInterval(this.monitorTimer);
262
+ this.monitorTimer = null;
263
+ }
102
264
  this.removeAllListeners();
265
+ log.info('Orchestrator stopped');
266
+ }
267
+ startMonitorLoop() {
268
+ if (this.monitorTimer)
269
+ return;
270
+ this.monitorTimer = setInterval(async () => {
271
+ if (!this.subAgentManager || !this.cerebellum?.reportAgentStates)
272
+ return;
273
+ const agents = this.subAgentManager.listAgents();
274
+ const activeAgents = agents.filter((a) => a.status === 'running' || a.status === 'pending');
275
+ if (activeAgents.length === 0)
276
+ return;
277
+ try {
278
+ const actions = await this.cerebellum.reportAgentStates(activeAgents.map((a) => ({
279
+ id: a.id,
280
+ task: a.task,
281
+ status: a.status,
282
+ spawnedAt: a.spawnedAt,
283
+ lastActivityAt: a.lastActivityAt,
284
+ timeoutMs: a.timeoutMs,
285
+ messagesCount: a.messagesCount,
286
+ toolCallsCount: a.toolCallsCount,
287
+ retryCount: a.retryCount,
288
+ })));
289
+ const actionable = actions.filter((a) => a.action !== 'ok');
290
+ if (actionable.length > 0) {
291
+ this.emit({ type: 'agent:health', actions: actionable });
292
+ }
293
+ for (const action of actions) {
294
+ switch (action.action) {
295
+ case 'ping':
296
+ this.subAgentManager.ping(action.agentId);
297
+ break;
298
+ case 'retry':
299
+ await this.subAgentManager.retry(action.agentId);
300
+ break;
301
+ case 'cancel':
302
+ case 'timeout':
303
+ this.subAgentManager.cancel(action.agentId);
304
+ break;
305
+ }
306
+ }
307
+ }
308
+ catch {
309
+ // Monitor failure is non-blocking
310
+ }
311
+ // Prune old completed agents
312
+ this.subAgentManager.prune();
313
+ }, this.monitorIntervalMs);
103
314
  }
104
315
  }
105
316
  //# sourceMappingURL=orchestrator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../src/orchestrator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAwBtD,MAAM,OAAO,YAAa,SAAQ,iBAAiB;IACzC,aAAa,CAAoB;IACjC,QAAQ,GAA2B,IAAI,CAAC;IACxC,KAAK,GAAG,IAAI,GAAG,EAA0B,CAAC;IAC1C,oBAAoB,GAAkB,IAAI,CAAC;IAEnD;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,aAAa,GAAG,IAAI,iBAAiB,EAAE,CAAC;IAC/C,CAAC;IAED,WAAW,CAAC,QAAyB;QACnC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,YAAY,CAAC,IAAY,EAAE,IAAoB;QAC7C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,uBAAuB;QACrB,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACnC,CAAC;IAED,eAAe,CAAC,EAAU;QACxB,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,WAAW,CAAC,cAAuB;QACjC,MAAM,EAAE,GAAG,cAAc,IAAI,IAAI,CAAC,oBAAoB,CAAC;QACvD,IAAI,CAAC,EAAE;YAAE,OAAO,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,iBAAiB;QACf,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;QACjD,IAAI,CAAC,oBAAoB,GAAG,YAAY,CAAC,EAAE,CAAC;QAC5C,OAAO,YAAY,CAAC,EAAE,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAe,EAAE,cAAuB;QACxD,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAE9D,MAAM,MAAM,GAAG,cAAc,IAAI,IAAI,CAAC,oBAAoB,CAAC;QAC3D,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAEvD,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9E,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,CAAC;QAEtE,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,WAAW,GAAG,EAAE,CAAC;QAErB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE;gBAC7C,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBACjB,WAAW,IAAI,KAAK,CAAC;oBACrB,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,CAAC,CAAC;gBACvD,CAAC;gBACD,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;oBAC7B,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,QAAQ,EAAE,CAAC,CAAC;oBAC3D,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;oBAE5E,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAC3C,IAAI,MAAkB,CAAC;oBAEvB,IAAI,IAAI,EAAE,CAAC;wBACT,IAAI,CAAC;4BACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;4BACjD,MAAM,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;wBAC3D,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,MAAM,GAAG;gCACP,MAAM,EAAE,QAAQ,CAAC,EAAE;gCACnB,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;gCACxD,OAAO,EAAE,IAAI;6BACd,CAAC;wBACJ,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,MAAM,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,iBAAiB,QAAQ,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;oBAC5F,CAAC;oBAED,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;oBAExC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;wBAC9D,UAAU,EAAE,MAAM;qBACnB,CAAC,CAAC;oBAEH,OAAO,MAAM,CAAC;gBAChB,CAAC;gBACD,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE;oBACpB,MAAM,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;oBACtF,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;gBACxE,CAAC;gBACD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBACjB,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;gBACtC,CAAC;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aACjE,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC/B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;CACF"}
1
+ {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../src/orchestrator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import type { Message, SubAgentState, SubAgentCleanup, SubAgentSummary } from './types.js';
2
+ import type { CerebrumAdapter, ToolDefinition } from './orchestrator.js';
3
+ export interface SubAgentManagerOptions {
4
+ cerebrum: CerebrumAdapter;
5
+ tools: Map<string, ToolDefinition>;
6
+ maxConcurrent?: number;
7
+ baseDir?: string;
8
+ }
9
+ export declare class SubAgentManager {
10
+ private agents;
11
+ private cerebrum;
12
+ private tools;
13
+ private maxConcurrent;
14
+ private baseDir;
15
+ constructor(opts: SubAgentManagerOptions);
16
+ private ensureDir;
17
+ spawn(task: string, opts?: {
18
+ timeoutMs?: number;
19
+ label?: string;
20
+ cleanup?: SubAgentCleanup;
21
+ parentSessionKey?: string;
22
+ }): Promise<string>;
23
+ getAgent(id: string): SubAgentState | null;
24
+ listAgents(): SubAgentState[];
25
+ getSummary(): SubAgentSummary;
26
+ cancel(id: string): void;
27
+ retry(id: string): Promise<string>;
28
+ ping(id: string): void;
29
+ prune(maxAgeMs?: number): void;
30
+ readTranscript(id: string): Message[] | null;
31
+ private runAgent;
32
+ private createAgentTools;
33
+ private saveSessionMeta;
34
+ private appendTranscript;
35
+ private toState;
36
+ }
37
+ //# sourceMappingURL=sub-agent-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sub-agent-manager.d.ts","sourceRoot":"","sources":["../src/sub-agent-manager.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACV,OAAO,EACP,aAAa,EAEb,eAAe,EACf,eAAe,EAChB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAmB,MAAM,mBAAmB,CAAC;AAwB1F,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,eAAe,CAAC;IAC1B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAuC;IACrD,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,KAAK,CAA8B;IAC3C,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,OAAO,CAAS;gBAEZ,IAAI,EAAE,sBAAsB;IAQxC,OAAO,CAAC,SAAS;IAMX,KAAK,CACT,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE;QACL,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,eAAe,CAAC;QAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,GACA,OAAO,CAAC,MAAM,CAAC;IAmDlB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAM1C,UAAU,IAAI,aAAa,EAAE;IAI7B,UAAU,IAAI,eAAe;IAU7B,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAUlB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA4BxC,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAatB,KAAK,CAAC,QAAQ,GAAE,MAAoB,GAAG,IAAI;IAiB3C,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,EAAE,GAAG,IAAI;YAM9B,QAAQ;IA0GtB,OAAO,CAAC,gBAAgB;IA+ExB,OAAO,CAAC,eAAe;IA0BvB,OAAO,CAAC,gBAAgB;IAgBxB,OAAO,CAAC,OAAO;CAoBhB"}