@zhivex-ai/core 0.7.0 → 0.8.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 (77) hide show
  1. package/README.md +5 -0
  2. package/dist/advanced-tool-registry.d.ts +112 -0
  3. package/dist/advanced-tool-registry.d.ts.map +1 -0
  4. package/dist/advanced-tool-registry.js +407 -0
  5. package/dist/advanced-tool-registry.js.map +1 -0
  6. package/dist/agent-evaluation.d.ts +176 -0
  7. package/dist/agent-evaluation.d.ts.map +1 -0
  8. package/dist/agent-evaluation.js +334 -0
  9. package/dist/agent-evaluation.js.map +1 -0
  10. package/dist/agent-store.d.ts.map +1 -1
  11. package/dist/agent-store.js +226 -8
  12. package/dist/agent-store.js.map +1 -1
  13. package/dist/agent-trace.d.ts +127 -0
  14. package/dist/agent-trace.d.ts.map +1 -0
  15. package/dist/agent-trace.js +331 -0
  16. package/dist/agent-trace.js.map +1 -0
  17. package/dist/agent.d.ts +12 -1
  18. package/dist/agent.d.ts.map +1 -1
  19. package/dist/agent.js +469 -36
  20. package/dist/agent.js.map +1 -1
  21. package/dist/api-stability.d.ts +9 -0
  22. package/dist/api-stability.d.ts.map +1 -0
  23. package/dist/api-stability.js +261 -0
  24. package/dist/api-stability.js.map +1 -0
  25. package/dist/artifact.d.ts +165 -0
  26. package/dist/artifact.d.ts.map +1 -0
  27. package/dist/artifact.js +994 -0
  28. package/dist/artifact.js.map +1 -0
  29. package/dist/errors.d.ts +2 -0
  30. package/dist/errors.d.ts.map +1 -1
  31. package/dist/errors.js +2 -0
  32. package/dist/errors.js.map +1 -1
  33. package/dist/generate-text.d.ts.map +1 -1
  34. package/dist/generate-text.js +6 -2
  35. package/dist/generate-text.js.map +1 -1
  36. package/dist/index.d.ts +27 -1
  37. package/dist/index.d.ts.map +1 -1
  38. package/dist/index.js +14 -1
  39. package/dist/index.js.map +1 -1
  40. package/dist/live-agent.d.ts.map +1 -1
  41. package/dist/live-agent.js +7 -1
  42. package/dist/live-agent.js.map +1 -1
  43. package/dist/provider-parity.d.ts +63 -0
  44. package/dist/provider-parity.d.ts.map +1 -0
  45. package/dist/provider-parity.js +175 -0
  46. package/dist/provider-parity.js.map +1 -0
  47. package/dist/runner.d.ts +111 -0
  48. package/dist/runner.d.ts.map +1 -0
  49. package/dist/runner.js +635 -0
  50. package/dist/runner.js.map +1 -0
  51. package/dist/safety-policy.d.ts +65 -0
  52. package/dist/safety-policy.d.ts.map +1 -0
  53. package/dist/safety-policy.js +308 -0
  54. package/dist/safety-policy.js.map +1 -0
  55. package/dist/types.d.ts +119 -3
  56. package/dist/types.d.ts.map +1 -1
  57. package/dist/workflow-artifacts.d.ts +28 -0
  58. package/dist/workflow-artifacts.d.ts.map +1 -0
  59. package/dist/workflow-artifacts.js +86 -0
  60. package/dist/workflow-artifacts.js.map +1 -0
  61. package/dist/workflow-evaluation-diff.d.ts +51 -0
  62. package/dist/workflow-evaluation-diff.d.ts.map +1 -0
  63. package/dist/workflow-evaluation-diff.js +141 -0
  64. package/dist/workflow-evaluation-diff.js.map +1 -0
  65. package/dist/workflow-evaluation.d.ts +94 -0
  66. package/dist/workflow-evaluation.d.ts.map +1 -0
  67. package/dist/workflow-evaluation.js +210 -0
  68. package/dist/workflow-evaluation.js.map +1 -0
  69. package/dist/workflow-state-service.d.ts +67 -0
  70. package/dist/workflow-state-service.d.ts.map +1 -0
  71. package/dist/workflow-state-service.js +498 -0
  72. package/dist/workflow-state-service.js.map +1 -0
  73. package/dist/workflow.d.ts +206 -0
  74. package/dist/workflow.d.ts.map +1 -0
  75. package/dist/workflow.js +727 -0
  76. package/dist/workflow.js.map +1 -0
  77. package/package.json +1 -1
