@fastpaca/cria 0.0.1 → 1.1.3

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 (113) hide show
  1. package/README.md +118 -121
  2. package/dist/ai-sdk/index.d.ts +68 -0
  3. package/dist/ai-sdk/index.d.ts.map +1 -0
  4. package/dist/ai-sdk/index.js +375 -0
  5. package/dist/ai-sdk/index.js.map +1 -0
  6. package/dist/anthropic/index.d.ts +102 -0
  7. package/dist/anthropic/index.d.ts.map +1 -0
  8. package/dist/anthropic/index.js +281 -0
  9. package/dist/anthropic/index.js.map +1 -0
  10. package/dist/components/index.d.ts +147 -0
  11. package/dist/components/index.d.ts.map +1 -0
  12. package/dist/components/index.js +181 -0
  13. package/dist/components/index.js.map +1 -0
  14. package/dist/components/summary.d.ts +90 -0
  15. package/dist/components/summary.d.ts.map +1 -0
  16. package/dist/components/summary.js +118 -0
  17. package/dist/components/summary.js.map +1 -0
  18. package/dist/components/vector-search.d.ts +70 -0
  19. package/dist/components/vector-search.d.ts.map +1 -0
  20. package/dist/components/vector-search.js +110 -0
  21. package/dist/components/vector-search.js.map +1 -0
  22. package/dist/dsl.d.ts +201 -0
  23. package/dist/dsl.d.ts.map +1 -0
  24. package/dist/dsl.js +320 -0
  25. package/dist/dsl.js.map +1 -0
  26. package/dist/index.d.ts +20 -19
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +18 -19
  29. package/dist/index.js.map +1 -1
  30. package/dist/instrumentation/otel.d.ts +19 -0
  31. package/dist/instrumentation/otel.d.ts.map +1 -0
  32. package/dist/instrumentation/otel.js +102 -0
  33. package/dist/instrumentation/otel.js.map +1 -0
  34. package/dist/jsx/index.d.ts +6 -0
  35. package/dist/jsx/index.d.ts.map +1 -0
  36. package/dist/jsx/index.js +7 -0
  37. package/dist/jsx/index.js.map +1 -0
  38. package/dist/jsx/jsx-dev-runtime.d.ts +2 -0
  39. package/dist/jsx/jsx-dev-runtime.d.ts.map +1 -0
  40. package/dist/jsx/jsx-dev-runtime.js +3 -0
  41. package/dist/jsx/jsx-dev-runtime.js.map +1 -0
  42. package/dist/jsx/jsx-runtime.d.ts +40 -0
  43. package/dist/jsx/jsx-runtime.d.ts.map +1 -0
  44. package/dist/{jsx-runtime.js → jsx/jsx-runtime.js} +14 -14
  45. package/dist/jsx/jsx-runtime.js.map +1 -0
  46. package/dist/memory/chroma/index.d.ts +59 -0
  47. package/dist/memory/chroma/index.d.ts.map +1 -0
  48. package/dist/memory/chroma/index.js +172 -0
  49. package/dist/memory/chroma/index.js.map +1 -0
  50. package/dist/memory/index.d.ts +4 -0
  51. package/dist/memory/index.d.ts.map +1 -0
  52. package/dist/memory/index.js +2 -0
  53. package/dist/memory/index.js.map +1 -0
  54. package/dist/memory/key-value.d.ts +71 -0
  55. package/dist/memory/key-value.d.ts.map +1 -0
  56. package/dist/memory/key-value.js +34 -0
  57. package/dist/memory/key-value.js.map +1 -0
  58. package/dist/memory/postgres.d.ts +71 -0
  59. package/dist/memory/postgres.d.ts.map +1 -0
  60. package/dist/memory/postgres.js +124 -0
  61. package/dist/memory/postgres.js.map +1 -0
  62. package/dist/memory/qdrant/index.d.ts +64 -0
  63. package/dist/memory/qdrant/index.d.ts.map +1 -0
  64. package/dist/memory/qdrant/index.js +136 -0
  65. package/dist/memory/qdrant/index.js.map +1 -0
  66. package/dist/memory/redis.d.ts +70 -0
  67. package/dist/memory/redis.d.ts.map +1 -0
  68. package/dist/memory/redis.js +127 -0
  69. package/dist/memory/redis.js.map +1 -0
  70. package/dist/memory/vector.d.ts +53 -0
  71. package/dist/memory/vector.d.ts.map +1 -0
  72. package/dist/memory/vector.js +2 -0
  73. package/dist/memory/vector.js.map +1 -0
  74. package/dist/openai/index.d.ts +73 -0
  75. package/dist/openai/index.d.ts.map +1 -0
  76. package/dist/openai/index.js +306 -0
  77. package/dist/openai/index.js.map +1 -0
  78. package/dist/render.d.ts +44 -40
  79. package/dist/render.d.ts.map +1 -1
  80. package/dist/render.js +174 -148
  81. package/dist/render.js.map +1 -1
  82. package/dist/renderers/markdown.d.ts +3 -0
  83. package/dist/renderers/markdown.d.ts.map +1 -0
  84. package/dist/renderers/markdown.js +43 -0
  85. package/dist/renderers/markdown.js.map +1 -0
  86. package/dist/renderers/shared.d.ts +82 -0
  87. package/dist/renderers/shared.d.ts.map +1 -0
  88. package/dist/renderers/shared.js +156 -0
  89. package/dist/renderers/shared.js.map +1 -0
  90. package/dist/snapshot.d.ts +47 -0
  91. package/dist/snapshot.d.ts.map +1 -0
  92. package/dist/snapshot.js +144 -0
  93. package/dist/snapshot.js.map +1 -0
  94. package/dist/tokenizers.d.ts +14 -0
  95. package/dist/tokenizers.d.ts.map +1 -0
  96. package/dist/tokenizers.js +45 -0
  97. package/dist/tokenizers.js.map +1 -0
  98. package/dist/types.d.ts +221 -85
  99. package/dist/types.d.ts.map +1 -1
  100. package/dist/types.js +116 -2
  101. package/dist/types.js.map +1 -1
  102. package/package.json +111 -5
  103. package/dist/components.d.ts +0 -78
  104. package/dist/components.d.ts.map +0 -1
  105. package/dist/components.js +0 -98
  106. package/dist/components.js.map +0 -1
  107. package/dist/jsx-runtime.d.ts +0 -18
  108. package/dist/jsx-runtime.d.ts.map +0 -1
  109. package/dist/jsx-runtime.js.map +0 -1
  110. package/dist/render.test.d.ts +0 -2
  111. package/dist/render.test.d.ts.map +0 -1
  112. package/dist/render.test.js +0 -49
  113. package/dist/render.test.js.map +0 -1
