@aeye/openai 0.3.8 → 0.3.10

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.
package/aeye-openai.md ADDED
@@ -0,0 +1,180 @@
1
+ # @aeye/openai
2
+
3
+ One-line purpose: OpenAI provider for the `@aeye/ai` framework — chat, vision, reasoning, tools, structured output, image generation/edit, transcription, speech, and embeddings via the official `openai` SDK. Also the base class for any OpenAI-compatible provider.
4
+
5
+ ## When to use
6
+
7
+ - You want to call OpenAI (GPT-4o, GPT-4, o-series, DALL-E, gpt-image, Whisper, TTS, text-embedding-3-*) through `@aeye/ai`.
8
+ - You need a base class to build an OpenAI-compatible provider (Azure OpenAI, OpenRouter, local OpenAI-shaped endpoints). `@aeye/openrouter` is built this way.
9
+
10
+ ## Install / import
11
+
12
+ ```bash
13
+ npm install @aeye/openai openai
14
+ ```
15
+
16
+ ```typescript
17
+ import {
18
+ OpenAIProvider,
19
+ type OpenAIConfig,
20
+ type OpenAIHooks,
21
+ // error classes (from @aeye/openai)
22
+ ProviderError,
23
+ ProviderAuthError,
24
+ RateLimitError,
25
+ ProviderRateLimitError,
26
+ ProviderQuotaError,
27
+ ContextWindowError,
28
+ } from '@aeye/openai';
29
+ ```
30
+
31
+ `@aeye/ai` and `@aeye/core` are peer/runtime dependencies (they ship as `dependencies`). The `openai` SDK and `zod` are also dependencies.
32
+
33
+ ## Register with an `@aeye/ai` instance
34
+
35
+ A provider is registered by passing it into `AI.with().providers({...})`. The key you give it is the provider's local name in the registry.
36
+
37
+ ```typescript
38
+ import { AI } from '@aeye/ai';
39
+ import { OpenAIProvider } from '@aeye/openai';
40
+
41
+ const openai = new OpenAIProvider({
42
+ apiKey: process.env.OPENAI_API_KEY!,
43
+ });
44
+
45
+ const ai = AI.with()
46
+ .providers({ openai })
47
+ .create({ /* AI config: modelSources, hooks, defaultContext, ... */ });
48
+
49
+ // Chat
50
+ const response = await ai.chat.get({
51
+ messages: [{ role: 'user', content: 'Hello!' }],
52
+ });
53
+ console.log(response.content);
54
+
55
+ // Explicit model selection is done via metadata, not the provider
56
+ const r2 = await ai.chat.get(
57
+ { messages: [{ role: 'user', content: 'Hi' }] },
58
+ { metadata: { model: 'openai/gpt-4o' } }
59
+ );
60
+ ```
61
+
62
+ You can also use the provider directly without the `AI` facade:
63
+
64
+ ```typescript
65
+ const executor = openai.createExecutor();
66
+ const res = await executor(
67
+ { messages: [{ role: 'user', content: 'Hello!' }] },
68
+ {}, // AIContext
69
+ { model: 'gpt-4o' } // AIMetadata
70
+ );
71
+ ```
72
+
73
+ ## Authentication / credentials
74
+
75
+ - `apiKey` is **required** on `OpenAIConfig` (typed `string`). Conventionally supply `process.env.OPENAI_API_KEY`.
76
+ - `organization` and `project` map to the OpenAI SDK's `organization` / `project` options.
77
+ - `baseURL` lets you point at an OpenAI-compatible endpoint (e.g. Azure). There is no special env var handling in this package — credentials come from the config object you pass.
78
+
79
+ ## Configuration (`OpenAIConfig`)
80
+
81
+ | Field | Type | Notes |
82
+ |-------|------|-------|
83
+ | `apiKey` | `string` (required) | OpenAI API key |
84
+ | `baseURL` | `string` | Custom/compatible endpoint |
85
+ | `organization` | `string` | Org ID |
86
+ | `project` | `string` | Project ID |
87
+ | `store` | `boolean` | Allow OpenAI to store call contents. Defaults to `false` |
88
+ | `retry` | `RetryConfig` | Per-provider retry (maxRetries, initialDelay, retryableStatuses, etc.) |
89
+ | `retryEvents` | `RetryEvents` | Retry lifecycle callbacks (e.g. `onRetry`) |
90
+ | `hooks` | `OpenAIHooks` | Per-operation `beforeRequest` / `afterRequest` / `onError` |
91
+ | `defaultModels` | object | Fallback model per capability: `chat`, `imageGenerate`, `imageEdit`, `imageAnalyze`, `transcription`, `speech`, `embedding` |
92
+
93
+ Retry config can also be overridden per request via `request.extra.retry` / `request.extra.retryEvents`.
94
+
95
+ ### Hooks
96
+
97
+ `OpenAIHooks` has a block per operation: `chat`, `imageGenerate`, `imageEdit`, `imageAnalyze`, `transcribe`, `speech`, `embed`. Each block may define `beforeRequest(request, params, ctx, metadata)`, `afterRequest(request, params, response, ctx, metadata)`, and `onError(request, params, error, ctx, metadata)`. The `params` argument is the raw OpenAI SDK params, so you can inspect/mutate the exact wire payload.
98
+
99
+ ## Supported capabilities
100
+
101
+ | Capability | API surface | Models |
102
+ |-----------|-------------|--------|
103
+ | Chat (+ streaming) | `ai.chat.get` / `ai.chat.stream` | GPT-4o, GPT-4, GPT-3.5, o-series |
104
+ | Vision | `ai.chat` with `image` content | GPT-4o / GPT-4V |
105
+ | Reasoning | `ai.chat` with `request.reason.effort` → `reasoning_effort` | o1, o3-mini, etc. |
106
+ | Tools / function calling | `ai.chat` with `tools` | GPT-4o, GPT-4 |
107
+ | Structured output | `ai.chat` with a schema `responseFormat` | GPT-4o (strict json_schema) |
108
+ | Image generation | `ai.image.generate` | `dall-e-2`, `dall-e-3`, `gpt-image-*` |
109
+ | Image edit | `ai.image.edit` | `dall-e-2`, `gpt-image-*` |
110
+ | Transcription (+ stream) | `ai.transcribe` | `whisper-1`, gpt-4o transcribe |
111
+ | Speech / TTS | `ai.speech` | `tts-1`, `tts-1-hd`, gpt-4o-mini-tts |
112
+ | Embeddings | `ai.embed` | `text-embedding-3-small` / `-large` |
113
+
114
+ ### Strict / structured output
115
+
116
+ The provider only emits OpenAI-shaped strict schemas (`supportedStrictFamilies = {'openai'}`). Strict mode for a tool or structured output engages only when the resolved model's strict format is `openai` **and** the model declares the `toolsStrict` / `structured` capability; otherwise it silently falls back to a lenient (non-strict) schema. A shared `SchemaBudget` is used so tools and the response format cooperate on per-request limits.
117
+
118
+ That default is correct for api.openai.com, which speaks exactly one dialect. **A subclass that fronts other providers' models must widen it** — `supportedStrictFamilies` is the gate on the whole family resolution, so leaving it at `{'openai'}` sends every other family's tool schemas out as LENIENT no matter what the model declares. `OpenRouterProvider` sets `{'openai', 'anthropic', 'google'}` for this reason; `AWSProvider` does the same.
119
+
120
+ ## Usage examples
121
+
122
+ ```typescript
123
+ // Vision
124
+ await ai.chat.get({
125
+ messages: [{
126
+ role: 'user',
127
+ content: [
128
+ { type: 'text', content: 'Describe this image' },
129
+ { type: 'image', content: 'https://example.com/cat.png' },
130
+ ],
131
+ }],
132
+ });
133
+
134
+ // Tools
135
+ import { z } from 'zod';
136
+ await ai.chat.get({
137
+ messages: [{ role: 'user', content: 'Weather in SF?' }],
138
+ tools: [{
139
+ name: 'get_weather',
140
+ description: 'Get current weather',
141
+ parameters: z.object({ location: z.string() }),
142
+ }],
143
+ toolChoice: 'auto',
144
+ });
145
+
146
+ // Image generation
147
+ await ai.image.generate.get({ prompt: 'A sunset over mountains', size: '1024x1024' });
148
+
149
+ // Embeddings
150
+ await ai.embed.get({ texts: ['Hello world'] });
151
+ ```
152
+
153
+ ## Extending for OpenAI-compatible providers
154
+
155
+ `OpenAIProvider<TConfig>` is designed for subclassing. Override:
156
+
157
+ - `createClient(config)` — point at a different `baseURL` / set custom headers.
158
+ - `convertModel(model)` — enrich `ModelInfo`.
159
+ - `listModels(config)` — custom model discovery.
160
+ - `augmentChatRequest` / `augmentChatMessage` / `augmentChatContent` / `augmentChatChunk` / `augmentChatResponse` — inject provider-specific params and parse extra response fields.
161
+ - `augmentImageGenerateRequest`, `augmentImageEditRequest`, `augmentTranscriptionRequest`, `augmentSpeechRequest`, `augmentEmbeddingRequest`.
162
+ - `supportedStrictFamilies` — widen accepted strict descriptor families.
163
+
164
+ ```typescript
165
+ class AzureProvider extends OpenAIProvider {
166
+ readonly name = 'azure';
167
+ protected createClient(config: OpenAIConfig) {
168
+ return new OpenAI({ apiKey: config.apiKey, baseURL: 'https://my.openai.azure.com/v1' });
169
+ }
170
+ }
171
+ ```
172
+
173
+ ## Gotchas
174
+
175
+ - `apiKey` is required by the type; this package does not auto-read `OPENAI_API_KEY` for you (you pass it in).
176
+ - Model is required at request time — supply it via `request.model`, `ctx.metadata.model`, request metadata, or `defaultModels`. Missing model throws `ProviderError`.
177
+ - `store` defaults to `false`; set it explicitly if you rely on OpenAI storing calls.
178
+ - Context-window overflow is not thrown on the chat path — the executor/streamer returns a `Response` with `finishReason: 'length'` instead.
179
+ - Streaming chat always sends `stream_options.include_usage: true` so usage arrives in trailing chunks.
180
+ - Retry types (`RetryConfig`, `RetryEvents`) are accepted structurally via `OpenAIConfig` but are not re-exported from the package entry point.
package/dist/openai.d.ts CHANGED
@@ -5,7 +5,7 @@
5
5
  * Also serves as base class for OpenAI-compatible providers.
6
6
  */
7
7
  import type { AIContextAny, AIMetadataAny, EmbeddingRequest, EmbeddingResponse, ImageAnalyzeRequest, ImageEditRequest, ImageGenerationRequest, ImageGenerationResponse, Message, ModelInfo, Provider, SpeechRequest, SpeechResponse, TranscriptionRequest, TranscriptionResponse } from '@aeye/ai';
8
- import { BaseRequest, type Chunk, type Executor, type MessageContent, ModelInput, type Request, type Response, type Streamer, type ToolCall } from '@aeye/core';
8
+ import { BaseRequest, type Chunk, type DescriptorFamily, type Executor, type MessageContent, ModelInput, type Request, type Response, SchemaBudget, type Streamer, type ToolCall } from '@aeye/core';
9
9
  import OpenAI from 'openai';