@@ -0,0 +1,331 @@
1
+ import { ValidationError } from "./errors.js";
2
+ import { createAgentRunSnapshot, replayAgentRun } from "./agent-evaluation.js";
3
+ const isCatalog = (pricing) => Boolean(pricing && "find" in pricing && typeof pricing.find === "function");
4
+ const cloneJson = (value) => JSON.parse(JSON.stringify(value));
5
+ const toJsonValue = (value) => JSON.parse(JSON.stringify(value));
6
+ const duration = (startedAt, finishedAt) => startedAt !== undefined && finishedAt !== undefined ? Math.max(0, finishedAt - startedAt) : undefined;
7
+ const preview = (text, length = 500) => text.length > length ? `${text.slice(0, Math.max(0, length))}...` : text;
8
+ const toTraceToolCall = (toolCall, includeInput) => ({
9
+ id: toolCall.id,
10
+ name: toolCall.name,
11
+ ...(includeInput ? { input: cloneJson(toolCall.input) } : {})
12
+ });
13
+ const getToolCallsFromMessages = (messages, includeInput) => messages.flatMap((message) => message.parts.flatMap((part) => part.type === "tool-call" ? [toTraceToolCall(part.toolCall, includeInput)] : []));
14
+ const stepUsage = (step) => step.response?.usage;
15
+ const normalizeUsage = (usage) => usage && Object.values(usage).some((value) => value !== undefined) ? { ...usage } : undefined;
16
+ const serializeEventData = (event) => {
17
+ if (event.type === "run-start") {
18
+ return { provider: event.provider, modelId: event.modelId, maxSteps: event.maxSteps };
19
+ }
20
+ if (event.type === "step-start") {
21
+ return { stepIndex: event.stepIndex };
22
+ }
23
+ if (event.type === "step-finish") {
24
+ return { status: event.step.status, toolResults: event.step.toolResults.length };
25
+ }
26
+ if (event.type === "approval-request") {
27
+ return toJsonValue(event.approval);
28
+ }
29
+ if (event.type === "approval-resolved") {
30
+ return toJsonValue(event.approval);
31
+ }
32
+ if (event.type === "tool-approval") {
33
+ return toJsonValue({
34
+ toolCall: event.toolCall,
35
+ approved: event.approved,
36
+ reason: event.reason,
37
+ metadata: event.metadata
38
+ });
39
+ }
40
+ if (event.type === "memory-loaded") {
41
+ return { messageCount: event.messageCount };
42
+ }
43
+ if (event.type === "guardrail-triggered") {
44
+ return toJsonValue({ stage: event.stage, reason: event.reason, metadata: event.metadata });
45
+ }
46
+ if (event.type === "state-saved") {
47
+ return { status: event.status };
48
+ }
49
+ if (event.type === "handoff") {
50
+ return toJsonValue(event.handoff);
51
+ }
52
+ if (event.type === "subagent-start") {
53
+ return toJsonValue({ childAgentId: event.childAgentId, toolName: event.toolName });
54
+ }
55
+ if (event.type === "subagent-finish") {
56
+ return toJsonValue(event.childRun);
57
+ }
58
+ if (event.type === "run-finish") {
59
+ return { status: event.status, currentStep: event.state.currentStep };
60
+ }
61
+ return undefined;
62
+ };
63
+ const toTraceEvent = (event) => ({
64
+ type: event.type,
65
+ runId: event.runId,
66
+ agentId: event.agentId,
67
+ timestamp: Date.now(),
68
+ step: event.type === "step-start"
69
+ ? event.stepIndex
70
+ : event.type === "step-finish"
71
+ ? event.step.index
72
+ : undefined,
73
+ status: event.type === "run-finish" || event.type === "state-saved"
74
+ ? event.status
75
+ : event.type === "step-finish"
76
+ ? event.step.status
77
+ : undefined,
78
+ name: event.type === "approval-request"
79
+ ? event.approval.name
80
+ : event.type === "tool-approval"
81
+ ? event.toolCall.name
82
+ : event.type === "subagent-start"
83
+ ? event.toolName
84
+ : event.type === "subagent-finish"
85
+ ? event.childRun.toolName
86
+ : undefined,
87
+ data: serializeEventData(event)
88
+ });
89
+ const replayEvents = (state) => replayAgentRun(state).timeline.map((event) => ({
90
+ type: event.type,
91
+ runId: state.runId,
92
+ agentId: state.agentId,
93
+ timestamp: event.type === "run-start"
94
+ ? event.startedAt
95
+ : event.type === "step-start"
96
+ ? event.startedAt
97
+ : event.type === "step-finish"
98
+ ? event.finishedAt
99
+ : event.type === "run-finish"
100
+ ? event.finishedAt
101
+ : undefined,
102
+ step: "step" in event ? event.step : undefined,
103
+ status: "status" in event ? event.status : undefined,
104
+ name: event.type === "tool-call"
105
+ ? event.toolCall.name
106
+ : event.type === "tool-result"
107
+ ? event.result.toolName
108
+ : event.type === "subagent-run"
109
+ ? event.childRun.toolName
110
+ : event.type === "approval-request"
111
+ ? event.approval.name
112
+ : undefined,
113
+ data: cloneJson(event)
114
+ }));
115
+ const stateToTrace = (state, options = {}, events = replayEvents(state)) => {
116
+ const includeMessages = options.includeMessages ?? false;
117
+ const includeToolInputs = options.includeToolInputs ?? false;
118
+ return {
119
+ runId: state.runId,
120
+ agentId: state.agentId,
121
+ provider: state.provider,
122
+ modelId: state.modelId,
123
+ status: state.status,
124
+ startedAt: state.startedAt,
125
+ updatedAt: state.updatedAt,
126
+ durationMs: duration(state.startedAt, state.updatedAt),
127
+ steps: state.steps.map((step) => ({
128
+ index: step.index,
129
+ status: step.status,
130
+ startedAt: step.startedAt,
131
+ finishedAt: step.finishedAt,
132
+ durationMs: duration(step.startedAt, step.finishedAt),
133
+ toolCalls: getToolCallsFromMessages(step.response?.messages ?? [], includeToolInputs),
134
+ toolResults: cloneJson(step.toolResults),
135
+ usage: normalizeUsage(stepUsage(step)),
136
+ ...(includeMessages ? { messages: cloneJson(step.response?.messages ?? []) } : {}),
137
+ error: step.error
138
+ })),
139
+ childRuns: cloneJson(state.childRuns ?? []),
140
+ events: cloneJson(events),
141
+ approvals: cloneJson(state.pendingApprovals),
142
+ usage: normalizeUsage(state.usage),
143
+ outputText: options.outputPreviewLength === 0 ? undefined : state.outputText,
144
+ outputPreview: preview(state.outputText, options.outputPreviewLength),
145
+ error: state.error,
146
+ cancellationReason: state.cancellationReason
147
+ };
148
+ };
149
+ export const createAgentTraceArtifact = (state, options = {}) => stateToTrace(state, options);
150
+ const requireParentLookup = (store) => {
151
+ if (!store.findByParentRunId) {
152
+ throw new ValidationError('The agent run "store" must implement "findByParentRunId()" to build hierarchical agent traces.');
153
+ }
154
+ };
155
+ const loadRunTree = async (store, runId, visited = new Set()) => {
156
+ if (visited.has(runId)) {
157
+ return undefined;
158
+ }
159
+ visited.add(runId);
160
+ return store.load(runId);
161
+ };
162
+ const buildTreeNode = async (store, state, visited) => {
163
+ const childStates = await store.findByParentRunId?.(state.runId) ?? [];
164
+ const children = [];
165
+ for (const childState of childStates) {
166
+ if (visited.has(childState.runId)) {
167
+ continue;
168
+ }
169
+ visited.add(childState.runId);
170
+ children.push(await buildTreeNode(store, childState, visited));
171
+ }
172
+ return {
173
+ runId: state.runId,
174
+ agentId: state.agentId,
175
+ parentRunId: state.parentRunId,
176
+ status: state.status,
177
+ snapshot: createAgentRunSnapshot(state),
178
+ children
179
+ };
180
+ };
181
+ const countTreeNodes = (node) => 1 + node.children.reduce((total, child) => total + countTreeNodes(child), 0);
182
+ export const createAgentRunTreeSnapshot = async (store, runId) => {
183
+ requireParentLookup(store);
184
+ const rootState = await loadRunTree(store, runId);
185
+ if (!rootState) {
186
+ return undefined;
187
+ }
188
+ const root = await buildTreeNode(store, rootState, new Set([rootState.runId]));
189
+ return {
190
+ root,
191
+ totalRuns: countTreeNodes(root)
192
+ };
193
+ };
194
+ const buildTraceNode = async (store, state, options, visited) => {
195
+ const childStates = await store.findByParentRunId?.(state.runId) ?? [];
196
+ const children = [];
197
+ for (const childState of childStates) {
198
+ if (visited.has(childState.runId)) {
199
+ continue;
200
+ }
201
+ visited.add(childState.runId);
202
+ children.push(await buildTraceNode(store, childState, options, visited));
203
+ }
204
+ return {
205
+ trace: createAgentTraceArtifact(state, options),
206
+ children
207
+ };
208
+ };
209
+ export const createHierarchicalAgentTrace = async (store, runId, options = {}) => {
210
+ requireParentLookup(store);
211
+ const rootState = await loadRunTree(store, runId);
212
+ if (!rootState) {
213
+ return undefined;
214
+ }
215
+ const root = await buildTraceNode(store, rootState, options, new Set([rootState.runId]));
216
+ return {
217
+ root,
218
+ totalRuns: countTreeNodes(root)
219
+ };
220
+ };
221
+ export const estimateTokenCost = (usage, pricing) => {
222
+ const normalizedUsage = normalizeUsage(usage);
223
+ if (!normalizedUsage || !pricing) {
224
+ return {
225
+ currency: pricing?.currency,
226
+ usage: normalizedUsage
227
+ };
228
+ }
229
+ const inputRate = pricing.inputCostPer1kTokens ?? pricing.costPer1kTokens ?? pricing.totalCostPer1kTokens;
230
+ const outputRate = pricing.outputCostPer1kTokens ?? pricing.costPer1kTokens ?? pricing.totalCostPer1kTokens;
231
+ const totalRate = pricing.totalCostPer1kTokens ?? pricing.costPer1kTokens;
232
+ const inputCost = inputRate !== undefined && normalizedUsage.inputTokens !== undefined
233
+ ? (normalizedUsage.inputTokens / 1000) * inputRate
234
+ : undefined;
235
+ const outputCost = outputRate !== undefined && normalizedUsage.outputTokens !== undefined
236
+ ? (normalizedUsage.outputTokens / 1000) * outputRate
237
+ : undefined;
238
+ const totalCost = inputCost !== undefined || outputCost !== undefined
239
+ ? (inputCost ?? 0) + (outputCost ?? 0)
240
+ : totalRate !== undefined && normalizedUsage.totalTokens !== undefined
241
+ ? (normalizedUsage.totalTokens / 1000) * totalRate
242
+ : undefined;
243
+ return {
244
+ inputCost,
245
+ outputCost,
246
+ totalCost,
247
+ currency: pricing.currency,
248
+ usage: normalizedUsage
249
+ };
250
+ };
251
+ const usageFromStateOrTrace = (stateOrTrace) => stateOrTrace.usage;
252
+ const resolvePricing = (stateOrTrace, pricing) => {
253
+ if (!pricing) {
254
+ return undefined;
255
+ }
256
+ if (!isCatalog(pricing)) {
257
+ return pricing;
258
+ }
259
+ const entry = pricing.find(stateOrTrace.provider, stateOrTrace.modelId);
260
+ return entry?.costPer1kTokens === undefined
261
+ ? undefined
262
+ : {
263
+ costPer1kTokens: entry.costPer1kTokens
264
+ };
265
+ };
266
+ export const estimateAgentRunCost = (stateOrTrace, pricing) => estimateTokenCost(usageFromStateOrTrace(stateOrTrace), resolvePricing(stateOrTrace, pricing));
267
+ export const summarizeAgentTrace = (trace, options = {}) => {
268
+ const toolResults = trace.steps.flatMap((step) => step.toolResults);
269
+ return {
270
+ runId: trace.runId,
271
+ agentId: trace.agentId,
272
+ provider: trace.provider,
273
+ modelId: trace.modelId,
274
+ status: trace.status,
275
+ latency: {
276
+ startedAt: trace.startedAt,
277
+ finishedAt: trace.updatedAt,
278
+ durationMs: trace.durationMs
279
+ },
280
+ steps: trace.steps.length,
281
+ childRuns: trace.childRuns?.length ?? 0,
282
+ toolCalls: trace.steps.reduce((total, step) => total + step.toolCalls.length, 0),
283
+ toolErrors: toolResults.filter((result) => result.isError).length,
284
+ approvals: trace.approvals.length,
285
+ usage: trace.usage,
286
+ cost: estimateAgentRunCost(trace, options.pricing),
287
+ error: trace.error,
288
+ cancellationReason: trace.cancellationReason
289
+ };
290
+ };
291
+ export const createAgentTraceCollector = (options = {}) => {
292
+ const events = new Map();
293
+ const traces = new Map();
294
+ let latestRunId;
295
+ const appendEvent = (event) => {
296
+ latestRunId = event.runId;
297
+ events.set(event.runId, [...(events.get(event.runId) ?? []), event]);
298
+ };
299
+ return {
300
+ observer: async (event) => {
301
+ const traceEvent = toTraceEvent(event);
302
+ appendEvent(traceEvent);
303
+ if (event.type === "run-finish") {
304
+ traces.set(event.runId, stateToTrace(event.state, options, events.get(event.runId) ?? [traceEvent]));
305
+ }
306
+ },
307
+ getTrace(runId) {
308
+ return traces.get(runId ?? latestRunId ?? "");
309
+ },
310
+ getEvents(runId) {
311
+ if (runId) {
312
+ return [...(events.get(runId) ?? [])];
313
+ }
314
+ return [...events.values()].flat();
315
+ },
316
+ reset(runId) {
317
+ if (runId) {
318
+ events.delete(runId);
319
+ traces.delete(runId);
320
+ if (latestRunId === runId) {
321
+ latestRunId = undefined;
322
+ }
323
+ return;
324
+ }
325
+ events.clear();
326
+ traces.clear();
327
+ latestRunId = undefined;
328
+ }
329
+ };
330
+ };
331
+ //# sourceMappingURL=agent-trace.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-trace.js","sourceRoot":"","sources":["../src/agent-trace.ts"],"names":[],"mappings":"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"}
package/dist/agent.d.ts CHANGED
@@ -1,8 +1,19 @@
1
- import type { AgentDefinition, AgentRunInput, AgentRunOutput, AgentRunState, AgentStreamResult, LanguageModel } from "./types.js";
1
+ import { z } from "zod";
2
+ import type { AgentDefinition, AgentGroupMember, AgentGroupRunInput, AgentGroupRunOutput, AgentRunCancellationOptions, AgentRunInput, AgentRunOutput, AgentRunStore, AgentRunState, AgentRunTreeCancellationResult, AgentStreamResult, CreateSubAgentToolOptions, LanguageModel, PrepareSubagentsForAgentOptions, SubAgentToolOutput, ToolDefinition } from "./types.js";
3
+ declare const subAgentToolInputSchema: z.ZodObject<{
4
+ prompt: z.ZodString;
5
+ system: z.ZodOptional<z.ZodString>;
6
+ }, z.core.$strip>;
7
+ export declare const createSubAgentTool: <TModel extends LanguageModel>(options: CreateSubAgentToolOptions<TModel>) => ToolDefinition<typeof subAgentToolInputSchema, SubAgentToolOutput>;
2
8
  export declare const createAgent: <TModel extends AgentDefinition["model"]>(definition: AgentDefinition<TModel>) => AgentDefinition<TModel>;