@@ -0,0 +1,375 @@
1
+ import { generateText } from "ai";
2
+ import { Message, Reasoning, Region, ToolCall, ToolResult, } from "../components";
3
+ import { markdownRenderer } from "../renderers/markdown";
4
+ import { coalesceTextParts, collectMessageNodes, collectSemanticParts, partsToText, } from "../renderers/shared";
5
+ import { tiktokenTokenizer } from "../tokenizers";
6
+ export const DEFAULT_PRIORITIES = {
7
+ system: 0,
8
+ user: 1,
9
+ assistant: 1,
10
+ toolCall: 3,
11
+ toolResult: 2,
12
+ reasoning: 3,
13
+ };
14
+ /**
15
+ * Converts AI SDK UIMessages into Cria prompt elements.
16
+ * Use this to include conversation history in your prompts.
17
+ */
18
+ export function Messages({ messages, includeReasoning = false, priorities, id, }) {
19
+ const resolvedPriorities = resolvePriorities(priorities);
20
+ const children = messages.map((message) => UIMessageElement({
21
+ includeReasoning,
22
+ message,
23
+ priorities: resolvedPriorities,
24
+ }));
25
+ return Region({
26
+ priority: 0,
27
+ ...(id === undefined ? {} : { id }),
28
+ children,
29
+ });
30
+ }
31
+ const omitStrategy = () => null;
32
+ function UIMessageElement({ message, priorities, includeReasoning, }) {
33
+ const messagePriority = rolePriority(message.role, priorities);
34
+ const children = [];
35
+ for (const part of message.parts) {
36
+ if (part.type === "text") {
37
+ children.push(part.text);
38
+ continue;
39
+ }
40
+ if (part.type === "reasoning") {
41
+ if (!includeReasoning) {
42
+ continue;
43
+ }
44
+ children.push(Reasoning({
45
+ priority: priorities.reasoning,
46
+ strategy: omitStrategy,
47
+ text: part.text,
48
+ }));
49
+ continue;
50
+ }
51
+ const toolInvocation = parseToolInvocationPart(part);
52
+ if (!toolInvocation) {
53
+ continue;
54
+ }
55
+ const toolCall = ToolCall({
56
+ input: toolInvocation.input,
57
+ priority: priorities.toolCall,
58
+ strategy: omitStrategy,
59
+ toolCallId: toolInvocation.toolCallId,
60
+ toolName: toolInvocation.toolName,
61
+ });
62
+ children.push(toolCall);
63
+ if (toolInvocation.output !== undefined) {
64
+ children.push(ToolResult({
65
+ output: toolInvocation.output,
66
+ priority: priorities.toolResult,
67
+ strategy: omitStrategy,
68
+ toolCallId: toolInvocation.toolCallId,
69
+ toolName: toolInvocation.toolName,
70
+ }));
71
+ }
72
+ }
73
+ return Message({
74
+ id: `message:${message.id}`,
75
+ messageRole: message.role,
76
+ priority: messagePriority,
77
+ children,
78
+ });
79
+ }
80
+ function resolvePriorities(priorities) {
81
+ return { ...DEFAULT_PRIORITIES, ...priorities };
82
+ }
83
+ const ROLE_PRIORITY_MAP = {
84
+ system: "system",
85
+ user: "user",
86
+ assistant: "assistant",
87
+ };
88
+ function rolePriority(role, priorities) {
89
+ return priorities[ROLE_PRIORITY_MAP[role]];
90
+ }
91
+ const TOOL_PART_PREFIX = "tool-";
92
+ function isRecord(value) {
93
+ return typeof value === "object" && value !== null;
94
+ }
95
+ function parseToolInvocationPart(part) {
96
+ if (part.type === "dynamic-tool") {
97
+ const output = toolOutputFromPart(part);
98
+ return {
99
+ toolCallId: part.toolCallId,
100
+ toolName: part.toolName,
101
+ input: part.input,
102
+ ...(output === undefined ? {} : { output }),
103
+ };
104
+ }
105
+ if (part.type.startsWith(TOOL_PART_PREFIX)) {
106
+ const toolName = part.type.slice(TOOL_PART_PREFIX.length);
107
+ if (!("toolCallId" in part)) {
108
+ return null;
109
+ }
110
+ const toolCallId = part.toolCallId;
111
+ if (typeof toolCallId !== "string") {
112
+ return null;
113
+ }
114
+ const input = "input" in part ? part.input : undefined;
115
+ const output = toolOutputFromPart(part);
116
+ return {
117
+ toolCallId,
118
+ toolName,
119
+ input,
120
+ ...(output === undefined ? {} : { output }),
121
+ };
122
+ }
123
+ return null;
124
+ }
125
+ function toolOutputFromPart(part) {
126
+ if (!("state" in part)) {
127
+ return undefined;
128
+ }
129
+ if (part.state === "output-available") {
130
+ if ("output" in part) {
131
+ return part.output;
132
+ }
133
+ return undefined;
134
+ }
135
+ if (part.state === "output-error") {
136
+ const errorText = "errorText" in part && typeof part.errorText === "string"
137
+ ? part.errorText
138
+ : "Tool error";
139
+ return { type: "error-text", value: errorText };
140
+ }
141
+ if (part.state === "output-denied") {
142
+ const reason = deniedReasonFromPart(part);
143
+ return reason
144
+ ? { type: "execution-denied", reason }
145
+ : { type: "execution-denied" };
146
+ }
147
+ return undefined;
148
+ }
149
+ function deniedReasonFromPart(part) {
150
+ if (!("approval" in part)) {
151
+ return undefined;
152
+ }
153
+ const approval = part.approval;
154
+ if (!isRecord(approval)) {
155
+ return undefined;
156
+ }
157
+ const reason = approval.reason;
158
+ if (typeof reason !== "string") {
159
+ return undefined;
160
+ }
161
+ return reason.length === 0 ? undefined : reason;
162
+ }
163
+ /**
164
+ * Renderer that outputs ModelMessage[] for use with the Vercel AI SDK.
165
+ * Pass this to render() to get messages compatible with generateText/streamText.
166
+ */
167
+ export const renderer = {
168
+ name: "ai-sdk",
169
+ tokenString: markdownRenderer.tokenString,
170
+ render: (element) => renderToModelMessages(element),
171
+ empty: () => [],
172
+ };
173
+ function renderToModelMessages(root) {
174
+ const messageNodes = collectMessageNodes(root);
175
+ const result = [];
176
+ for (const messageNode of messageNodes) {
177
+ result.push(...messageNodeToModelMessages(messageNode));
178
+ }
179
+ return result;
180
+ }
181
+ function messageNodeToModelMessages(messageNode) {
182
+ const parts = coalesceTextParts(collectSemanticParts(messageNode.children));
183
+ const groups = groupSemanticParts(parts);
184
+ const result = [];
185
+ for (const group of groups) {
186
+ if (group.kind === "tool-result") {
187
+ result.push(toToolModelMessage(group.parts));
188
+ continue;
189
+ }
190
+ result.push(toModelMessage(messageNode.role, group.parts));
191
+ }
192
+ return result;
193
+ }
194
+ function groupSemanticParts(parts) {
195
+ const groups = [];
196
+ for (const part of parts) {
197
+ const lastGroup = groups.at(-1);
198
+ if (part.type === "tool-result") {
199
+ if (lastGroup?.kind === "tool-result") {
200
+ lastGroup.parts.push(part);
201
+ }
202
+ else {
203
+ groups.push({ kind: "tool-result", parts: [part] });
204
+ }
205
+ continue;
206
+ }
207
+ if (lastGroup?.kind === "non-tool") {
208
+ lastGroup.parts.push(part);
209
+ }
210
+ else {
211
+ groups.push({ kind: "non-tool", parts: [part] });
212
+ }
213
+ }
214
+ return groups;
215
+ }
216
+ function toModelMessage(role, parts) {
217
+ if (role === "system") {
218
+ return { role: "system", content: partsToText(parts) };
219
+ }
220
+ if (role === "user") {
221
+ return { role: "user", content: partsToText(parts) };
222
+ }
223
+ const content = [];
224
+ for (const part of parts) {
225
+ if (part.type === "text") {
226
+ content.push({ type: "text", text: part.text });
227
+ }
228
+ else if (part.type === "reasoning") {
229
+ content.push({ type: "reasoning", text: part.text });
230
+ }
231
+ else if (part.type === "tool-call") {
232
+ content.push({
233
+ type: "tool-call",
234
+ toolCallId: part.toolCallId,
235
+ toolName: part.toolName,
236
+ input: part.input,
237
+ });
238
+ }
239
+ }
240
+ return { role: "assistant", content };
241
+ }
242
+ function toToolModelMessage(parts) {
243
+ const content = [];
244
+ for (const part of parts) {
245
+ content.push({
246
+ type: "tool-result",
247
+ toolCallId: part.toolCallId,
248
+ toolName: part.toolName,
249
+ output: coerceToolResultOutput(part.output),
250
+ });
251
+ }
252
+ return { role: "tool", content };
253
+ }
254
+ function coerceToolResultOutput(output) {
255
+ if (typeof output === "string") {
256
+ return { type: "text", value: output };
257
+ }
258
+ if (isToolResultOutput(output)) {
259
+ return output;
260
+ }
261
+ return { type: "json", value: safeJsonValue(output) };
262
+ }
263
+ function isToolResultOutput(value) {
264
+ if (typeof value !== "object" || value === null) {
265
+ return false;
266
+ }
267
+ const output = value;
268
+ if (typeof output.type !== "string") {
269
+ return false;
270
+ }
271
+ switch (output.type) {
272
+ case "text":
273
+ case "error-text":
274
+ return typeof output.value === "string";
275
+ case "json":
276
+ case "error-json":
277
+ return output.value !== undefined;
278
+ case "execution-denied":
279
+ return output.reason === undefined || typeof output.reason === "string";
280
+ case "content":
281
+ return Array.isArray(output.value);
282
+ default:
283
+ return false;
284
+ }
285
+ }
286
+ function safeJsonValue(value) {
287
+ if (value === null ||
288
+ typeof value === "string" ||
289
+ typeof value === "number" ||
290
+ typeof value === "boolean") {
291
+ return value;
292
+ }
293
+ if (Array.isArray(value)) {
294
+ return value.map(safeJsonValue);
295
+ }
296
+ if (typeof value === "object") {
297
+ const result = {};
298
+ for (const [key, entry] of Object.entries(value)) {
299
+ result[key] = safeJsonValue(entry);
300
+ }
301
+ return result;
302
+ }
303
+ return String(value);
304
+ }
305
+ const VALID_AI_SDK_ROLES = new Set(["user", "assistant", "system"]);
306
+ /**
307
+ * ModelProvider implementation that wraps an AI SDK LanguageModel.
308
+ * Use this with the DSL's `.provider()` method.
309
+ *
310
+ * @example
311
+ * ```typescript
312
+ * import { cria } from "@fastpaca/cria";
313
+ * import { Provider } from "@fastpaca/cria/ai-sdk";
314
+ * import { openai } from "@ai-sdk/openai";
315
+ *
316
+ * const provider = new Provider(openai("gpt-4o"));
317
+ *
318
+ * const prompt = cria
319
+ * .prompt()
320
+ * .provider(provider, (p) =>
321
+ * p.summary(content, { id: "summary", store })
322
+ * )
323
+ * .build();
324
+ * ```
325
+ */
326
+ export class Provider {
327
+ name = "ai-sdk";
328
+ model;
329
+ constructor(model) {
330
+ this.model = model;
331
+ }
332
+ async completion(request) {
333
+ const messages = request.system
334
+ ? [{ role: "system", content: request.system }]
335
+ : [];
336
+ for (const msg of request.messages) {
337
+ if (VALID_AI_SDK_ROLES.has(msg.role)) {
338
+ messages.push({ role: msg.role, content: msg.content });
339
+ }
340
+ }
341
+ const { text } = await generateText({
342
+ model: this.model,
343
+ messages,
344
+ });
345
+ return { text };
346
+ }
347
+ }
348
+ export function AISDKProvider({ model, tokenizer, children = [], }) {
349
+ const provider = {
350
+ name: "ai-sdk",
351
+ tokenizer: tokenizer ??
352
+ tiktokenTokenizer(model.modelId),
353
+ async completion(request) {
354
+ const messages = request.system
355
+ ? [{ role: "system", content: request.system }]
356
+ : [];
357
+ for (const msg of request.messages) {
358
+ if (VALID_AI_SDK_ROLES.has(msg.role)) {
359
+ messages.push({ role: msg.role, content: msg.content });
360
+ }
361
+ }
362
+ const { text } = await generateText({
363
+ model,
364
+ messages,
365
+ });
366
+ return { text };
367
+ },
368
+ };
369
+ return {
370
+ priority: 0,
371
+ children,
372
+ context: { provider },
373
+ };
374
+ }
375
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ai-sdk/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,102 @@
1
+ import type Anthropic from "@anthropic-ai/sdk";
2
+ import type { MessageParam, Model } from "@anthropic-ai/sdk/resources/messages";
3
+ import type { CompletionRequest, CompletionResult, ModelProvider, PromptChildren, PromptElement, PromptRenderer, Tokenizer } from "../types";
4
+ /**
5
+ * Result of rendering to Anthropic format.
6
+ * System messages are extracted separately since Anthropic's API
7
+ * takes them as a separate parameter.
8
+ */
9
+ export interface AnthropicRenderResult {
10
+ system?: string;
11
+ messages: MessageParam[];
12
+ }
13
+ /**
14
+ * Renderer that outputs Anthropic-compatible messages.
15
+ * Use this with the Anthropic SDK.
16
+ *
17
+ * Note: System messages are extracted to a separate `system` field since
18
+ * Anthropic's API takes them as a separate parameter.
19
+ *
20
+ * @example
21
+ * ```ts
22
+ * import { render } from "@fastpaca/cria";
23
+ * import { anthropic } from "@fastpaca/cria/anthropic";
24
+ *
25
+ * const { system, messages } = await render(prompt, { tokenizer, budget, renderer: anthropic });
26
+ * const response = await client.messages.create({
27
+ * model: "claude-sonnet-4-20250514",
28
+ * system,
29
+ * messages,
30
+ * });
31
+ * ```
32
+ */
33
+ export declare const anthropic: PromptRenderer<AnthropicRenderResult>;
34
+ /**
35
+ * ModelProvider implementation that wraps an Anthropic client.
36
+ * Use this with the DSL's `.provider()` method.
37
+ *
38
+ * @example
39
+ * ```typescript
40
+ * import Anthropic from "@anthropic-ai/sdk";
41
+ * import { cria } from "@fastpaca/cria";
42
+ * import { Provider } from "@fastpaca/cria/anthropic";
43
+ *
44
+ * const client = new Anthropic();
45
+ * const provider = new Provider(client, "claude-sonnet-4-20250514");
46
+ *
47
+ * const prompt = cria
48
+ * .prompt()
49
+ * .provider(provider, (p) =>
50
+ * p.summary(content, { id: "summary", store })
51
+ * )
52
+ * .build();
53
+ * ```
54
+ */
55
+ export declare class Provider implements ModelProvider {
56
+ readonly name = "anthropic";
57
+ private readonly client;
58
+ private readonly model;
59
+ private readonly maxTokens;
60
+ constructor(client: Anthropic, model: Model, maxTokens?: number);
61
+ completion(request: CompletionRequest): Promise<CompletionResult>;
62
+ }
63
+ interface AnthropicProviderProps {
64
+ /** Anthropic client instance */
65
+ client: Anthropic;
66
+ /** Model to use (e.g. "claude-sonnet-4-20250514", "claude-3-5-haiku-latest") */
67
+ model: Model;
68
+ /** Maximum tokens to generate. Defaults to 1024. */
69
+ maxTokens?: number;
70
+ /** Optional tokenizer to use for budgeting; defaults to a tiktoken-based tokenizer */
71
+ tokenizer?: Tokenizer;
72
+ /** Child components that will have access to this provider */
73
+ children?: PromptChildren;
74
+ }
75
+ /**
76
+ * Provider component that injects an Anthropic client into the component tree.
77
+ *
78
+ * Child components like `<Summary>` will automatically use this provider
79
+ * for AI-powered operations when no explicit function is provided.
80
+ *
81
+ * @example
82
+ * ```tsx
83
+ * import Anthropic from "@anthropic-ai/sdk";
84
+ * import { AnthropicProvider } from "@fastpaca/cria/anthropic";
85
+ * import { Summary, render } from "@fastpaca/cria";
86
+ *
87
+ * const client = new Anthropic();
88
+ *
89
+ * const prompt = (
90
+ * <AnthropicProvider client={client} model="claude-sonnet-4-20250514">
91
+ * <Summary id="conv-history" store={store} priority={2}>
92
+ * {conversationHistory}
93
+ * </Summary>
94
+ * </AnthropicProvider>
95
+ * );
96
+ *
97
+ * const result = await render(prompt, { tokenizer, budget: 4000 });
98
+ * ```
99
+ */
100
+ export declare function AnthropicProvider({ client, model, maxTokens, tokenizer, children, }: AnthropicProviderProps): PromptElement;
101
+ export {};
102
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/anthropic/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAEV,YAAY,EACZ,KAAK,EAGN,MAAM,sCAAsC,CAAC;AAa9C,OAAO,KAAK,EACV,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,aAAa,EACb,cAAc,EACd,SAAS,EACV,MAAM,UAAU,CAAC;AAElB;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,YAAY,EAAE,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,SAAS,EAAE,cAAc,CAAC,qBAAqB,CAK3D,CAAC;AAoLF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,QAAS,YAAW,aAAa;IAC5C,QAAQ,CAAC,IAAI,eAAe;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAY;IACnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,SAAO;IAMvD,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAaxE;AA0BD,UAAU,sBAAsB;IAC9B,gCAAgC;IAChC,MAAM,EAAE,SAAS,CAAC;IAClB,gFAAgF;IAChF,KAAK,EAAE,KAAK,CAAC;IACb,oDAAoD;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sFAAsF;IACtF,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,MAAM,EACN,KAAK,EACL,SAAgB,EAChB,SAAS,EACT,QAAa,GACd,EAAE,sBAAsB,GAAG,aAAa,CAwBxC"}