10
10
  import { type RetryConfig, type RetryEvents } from './retry';
11
11
  /**
@@ -313,12 +313,50 @@ export declare class OpenAIProvider<TConfig extends OpenAIConfig = OpenAIConfig>
313
313
  /**
314
314
  * Convert @aeye tool definitions to OpenAI format.
315
315
  *
316
- * Transforms Zod schemas into JSON Schema format required by OpenAI.
316
+ * Strict-mode is a best-effort wish: a tool's `strict: true` only takes
317
+ * effect when `resolveStrictFormat(model) === 'openai'` (resolved from
318
+ * the model's `strictFormat` override, or its `provider` / `id` prefix).
319
+ * Numeric
320
+ * priority (`strict: <n>`) competes for slot allocation under the shared
321
+ * `SchemaBudget`; tools that don't fit fall back to LENIENT silently.
317
322
  *
318
- * @param request @aeye request object
319
- * @returns Array of OpenAI-formatted tools or undefined
323
+ * Tools are emitted in their original declaration order, but slot
324
+ * allocation walks them in *descending priority* order so the most-wanted
325
+ * strict items consume the budget first.
326
+ *
327
+ * @param request @aeye request (mutated: each tool's `descriptor` field is
328
+ * pinned for the validation roundtrip)
329
+ * @param model the resolved model the request is targeting
330
+ * @param budget shared allocator (also fed by `convertResponseFormat`)
331
+ */
332
+ protected convertTools(request: Request, model?: ModelInfo, budget?: SchemaBudget): OpenAI.Chat.ChatCompletionTool[] | undefined;
333
+ /**
334
+ * The set of strict descriptor families this provider can speak on the
335
+ * wire. Defaults to `['openai']` — the OpenAI Chat Completions API only
336
+ * accepts OpenAI-shaped strict schemas. Subclasses or custom providers
337
+ * extending OpenAIProvider can extend this set to accept additional
338
+ * registered families (e.g. a custom `'openai-tight'` variant).
339
+ */
340
+ protected supportedStrictFamilies: ReadonlySet<DescriptorFamily>;
341
+ /**
342
+ * Build a SchemaBudget tuned to the strictest of the model's tool /
343
+ * structured-output families. Anthropic-style per-request limits apply
344
+ * across BOTH tool schemas and the response_format schema, so the budget
345
+ * is shared between `convertTools` and `convertResponseFormat`.
346
+ *
347
+ * Strict mode engages only when the model's resolved family is in
348
+ * `supportedStrictFamilies` AND the model has the corresponding
349
+ * capability (`'toolsStrict'` for tools, `'structured'` for output).
350
+ * Mismatched families fall back to LENIENT silently — protects the
351
+ * wire from receiving a dialect the API doesn't understand.
320
352
  */
321
- protected convertTools(request: Request): OpenAI.Chat.ChatCompletionTool[] | undefined;
353
+ protected buildSchemaBudget(model?: ModelInfo): SchemaBudget;
354
+ /**
355
+ * Allocate per-tool descriptors in descending-priority order, then return
356
+ * them in original declaration order. Mutates `request.tools[i].descriptor`
357
+ * to record the chosen id for the Prompt's validation roundtrip.
358
+ */
359
+ private allocateToolDescriptors;
322
360
  /**
323
361
  * Convert @aeye tool choice to OpenAI format.
324
362
  *
@@ -331,12 +369,19 @@ export declare class OpenAIProvider<TConfig extends OpenAIConfig = OpenAIConfig>
331
369
  /**
332
370
  * Convert @aeye response format to OpenAI format.
333
371
  *
334
- * Supports text, JSON object mode, and structured output with Zod schemas.
372
+ * Strict structured output is best-effort: honored only when the chosen
373
+ * `resolveStrictFormat(model) === 'openai'` AND the model has the
374
+ * `'structured'` capability. For unsupported models
375
+ * the LENIENT descriptor is used and the API-level `strict: true` flag is
376
+ * omitted — silent fallback. The chosen descriptor is pinned on the
377
+ * `responseFormat.descriptor` so the Prompt validator can apply the
378
+ * matching strictify before parsing model output.
335
379
  *
336
- * @param request @aeye request object
380
+ * @param request @aeye request object (mutated to record descriptor)
381
+ * @param model the resolved model the request is targeting
337
382
  * @returns OpenAI-formatted response format or undefined
338
383
  */
339
- protected convertResponseFormat(request: Request): OpenAI.Chat.ChatCompletionCreateParams['response_format'] | undefined;
384
+ protected convertResponseFormat(request: Request, model?: ModelInfo, budget?: SchemaBudget): OpenAI.Chat.ChatCompletionCreateParams['response_format'] | undefined;
340
385
  /**
341
386
  * List available models from OpenAI.
342
387
  *
@@ -1 +1 @@
1
- {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../src/openai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../src/openai.ts"],"names":[],"mappings":"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"}
package/dist/openai.js CHANGED
@@ -4,12 +4,33 @@
4
4
  * Provider for OpenAI's GPT models, DALL-E, Whisper, and TTS.
5
5
  * Also serves as base class for OpenAI-compatible providers.
6
6
  */
7
- import { detectTier } from '@aeye/ai';
8
- import { toFile, getModel, toBase64, toJSONSchema, toText, toURL, getResponseFromChunks } from '@aeye/core';
7
+ import { detectTier, isModelInfo, resolveStrictFormat } from '@aeye/ai';
8
+ import { toFile, getDescriptor, getModel, LENIENT, SchemaBudget, strictestOf, strictify, strictPriority, toBase64, toJSONSchema, toText, toURL, getResponseFromChunks } from '@aeye/core';
9
9
  import OpenAI from 'openai';
10
10
  import { isContextWindowError, parseContextWindowError, withRetry } from './retry';
11
11
  import { ContextWindowError, ProviderError } from './types';
12
12
  // ============================================================================
13
+ // OpenAI Provider Configuration
14
+ // ============================================================================
15
+ /**
16
+ * Resolve the full `ModelInfo` for the request when available.
17
+ *
18
+ * `BaseAPI` injects `selected.model` into `ctx.metadata.model` after model
19
+ * selection, so on the standard execution path we get the strict-format
20
+ * declarations directly from there. External callers that bypass `BaseAPI`
21
+ * (e.g. invoking the executor directly) may pass only a model id — we
22
+ * return undefined in that case and the caller falls back to LENIENT.
23
+ */
24
+ function pickModelInfo(metadata, ctx, modelId) {
25
+ const candidates = [metadata?.model, ctx?.metadata?.model];
26
+ for (const c of candidates) {
27
+ if (c && typeof c === 'object' && isModelInfo(c) && c.id === modelId) {
28
+ return c;
29
+ }
30
+ }
31
+ return undefined;
32
+ }
33
+ // ============================================================================
13
34
  // OpenAI Provider Class
14
35
  // ============================================================================
15
36
  /**
@@ -544,23 +565,94 @@ export class OpenAIProvider {
544
565
  /**
545
566
  * Convert @aeye tool definitions to OpenAI format.
546
567
  *
547
- * Transforms Zod schemas into JSON Schema format required by OpenAI.
568
+ * Strict-mode is a best-effort wish: a tool's `strict: true` only takes
569
+ * effect when `resolveStrictFormat(model) === 'openai'` (resolved from
570
+ * the model's `strictFormat` override, or its `provider` / `id` prefix).
571
+ * Numeric
572
+ * priority (`strict: <n>`) competes for slot allocation under the shared
573
+ * `SchemaBudget`; tools that don't fit fall back to LENIENT silently.
548
574
  *
549
- * @param request @aeye request object
550
- * @returns Array of OpenAI-formatted tools or undefined
575
+ * Tools are emitted in their original declaration order, but slot
576
+ * allocation walks them in *descending priority* order so the most-wanted
577
+ * strict items consume the budget first.
578
+ *
579
+ * @param request @aeye request (mutated: each tool's `descriptor` field is
580
+ * pinned for the validation roundtrip)
581
+ * @param model the resolved model the request is targeting
582
+ * @param budget shared allocator (also fed by `convertResponseFormat`)
551
583
  */