9
+ export declare const prepareSubagentsForAgent: <TModel extends LanguageModel>(agent: AgentDefinition<TModel>, options?: PrepareSubagentsForAgentOptions) => AgentDefinition<TModel>;
10
+ export declare const runAgentGroup: (agents: AgentGroupMember[], input?: AgentGroupRunInput) => Promise<AgentGroupRunOutput>;
11
+ export declare const cancelAgentRun: (store: AgentRunStore, runId: string, options?: AgentRunCancellationOptions) => Promise<AgentRunState | undefined>;
12
+ export declare const cancelAgentRunTree: (store: AgentRunStore, runId: string, options?: AgentRunCancellationOptions) => Promise<AgentRunTreeCancellationResult>;
3
13
  export declare const runAgent: <TModel extends LanguageModel>(agent: AgentDefinition<TModel>, input?: AgentRunInput<TModel>) => Promise<AgentRunOutput>;
4
14
  export declare const streamAgent: <TModel extends LanguageModel>(agent: AgentDefinition<TModel>, input?: AgentRunInput<TModel>) => AgentStreamResult;
5
15
  export declare const resumeAgent: <TModel extends LanguageModel>(agent: AgentDefinition<TModel>, input: AgentRunInput<TModel> & {
6
16
  state: AgentRunState;
7
17
  }) => Promise<AgentRunOutput>;