552
- convertTools(request) {
584
+ convertTools(request, model, budget) {
553
585
  if (!request.tools || request.tools.length === 0)
554
586
  return undefined;
555
- return request.tools.map((tool) => ({
556
- type: 'function',
557
- function: {
558
- name: tool.name,
559
- description: tool.description,
560
- parameters: toJSONSchema(tool.parameters, tool.strict ?? true),
561
- strict: tool.strict ?? true,
562
- },
563
- }));
587
+ const localBudget = budget ?? this.buildSchemaBudget(model);
588
+ const descriptors = this.allocateToolDescriptors(request, localBudget);
589
+ return request.tools.map((tool, i) => {
590
+ const descriptor = descriptors[i];
591
+ const strictifiedSchema = strictify(tool.parameters, descriptor);
592
+ // Only set the API-level strict flag when we're actually emitting a
593
+ // strict-mode-compatible schema. Setting strict:true with a schema
594
+ // that violates OpenAI's strict-mode rules is the failure mode we
595
+ // are trying to avoid.
596
+ const result = {
597
+ type: 'function',
598
+ function: {
599
+ name: tool.name,
600
+ description: tool.description,
601
+ parameters: toJSONSchema(strictifiedSchema, descriptor),
602
+ ...(descriptor.strict ? { strict: true } : {}),
603
+ },
604
+ };
605
+ return result;
606
+ });
607
+ }
608
+ /**
609
+ * The set of strict descriptor families this provider can speak on the
610
+ * wire. Defaults to `['openai']` — the OpenAI Chat Completions API only
611
+ * accepts OpenAI-shaped strict schemas. Subclasses or custom providers
612
+ * extending OpenAIProvider can extend this set to accept additional
613
+ * registered families (e.g. a custom `'openai-tight'` variant).
614
+ */
615
+ supportedStrictFamilies = new Set(['openai']);
616
+ /**
617
+ * Build a SchemaBudget tuned to the strictest of the model's tool /
618
+ * structured-output families. Anthropic-style per-request limits apply
619
+ * across BOTH tool schemas and the response_format schema, so the budget
620
+ * is shared between `convertTools` and `convertResponseFormat`.
621
+ *
622
+ * Strict mode engages only when the model's resolved family is in
623
+ * `supportedStrictFamilies` AND the model has the corresponding
624
+ * capability (`'toolsStrict'` for tools, `'structured'` for output).
625
+ * Mismatched families fall back to LENIENT silently — protects the
626
+ * wire from receiving a dialect the API doesn't understand.
627
+ */
628
+ buildSchemaBudget(model) {
629
+ const family = model ? resolveStrictFormat(model) : undefined;
630
+ const familySupported = family !== undefined && this.supportedStrictFamilies.has(family);
631
+ const tools = familySupported && model.capabilities.has('toolsStrict')
632
+ ? getDescriptor(family, true)
633
+ : LENIENT;
634
+ const out = familySupported && model.capabilities.has('structured')
635
+ ? getDescriptor(family, true)
636
+ : LENIENT;
637
+ return new SchemaBudget(strictestOf(tools, out));
638
+ }
639
+ /**
640
+ * Allocate per-tool descriptors in descending-priority order, then return
641
+ * them in original declaration order. Mutates `request.tools[i].descriptor`
642
+ * to record the chosen id for the Prompt's validation roundtrip.
643
+ */
644
+ allocateToolDescriptors(request, budget) {
645
+ const tools = request.tools;
646
+ const order = tools
647
+ .map((t, i) => ({ i, p: strictPriority(t.strict) }))
648
+ .sort((a, b) => b.p - a.p);
649
+ const descriptors = new Array(tools.length);
650
+ for (const { i } of order) {
651
+ const tool = tools[i];
652
+ descriptors[i] = budget.allocateTool(tool.parameters, tool.strict);
653
+ tool.descriptor = descriptors[i].id;
654
+ }
655
+ return descriptors;
564
656
  }
565
657
  /**
566
658
  * Convert @aeye tool choice to OpenAI format.
@@ -590,12 +682,19 @@ export class OpenAIProvider {
590
682
  /**
591
683
  * Convert @aeye response format to OpenAI format.
592
684
  *
593
- * Supports text, JSON object mode, and structured output with Zod schemas.
685
+ * Strict structured output is best-effort: honored only when the chosen
686
+ * `resolveStrictFormat(model) === 'openai'` AND the model has the
687
+ * `'structured'` capability. For unsupported models
688
+ * the LENIENT descriptor is used and the API-level `strict: true` flag is
689
+ * omitted — silent fallback. The chosen descriptor is pinned on the
690
+ * `responseFormat.descriptor` so the Prompt validator can apply the
691
+ * matching strictify before parsing model output.
594
692
  *
595
- * @param request @aeye request object
693
+ * @param request @aeye request object (mutated to record descriptor)
694
+ * @param model the resolved model the request is targeting
596
695
  * @returns OpenAI-formatted response format or undefined
597
696
  */
598
- convertResponseFormat(request) {
697
+ convertResponseFormat(request, model, budget) {
599
698
  if (!request.responseFormat)
600
699
  return undefined;
601
700
  if (typeof request.responseFormat === 'string') {
@@ -607,16 +706,18 @@ export class OpenAIProvider {
607
706
  }
608
707
  return undefined;
609
708
  }
610
- const strict = request.responseFormat.strict ?? true;
611
- // Zod schema
612
- return {
613
- type: 'json_schema',
614
- json_schema: {
615
- name: 'response',
616
- schema: toJSONSchema(request.responseFormat.type, strict),
617
- strict,
618
- },
709
+ const localBudget = budget ?? this.buildSchemaBudget(model);
710
+ const descriptor = localBudget.allocateOutput(request.responseFormat.type, request.responseFormat.strict ?? 1);
711
+ request.responseFormat.descriptor = descriptor.id;
712
+ const strictifiedSchema = strictify(request.responseFormat.type, descriptor);
713
+ const json_schema = {
714
+ name: 'response',
715
+ schema: toJSONSchema(strictifiedSchema, descriptor),
619
716
  };
717
+ if (descriptor.strict) {
718
+ json_schema.strict = true;
719
+ }
720
+ return { type: 'json_schema', json_schema };
620
721
  }
621
722
  // ============================================================================
622
723
  // Provider Interface Implementation
@@ -705,11 +806,20 @@ export class OpenAIProvider {
705
806
  const client = this.createClient(effectiveConfig);
706
807
  return async (request, ctx, metadata, requestSignal) => {
707
808
  const { model, retry } = this.getRequestData(request, requestSignal, ctx, effectiveConfig, 'chat', metadata?.model || effectiveConfig.defaultModels?.chat);
809
+ // Resolve full ModelInfo for strict-format decisions. BaseAPI injects
810
+ // the selected ModelInfo into ctx.metadata.model after model selection;
811
+ // fall back to the lightweight model from getRequestData when no
812
+ // ModelInfo is available (e.g. external callers bypassing BaseAPI).
813
+ const modelInfo = pickModelInfo(metadata, ctx, model.id);
814
+ // One budget shared across tools + structured output. Anthropic-style
815
+ // per-request limits apply across the whole request, so allocations
816
+ // need to cooperate rather than each hold their own counter.
817
+ const budget = this.buildSchemaBudget(modelInfo);
708
818
  const messages = await this.convertMessages(request, effectiveConfig);
709
- const tools = this.convertTools(request);
819
+ const tools = this.convertTools(request, modelInfo, budget);
710
820
  const tool_choice = tools?.length ? this.convertToolChoice(request) : undefined;
711
821
  const parallel_tool_calls = tools?.length ? !request.toolsOneAtATime : undefined;
712
- const response_format = this.convertResponseFormat(request);
822
+ const response_format = this.convertResponseFormat(request, modelInfo, budget);
713
823
  const params = {
714
824
  model: model.id,
715
825
  messages,
@@ -803,11 +913,13 @@ export class OpenAIProvider {
803
913
  const client = this.createClient(effectiveConfig);
804
914
  return async function* (request, ctx, metadata, requestSignal) {
805
915
  const { model, retry, signal } = this.getRequestData(request, requestSignal, ctx, effectiveConfig, 'streaming chat', metadata?.model || effectiveConfig.defaultModels?.chat);
916
+ const modelInfo = pickModelInfo(metadata, ctx, model.id);
917
+ const budget = this.buildSchemaBudget(modelInfo);
806
918
  const messages = await this.convertMessages(request, effectiveConfig);
807
- const tools = this.convertTools(request);
919
+ const tools = this.convertTools(request, modelInfo, budget);
808
920
  const tool_choice = tools?.length ? this.convertToolChoice(request) : undefined;
809
921
  const parallel_tool_calls = tools?.length ? !request.toolsOneAtATime : undefined;
810
- const response_format = this.convertResponseFormat(request);
922
+ const response_format = this.convertResponseFormat(request, modelInfo, budget);
811
923
  const params = {
812
924
  model: model.id,
813
925
  messages,
@@ -873,6 +985,7 @@ export class OpenAIProvider {
873
985
  const toolCallsMap = new Map();
874
986
  const toolCalls = [];
875
987
  const chunks = [];
988
+ let maxIndexSeen = -1;
876
989
  try {
877
990
  for await (const chunk of stream) {
878
991
  if (signal?.aborted) {
@@ -880,9 +993,15 @@ export class OpenAIProvider {
880
993
  }
881
994
  const choice = chunk?.choices[0];
882
995
  const delta = choice?.delta;
996
+ // OpenAI streams `finish_reason: null` on every intermediate chunk
997
+ // and only sets a real value on the last chunk for the choice.
998
+ // Normalize null → undefined so downstream `!== undefined` checks
999
+ // (used by the tool-call finalization logic below) don't treat
1000
+ // every intermediate chunk as "the model is done".
1001
+ const finishReasonRaw = choice?.finish_reason ?? undefined;
883
1002
  const yieldChunk = {
884
1003
  content: delta?.content || undefined,
885
- finishReason: choice?.finish_reason,
1004
+ finishReason: finishReasonRaw,
886
1005
  refusal: delta?.refusal ?? undefined,
887
1006
  usage: chunk.usage ? convertOpenAIUsage(chunk.usage) : undefined,
888
1007
  };
@@ -893,7 +1012,7 @@ export class OpenAIProvider {
893
1012
  if (delta?.tool_calls) {
894
1013
  for (const tc of delta.tool_calls) {
895
1014
  const existing = toolCallsMap.get(tc.index);
896
- const toolCall = existing || { id: '', name: '', arguments: '', named: false, finished: false, updated: true };
1015
+ const toolCall = existing || { id: '', name: '', arguments: '', named: false, finished: false, updated: true, index: tc.index };
897
1016
  if (tc.id) {
898
1017
  toolCall.id = tc.id;
899
1018
  toolCall.updated = true;
@@ -910,6 +1029,9 @@ export class OpenAIProvider {
910
1029
  toolCallsMap.set(tc.index, toolCall);
911
1030
  toolCalls.push(toolCall);
912
1031
  }
1032
+ if (typeof tc.index === 'number' && tc.index > maxIndexSeen) {
1033
+ maxIndexSeen = tc.index;
1034
+ }
913
1035
  if (toolCall.arguments) {
914
1036
  if (!toolCall.named) {
915
1037
  yieldChunk.toolCallNamed = toolCall;
@@ -921,8 +1043,21 @@ export class OpenAIProvider {
921
1043
  }
922
1044
  }
923
1045
  }
1046
+ // Finalize tool calls only when we have positive evidence they're done.
1047
+ // The previous "updated == false this chunk" check was wrong: providers
1048
+ // (OpenRouter especially, with stream_options.include_usage) interleave
1049
+ // usage-only / keep-alive chunks that have no `choices`/`delta`, which
1050
+ // would prematurely flip a still-streaming tool_call to finished and
1051
+ // emit it with partial arguments — downstream parse() then rejected
1052
+ // it as "called with NO arguments". Only finalize when:
1053
+ // 1. finish_reason is set on this chunk (the whole response is done), or
1054
+ // 2. a higher tc.index appeared (per OpenAI streaming convention,
1055
+ // tool_calls arrive in index order, so a newer index implies the
1056
+ // older ones are complete).
1057
+ // Anything still unfinished by stream end is handled by the finally block.
1058
+ const hasFinishReason = yieldChunk.finishReason !== undefined;
924
1059
  for (const toolCall of toolCalls) {
925
- if (!toolCall.updated && !toolCall.finished) {
1060
+ if (!toolCall.finished && (hasFinishReason || toolCall.index < maxIndexSeen)) {
926
1061
  toolCall.finished = true;
927
1062
  yieldChunk.toolCall = toolCall;
928
1063
  if (!toolCall.named) {
@@ -1 +1 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../src/openai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai.js","sourceRoot":"","sources":["../src/openai.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAqBH,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACxE,OAAO,EAAE,MAAM,EAA2G,aAAa,EAAE,QAAQ,EAAqB,OAAO,EAA0E,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAiB,QAAQ,EAAE,YAAY,EAA2B,MAAM,EAAE,KAAK,EAAc,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAElb,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAoD,SAAS,EAAE,MAAM,SAAS,CAAC;AACrI,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE5D,+EAA+E;AAC/E,gCAAgC;AAChC,+EAA+E;AAE/E;;;;;;;;GAQG;AACH,SAAS,aAAa,CACpB,QAAmC,EACnC,GAA6B,EAC7B,OAAe;IAEf,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC3D,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,OAAO,EAAE,CAAC;YACrE,OAAO,CAAc,CAAC;QACxB,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAwKD,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuFG;AAEH;;GAEG;AACH,SAAS,kBAAkB,CAAC,WAM3B;IACC,MAAM,KAAK,GAAU,EAAE,CAAC;IAExB,iCAAiC;IACjC,gFAAgF;IAChF,uEAAuE;IACvE,MAAM,SAAS,GAAG,CAAC,WAAW,CAAC,aAAa,IAAI,CAAC,CAAC;QACjC,CAAC,WAAW,CAAC,qBAAqB,EAAE,YAAY,IAAI,CAAC,CAAC,CAAC;IACxE,MAAM,UAAU,GAAG,CAAC,WAAW,CAAC,iBAAiB,IAAI,CAAC,CAAC;QACrC,CAAC,WAAW,CAAC,yBAAyB,EAAE,gBAAgB,IAAI,CAAC,CAAC;QAC9D,CAAC,WAAW,CAAC,yBAAyB,EAAE,YAAY,IAAI,CAAC,CAAC,CAAC;IAE7E,IAAI,SAAS,GAAG,CAAC,IAAI,UAAU,GAAG,CAAC,IAAI,WAAW,CAAC,qBAAqB,EAAE,aAAa,EAAE,CAAC;QACxF,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC;QAChB,uCAAuC;QACvC,MAAM,cAAc,GAAG,SAAS,GAAG,CAAC,WAAW,CAAC,qBAAqB,EAAE,aAAa,IAAI,CAAC,CAAC,CAAC;QAC3F,IAAI,cAAc,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,cAAc,CAAC;QAC1D,IAAI,UAAU,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC;QACnD,IAAI,WAAW,CAAC,qBAAqB,EAAE,aAAa,EAAE,CAAC;YACrD,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,qBAAqB,CAAC,aAAa,CAAC;QACtE,CAAC;IACH,CAAC;IAED,mBAAmB;IACnB,IAAI,WAAW,CAAC,yBAAyB,EAAE,gBAAgB,EAAE,CAAC;QAC5D,KAAK,CAAC,SAAS,GAAG;YAChB,MAAM,EAAE,WAAW,CAAC,yBAAyB,CAAC,gBAAgB;SAC/D,CAAC;IACJ,CAAC;IAED,eAAe;IACf,MAAM,UAAU,GAAG,WAAW,CAAC,qBAAqB,EAAE,YAAY,CAAC;IACnE,MAAM,WAAW,GAAG,WAAW,CAAC,yBAAyB,EAAE,YAAY,CAAC;IACxE,IAAI,UAAU,IAAI,WAAW,EAAE,CAAC;QAC9B,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC;QACjB,IAAI,UAAU;YAAE,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC;QAC/C,IAAI,WAAW;YAAE,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC;IACpD,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,OAAO,cAAc;IACzB,sDAAsD;IAC7C,IAAI,GAAW,QAAQ,CAAC;IAEjC,4DAA4D;IACnD,MAAM,CAAU;IAEzB,4CAA4C;IAC5C,eAAe,CAA+B;IAE9C,YAAY,MAAe;QACzB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,+EAA+E;IAC/E,iCAAiC;IACjC,+EAA+E;IAE/E;;;;;;;;;;;;;;;;;;OAkBG;IACO,YAAY,CAAC,MAAe;QACpC,OAAO,IAAI,MAAM,CAAC;YAChB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACO,YAAY,CAAC,KAAmB;QACxC,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAElC,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,IAAI;YACnB,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,IAAI,EAAE,KAAK,CAAC,EAAE;YACd,YAAY,EAAE,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,EAAE,6CAA6C;YAC3F,IAAI;YACJ,OAAO,EAAE,EAAE;YACX,aAAa,EAAE,CAAC,EAAE,oCAAoC;YACtD,eAAe,EAAE,SAAS;YAC1B,QAAQ,EAAE;gBACR,OAAO,EAAE,KAAK,CAAC,QAAQ;gBACvB,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB;SACF,CAAC;IACJ,CAAC;IAED,+EAA+E;IAC/E,sDAAsD;IACtD,+EAA+E;IAE/E;;;;;;OAMG;IACO,2BAA2B,CACnC,MAAe,EACf,OAA+B,EAC/B,MAAe;QAEf,mBAAmB;IACrB,CAAC;IAED;;;;;;OAMG;IACO,uBAAuB,CAC/B,MAAe,EACf,OAAyB,EACzB,MAAe;QAEf,mBAAmB;IACrB,CAAC;IAED;;;;;;OAMG;IACO,2BAA2B,CACnC,MAAe,EACf,OAA6B,EAC7B,MAAe;QAEf,mBAAmB;IACrB,CAAC;IAED;;;;;;OAMG;IACO,oBAAoB,CAC5B,MAAe,EACf,OAAsB,EACtB,MAAe;QAEf,mBAAmB;IACrB,CAAC;IAED;;;;;;OAMG;IACO,uBAAuB,CAC/B,MAAe,EACf,OAAyB,EACzB,MAAe;QAEf,mBAAmB;IACrB,CAAC;IAED;;;;;;;;;;OAUG;IACO,kBAAkB,CAC1B,MAAe,EACf,OAAgB,EAChB,MAAe;QAEf,mBAAmB;IACrB,CAAC;IAED;;;;;;OAMG;IACO,kBAAkB,CAC1B,WAAqB,EACrB,OAAgB,EAChB,MAAe;QAEf,mBAAmB;IACrB,CAAC;IAED;;;;;;;OAOG;IACK,cAAc,CACpB,WAAqB,EACrB,OAAgB,EAChB,MAAe;QAEf,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACtD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;;;OAMG;IACO,kBAAkB,CAC1B,WAAqB,EACrB,OAAuB,EACvB,MAAe;QAEf,mBAAmB;IACrB,CAAC;IAED;;;;;;;OAOG;IACK,cAAc,CACpB,WAAqB,EACrB,OAAuB,EACvB,MAAe;QAEf,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACtD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACO,gBAAgB,CACxB,QAAiB,EACjB,KAAY,EACZ,MAAe;QAEf,mBAAmB;IACrB,CAAC;IAED;;;;;;OAMG;IACO,mBAAmB,CAC3B,QAAiB,EACjB,QAAkB,EAClB,MAAe;QAEf,mBAAmB;IACrB,CAAC;IAED,+EAA+E;IAC/E,sDAAsD;IACtD,+EAA+E;IAE/E;;;;;OAKG;IACO,kBAAkB,CAC1B,CAA4B,EAC5B,IAAY,EACZ,MAAe;QAEf,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC1B,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,IAAI,CAAC,sEAAsE,IAAI,GAAG,CAAC,CAAC;YAC5F,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAyD,EAAE;YAC3E,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACzB,OAAO,IAAI,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YACzF,CAAC;iBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACjC,OAAO,IAAI,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,IAAI,2BAA2B,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YACrH,CAAC;iBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAChC,OAAO,IAAI,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,IAAI,2BAA2B,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YACpH,CAAC;iBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACjC,OAAO,IAAI,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,IAAI,2BAA2B,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YACrH,CAAC;YACD,OAAO,IAAI,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,IAAI,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7G,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACO,KAAK,CAAC,cAAc,CAC5B,CAA4B,EAC5B,IAAY,EACZ,MAAe;QAEf,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC1B,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QACrC,CAAC;QAED,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAA8D,EAAE;YAClG,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;gBAClB,KAAK,MAAM,CAAC,CAAC,CAAC;oBACZ,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,wBAAwB,IAAI,kCAAkC,CAAC,CAAC;oBACpH,OAAO,IAAI,CAAC,cAAc,CAAC;wBACzB,IAAI,EAAE,MAAM;wBACZ,IAAI;qBACL,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;gBACnB,CAAC;gBAED,KAAK,OAAO,CAAC,CAAC,CAAC;oBACb,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;oBACrF,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;wBACtB,OAAO,IAAI,CAAC,cAAc,CAAC;4BACzB,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,yBAAyB,IAAI,mCAAmC;yBACvE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;oBACnB,CAAC;oBAED,OAAO,IAAI,CAAC,cAAc,CAAC;wBACzB,IAAI,EAAE,WAAW;wBACjB,SAAS,EAAE,EAAE,GAAG,EAAE;qBACnB,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;gBACnB,CAAC;gBAED,KAAK,OAAO,CAAC,CAAC,CAAC;oBACb,uCAAuC;oBACvC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;oBACzF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;wBACzB,OAAO,IAAI,CAAC,cAAc,CAAC;4BACzB,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,yBAAyB,IAAI,oCAAoC;yBACxE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;oBACnB,CAAC;oBAED,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,4BAA4B,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;oBACvF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;oBACnF,OAAO,IAAI,CAAC,cAAc,CAAC;wBACzB,IAAI,EAAE,aAAa;wBACnB,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;qBAC9B,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;gBACnB,CAAC;gBAED,KAAK,MAAM,CAAC,CAAC,CAAC;oBACZ,+DAA+D;oBAC/D,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;oBAC7F,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;wBAC3B,OAAO,IAAI,CAAC,cAAc,CAAC;4BACzB,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,wBAAwB,IAAI,oCAAoC;yBACvE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;oBACnB,CAAC;oBAED,OAAO,IAAI,CAAC,cAAc,CAAC;wBACzB,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE;4BACJ,SAAS,EAAE,QAAQ;4BACnB,oBAAoB;4BACpB,QAAQ,EAAE,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;yBAC1D;qBACF,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;gBACnB,CAAC;gBAED;oBACE,OAAO,IAAI,CAAC,cAAc,CAAC;wBACzB,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,iCAAiC,IAAI,GAAG;qBAC/C,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YACrB,CAAC;QACH,CAAC,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;;;OAIG;IACO,eAAe,CAAC,CAAW;QACnC,OAAO;YACL,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE;gBACR,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,SAAS,EAAE,CAAC,CAAC,SAAS;aACvB;SACF,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACO,WAAW,CAAC,IAAwB;QAC5C,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;aAC7B,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;aAC9B,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACtB,CAAC;IAED;;;;;;;;OAQG;IACO,KAAK,CAAC,eAAe,CAAC,OAAgB,EAAE,MAAe;QAC/D,OAAO,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAA8F,EAAE;YACvJ,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;gBACjB,KAAK,QAAQ;oBACX,OAAO,IAAI,CAAC,cAAc,CAAC;wBACzB,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;wBAChC,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,IAAI,QAAQ,EAAE,MAAM,CAAC;qBAC5E,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;gBAClB,KAAK,MAAM;oBACT,OAAO,IAAI,CAAC,cAAc,CAAC;wBACzB,IAAI,EAAE,MAAM;wBACZ,YAAY,EAAE,GAAG,CAAC,UAAW;wBAC7B,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,IAAI,MAAM,EAAE,MAAM,CAAC;qBAC1E,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;gBAClB,KAAK,WAAW;oBACd,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,IAAI,WAAW,EAAE,MAAM,CAAC,CAAC;oBACxF,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,EAAE,CAAC;wBACrF,OAAO,IAAI,CAAC,cAAc,CAAC;4BACzB,IAAI,EAAE,GAAG,CAAC,IAAI;4BACd,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;4BAChC,UAAU,EAAE,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;4BAChE,OAAO;yBACR,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;oBAClB,CAAC;yBAAM,CAAC;wBACN,kGAAkG;wBAClG,4EAA4E;wBAC5E,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;wBAC5D,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,KAAK,EAA0C,EAAE;4BAChF,IAAI,WAAW,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gCAChC,OAAO,IAAI,CAAC,cAAc,CAAC;oCACzB,IAAI,EAAE,WAAW;oCACjB,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;oCAChC,UAAU,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;oCAClG,OAAO,EAAE,CAAC,WAAW,CAAC;iCACvB,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;4BAClB,CAAC;iCAAM,CAAC;gCACN,OAAO,IAAI,CAAC,cAAc,CAAC;oCACzB,IAAI,EAAE,MAAM;oCACZ,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;oCAChC,OAAO,EAAE,CAAC,WAAW,CAAC;iCACvB,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;4BAClB,CAAC;wBACH,CAAC,CAAC,CAAC;oBACL,CAAC;gBACH,KAAK,MAAM;oBACT,OAAO,IAAI,CAAC,cAAc,CAAC;wBACzB,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;wBAChC,OAAO,EAAE,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,IAAI,MAAM,EAAE,MAAM,CAAC;qBAC5E,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;YACpB,CAAC;QACH,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACO,YAAY,CACpB,OAAgB,EAChB,KAAiB,EACjB,MAAqB;QAErB,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAEnE,MAAM,WAAW,GAAG,MAAM,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC5D,MAAM,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAEvE,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACnC,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,iBAAiB,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;YAEjE,oEAAoE;YACpE,mEAAmE;YACnE,kEAAkE;YAClE,uBAAuB;YACvB,MAAM,MAAM,GAA2C;gBACrD,IAAI,EAAE,UAAmB;gBACzB,QAAQ,EAAE;oBACR,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,UAAU,EAAE,YAAY,CAAC,iBAAiB,EAAE,UAAU,CAAC;oBACvD,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC/C;aACF,CAAC;YACF,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACO,uBAAuB,GAAkC,IAAI,GAAG,CAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEzG;;;;;;;;;;;OAWG;IACO,iBAAiB,CAAC,KAAiB;QAC3C,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9D,MAAM,eAAe,GAAG,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzF,MAAM,KAAK,GAAG,eAAe,IAAI,KAAM,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC;YACrE,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC;YAC7B,CAAC,CAAC,OAAO,CAAC;QACZ,MAAM,GAAG,GAAG,eAAe,IAAI,KAAM,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC;YAClE,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC;YAC7B,CAAC,CAAC,OAAO,CAAC;QACZ,OAAO,IAAI,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;IACnD,CAAC;IAED;;;;OAIG;IACK,uBAAuB,CAAC,OAAgB,EAAE,MAAoB;QACpE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAM,CAAC;QAC7B,MAAM,KAAK,GAAG,KAAK;aAChB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;aACnD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAE7B,MAAM,WAAW,GAAuB,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAChE,KAAK,MAAM,EAAE,CAAC,EAAE,IAAI,KAAK,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,WAAW,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YACnE,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtC,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;;;;OAOG;IACO,iBAAiB,CACzB,OAAgB;QAEhB,IAAI,CAAC,OAAO,CAAC,UAAU;YAAE,OAAO,SAAS,CAAC;QAE1C,IAAI,OAAO,CAAC,UAAU,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC;QACjD,IAAI,OAAO,CAAC,UAAU,KAAK,UAAU;YAAE,OAAO,UAAU,CAAC;QACzD,IAAI,OAAO,CAAC,UAAU,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC;QACjD,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC3C,OAAO;gBACL,IAAI,EAAE,UAAmB;gBACzB,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE;aAC5C,CAAC;QACJ,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACO,qBAAqB,CAC7B,OAAgB,EAChB,KAAiB,EACjB,MAAqB;QAErB,IAAI,CAAC,OAAO,CAAC,cAAc;YAAE,OAAO,SAAS,CAAC;QAE9C,IAAI,OAAO,OAAO,CAAC,cAAc,KAAK,QAAQ,EAAE,CAAC;YAC/C,IAAI,OAAO,CAAC,cAAc,KAAK,MAAM,EAAE,CAAC;gBACtC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YAC1B,CAAC;YACD,IAAI,OAAO,CAAC,cAAc,KAAK,MAAM,EAAE,CAAC;gBACtC,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;YACjC,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC5D,MAAM,UAAU,GAAG,WAAW,CAAC,cAAc,CAC3C,OAAO,CAAC,cAAc,CAAC,IAAI,EAC3B,OAAO,CAAC,cAAc,CAAC,MAAM,IAAI,CAAC,CACnC,CAAC;QAEF,OAAO,CAAC,cAAc,CAAC,UAAU,GAAG,UAAU,CAAC,EAAE,CAAC;QAElD,MAAM,iBAAiB,GAAG,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAC7E,MAAM,WAAW,GAEE;YACjB,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,YAAY,CAAC,iBAAiB,EAAE,UAAU,CAAC;SACpD,CAAC;QACF,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;YACtB,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC;QAC5B,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC;IAC9C,CAAC;IAED,+EAA+E;IAC/E,oCAAoC;IACpC,+EAA+E;IAE/E;;;;;;OAMG;IACH,KAAK,CAAC,UAAU,CAAC,MAAgB;QAC/B,MAAM,eAAe,GAAG,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;QAElD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;YAC7B,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,uBAAuB,EAAE,KAAc,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,WAAW,CAAC,MAAgB;QAChC,IAAI,CAAC;YACH,MAAM,eAAe,GAAG,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;YAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;YAClD,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,cAAc,CACZ,OAAoB,EACpB,aAAsC,EACtC,GAAiB,EACjB,eAAwB,EACxB,SAAiB,EACjB,YAAyB;QAEzB,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,IAAI,GAAG,CAAC,QAAQ,EAAE,KAAK,IAAI,YAAY,CAAC,CAAC;QAC7E,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,yBAAyB,IAAI,CAAC,IAAI,WAAW,CAAC,CAAC;QACpF,CAAC;QAED,MAAM,WAAW,GAAgB,EAAE,GAAG,eAAe,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;QACzF,MAAM,WAAW,GAAgB,OAAO,CAAC,KAAK,EAAE,WAAW,IAAI,eAAe,CAAC,WAAW,IAAI,EAAE,CAAC;QACjG,MAAM,YAAY,GAAiB;YACjC,SAAS;YACT,KAAK,EAAE,KAAK,CAAC,EAAE;YACf,QAAQ,EAAE,IAAI,CAAC,IAAI;YACnB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC;QAEF,MAAM,MAAM,GAAG,aAAa,IAAI,GAAG,CAAC,MAAM,CAAC;QAE3C,MAAM,KAAK,GAAG,CAAC,EAAwC,EAAc,EAAE;YACrE,OAAO,SAAS,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QACrF,CAAC,CAAC;QAEF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAClC,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,cAAc,CAAC,MAAgB;QAC7B,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QACtD,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;QAElD,OAAO,KAAK,EAAE,OAAgB,EAAE,GAAiB,EAAE,QAAwB,EAAE,aAA2B,EAAqB,EAAE;YAC7H,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,cAAc,CAAyC,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,IAAI,eAAe,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YAEnM,sEAAsE;YACtE,wEAAwE;YACxE,iEAAiE;YACjE,oEAAoE;YACpE,MAAM,SAAS,GAAG,aAAa,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;YAEzD,sEAAsE;YACtE,oEAAoE;YACpE,6DAA6D;YAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAEjD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;YACtE,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;YAC5D,MAAM,WAAW,GAAG,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAChF,MAAM,mBAAmB,GAAG,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC;YACjF,MAAM,eAAe,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;YAC/E,MAAM,MAAM,GAAuD;gBACjE,KAAK,EAAE,KAAK,CAAC,EAAE;gBACf,QAAQ;gBACR,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,KAAK,EAAE,OAAO,CAAC,IAAI;gBACnB,qBAAqB,EAAE,OAAO,CAAC,SAAS;gBACxC,iBAAiB,EAAE,OAAO,CAAC,gBAAgB;gBAC3C,gBAAgB,EAAE,OAAO,CAAC,eAAe;gBACzC,UAAU,EAAE,OAAO,CAAC,SAAS;gBAC7B,QAAQ,EAAE,OAAO,CAAC,gBAAgB;gBAClC,gBAAgB,EAAE,OAAO,CAAC,QAAQ;gBAClC,iBAAiB,EAAE,OAAO,CAAC,OAAO;gBAClC,KAAK,EAAE,eAAe,CAAC,KAAK,IAAI,KAAK;gBACrC,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK;gBACL,WAAW;gBACX,mBAAmB;gBACnB,eAAe;gBACf,gBAAgB,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM;gBACxC,GAAG,OAAO,CAAC,KAAK;gBAChB,MAAM,EAAE,KAAK;aACd,CAAC;YAEF,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;YAE1D,oCAAoC;YACpC,MAAM,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;YAEnF,IAAI,UAAkD,CAAC;YACvD,IAAI,CAAC;gBACH,UAAU,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;oBACxC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;oBACtE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;oBACjC,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,MAAM,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,wBAAwB,CAAC,CAAC;oBAC/D,CAAC;oBAED,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,IAAI,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC5B,MAAM,OAAO,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;oBAC3C,MAAM,aAAa,GAAa;wBAC9B,OAAO,EAAE,EAAE;wBACX,SAAS,EAAE,EAAE;wBACb,YAAY,EAAE,QAAwB;wBACtC,KAAK;wBACL,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE;qBACnD,CAAC;oBAEF,uCAAuC;oBACvC,MAAM,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;oBAEjG,OAAO,aAAa,CAAC;gBACvB,CAAC;qBAAM,CAAC;oBACN,MAAM,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;gBAClF,CAAC;gBAED,MAAM,CAAC,CAAC;YACV,CAAC;YAED,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAErC,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU;gBACzC,EAAE,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,UAAU,CAAC;iBACvC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBACZ,EAAE,EAAE,EAAE,CAAC,EAAE;gBACT,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI;gBACtB,SAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS;aACjC,CAAC,CAAC,CAAC;YAEN,MAAM,QAAQ,GAAa;gBACzB,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE;gBACrC,SAAS;gBACT,YAAY,EAAE,MAAM,CAAC,aAAa,KAAK,eAAe,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa;gBAC1I,OAAO,EAAE,MAAM,CAAC,aAAa,KAAK,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS;gBACpG,KAAK;gBACL,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;aAC3E,CAAC;YAEF,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;YAEhE,qCAAqC;YACrC,MAAM,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;YAE5F,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC;IACJ,CAAC;IAED;;;;;;;;;;OAUG;IACH,cAAc,CAAC,MAAgB;QAC7B,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QACtD,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;QAElD,OAAO,KAAK,SAAS,CAAC,EAEpB,OAAgB,EAChB,GAAiB,EACjB,QAAwB,EACxB,aAA2B;YAE3B,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAAsD,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,eAAe,EAAE,gBAAgB,EAAE,QAAQ,EAAE,KAAK,IAAI,eAAe,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YAElO,MAAM,SAAS,GAAG,aAAa,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAEjD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;YACtE,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;YAC5D,MAAM,WAAW,GAAG,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAChF,MAAM,mBAAmB,GAAG,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC;YACjF,MAAM,eAAe,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;YAE/E,MAAM,MAAM,GAAoD;gBAC9D,KAAK,EAAE,KAAK,CAAC,EAAE;gBACf,QAAQ;gBACR,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,KAAK,EAAE,OAAO,CAAC,IAAI;gBACnB,qBAAqB,EAAE,OAAO,CAAC,SAAS;gBACxC,iBAAiB,EAAE,OAAO,CAAC,gBAAgB;gBAC3C,gBAAgB,EAAE,OAAO,CAAC,eAAe;gBACzC,UAAU,EAAE,OAAO,CAAC,SAAS;gBAC7B,QAAQ,EAAE,OAAO,CAAC,gBAAgB;gBAClC,gBAAgB,EAAE,OAAO,CAAC,QAAQ;gBAClC,iBAAiB,EAAE,OAAO,CAAC,OAAO;gBAClC,KAAK,EAAE,eAAe,CAAC,KAAK,IAAI,KAAK;gBACrC,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK;gBACL,WAAW;gBACX,mBAAmB;gBACnB,eAAe;gBACf,GAAG,OAAO,CAAC,KAAK;gBAChB,MAAM,EAAE,IAAI;gBACZ,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE;aACxC,CAAC;YAEF,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;YAE1D,oCAAoC;YACpC,MAAM,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;YAEnF,IAAI,MAA2D,CAAC;YAChE,IAAI,CAAC;gBACH,MAAM,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;oBACpC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC;oBAEnG,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;wBACjB,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;wBACrD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;wBACnD,MAAM,OAAO,GAAG;4BACd,MAAM,EAAE,QAAQ,CAAC,MAAM;4BACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;4BAC/B,OAAO;4BACP,IAAI;yBACL,CAAC;wBAEF,MAAM,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,mCAAmC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBACnG,CAAC;oBAED,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC,CAAC;YAEL,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,IAAI,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC5B,MAAM,OAAO,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;oBAC3C,MAAM,aAAa,GAAa;wBAC9B,OAAO,EAAE,EAAE;wBACX,SAAS,EAAE,EAAE;wBACb,YAAY,EAAE,QAAwB;wBACtC,KAAK;wBACL,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE;qBACnD,CAAC;oBAEF,uCAAuC;oBACvC,MAAM,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;oBAEjG,OAAO,aAAa,CAAC;gBACvB,CAAC;qBAAM,CAAC;oBACN,MAAM,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;gBAClF,CAAC;gBAED,MAAM,CAAC,CAAC;YACV,CAAC;YAID,MAAM,YAAY,GAAG,IAAI,GAAG,EAAwB,CAAC;YACrD,MAAM,SAAS,GAAmB,EAAE,CAAC;YACrC,MAAM,MAAM,GAAY,EAAE,CAAC;YAC3B,IAAI,YAAY,GAAG,CAAC,CAAC,CAAC;YAEtB,IAAI,CAAC;gBACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBACjC,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;wBACpB,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;oBACrC,CAAC;oBAED,MAAM,MAAM,GAAG,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;oBACjC,MAAM,KAAK,GAAG,MAAM,EAAE,KAAK,CAAC;oBAE5B,mEAAmE;oBACnE,+DAA+D;oBAC/D,kEAAkE;oBAClE,+DAA+D;oBAC/D,mDAAmD;oBACnD,MAAM,eAAe,GAAG,MAAM,EAAE,aAAa,IAAI,SAAS,CAAC;oBAC3D,MAAM,UAAU,GAAU;wBACxB,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,SAAS;wBACpC,YAAY,EAAE,eAA2C;wBACzD,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,SAAS;wBACpC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;qBACjE,CAAC;oBAEF,oBAAoB;oBACpB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;wBACjC,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;oBAC3B,CAAC;oBAED,IAAI,KAAK,EAAE,UAAU,EAAE,CAAC;wBACtB,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;4BAClC,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;4BAC5C,MAAM,QAAQ,GAAG,QAAQ,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC;4BAEhI,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;gCACV,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;gCACpB,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;4BAC1B,CAAC;4BACD,IAAI,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;gCACtB,QAAQ,CAAC,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;gCACjC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;4BAC1B,CAAC;4BACD,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC;gCAC3B,QAAQ,CAAC,SAAS,IAAI,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;gCAC5C,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;4BAC1B,CAAC;4BACD,IAAI,CAAC,QAAQ,EAAE,CAAC;gCACd,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;gCACrC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;4BAC3B,CAAC;4BACD,IAAI,OAAO,EAAE,CAAC,KAAK,KAAK,QAAQ,IAAI,EAAE,CAAC,KAAK,GAAG,YAAY,EAAE,CAAC;gCAC5D,YAAY,GAAG,EAAE,CAAC,KAAK,CAAC;4BAC1B,CAAC;4BAED,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;gCACvB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;oCACpB,UAAU,CAAC,aAAa,GAAG,QAAQ,CAAC;oCACpC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC;gCACxB,CAAC;qCAAM,CAAC;oCACN,UAAU,CAAC,iBAAiB,GAAG,QAAQ,CAAC;gCAC1C,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,wEAAwE;oBACxE,wEAAwE;oBACxE,wEAAwE;oBACxE,uEAAuE;oBACvE,qEAAqE;oBACrE,oEAAoE;oBACpE,wDAAwD;oBACxD,2EAA2E;oBAC3E,oEAAoE;oBACpE,sEAAsE;oBACtE,iCAAiC;oBACjC,2EAA2E;oBAC3E,MAAM,eAAe,GAAG,UAAU,CAAC,YAAY,KAAK,SAAS,CAAC;oBAC9D,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;wBACjC,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,CAAC,eAAe,IAAI,QAAQ,CAAC,KAAK,GAAG,YAAY,CAAC,EAAE,CAAC;4BAC7E,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;4BACzB,UAAU,CAAC,QAAQ,GAAG,QAAQ,CAAC;4BAC/B,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;gCACpB,UAAU,CAAC,aAAa,GAAG,QAAQ,CAAC;gCACpC,UAAU,CAAC,iBAAiB,GAAG,QAAQ,CAAC;gCACxC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC;4BACxB,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,4CAA4C;oBAC5C,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC;oBAE1D,yDAAyD;oBACzD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAExB,WAAW;oBACX,MAAM,UAAU,CAAC;gBACnB,CAAC;YACH,CAAC;oBAAS,CAAC;gBACT,0DAA0D;gBAC1D,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;oBACjC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;wBACvB,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;wBAEzB,MAAM,KAAK,GAAgD,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,uBAAuB,EAAE,CAAC;wBAE3I,MAAM,UAAU,GAAU,EAAE,QAAQ,EAAE,CAAC;wBACvC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;4BACpB,UAAU,CAAC,aAAa,GAAG,QAAQ,CAAC;4BACpC,UAAU,CAAC,iBAAiB,GAAG,QAAQ,CAAC;4BACxC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC;wBACxB,CAAC;wBAED,8CAA8C;wBAC9C,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC;wBAE1D,yDAAyD;wBACzD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBAExB,WAAW;wBACX,MAAM,UAAU,CAAC;oBACnB,CAAC;gBACH,CAAC;gBAED,mDAAmD;gBACnD,IAAI,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;oBAC9C,MAAM,aAAa,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;oBACpD,aAAa,CAAC,KAAK,GAAG,KAAK,CAAC;oBAE5B,MAAM,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;gBAC/F,CAAC;YACH,CAAC;QACH,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC;IAED;;;;;;OAMG;IACH,qBAAqB,CAAC,OAA+B,EAAE,KAAa;QAClE,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC;YAC1C,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAC1B,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC;oBAC1B,CAAC,CAAC,UAAU;oBACZ,CAAC,CAAC,SAAS,CAAC;QAElB,MAAM,eAAe,GAAG;YACtB,WAAW,EAAE;gBACX,KAAK,EAAE;oBACL,OAAO,EAAE,SAAS;oBAClB,SAAS,EAAE,SAAS;iBACrB;gBACD,UAAU,EAAE;oBACV,aAAa,EAAE,aAAa;oBAC5B,QAAQ,EAAE,QAAQ;oBAClB,MAAM,EAAE,MAAM;iBACf;gBACD,OAAO,EAAE;oBACP,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,QAAQ;oBAClB,MAAM,EAAE,MAAM;iBACf;gBACD,cAAc,EAAE;oBACd,KAAK,EAAE,SAAS;oBAChB,UAAU,EAAE,SAAS;iBACtB;gBACD,KAAK,EAAE;oBACL,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;oBAC7B,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;oBAC7B,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;iBACS;gBACxC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;aACvB;YACD,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,OAAO,EAAE,SAAS;oBAClB,SAAS,EAAE,SAAS;iBACrB;gBACD,UAAU,EAAE;oBACV,aAAa,EAAE,SAAS;oBACxB,QAAQ,EAAE,SAAS;oBACnB,MAAM,EAAE,SAAS;iBAClB;gBACD,OAAO,EAAE;oBACP,KAAK,EAAE,UAAU;oBACjB,QAAQ,EAAE,UAAU;oBACpB,MAAM,EAAE,UAAU;iBACnB;gBACD,cAAc,EAAE;oBACd,KAAK,EAAE,KAAK;oBACZ,UAAU,EAAE,UAAU;iBACvB;gBACD,KAAK,EAAE;oBACL,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;oBAC3B,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;oBAC3B,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;iBACS;gBACxC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;aACvB;YACD,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,OAAO,EAAE,OAAO;oBAChB,SAAS,EAAE,SAAS;iBACrB;gBACD,UAAU,EAAE;oBACV,aAAa,EAAE,SAAS;oBACxB,QAAQ,EAAE,SAAS;oBACnB,MAAM,EAAE,SAAS;iBAClB;gBACD,OAAO,EAAE;oBACP,KAAK,EAAE,UAAU;oBACjB,QAAQ,EAAE,IAAI;oBACd,MAAM,EAAE,IAAI;iBACb;gBACD,cAAc,EAAE;oBACd,KAAK,EAAE,KAAK;oBACZ,UAAU,EAAE,UAAU;iBACvB;gBACD,KAAK,EAAE;oBACL,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;oBAC7B,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;oBAC7B,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;iBACS;gBACxC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;aACtB;YACD,SAAS,EAAE;gBACT,KAAK,EAAE;oBACL,OAAO,EAAE,SAAS;oBAClB,SAAS,EAAE,SAAS;iBACrB;gBACD,UAAU,EAAE;oBACV,aAAa,EAAE,SAAS;oBACxB,QAAQ,EAAE,SAAS;oBACnB,MAAM,EAAE,SAAS;iBAClB;gBACD,OAAO,EAAE;oBACP,KAAK,EAAE,SAAS;oBAChB,QAAQ,EAAE,SAAS;oBACnB,MAAM,EAAE,SAAS;iBAClB;gBACD,cAAc,EAAE;oBACd,KAAK,EAAE,SAAS;oBAChB,UAAU,EAAE,SAAS;iBACtB;gBACD,KAAK,EAAE,EAAyC;gBAChD,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;aACtB;SACO,CAAC;QAEX,MAAM,cAAc,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC;QACtD,IAAI,IAAI,GAA8C,SAAS,CAAC;QAChE,IAAI,OAAO,CAAC,IAAI,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACtD,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACrC,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACvC,MAAM,OAAO,GAAG,cAAc;iBAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACT,GAAG,CAAC;gBACJ,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;gBACxD,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC;aACpD,CAAC,CAAC;iBACF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAErE,IAAI,GAAG,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,EAA+C,CAAC;QAC3F,CAAC;QAED,MAAM,MAAM,GAAsC;YAChD,KAAK;YACL,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;YACxH,IAAI;YACJ,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;YACxF,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;YAChF,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;YACpG,eAAe,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS;SACtH,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;;OASG;IACH,aAAa,GAA8B,KAAK,EAC9C,OAA+B,EAC/B,GAAiB,EACjB,MAAgB,EACkB,EAAE;QACpC,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QAEtD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,cAAc,CAA+B,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,CAAC,aAAa,EAAE,aAAa,IAAI,aAAa,CAAC,CAAC;QAEtM,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QACjE,MAAM,MAAM,GAAkD;YAC5D,GAAG,UAAU;YACb,IAAI,EAAE,OAAO,CAAC,cAAc;YAC5B,GAAG,OAAO,CAAC,KAAK;YAChB,MAAM,EAAE,KAAK;SACd,CAAC;QAEF,yCAAyC;QACzC,IAAI,CAAC,2BAA2B,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;QAErE,oCAAoC;QACpC,MAAM,eAAe,CAAC,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAElF,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;QAElD,IAAI,QAAsC,CAAC;QAC3C,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBACtC,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1D,CAAC,CAAC,CAAC;QAEL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5B,MAAM,OAAO,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;gBAC3C,MAAM,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,iDAAiD,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;YACxH,CAAC;iBAAM,CAAC;gBACN,MAAM,eAAe,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;YACjF,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;QAED,MAAM,MAAM,GAAG;YACb,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAC1C,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,SAAS;gBACzB,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,SAAS;gBACnC,aAAa,EAAE,GAAG,CAAC,cAAc,IAAI,SAAS;aAC/C,CAAC,CAAC;YACH,KAAK;YACL,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;SACvE,CAAC;QAEF,qCAAqC;QACrC,MAAM,eAAe,CAAC,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAEzF,OAAO,MAAM,CAAC;IAChB,CAAC,CAAA;IAED;;;;;;;;;;;;OAYG;IACH,mBAAmB,GAAoC,KAAK,SAAS,CAAC,EAEpE,OAA+B,EAC/B,GAAiB,EACjB,MAAgB;QAEhB,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QAEtD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAA4C,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,EAAE,uBAAuB,EAAE,eAAe,CAAC,aAAa,EAAE,aAAa,IAAI,aAAa,CAAC,CAAC;QAClO,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAEjE,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC;QAExE,MAAM,MAAM,GAA+C;YACzD,GAAG,UAAU;YACb,IAAI,EAAE,OAAO,CAAC,cAAc;YAC5B,cAAc,EAAE,YAAY;YAC5B,GAAG,OAAO,CAAC,KAAK;YAChB,MAAM,EAAE,IAAI;SACb,CAAC;QAEF,IAAI,CAAC,2BAA2B,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;QAErE,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;QAElD,IAAI,QAAmD,CAAC;QACxD,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBACtC,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1D,CAAC,CAAC,CAAC;QAEL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5B,MAAM,OAAO,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;gBAC3C,MAAM,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,iDAAiD,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;YACxH,CAAC;iBAAM,CAAC;gBACN,MAAM,eAAe,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;YACjF,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;QAED,gCAAgC;QAChC,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YACjC,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACrC,CAAC;YAED,MAAM,QAAQ,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;YACvD,MAAM;gBACJ,QAAQ;gBACR,IAAI,EAAE,GAAG,CAAC,IAAI,KAAK,4BAA4B;gBAC/C,KAAK,EAAE;oBACL,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,SAAS;iBACpC;aACF,CAAC;YAEF,UAAU,EAAE,CAAC;QACf,CAAC;IACH,CAAC,CAAA;IAGD;;;;;;OAMG;IACH,iBAAiB,CAAC,OAAyB,EAAE,KAAa;QACxD,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC;YAC1C,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAC1B,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC;oBAC1B,CAAC,CAAC,UAAU;oBACZ,CAAC,CAAC,SAAS,CAAC;QAElB,MAAM,eAAe,GAAG;YACtB,WAAW,EAAE;gBACX,cAAc,EAAE;oBACd,KAAK,EAAE,SAAS;oBAChB,UAAU,EAAE,SAAS;iBACtB;gBACD,KAAK,EAAE;oBACL,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;oBAC7B,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;oBAC7B,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;iBACS;gBACxC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;aACvB;YACD,UAAU,EAAE;gBACV,cAAc,EAAE;oBACd,KAAK,EAAE,KAAK;oBACZ,UAAU,EAAE,UAAU;iBACvB;gBACD,KAAK,EAAE;oBACL,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;oBAC3B,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;oBAC3B,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;iBACS;gBACxC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;aACvB;YACD,UAAU,EAAE;gBACV,cAAc,EAAE;oBACd,KAAK,EAAE,KAAK;oBACZ,UAAU,EAAE,UAAU;iBACvB;gBACD,KAAK,EAAE;oBACL,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;oBAC7B,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;oBAC7B,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;iBACS;gBACxC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;aACtB;YACD,SAAS,EAAE;gBACT,cAAc,EAAE;oBACd,KAAK,EAAE,SAAS;oBAChB,UAAU,EAAE,SAAS;iBACtB;gBACD,KAAK,EAAE,EAAyC;gBAChD,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;aACtB;SACO,CAAC;QAEX,MAAM,cAAc,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC;QACtD,IAAI,IAAI,GAA0C,SAAS,CAAC;QAC5D,IAAI,OAAO,CAAC,IAAI,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACtD,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACrC,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACvC,MAAM,OAAO,GAAG,cAAc;iBAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACT,GAAG,CAAC;gBACJ,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;gBACxD,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC;aACpD,CAAC,CAAC;iBACF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAErE,IAAI,GAAG,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,EAA2C,CAAC;QACvF,CAAC;QAED,MAAM,MAAM,GAAiD;YAC3D,KAAK;YACL,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;YACxH,IAAI;YACJ,eAAe,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS;SACtH,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;;;;OAWG;IACH,SAAS,GAA0B,KAAK,EACtC,OAAyB,EACzB,GAAiB,EACjB,MAAgB,EACkB,EAAE;QACpC,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QAEtD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,cAAc,CAA+B,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,EAAE,YAAY,EAAE,eAAe,CAAC,aAAa,EAAE,SAAS,IAAI,aAAa,CAAC,CAAC;QAE9L,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnE,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAE7D,MAAM,MAAM,GAA8C;YACxD,GAAG,UAAU;YACb,KAAK;YACL,IAAI;YACJ,IAAI,EAAE,OAAO,CAAC,cAAc;YAC5B,GAAG,OAAO,CAAC,KAAK;YAChB,MAAM,EAAE,KAAK;SACd,CAAC;QAEF,yCAAyC;QACzC,IAAI,CAAC,2BAA2B,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;QAErE,oCAAoC;QACpC,MAAM,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAE9E,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;QAElD,IAAI,QAAsC,CAAC;QAC3C,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBACtC,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YACtD,CAAC,CAAC,CAAC;QAEL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5B,MAAM,OAAO,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;gBAC3C,MAAM,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,8CAA8C,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;YACrH,CAAC;iBAAM,CAAC;gBACN,MAAM,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;YAC7E,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;QAED,MAAM,MAAM,GAAG;YACb,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAC1C,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,SAAS;gBACzB,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,SAAS;gBACnC,aAAa,EAAE,GAAG,CAAC,cAAc,IAAI,SAAS;aAC/C,CAAC,CAAC;YACH,KAAK;YACL,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;SACvE,CAAC;QAEF,qCAAqC;QACrC,MAAM,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAErF,OAAO,MAAM,CAAC;IAChB,CAAC,CAAA;IAED;;;;;;;;;;;;OAYG;IACH,eAAe,GAAgC,KAAK,SAAS,CAAC,EAE5D,OAAyB,EACzB,GAAiB,EACjB,MAAgB;QAEhB,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QAEtD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAAsC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,EAAE,mBAAmB,EAAE,eAAe,CAAC,aAAa,EAAE,SAAS,IAAI,aAAa,CAAC,CAAC;QAEpN,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnE,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAE7D,MAAM,MAAM,GAA2C;YACrD,GAAG,UAAU;YACb,KAAK;YACL,IAAI;YACJ,IAAI,EAAE,OAAO,CAAC,cAAc;YAC5B,cAAc,EAAE,YAAY;YAC5B,GAAG,OAAO,CAAC,KAAK;YAChB,MAAM,EAAE,IAAI;SACb,CAAC;QAEF,IAAI,CAAC,uBAAuB,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;QAEjE,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;QAElD,IAAI,QAAoD,CAAC;QACzD,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBACtC,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YACtD,CAAC,CAAC,CAAC;QAEL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5B,MAAM,OAAO,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;gBAC3C,MAAM,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,8CAA8C,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;YACrH,CAAC;iBAAM,CAAC;gBACN,MAAM,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;YAC7E,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;QAED,gCAAgC;QAChC,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YACjC,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACrC,CAAC;YAED,MAAM,QAAQ,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;YAEvD,MAAM;gBACJ,QAAQ;gBACR,IAAI,EAAE,GAAG,CAAC,IAAI,KAAK,sBAAsB;gBACzC,KAAK,EAAE;oBACL,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,SAAS;iBACpC;gBACD,KAAK;aACN,CAAC;YACF,UAAU,EAAE,CAAC;QACf,CAAC;IACH,CAAC,CAAA;IAED;;;;;;;;;;;OAWG;IACH,UAAU,GAA2B,KAAK,EACxC,OAA6B,EAC7B,GAAiB,EACjB,MAAgB,EACgB,EAAE;QAClC,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QAEtD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAA4C,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,EAAE,YAAY,EAAE,eAAe,CAAC,aAAa,EAAE,aAAa,IAAI,WAAW,CAAC,CAAC;QAErN,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACzC,MAAM,MAAM,GAAsE;YAChF,KAAK,EAAE,KAAK,CAAC,EAAE;YACf,IAAI;YACJ,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,eAAe,EAAE,OAAO,CAAC,cAA8E;YACvG,uBAAuB,EAAE,OAAO,CAAC,sBAA4D;YAC7F,GAAG,OAAO,CAAC,KAAK;YAChB,MAAM,EAAE,KAAK;SACd,CAAC;QAEF,yCAAyC;QACzC,IAAI,CAAC,2BAA2B,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;QAErE,oCAAoC;QACpC,MAAM,eAAe,CAAC,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAE/E,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;QAElD,IAAI,QAAmD,CAAC;QACxD,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBACtC,OAAO,MAAM,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YACtE,CAAC,CAAC,CAAC;QAEL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5B,MAAM,OAAO,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;gBAC3C,MAAM,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,8CAA8C,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;YACrH,CAAC;iBAAM,CAAC;gBACN,MAAM,eAAe,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;YAC9E,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;QAED,MAAM,MAAM,GAAG;YACb,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,KAAK;YACL,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;gBACxE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS;SAC5F,CAAC;QAEF,qCAAqC;QACrC,MAAM,eAAe,CAAC,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAEtF,OAAO,MAAM,CAAC;IAChB,CAAC,CAAA;IAED;;;;;;;;;;;;OAYG;IACH,gBAAgB,GAAiC,KAAK,SAAS,CAAC,EAE9D,OAA6B,EAC7B,GAAiB,EACjB,MAAgB;QAEhB,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QAEtD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAA+D,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,EAAE,mBAAmB,EAAE,eAAe,CAAC,aAAa,EAAE,aAAa,IAAI,WAAW,CAAC,CAAC;QAE/O,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACzC,MAAM,MAAM,GAAmE;YAC7E,KAAK,EAAE,KAAK,CAAC,EAAE;YACf,IAAI;YACJ,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,eAAe,EAAE,OAAO,CAAC,cAA8E;YACvG,uBAAuB,EAAE,OAAO,CAAC,sBAA4D;YAC7F,GAAG,OAAO,CAAC,KAAK;YAChB,MAAM,EAAE,IAAI;SACb,CAAC;QAEF,IAAI,CAAC,2BAA2B,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;QAErE,MAAM,eAAe,CAAC,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAE/E,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;QAElD,IAAI,QAAsE,CAAC;QAC3E,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBACtC,OAAO,MAAM,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YACtE,CAAC,CAAC,CAAC;QAEL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5B,MAAM,OAAO,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;gBAC3C,MAAM,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,8CAA8C,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;YACrH,CAAC;iBAAM,CAAC;gBACN,MAAM,eAAe,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;YAC9E,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;QAED,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;YACnC,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACrC,CAAC;YAED,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;gBACnB,KAAK,uBAAuB;oBAC1B,MAAM;wBACJ,KAAK,EAAE,KAAK,CAAC,KAAK;qBACnB,CAAC;oBACF,MAAK;gBACP,KAAK,yBAAyB;oBAC5B,MAAM;wBACJ,OAAO,EAAE;4BACP,KAAK,EAAE,KAAK,CAAC,KAAK;4BAClB,GAAG,EAAE,KAAK,CAAC,GAAG;4BACd,OAAO,EAAE,KAAK,CAAC,OAAO;4BACtB,IAAI,EAAE,KAAK,CAAC,IAAI;4BAChB,EAAE,EAAE,KAAK,CAAC,EAAE;yBACb;qBACF,CAAC;oBACF,MAAM;gBACR,KAAK,sBAAsB;oBACzB,MAAM;wBACJ,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;wBAChE,KAAK;qBACN,CAAC;oBACF,MAAM;YACV,CAAC;QACH,CAAC;IACH,CAAC,CAAA;IAED;;;;;;;;;;;OAWG;IACH,MAAM,GAAuB,KAAK,EAChC,OAAsB,EACtB,GAAiB,EACjB,MAAgB,EACS,EAAE;QAC3B,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QAEtD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAAsB,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,EAAE,QAAQ,EAAE,eAAe,CAAC,aAAa,EAAE,MAAM,IAAI,OAAO,CAAC,CAAC;QAEhL,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;QACrD,MAAM,YAAY,GAAG,OAAgB,CAAC;QACtC,MAAM,UAAU,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAU,CAAC;QACtH,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,IAAI,YAAY,CAAC;QACnD,MAAM,KAAK,GAAI,UAAgC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC;QACrG,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,MAAM,CAAC;QAExD,MAAM,MAAM,GAA2C;YACrD,KAAK,EAAE,KAAK,CAAC,EAAE;YACf,KAAK;YACL,YAAY;YACZ,KAAK;YACL,KAAK;YACL,eAAe,EAAE,cAAc;YAC/B,GAAG,OAAO,CAAC,KAAK;SACjB,CAAC;QAEF,yCAAyC;QACzC,IAAI,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;QAE9D,oCAAoC;QACpC,MAAM,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAE3E,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;QAElD,IAAI,QAA6B,CAAC;QAClC,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBACtC,OAAO,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YAC9D,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5B,MAAM,OAAO,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;gBAC3C,MAAM,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,kDAAkD,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;YACzH,CAAC;iBAAM,CAAC;gBACN,MAAM,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;YAC1E,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;QAED,MAAM,MAAM,GAAG;YACb,KAAK;YACL,KAAK,EAAE,QAAQ,CAAC,IAA2B;YAC3C,cAAc;SACf,CAAC;QAEF,qCAAqC;QACrC,MAAM,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAElF,OAAO,MAAM,CAAC;IAChB,CAAC,CAAA;IAED;;;;;;;;;;;OAWG;IACH,KAAK,GAAsB,KAAK,EAC9B,OAAyB,EACzB,GAAiB,EACjB,MAAgB,EACY,EAAE;QAC9B,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QAEtD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,cAAc,CAAiC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,EAAE,OAAO,EAAE,eAAe,CAAC,aAAa,EAAE,SAAS,IAAI,wBAAwB,CAAC,CAAC;QAEtM,MAAM,MAAM,GAAiC;YAC3C,KAAK,EAAE,KAAK,CAAC,EAAE;YACf,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,eAAe,EAAE,OAAO,CAAC,cAAc;YACvC,IAAI,EAAE,OAAO,CAAC,cAAc;YAC5B,GAAG,OAAO,CAAC,KAAK;SACjB,CAAC;QAEF,yCAAyC;QACzC,IAAI,CAAC,uBAAuB,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;QAEjE,oCAAoC;QACpC,MAAM,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAE1E,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;QAElD,IAAI,QAAwC,CAAC;QAC7C,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBACtC,OAAO,MAAM,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YAC5D,CAAC,CAAC,CAAC;QAEL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5B,MAAM,OAAO,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;gBAC3C,MAAM,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,qDAAqD,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;YAC5H,CAAC;iBAAM,CAAC;gBACN,MAAM,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;YACzE,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;QAED,MAAM,MAAM,GAAG;YACb,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACvC,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB,CAAC,CAAC;YACH,KAAK;YACL,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACnB,CAAC,CAAC;oBACE,UAAU,EAAE;wBACV,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM;wBAC3B,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,aAAa;qBACrC;iBACF;gBACH,CAAC,CAAC,SAAS;SACd,CAAC;QAEF,qCAAqC;QACrC,MAAM,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAEjF,OAAO,MAAM,CAAC;IAChB,CAAC,CAAA;IAED;;;;;;;;;;;;OAYG;IACH,YAAY,GAA6B,KAAK,EAC5C,OAA4B,EAC5B,GAAiB,EACjB,MAAgB,EACG,EAAE;QACrB,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QAEtD,8CAA8C;QAC9C,MAAM,WAAW,GAAY;YAC3B,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE;wBACP,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE;wBACzC,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAkB,EAAE,CAAC,CAAC;4BAChD,IAAI,EAAE,OAAO;4BACb,OAAO,EAAE,KAAK;yBACf,CAAC,CAAC;qBACJ;iBACF;aACF;YACD,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAC;QAEF,oDAAoD;QACpD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,cAAc,CAAyC,WAAW,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,CAAC,aAAa,EAAE,YAAY,IAAI,sBAAsB,CAAC,CAAC;QACpN,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QAC1E,MAAM,MAAM,GAA2C;YACrD,KAAK,EAAE,KAAK,CAAC,EAAE;YACf,QAAQ;YACR,WAAW,EAAE,WAAW,CAAC,WAAW;YACpC,qBAAqB,EAAE,WAAW,CAAC,SAAS;SAC7C,CAAC;QAEF,oCAAoC;QACpC,MAAM,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAEjF,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;QACtD,IAAI,QAAkB,CAAC;QAEvB,IAAI,CAAC;YACH,+EAA+E;YAC/E,QAAQ,GAAG,MAAM,QAAQ,CACvB,WAAW,EACX,GAAG,EACH,EAAE,EACF,SAAS,CACV,CAAC;YAEF,qCAAqC;YACrC,MAAM,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;QAC5F,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,MAAM,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;YAE9E,MAAM,CAAC,CAAC;QACV,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAA;IAED;;;;;;;;;;;;OAYG;IACH,kBAAkB,GAAmC,KAAK,SAAS,CAAC,EAElE,OAA4B,EAC5B,GAAiB,EACjB,MAAgB;QAEhB,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QAEtD,8CAA8C;QAC9C,MAAM,WAAW,GAAY;YAC3B,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE;wBACP,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE;wBACzC,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAkB,EAAE,CAAC,CAAC;4BAChD,IAAI,EAAE,OAAO;4BACb,OAAO,EAAE,KAAK;yBACf,CAAC,CAAC;qBACJ;iBACF;aACF;YACD,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAC;QAEF,oDAAoD;QACpD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,cAAc,CAAyC,WAAW,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,EAAE,sBAAsB,EAAE,eAAe,CAAC,aAAa,EAAE,YAAY,IAAI,sBAAsB,CAAC,CAAC;QAC3N,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QAC1E,MAAM,MAAM,GAA2C;YACrD,KAAK,EAAE,KAAK,CAAC,EAAE;YACf,QAAQ;YACR,WAAW,EAAE,WAAW,CAAC,WAAW;YACpC,qBAAqB,EAAE,WAAW,CAAC,SAAS;YAC5C,MAAM,EAAE,IAAI;SACb,CAAC;QAEF,oCAAoC;QACpC,MAAM,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAEjF,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;QAEtD,IAAI,CAAC;YACH,+EAA+E;YAC/E,MAAM,MAAM,GAAG,QAAQ,CACrB,WAAW,EACX,GAAG,EACH,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAS,EAC/B,SAAS,CACV,CAAC;YACF,2CAA2C;YAC3C,IAAI,kBAAkB,GAAG,EAAE,CAAC;YAC5B,IAAI,UAAU,GAAQ,SAAS,CAAC;YAChC,IAAI,YAAY,GAAQ,SAAS,CAAC;YAClC,MAAM,SAAS,GAAU,EAAE,CAAC;YAE5B,IAAI,CAAC;gBACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBACjC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;wBAClB,kBAAkB,IAAI,KAAK,CAAC,OAAO,CAAC;oBACtC,CAAC;oBACD,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;wBAChB,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC;oBAC3B,CAAC;oBACD,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;wBACvB,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;oBACpC,CAAC;oBACD,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;wBACnB,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBACjC,CAAC;oBACD,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;oBAAS,CAAC;gBACT,qCAAqC;gBACrC,MAAM,aAAa,GAAa;oBAC9B,OAAO,EAAE,kBAAkB;oBAC3B,SAAS;oBACT,YAAY,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,IAAI,MAAsB;oBACtF,KAAK;oBACL,KAAK,EAAE,UAAU;iBAClB,CAAC;gBAEF,MAAM,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;YACjG,CAAC;QACH,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,MAAM,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;YAE9E,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC,CAAA;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aeye/openai",
3
- "version": "0.3.8",
3
+ "version": "0.3.10",
4
4
  "description": "@aeye OpenAI - OpenAI integration for @aeye",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -43,11 +43,12 @@
43
43
  "files": [
44
44
  "dist",
45
45
  "README.md",
46
- "LICENSE"
46
+ "LICENSE",
47
+ "aeye-*.md"
47
48
  ],
48
49
  "dependencies": {
49
- "@aeye/ai": "^0.3.8",
50
- "@aeye/core": "^0.3.8",
50
+ "@aeye/ai": "^0.3.9",
51
+ "@aeye/core": "^0.3.9",
51
52
  "openai": "^6.6.0",
52
53
  "zod": "^4.1.12"
53
54
  },