18
+ export {};
8
19
  //# sourceMappingURL=agent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAGV,eAAe,EAIf,aAAa,EACb,cAAc,EACd,aAAa,EAMb,iBAAiB,EAMjB,aAAa,EAOd,MAAM,YAAY,CAAC;AA8fpB,eAAO,MAAM,WAAW,GAAI,MAAM,SAAS,eAAe,CAAC,OAAO,CAAC,EACjE,YAAY,eAAe,CAAC,MAAM,CAAC,KAClC,eAAe,CAAC,MAAM,CAGvB,CAAC;AAEH,eAAO,MAAM,QAAQ,GAAU,MAAM,SAAS,aAAa,EACzD,OAAO,eAAe,CAAC,MAAM,CAAC,EAC9B,QAAO,aAAa,CAAC,MAAM,CAAM,KAChC,OAAO,CAAC,cAAc,CAsExB,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,MAAM,SAAS,aAAa,EACtD,OAAO,eAAe,CAAC,MAAM,CAAC,EAC9B,QAAO,aAAa,CAAC,MAAM,CAAM,KAChC,iBAwRF,CAAC;AAEF,eAAO,MAAM,WAAW,GAAU,MAAM,SAAS,aAAa,EAC5D,OAAO,eAAe,CAAC,MAAM,CAAC,EAC9B,OAAO,aAAa,CAAC,MAAM,CAAC,GAAG;IAAE,KAAK,EAAE,aAAa,CAAA;CAAE,KACtD,OAAO,CAAC,cAAc,CAA2B,CAAC"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAIV,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EAInB,2BAA2B,EAC3B,aAAa,EACb,cAAc,EAEd,aAAa,EACb,aAAa,EACb,8BAA8B,EAM9B,iBAAiB,EAEjB,yBAAyB,EAKzB,aAAa,EAGb,+BAA+B,EAG/B,kBAAkB,EAGlB,cAAc,EAEf,MAAM,YAAY,CAAC;AAuSpB,QAAA,MAAM,uBAAuB;;;iBAG3B,CAAC;AAaH,eAAO,MAAM,kBAAkB,GAAI,MAAM,SAAS,aAAa,EAC7D,SAAS,yBAAyB,CAAC,MAAM,CAAC,KACzC,cAAc,CAAC,OAAO,uBAAuB,EAAE,kBAAkB,CA+EnE,CAAC;AAkZF,eAAO,MAAM,WAAW,GAAI,MAAM,SAAS,eAAe,CAAC,OAAO,CAAC,EACjE,YAAY,eAAe,CAAC,MAAM,CAAC,KAClC,eAAe,CAAC,MAAM,CAGvB,CAAC;AAEH,eAAO,MAAM,wBAAwB,GAAI,MAAM,SAAS,aAAa,EACnE,OAAO,eAAe,CAAC,MAAM,CAAC,EAC9B,UAAS,+BAAoC,KAC5C,eAAe,CAAC,MAAM,CAyBxB,CAAC;AAEF,eAAO,MAAM,aAAa,GACxB,QAAQ,gBAAgB,EAAE,EAC1B,QAAO,kBAAuB,KAC7B,OAAO,CAAC,mBAAmB,CA0E7B,CAAC;AAEF,eAAO,MAAM,cAAc,GACzB,OAAO,aAAa,EACpB,OAAO,MAAM,EACb,UAAS,2BAAgC,KACxC,OAAO,CAAC,aAAa,GAAG,SAAS,CAkBnC,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,OAAO,aAAa,EACpB,OAAO,MAAM,EACb,UAAS,2BAAgC,KACxC,OAAO,CAAC,8BAA8B,CAoDxC,CAAC;AAEF,eAAO,MAAM,QAAQ,GAAU,MAAM,SAAS,aAAa,EACzD,OAAO,eAAe,CAAC,MAAM,CAAC,EAC9B,QAAO,aAAa,CAAC,MAAM,CAAM,KAChC,OAAO,CAAC,cAAc,CA6FxB,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,MAAM,SAAS,aAAa,EACtD,OAAO,eAAe,CAAC,MAAM,CAAC,EAC9B,QAAO,aAAa,CAAC,MAAM,CAAM,KAChC,iBA+TF,CAAC;AAEF,eAAO,MAAM,WAAW,GAAU,MAAM,SAAS,aAAa,EAC5D,OAAO,eAAe,CAAC,MAAM,CAAC,EAC9B,OAAO,aAAa,CAAC,MAAM,CAAC,GAAG;IAAE,KAAK,EAAE,aAAa,CAAA;CAAE,KACtD,OAAO,CAAC,cAAc,CAA2B,CAAC"}