@luckydraw/cumulus 0.31.55 → 0.31.57
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/CHANGELOG.md +11 -0
- package/dist/gateway/server.d.ts.map +1 -1
- package/dist/gateway/server.js +10 -0
- package/dist/gateway/server.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/content-store.d.ts +1 -1
- package/dist/lib/content-store.d.ts.map +1 -1
- package/dist/lib/content-store.js.map +1 -1
- package/dist/lib/gateway.d.ts +54 -3
- package/dist/lib/gateway.d.ts.map +1 -1
- package/dist/lib/gateway.js +110 -112
- package/dist/lib/gateway.js.map +1 -1
- package/dist/lib/stream-processor.d.ts +10 -0
- package/dist/lib/stream-processor.d.ts.map +1 -1
- package/dist/lib/stream-processor.js +40 -1
- package/dist/lib/stream-processor.js.map +1 -1
- package/dist/mcp/tool-handler.js +1 -1
- package/dist/mcp/tool-handler.js.map +1 -1
- package/dist/tui/components/App.d.ts.map +1 -1
- package/dist/tui/components/App.js +2 -10
- package/dist/tui/components/App.js.map +1 -1
- package/dist/tui/hooks/useClaudeProcess.d.ts.map +1 -1
- package/dist/tui/hooks/useClaudeProcess.js +1 -10
- package/dist/tui/hooks/useClaudeProcess.js.map +1 -1
- package/package.json +1 -1
package/dist/lib/gateway.js
CHANGED
|
@@ -139,55 +139,32 @@ WORKFLOW:
|
|
|
139
139
|
2. Check RECENT CONVERSATION for immediate context
|
|
140
140
|
3. Only use tools if the retrieved context doesn't contain what you need
|
|
141
141
|
4. For [STORED:xxx] references, use retrieve_content to get full content
|
|
142
|
-
5. For file reads, use read_file (the built-in Read tool is disabled)
|
|
143
142
|
|
|
144
143
|
NEVER guess. Use the context provided or retrieve more if needed.
|
|
145
144
|
IMPORTANT: Present retrieved information naturally — do not narrate retrieval mechanics unprompted. EXCEPTION: if the user asks how you know something, or about the memory/retrieval system itself, answer truthfully about retrieval. Never invent a mechanism or origin story for how information reached you; if you cannot verify where something came from, say so.
|
|
146
145
|
|
|
147
|
-
FILE READING (MANDATORY):
|
|
148
|
-
For reading and understanding files, the built-in Read tool is DISABLED in this environment. You MUST use read_file (MCP tool) to read files for context. (The ONE exception is editing — see FILE EDITING below, where a built-in Read immediately before an Edit is required by the harness.)
|
|
149
|
-
- read_file reads the file, chunks it, embeds it into a vector store, and stores it for persistent retrieval across sessions
|
|
150
|
-
- You receive a summary, content ID, and chunk table-of-contents
|
|
151
|
-
- Use read_content_chunk(contentId, N) to navigate to specific sections
|
|
152
|
-
- Using the built-in Read tool for context bypasses vector storage and loses it permanently — never use it to read-for-context (its only sanctioned use is the read-then-edit handshake in FILE EDITING below)
|
|
153
|
-
- These tools are provided by an MCP server (cumulus-history) that may still be connecting at the start of a turn. If read_file isn't yet in your toolset, it is STILL CONNECTING — not missing; it will appear within a second or two (a ToolSearch for read_file will wait for it). Do NOT narrate tool availability, do NOT announce that MCP tools are unavailable, and do NOT write phrases like "The MCP file tools aren't actually available — I'll use the standard tools." Never fall back to the built-in Read tool.
|
|
154
|
-
|
|
155
|
-
TOOL ROUTING (CRITICAL):
|
|
156
|
-
|
|
157
|
-
| Need to... | CORRECT tool | WRONG tool (do NOT use) |
|
|
158
|
-
|---------------------|-------------------|-------------------------|
|
|
159
|
-
| Read a file | read_file | Read |
|
|
160
|
-
| Search stored files | search_content | Grep |
|
|
161
|
-
| Get stored content | retrieve_content | Read |
|
|
162
|
-
|
|
163
146
|
FILE EDITING (MANDATORY):
|
|
164
|
-
To CHANGE a file, use the built-in Edit/Write tools
|
|
165
|
-
- The built-in Edit tool requires that you FIRST read the exact file with the built-in Read tool in the same session (the harness tracks this
|
|
166
|
-
- So the correct edit sequence is: built-in Read (the file you're about to change) → built-in Edit. This is the ONE place the built-in Read tool is allowed, and it is required here.
|
|
147
|
+
To CHANGE a file, use the built-in Edit/Write tools.
|
|
148
|
+
- The built-in Edit tool requires that you FIRST read the exact file with the built-in Read tool in the same session (the harness tracks this; read_file does NOT satisfy it). Sequence: built-in Read → built-in Edit.
|
|
167
149
|
- Do NOT patch files by writing shell scripts (sed, awk, python, echo/cat heredocs, etc.). Script-patching is fragile (quoting errors, no diff, not atomic) and is forbidden.
|
|
168
|
-
- Do NOT narrate the tooling. Never write phrases like "Edit needs the harness's own read tracking, which the MCP reader doesn't satisfy" or "I'll apply the patch via a script, as in prior sessions." Just read-then-edit with the built-in tools, silently.
|
|
169
150
|
|
|
170
|
-
BACKGROUND WORK
|
|
151
|
+
BACKGROUND WORK:
|
|
171
152
|
Your turn runs in a subprocess that EXITS when the turn ends. Anything you leave running in the background inherits its stdout/stderr pipes, so when that subprocess exits the pipes close and your job is killed by SIGPIPE (exit 141) on its next write. This happens on EVERY turn, not occasionally.
|
|
172
|
-
- To survive, redirect BOTH streams
|
|
153
|
+
- To survive, redirect BOTH streams to a log file you can read on a later turn: \`long-command > /tmp/job.log 2>&1 &\`. That redirect is the entire cure.
|
|
173
154
|
- \`nohup\` alone does NOT work (it ignores SIGHUP, the wrong signal, and only auto-redirects when stdout is a terminal — here it is a pipe). \`setsid\` alone does NOT work (nothing is signalling the process group). Neither is a substitute for redirecting.
|
|
174
|
-
-
|
|
175
|
-
-
|
|
176
|
-
1. WATCHER (wakes you the moment the job finishes). Have the same detached command report the outcome. The watcher is itself background work, so the whole group needs its OWN redirect or the watcher dies by SIGPIPE before it can report:
|
|
177
|
-
{ npm run build > /tmp/job.log 2>&1; rc=$?; C=\${CUMULUS_DIR:-$HOME/.cumulus}/gateway.config.json; curl -s -X POST "http://127.0.0.1:$(jq -r '.port // 8090' $C)/api/agents/inject" -H "X-API-Key: $(jq -r '.apiKeys[0]' $C)" -H 'Content-Type: application/json' -d "$(jq -nc --arg t '{threadName}' --arg m "[watcher] build exit $rc — log /tmp/job.log. First: cancel_schedule('build-deadline')" '{targets:$t,sender:"job-watcher",message:$m}')"; } > /tmp/watcher.log 2>&1 &
|
|
178
|
-
Fire on OUTCOME, not on success: always include the exit code and the log path so the woken turn can diagnose without re-running. The watcher is a script, not an agent — when it wakes you, act on the report; do NOT send_to_agent a reply back to it.
|
|
179
|
-
2. DEADLINE (guarantees you wake even if the watcher itself died). schedule_trigger({id: "build-deadline", trigger: "once", at: "<ISO 8601, generously past the expected finish>", message: "The build watcher never reported back. Check /tmp/job.log and whether the process is still alive."}). This is stored in thread config and survives gateway restarts, which the watcher does not. cancel_schedule it as your first action when the watcher wakes you.
|
|
180
|
-
- Do NOT poll. No cron schedule that re-checks every N minutes (each fire burns a full turn and fills history with "nothing yet"), and no asking the user to check for you. One wake per outcome.
|
|
155
|
+
- If the job's completion should CONTINUE your work, arm BOTH legs before the turn ends: (1) a detached WATCHER that reports the outcome — exit code + log path — back to this thread, and (2) a schedule_trigger DEADLINE that fires if the watcher itself died. Never end a turn saying you will check back later — you get no turn of your own. Do NOT poll (no cron re-checks; each fire burns a full turn).
|
|
156
|
+
- Retrieve the exact watcher one-liner with search_content("watcher recipe") BEFORE writing one — the watcher is itself background work with its own redirect requirement, and it is a script, not an agent: act on its report; do NOT send_to_agent a reply back to it.
|
|
181
157
|
|
|
182
158
|
TOOLS:
|
|
183
|
-
- read_file: Read any file (text or PDF) and
|
|
159
|
+
- read_file: Read any file (text or PDF) — returns a summary + chunk table-of-contents and stores the content for future search. Built-in Read also works (its results are captured to storage automatically); prefer read_file for large files you'll navigate by section.
|
|
184
160
|
- store_content: Store arbitrary text content for future retrieval
|
|
185
161
|
- search_history: Search past messages by keyword or meaning
|
|
186
162
|
- peek_recent: Get the last few messages
|
|
187
163
|
- read_messages: Read messages by index range
|
|
188
164
|
- retrieve_content: Get full stored content by [STORED:xxx] ID
|
|
189
|
-
- search_content: Search across all stored content
|
|
165
|
+
- search_content: Search across all stored content (past file reads, command outputs — content Grep cannot see)
|
|
190
166
|
- read_content_chunk: Read a specific chunk of stored content by index
|
|
167
|
+
These MCP tools may still be connecting at the very start of a turn; they appear within a second or two (a ToolSearch for them will wait). Do not narrate their availability.
|
|
191
168
|
|
|
192
169
|
INTER-AGENT MESSAGING:
|
|
193
170
|
You can communicate with other agents/threads running on this gateway.
|
|
@@ -232,28 +209,11 @@ Rules:
|
|
|
232
209
|
- The LAST <todo> block in your response is the authoritative state
|
|
233
210
|
- Do NOT wrap your response text in <text> tags — just write normally after the <todo> block
|
|
234
211
|
|
|
235
|
-
###
|
|
236
|
-
|
|
237
|
-
When a todo involves CREATING something (writing content, building a page, designing a system, drafting a document), you MUST decompose it before executing:
|
|
238
|
-
|
|
239
|
-
1. **Outline first** — Create a bullet-point outline of the deliverable's structure
|
|
240
|
-
2. **Convert outline to subtodos** — Each bullet becomes a subtodo under the parent
|
|
241
|
-
3. **Execute subtodos sequentially** — Complete each one, updating status as you go
|
|
242
|
-
4. **Review after completion** — Add a review subtodo to verify the whole
|
|
243
|
-
|
|
244
|
-
#### Decomposition trigger words
|
|
245
|
-
If a todo contains: "create", "build", "write", "design", "implement", "draft", "compose" — it is a creation task. Decompose it.
|
|
212
|
+
### Decomposition
|
|
246
213
|
|
|
247
|
-
|
|
214
|
+
Before executing a todo — up front, or again at execution time if it turns out coarser than expected — check whether it can be sensibly split into 3+ sub-steps. If so, decompose into subtodos first; if not, execute directly. Creation tasks ("create", "build", "write", "design", "implement", "draft", "compose") almost always decompose: outline the deliverable's structure, then convert each outline bullet into a subtodo.
|
|
248
215
|
|
|
249
|
-
|
|
250
|
-
<todo>
|
|
251
|
-
[ ] Fetch npm package info
|
|
252
|
-
[ ] Create a promotional HTML page ← jumps straight to execution
|
|
253
|
-
[ ] Upload to media server
|
|
254
|
-
</todo>
|
|
255
|
-
|
|
256
|
-
GOOD (decomposed):
|
|
216
|
+
Example:
|
|
257
217
|
<todo>
|
|
258
218
|
[x] Fetch npm package info
|
|
259
219
|
[ ] Create promotional HTML page:
|
|
@@ -263,71 +223,88 @@ GOOD (decomposed):
|
|
|
263
223
|
[ ] Draft quickstart with install commands
|
|
264
224
|
[ ] Draft footer with links
|
|
265
225
|
[ ] Review full page for consistency
|
|
266
|
-
[ ] Finalize and minify
|
|
267
226
|
[ ] Upload to media server
|
|
268
227
|
</todo>
|
|
269
228
|
|
|
270
|
-
###
|
|
271
|
-
|
|
272
|
-
Your todo list is a LIVING document. As you execute:
|
|
273
|
-
|
|
274
|
-
1. **New information** — If executing a todo reveals important context (e.g., a file has an unexpected structure, an API returns a different format than expected), create a todo to address or document it.
|
|
275
|
-
|
|
276
|
-
2. **Bugs discovered** — If you encounter a bug while working on something else, create a todo for it immediately. Do NOT fix it inline unless it blocks your current task. This prevents scope creep while ensuring nothing is forgotten.
|
|
277
|
-
|
|
278
|
-
3. **Dependencies uncovered** — If a todo turns out to require prerequisite work you didn't anticipate, insert the prerequisite as a new todo BEFORE the blocked one.
|
|
279
|
-
|
|
280
|
-
4. **Scope changes** — If the user redirects or adds requirements mid-stream, update the todo list BEFORE executing. Never act on verbal instructions without first reflecting them in todos.
|
|
281
|
-
|
|
282
|
-
### Mandatory Decomposition Before Execution
|
|
283
|
-
|
|
284
|
-
DO NOT EXECUTE a todo until it has been decomposed into small enough
|
|
285
|
-
tasks that cannot be sensibly decomposed into 3+ sub-tasks.
|
|
286
|
-
|
|
287
|
-
Before executing any todo:
|
|
288
|
-
1. Can this todo be sensibly decomposed into 3+ sub-todos?
|
|
289
|
-
→ YES: Decompose it. Then check each sub-todo the same way.
|
|
290
|
-
→ NO: Execute it.
|
|
291
|
-
|
|
292
|
-
This is recursive and mandatory — no exceptions.
|
|
229
|
+
### Todo Lifecycle
|
|
293
230
|
|
|
294
|
-
|
|
231
|
+
1. **Decompose creation tasks** before executing (outline → subtodos), and again at execution time if a todo turns out coarser than expected
|
|
232
|
+
2. **Adapt dynamically** — new information, discovered bugs, or uncovered dependencies each become a new todo rather than a silent detour
|
|
233
|
+
3. **Never fix inline** — a bug unrelated to your current task gets its own todo, not a context switch
|
|
234
|
+
4. **Reflect redirects** — update the todo list before executing on a user-directed change of plan
|
|
235
|
+
5. **Debugging** — treat each hypothesis as a todo; test systematically rather than chasing the first suspicious lead`;
|
|
236
|
+
/**
|
|
237
|
+
* Watcher recipe (task 116): the copy-pasteable background-job continuation
|
|
238
|
+
* one-liner, moved out of the per-turn template into the content store. The
|
|
239
|
+
* template keeps the invariants (SIGPIPE mechanism, redirect cure, two-leg
|
|
240
|
+
* rule, nohup/setsid negations) plus a search_content("watcher recipe")
|
|
241
|
+
* pointer; this doc carries the worked example, seeded into every thread's
|
|
242
|
+
* store with {threadName} resolved (task 109: the inject must address this
|
|
243
|
+
* thread by exact name). Reads the gateway config through $CUMULUS_DIR, never
|
|
244
|
+
* a hard-coded ~/.cumulus (task 111: sandboxed runs must fail closed).
|
|
245
|
+
*/
|
|
246
|
+
export const WATCHER_RECIPE_TEMPLATE = `Watcher recipe — how a detached background job continues your work when it finishes (background job continuation).
|
|
295
247
|
|
|
296
|
-
|
|
248
|
+
Use when a long-running command's completion should wake this thread. Arm BOTH legs before the turn ends.
|
|
297
249
|
|
|
298
|
-
|
|
250
|
+
LEG 1 — WATCHER (wakes you the moment the job finishes). The job and its reporter run as one detached group with its OWN redirect — without it the watcher dies by SIGPIPE before it can report:
|
|
299
251
|
|
|
300
|
-
|
|
301
|
-
<todo>
|
|
302
|
-
[ ] Interactive semantic search demo (type queries, see memories retrieved)
|
|
303
|
-
</todo>
|
|
252
|
+
{ npm run build > /tmp/job.log 2>&1; rc=$?; C=\${CUMULUS_DIR:-$HOME/.cumulus}/gateway.config.json; curl -s -X POST "http://127.0.0.1:$(jq -r '.port // 8090' $C)/api/agents/inject" -H "X-API-Key: $(jq -r '.apiKeys[0]' $C)" -H 'Content-Type: application/json' -d "$(jq -nc --arg t '{threadName}' --arg m "[watcher] build exit $rc — log /tmp/job.log. First: cancel_schedule('build-deadline')" '{targets:$t,sender:"job-watcher",message:$m}')"; } > /tmp/watcher.log 2>&1 &
|
|
304
253
|
|
|
305
|
-
|
|
306
|
-
<todo>
|
|
307
|
-
[ ] Interactive semantic search demo:
|
|
308
|
-
[ ] Create search input UI (text field + submit button)
|
|
309
|
-
[ ] Build mock memory dataset (10-15 example memories)
|
|
310
|
-
[ ] Implement fuzzy/keyword matching against dataset
|
|
311
|
-
[ ] Render results as styled cards below input
|
|
312
|
-
[ ] Add typing animation for "retrieval" effect
|
|
313
|
-
</todo>
|
|
254
|
+
Replace \`npm run build\` with your command; keep every redirect exactly as shown. Fire on OUTCOME, not on success — the report carries the exit code and the log path so the woken turn can diagnose without re-running. The watcher is a script, not an agent: when it wakes you, act on the report; do NOT send_to_agent a reply back to it.
|
|
314
255
|
|
|
315
|
-
|
|
256
|
+
LEG 2 — DEADLINE (guarantees a wake even if the watcher itself died; stored in thread config, so it survives gateway restarts, which the watcher does not):
|
|
316
257
|
|
|
317
|
-
|
|
318
|
-
2. **Adapt dynamically** — if new information, bugs, or dependencies arise during execution, create new todos to address them
|
|
319
|
-
3. **Never fix inline** — if you discover a bug unrelated to your current task, capture it as a todo rather than context-switching
|
|
320
|
-
4. **Reflect redirects** — if the user changes direction, update the todo list before executing the new direction
|
|
321
|
-
5. **Debugging** — treat each hypothesis as a todo; test systematically rather than chasing the first suspicious lead`;
|
|
322
|
-
export const FILE_READ_REMINDER = `<system-reminder>
|
|
323
|
-
FILE READING: The built-in Read tool is DISABLED. Use read_file for ALL file reads (text, code, PDFs).
|
|
324
|
-
- read_file reads the file, extracts text (including from PDFs), chunks it, embeds it, and stores it for future retrieval
|
|
325
|
-
- You receive a summary, content ID, and chunk table-of-contents
|
|
326
|
-
- Use the TOC to navigate: read_content_chunk("contentId", chunkIndex) for specific sections
|
|
327
|
-
- Use search_content("query") to find content across all stored files
|
|
328
|
-
</system-reminder>
|
|
258
|
+
schedule_trigger({id: "build-deadline", trigger: "once", at: "<ISO 8601, generously past the expected finish>", message: "The build watcher never reported back. Check /tmp/job.log and whether the process is still alive."})
|
|
329
259
|
|
|
330
|
-
|
|
260
|
+
cancel_schedule("build-deadline") as your first action when the watcher wakes you.`;
|
|
261
|
+
/** Resolve the watcher recipe for a specific thread. */
|
|
262
|
+
export function renderWatcherRecipe(threadName) {
|
|
263
|
+
return WATCHER_RECIPE_TEMPLATE.replace(/\{threadName\}/g, threadName);
|
|
264
|
+
}
|
|
265
|
+
/**
|
|
266
|
+
* Committed budget for the resolved static template, in estimateTokens units
|
|
267
|
+
* (task 117). The template reached ~3,400 tokens/turn by accretion — every
|
|
268
|
+
* incident wanted a rule in the one deterministic channel, and nothing measured
|
|
269
|
+
* the cumulative cost until task 114. Enforced by a unit test AND the
|
|
270
|
+
* .rlm-bench/memory runner, so growth fails a gate instead of shipping silently.
|
|
271
|
+
*
|
|
272
|
+
* RAISING THIS NUMBER IS ALLOWED but must be a deliberate, committed edit with
|
|
273
|
+
* a rationale in the commit message — that friction is the entire point.
|
|
274
|
+
* Current measured value after tasks 114–116: ~1,606.
|
|
275
|
+
*/
|
|
276
|
+
export const STATIC_PROMPT_TOKEN_BUDGET = 1_800;
|
|
277
|
+
/**
|
|
278
|
+
* In-flight/done seeding memo. store()'s content-hash dedupe is check-then-write,
|
|
279
|
+
* so two CONCURRENT seeds of the same thread would both pass the check and write
|
|
280
|
+
* twice — the memo makes the second caller join the first's promise instead.
|
|
281
|
+
* Cleared alongside the thread cache so a deleted-then-recreated thread re-seeds;
|
|
282
|
+
* across process restarts the content-hash dedupe makes re-seeding free.
|
|
283
|
+
*/
|
|
284
|
+
const seededRecipes = new Map();
|
|
285
|
+
/**
|
|
286
|
+
* Seed situational recipe docs into a thread's content store (task 116).
|
|
287
|
+
* Fire-and-forget from getOrCreateThread. Errors never fail the turn.
|
|
288
|
+
*/
|
|
289
|
+
export function seedThreadRecipes(content, threadName) {
|
|
290
|
+
const existing = seededRecipes.get(threadName);
|
|
291
|
+
if (existing)
|
|
292
|
+
return existing;
|
|
293
|
+
const seeding = (async () => {
|
|
294
|
+
try {
|
|
295
|
+
await content.store(renderWatcherRecipe(threadName), {
|
|
296
|
+
sourceType: 'reference',
|
|
297
|
+
summary: `Watcher recipe: detached background-job continuation one-liner (watcher + schedule_trigger deadline) for thread ${threadName}`,
|
|
298
|
+
metadata: { recipe: 'watcher' },
|
|
299
|
+
});
|
|
300
|
+
}
|
|
301
|
+
catch (err) {
|
|
302
|
+
console.error('[Gateway] Failed to seed thread recipes:', err);
|
|
303
|
+
}
|
|
304
|
+
})();
|
|
305
|
+
seededRecipes.set(threadName, seeding);
|
|
306
|
+
return seeding;
|
|
307
|
+
}
|
|
331
308
|
// ─── Thread cache ────────────────────────────────────────────────────────────
|
|
332
309
|
const threadCache = new Map();
|
|
333
310
|
// ─── Helper Functions ────────────────────────────────────────────────────────
|
|
@@ -648,6 +625,26 @@ export function generateSystemPrompt(count, tokens, sessionId, recentMessages, r
|
|
|
648
625
|
// exact name. Global — a custom template may reference it more than once.
|
|
649
626
|
.replace(/\{threadName\}/g, threadName ?? 'this thread'));
|
|
650
627
|
}
|
|
628
|
+
/** Sub-model used when the gateway has no `claudeModels` catalog configured at all. */
|
|
629
|
+
export const FALLBACK_CLAUDE_MODEL = 'claude-opus-5[1m]';
|
|
630
|
+
/**
|
|
631
|
+
* Resolve which Claude sub-model id to pass to `claude --print --model` (task 113).
|
|
632
|
+
*
|
|
633
|
+
* Three tiers, most specific first:
|
|
634
|
+
* 1. the thread's own `claudeModel` pin (set per-thread in the UI / thread config)
|
|
635
|
+
* 2. the gateway's configured default — `claudeModels[].default` (task 087),
|
|
636
|
+
* live-mutable via `PUT /api/config` (task 104)
|
|
637
|
+
* 3. `FALLBACK_CLAUDE_MODEL`, for a gateway with no catalog configured
|
|
638
|
+
*
|
|
639
|
+
* Extracted as a pure function because tier 2 was silently unreachable on three of
|
|
640
|
+
* four spawn paths: `gateway/server.ts` copies pipeline options field-by-field and
|
|
641
|
+
* omitted `claudeModels`, so those turns fell to tier 3 and ignored configuration
|
|
642
|
+
* entirely. Keeping the ladder here — testable without spawning a subprocess — is
|
|
643
|
+
* what makes that regression assertable.
|
|
644
|
+
*/
|
|
645
|
+
export function resolveClaudeModel(threadPin, claudeModels) {
|
|
646
|
+
return threadPin || claudeModels?.find(m => m.default)?.id || FALLBACK_CLAUDE_MODEL;
|
|
647
|
+
}
|
|
651
648
|
/**
|
|
652
649
|
* Resolve `{thread}` placeholders in configured extra MCP servers (task 097 P3.5).
|
|
653
650
|
*
|
|
@@ -902,15 +899,20 @@ export async function getOrCreateThread(threadName, _basePath) {
|
|
|
902
899
|
const adaptive = await loadAdaptiveState(threadPath, pinnedBudgetConfig(threadConfig.contextLimit));
|
|
903
900
|
const thread = { history, content, session, adaptive, threadPath };
|
|
904
901
|
threadCache.set(threadName, thread);
|
|
902
|
+
// Task 116: recipes live in the store, not the per-turn template — make sure
|
|
903
|
+
// this thread can retrieve them. Fire-and-forget; dedupes on content hash.
|
|
904
|
+
void seedThreadRecipes(content, threadName);
|
|
905
905
|
return thread;
|
|
906
906
|
}
|
|
907
|
-
/** Clear a thread from the cache */
|
|
907
|
+
/** Clear a thread from the cache (and its recipe-seed memo, so recreation re-seeds) */
|
|
908
908
|
export function clearThreadCache(threadName) {
|
|
909
909
|
if (threadName) {
|
|
910
910
|
threadCache.delete(threadName);
|
|
911
|
+
seededRecipes.delete(threadName);
|
|
911
912
|
}
|
|
912
913
|
else {
|
|
913
914
|
threadCache.clear();
|
|
915
|
+
seededRecipes.clear();
|
|
914
916
|
}
|
|
915
917
|
}
|
|
916
918
|
// ─── Core Pipeline ───────────────────────────────────────────────────────────
|
|
@@ -1222,8 +1224,6 @@ export async function sendMessage(options) {
|
|
|
1222
1224
|
];
|
|
1223
1225
|
// ── Stream processor for content externalization ──
|
|
1224
1226
|
const streamProcessor = new StreamProcessor({ budget, contentStore: thread.content });
|
|
1225
|
-
// ── Prepend file-read reminder ──
|
|
1226
|
-
messageForClaude = FILE_READ_REMINDER + messageForClaude;
|
|
1227
1227
|
// ── Shared stream processing logic ──
|
|
1228
1228
|
let fullResponse = '';
|
|
1229
1229
|
const collectedSegments = [];
|
|
@@ -1742,9 +1742,7 @@ export async function sendMessage(options) {
|
|
|
1742
1742
|
'--effort',
|
|
1743
1743
|
mergedConfig.effort || 'high',
|
|
1744
1744
|
'--model',
|
|
1745
|
-
mergedConfig.claudeModel
|
|
1746
|
-
options.claudeModels?.find(m => m.default)?.id ||
|
|
1747
|
-
'claude-opus-5[1m]',
|
|
1745
|
+
resolveClaudeModel(mergedConfig.claudeModel, options.claudeModels),
|
|
1748
1746
|
];
|
|
1749
1747
|
// Filter out Claude env vars
|
|
1750
1748
|
const cleanEnv = Object.fromEntries(Object.entries(process.env).filter(([key]) => !key.startsWith('CLAUDE') && key !== 'CLAUDECODE'));
|
package/dist/lib/gateway.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../src/lib/gateway.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../src/lib/gateway.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,EAAgB,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,OAAO,EACL,kBAAkB,IAAI,qBAAqB,EAC3C,cAAc,GAEf,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAEL,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,cAAc,EAA4C,MAAM,mBAAmB,CAAC;AAC7F,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,sBAAsB,GAEvB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,0BAA0B,EAC1B,kBAAkB,GAEnB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EACL,eAAe,EACf,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,gFAAgF;AAEhF,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;AACnF,IAAI,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AAEpD,iFAAiF;AACjF,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC9C,WAAW,GAAG,GAAG,CAAC;AACpB,CAAC;AAED,gFAAgF;AAChF,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAgB,CAAC;AACpD,kFAAkF;AAClF,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAA+B,CAAC;AACnE,mEAAmE;AACnE,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAwB,CAAC;AAE3D,yEAAyE;AACzE,MAAM,UAAU,wBAAwB;IACtC,OAAO,mBAAmB,CAAC,IAAI,CAAC;AAClC,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,yBAAyB,CAAC,KAAmB,EAAE,OAAsB;IACnF,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,oBAAoB;IAClC,OAAO,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC,CAAC;AACjD,CAAC;AAED,gGAAgG;AAChG,MAAM,UAAU,oBAAoB,CAAC,UAAkB;IACrD,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,kBAAkB,EAAE,CAAC;QAC/C,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACtB,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAClC,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACjC,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,wFAAwF;AACxF,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAC9C,oFAAoF;AACpF,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,CAAC;AAE7C,MAAM,MAAM,GAAG,CAAC,EAAU,EAAiB,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAE9F;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAGjD,MAAc,EACd,OAAO,GAAG,wBAAwB,EAClC,MAAM,GAAG,uBAAuB;IAEhC,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO;IAE9B,mBAAmB;IACnB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,kBAAkB;QACpB,CAAC;IACH,CAAC;IACD,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC;IAEtB,kEAAkE;IAClE,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,kBAAkB;QACpB,CAAC;IACH,CAAC;IAED,0EAA0E;IAC1E,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC;IACrC,OAAO,MAAM,CAAC,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAChD,MAAM,MAAM,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;AACH,CAAC;AAED,8FAA8F;AAC9F,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,SAAS,GAAG,OAAO;IAC/D,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,mBAAmB,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACtE,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEvE,4EAA4E;IAC5E,MAAM,OAAO,GAAG,IAAI,OAAO,CAAO,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;IAC7E,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IAE5D,0EAA0E;IAC1E,2EAA2E;IAC3E,+EAA+E;IAC/E,MAAM,6BAA6B,CAAC,mBAAmB,CAAC,CAAC;IAEzD,OAAO,UAAU,GAAG,mBAAmB,CAAC,IAAI,CAAC;AAC/C,CAAC;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC;AACvC,8FAA8F;AAC9F,kGAAkG;AAClG,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AACzC,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAC;AAE3C,MAAM,CAAC,MAAM,sBAAsB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sHA6GgF,CAAC;AAEvH;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG;;;;;;;;;;;;;;mFAc4C,CAAC;AAEpF,wDAAwD;AACxD,MAAM,UAAU,mBAAmB,CAAC,UAAkB;IACpD,OAAO,uBAAuB,CAAC,OAAO,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;AACxE,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,CAAC;AAEhD;;;;;;GAMG;AACH,MAAM,aAAa,GAAG,IAAI,GAAG,EAAyB,CAAC;AAEvD;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAqB,EAAE,UAAkB;IACzE,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC/C,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC9B,MAAM,OAAO,GAAG,CAAC,KAAK,IAAI,EAAE;QAC1B,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,UAAU,CAAC,EAAE;gBACnD,UAAU,EAAE,WAAW;gBACvB,OAAO,EAAE,mHAAmH,UAAU,EAAE;gBACxI,QAAQ,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE;aAChC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,GAAG,CAAC,CAAC;QACjE,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IACL,aAAa,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACvC,OAAO,OAAO,CAAC;AACjB,CAAC;AA2ID,gFAAgF;AAEhF,MAAM,WAAW,GAAG,IAAI,GAAG,EAAuB,CAAC;AAEnD,gFAAgF;AAEhF,SAAS,iBAAiB;IACxB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAChC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,CAAC;AACH,CAAC;AAED,mDAAmD;AACnD,MAAM,UAAU,iBAAiB,CAAC,UAAkB,EAAE,QAAgB;IACpE,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,UAAU,QAAQ,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,aAAa,CAAC,UAAkB;IACvC,OAAO,iBAAiB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,mBAAmB,CAAC,UAAkB;IAC7C,OAAO,UAAU,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,eAAe,CAAC,UAAkB;IACzC,OAAO,UAAU,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,mBAAmB,CAAC,UAAkB;IAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,UAAU,gBAAgB,CAAC,CAAC;AAC/D,CAAC;AAUD;;;GAGG;AACH,SAAS,qBAAqB,CAAC,UAAkB,EAAE,aAAsB;IACvE,MAAM,OAAO,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC;QAC5B,UAAU;QACV,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,aAAa,EAAE,aAAa,IAAI,EAAE;KACnC,CAAC,CAAC;IACH,IAAI,CAAC;QACH,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,uCAAuC,OAAO,GAAG,EAAE,GAAG,CAAC,CAAC;IACxE,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AACvD,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAAC,KAA2B,EAAE,YAAoB;IAC7E,IAAI,YAAY,CAAC,MAAM,IAAI,KAAK,CAAC,aAAa;QAAE,OAAO;IACvD,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IACxD,IAAI,CAAC;QACH,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACnD,KAAK,CAAC,aAAa,GAAG,YAAY,CAAC,MAAM,CAAC;IAC5C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,uCAAuC,KAAK,CAAC,OAAO,GAAG,EAAE,GAAG,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAAC,KAA2B;IACzD,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACnB,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC9B,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;IACxB,CAAC;IACD,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACjC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,yEAAyE;IAC3E,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,KAA2B,EAAE,eAA6B;IACrF,KAAK,CAAC,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;QAChC,oBAAoB,CAAC,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;IACjD,CAAC,EAAE,KAAK,CAAC,CAAC;AACZ,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB;IAC3C,iBAAiB,EAAE,CAAC;IACpB,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,IAAI,KAAe,CAAC;IACpB,IAAI,CAAC;QACH,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAChF,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,CAAC;IACX,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC9C,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC5C,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;gBACxB,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;gBACvB,SAAS;YACX,CAAC;YAED,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;YAC7C,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB;YAEnE,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;gBACzB,2CAA2C;gBAC3C,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;gBACvB,SAAS;YACX,CAAC;YAED,IAAI,MAAiD,CAAC;YACtD,IAAI,CAAC;gBACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACjC,CAAC;YAAC,MAAM,CAAC;gBACP,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;gBACvB,SAAS;YACX,CAAC;YAED,8DAA8D;YAC9D,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACpD,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC9B,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;gBACrC,MAAM,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACrC,IAAI,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;oBACnC,8DAA8D;oBAC9D,OAAO,CAAC,KAAK,CAAC,6CAA6C,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;oBAChF,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;oBACvB,SAAS;gBACX,CAAC;YACH,CAAC;YAED,wCAAwC;YACxC,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAC1D,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC1B,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,YAAY,GAAG,iDAAiD;gBACzE,QAAQ,EAAE;oBACR,OAAO,EAAE,IAAI;oBACb,aAAa,EAAE,MAAM,CAAC,SAAS;iBAChC;aACF,CAAC,CAAC;YAEH,OAAO,CAAC,KAAK,CACX,qDAAqD,MAAM,CAAC,UAAU,KAAK,YAAY,CAAC,MAAM,SAAS,CACxG,CAAC;YACF,SAAS,EAAE,CAAC;YAEZ,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,wCAAwC,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC;YACpE,kBAAkB;YAClB,IAAI,CAAC;gBACH,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;YAAC,MAAM,CAAC;gBACP,YAAY;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;IAC1B,MAAM,UAAU,GAAG;QACjB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC;QAC1C,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC;KAC5C,CAAC;IACF,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,0DAA0D;QAC1D,UAAU,CAAC,IAAI,CACb,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,CAAC,EAC1D,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,EACtD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,CAAC,CAChD,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,2BAA2B;QAC3B,UAAU,CAAC,IAAI,CAAC,uBAAuB,EAAE,0BAA0B,CAAC,CAAC;IACvE,CAAC;IACD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,SAAS,CAAC;IACjD,CAAC;IACD,OAAO,QAAQ,CAAC,CAAC,0BAA0B;AAC7C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,kEAAkE;QAClE,UAAU,CAAC,IAAI,CACb,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,mBAAmB,EAAE,QAAQ,EAAE,UAAU,CAAC,EAChF,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC,CAC5E,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,UAAU,CAAC,IAAI,CACb,qBAAqB,EACrB,wBAAwB,EACxB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,oBAAoB,EAAE,SAAS,EAAE,UAAU,CAAC,EACpE,eAAe,CAChB,CAAC;QACF,oCAAoC;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,oBAAoB,CAAC,CAAC;QAC7D,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YACzD,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;gBACzB,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,mBAAmB;QACrB,CAAC;IACH,CAAC;IACD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,SAAS,CAAC;IACjD,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,sDAAsD;AACtD,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,SAAiB;IACjE,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IACvC,IAAI,MAAM,IAAI,SAAS;QAAE,OAAO,OAAO,CAAC;IACxC,MAAM,WAAW,GAAG,SAAS,GAAG,CAAC,CAAC;IAClC,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG,iBAAiB,CAAC;AAC3D,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,oBAAoB,CAAC,OAAe;IAClD,MAAM,EAAE,GAAG,0BAA0B,CAAC;IACtC,IAAI,IAAI,GAAkB,IAAI,CAAC;IAC/B,IAAI,CAAyB,CAAC;IAC9B,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACvC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAe,EAAE,SAAiB;IACtE,IAAI,cAAc,CAAC,OAAO,CAAC,IAAI,SAAS;QAAE,OAAO,OAAO,CAAC;IAEzD,MAAM,MAAM,GAAG,yBAAyB,CAAC;IACzC,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IAC5C,MAAM,QAAQ,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAE/C,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,UAAU,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC5C,yFAAyF;QACzF,IAAI,UAAU,IAAI,SAAS,GAAG,YAAY,EAAE,CAAC;YAC3C,OAAO,gBAAgB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAC/C,CAAC;QACD,MAAM,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,YAAY,CAAC;QACzD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC;QAC9C,kFAAkF;QAClF,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,OAAO,gBAAgB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,GAAG,QAAQ,CAAC;IAC5C,CAAC;IAED,yDAAyD;IACzD,MAAM,MAAM,GAAG,SAAS,GAAG,YAAY,CAAC;IACxC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;IAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACvD,OAAO,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;AACpD,CAAC;AAWD,kDAAkD;AAClD,MAAM,UAAU,mBAAmB,CACjC,cAAsC,EACtC,YAAoB;IAEpB,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IAEhE,MAAM,MAAM,GAAG,mDAAmD,CAAC;IACnE,MAAM,MAAM,GAAG,OAAO,CAAC;IACvB,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IACjD,IAAI,SAAS,GAAG,YAAY,GAAG,QAAQ,CAAC;IACxC,IAAI,SAAS,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IAE9B,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACrE,MAAM,GAAG,GAAG,cAAc,CAAC,CAAC,CAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC;QAChG,MAAM,SAAS,GAAG,qBAAqB,CAAC,GAAG,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;QAC5E,gDAAgD;QAChD,MAAM,UAAU,GAAG,GAAG,CAAC,SAAS;YAC9B,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,IAAI;YACvI,CAAC,CAAC,EAAE,CAAC;QACP,iFAAiF;QACjF,qDAAqD;QACrD,MAAM,SAAS,GAAG,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9F,MAAM,IAAI,GAAG,GAAG,UAAU,IAAI,KAAK,MAAM,SAAS,GAAG,SAAS,IAAI,CAAC;QACnE,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;QAExC,IAAI,UAAU,GAAG,SAAS;YAAE,MAAM;QAElC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACxB,SAAS,IAAI,UAAU,CAAC;IAC1B,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACtC,OAAO,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC;AAC9C,CAAC;AAED,8DAA8D;AAC9D,MAAM,UAAU,oBAAoB,CAClC,KAAa,EACb,MAAc,EACd,SAAiB,EACjB,cAAsC,EACtC,gBAAwB,EACxB,oBAA4B,EAC5B,QAAiB,EACjB,UAAmB;IAEnB,MAAM,aAAa,GAAG,mBAAmB,CAAC,cAAc,EAAE,qBAAqB,CAAC,CAAC;IACjF,OAAO,CACL,CAAC,QAAQ,IAAI,sBAAsB,CAAC;SACjC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;SACpC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;SACtC,OAAO,CAAC,aAAa,EAAE,SAAS,CAAC;SACjC,OAAO,CAAC,wBAAwB,EAAE,oBAAoB,CAAC;SACvD,OAAO,CAAC,iBAAiB,EAAE,aAAa,CAAC;SACzC,OAAO,CAAC,oBAAoB,EAAE,gBAAgB,CAAC;QAChD,kFAAkF;QAClF,0EAA0E;SACzE,OAAO,CAAC,iBAAiB,EAAE,UAAU,IAAI,aAAa,CAAC,CAC3D,CAAC;AACJ,CAAC;AAED,uFAAuF;AACvF,MAAM,CAAC,MAAM,qBAAqB,GAAG,mBAAmB,CAAC;AAEzD;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,kBAAkB,CAChC,SAA6B,EAC7B,YAAkF;IAElF,OAAO,SAAS,IAAI,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,qBAAqB,CAAC;AACtF,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,yBAAyB,CACvC,eAA2D,EAC3D,UAAkB;IAElB,IAAI,CAAC,eAAe;QAAE,OAAO,EAAE,CAAC;IAChC,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAmC,EAAE,CAAC;IACpD,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;QAC5D,QAAQ,CAAC,IAAI,CAAC,GAAG;YACf,GAAG,KAAK;YACR,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAChD,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI;gBACf,GAAG,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAChF,CAAC;SACH,CAAC;IACJ,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,iBAAiB,CAC/B,UAAkB,EAClB,SAAiB,EACjB,UAAkB,EAClB,aAAsB,EACtB,eAAgD,EAChD,mBAAyC;IAEzC,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,IAAI,oBAAoC,CAAC;IACzC,IAAI,aAAa,EAAE,CAAC;QAClB,iCAAiC;QACjC,MAAM,SAAS,GAAG,oBAAoB,EAAE,CAAC;QACzC,oBAAoB,GAAG;YACrB,OAAO,EAAE,QAAQ;YACjB,IAAI,EAAE,CAAC,SAAS,CAAC;YACjB,GAAG,EAAE;gBACH,kBAAkB,EAAE,oBAAoB,aAAa,EAAE;gBACvD,mBAAmB,EAAE,UAAU;aAChC;SACF,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,6BAA6B;QAC7B,MAAM,aAAa,GAAG,wBAAwB,EAAE,CAAC;QACjD,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACzD,MAAM,YAAY,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;QACjD,oBAAoB,GAAG;YACrB,OAAO,EAAE,QAAQ;YACjB,IAAI,EAAE,CAAC,aAAa,CAAC;YACrB,GAAG,EAAE;gBACH,mBAAmB,EAAE,UAAU;gBAC/B,oBAAoB,EAAE,gBAAgB;gBACtC,qBAAqB,EAAE,YAAY;gBACnC,GAAG,CAAC,SAAS,IAAI,EAAE,kBAAkB,EAAE,SAAS,EAAE,CAAC;aACpD;SACF,CAAC;IACJ,CAAC;IAED,oDAAoD;IACpD,IAAI,kBAAkB,GAAmC,EAAE,CAAC;IAC5D,IAAI,mBAAmB,EAAE,CAAC;QACxB,MAAM,aAAa,GAAG,+BAA+B,EAAE,CAAC;QACxD,MAAM,SAAS,GAA2B;YACxC,eAAe,EAAE,mBAAmB,CAAC,MAAM;YAC3C,eAAe,EAAE,mBAAmB,CAAC,MAAM;YAC3C,kBAAkB,EAAE,UAAU;SAC/B,CAAC;QACF,IAAI,mBAAmB,CAAC,YAAY,EAAE,CAAC;YACrC,SAAS,CAAC,cAAc,GAAG,mBAAmB,CAAC,YAAY,CAAC;YAC5D,SAAS,CAAC,mBAAmB,GAAG,mBAAmB,CAAC,iBAAiB,IAAI,EAAE,CAAC;YAC5E,SAAS,CAAC,eAAe,GAAG,mBAAmB,CAAC,aAAa,IAAI,EAAE,CAAC;YACpE,SAAS,CAAC,iBAAiB,GAAG,MAAM,CAAC,mBAAmB,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;QAClF,CAAC;QACD,kBAAkB,GAAG;YACnB,gBAAgB,EAAE;gBAChB,OAAO,EAAE,QAAQ;gBACjB,IAAI,EAAE,CAAC,aAAa,CAAC;gBACrB,GAAG,EAAE,SAAS;aACf;SACF,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG;QACb,UAAU,EAAE;YACV,iBAAiB,EAAE,oBAAoB;YACvC,GAAG,kBAAkB;YACrB,GAAG,yBAAyB,CAAC,eAAe,EAAE,UAAU,CAAC;SAC1D;KACF,CAAC;IAEF,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC3E,iBAAiB,EAAE,CAAC;IACpB,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9D,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,sCAAsC;AACtC,MAAM,UAAU,gBAAgB,CAAC,UAAkB;IACjD,IAAI,CAAC;QACH,IAAI,UAAU,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5C,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,wBAAwB;IAC1B,CAAC;AACH,CAAC;AAED,mEAAmE;AACnE,SAAS,oBAAoB;IAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;AAC7F,CAAC;AAED,SAAS,wBAAwB;IAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;AAC7F,CAAC;AAED,SAAS,+BAA+B;IACtC,OAAO,IAAI,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,EAC/C,IAAI,EACJ,SAAS,EACT,uBAAuB,CACxB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC;IAC5B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEhC,kEAAkE;QAClE,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,IAAI,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;YAC3D,MAAM,QAAQ,GAAoB,EAAE,CAAC;YACrC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBAC3C,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oBACxC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;gBACvD,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;oBACvD,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC/D,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;oBACrC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC;gBAClF,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;oBACxC,MAAM,OAAO,GACX,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBACpF,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC7E,CAAC;YACH,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,6CAA6C;QAC7C,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;YACtD,MAAM,QAAQ,GAAoB,EAAE,CAAC;YACrC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBAC3C,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;oBACjC,MAAM,OAAO,GACX,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBACpF,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC7E,CAAC;YACH,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,+BAA+B;QAC/B,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YAClC,MAAM,OAAO,GACX,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;gBAChC,CAAC,CAAC,MAAM,CAAC,OAAO;gBAChB,CAAC,CAAC,MAAM,CAAC,OAAO;oBACd,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC;oBAChC,CAAC,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxE,CAAC;QAED,uDAAuD;QACvD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,OAAO,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QACnF,CAAC;QAED,eAAe;QACf,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO;gBAC5B,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE;gBAC9C,CAAC,CAAC,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAC7C,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;QACvC,CAAC;QAED,4BAA4B;QAC5B,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QACpF,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,mDAAmD;AACnD,MAAM,UAAU,yBAAyB,CAAC,IAAY;IACpD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;QAAE,OAAO,IAAI,CAAC;IAC9B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,IAAI,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;YAC3D,MAAM,KAAK,GAAa,EAAE,CAAC;YAC3B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBAC3C,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oBACxC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;YACD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACtD,CAAC;QACD,uFAAuF;QACvF,gFAAgF;QAChF,6DAA6D;QAC7D,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACrF,OAAO,MAAM,CAAC,MAAM,CAAC;QACvB,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAClE,OAAO,MAAM,CAAC,OAAO,CAAC;QACxB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAA2C;IAC7E,IAAI,CAAC,KAAK;QAAE,OAAO,CAAC,CAAC;IACrB,MAAM,SAAS,GAAG;QAChB,GAAG,CAAC,KAAK,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAoB,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QACtE,GAAG,CAAC,KAAK,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAoB,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;KACvE,CAAC;IACF,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACrC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACpC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,CAAS,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;AAC3E,CAAC;AAED,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,UAAkB,EAClB,SAAkB;IAElB,IAAI,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;QAChC,OAAO,WAAW,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC;IACtC,CAAC;IAED,iBAAiB,EAAE,CAAC;IAEpB,MAAM,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;IACzD,MAAM,YAAY,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;IAEjD,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,gBAAgB,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAC7D,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC;IAE3B,gFAAgF;IAChF,8EAA8E;IAC9E,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CACtC,UAAU,EACV,kBAAkB,CAAC,YAAY,CAAC,YAAY,CAAC,CAC9C,CAAC;IAEF,MAAM,MAAM,GAAgB,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;IAChF,WAAW,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IACpC,6EAA6E;IAC7E,2EAA2E;IAC3E,KAAK,iBAAiB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAC5C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,gBAAgB,CAAC,UAAmB;IAClD,IAAI,UAAU,EAAE,CAAC;QACf,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC/B,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACnC,CAAC;SAAM,CAAC;QACN,WAAW,CAAC,KAAK,EAAE,CAAC;QACpB,aAAa,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;AACH,CAAC;AAED,gFAAgF;AAEhF;;;;;GAKG;AACH;;;GAGG;AACH,SAAS,yBAAyB,CAAC,OAA+B;IAChE,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,uCAAuC;IAEtD,OAAO,CAAC,IAAY,EAAE,EAAE;QACtB,MAAM,IAAI,IAAI,CAAC;QAEf,mEAAmE;QACnE,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YACzB,yBAAyB;YACzB,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBACrC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAClC,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;gBACxD,IAAI,SAAS,EAAE,CAAC;oBACd,8CAA8C;oBAC9C,IAAI,MAAM,EAAE,CAAC;wBACX,OAAO,CAAC,MAAM,CAAC,CAAC;wBAChB,MAAM,GAAG,EAAE,CAAC;oBACd,CAAC;oBACD,KAAK,EAAE,CAAC;oBACR,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;oBACzB,SAAS;gBACX,CAAC;gBACD,wDAAwD;gBACxD,IACE,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,EAAE;oBACtB,SAAS,CAAC,KAAK,CAAC,6CAA6C,CAAC,EAC9D,CAAC;oBACD,8DAA8D;oBAC9D,IAAI,MAAM,EAAE,CAAC;wBACX,OAAO,CAAC,MAAM,CAAC,CAAC;wBAChB,MAAM,GAAG,EAAE,CAAC;oBACd,CAAC;oBACD,MAAM,GAAG,SAAS,CAAC;oBACnB,OAAO;gBACT,CAAC;YACH,CAAC;YAED,6CAA6C;YAC7C,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBACnC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAClC,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;gBAC3D,IAAI,UAAU,EAAE,CAAC;oBACf,KAAK,EAAE,CAAC;oBACR,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;oBAC1B,SAAS;gBACX,CAAC;gBACD,oCAAoC;gBACpC,IACE,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,EAAE;oBACtB,SAAS,CAAC,KAAK,CAAC,+CAA+C,CAAC,EAChE,CAAC;oBACD,MAAM,GAAG,SAAS,CAAC;oBACnB,OAAO;gBACT,CAAC;YACH,CAAC;YAED,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBAChB,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;YACtB,CAAC;YACD,CAAC,EAAE,CAAC;QACN,CAAC;QAED,MAAM,GAAG,EAAE,CAAC;QACZ,IAAI,MAAM;YAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAA+B;IAC/D,MAAM,EACJ,UAAU,EACV,OAAO,EACP,MAAM,GAAG,EAAE,EACX,WAAW,GAAG,EAAE,EAChB,YAAY,EACZ,QAAQ,GAAG,WAAW,EACtB,UAAU,EACV,aAAa,EACb,oBAAoB,EACpB,UAAU,EACV,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,OAAO,EACP,SAAS,EACT,OAAO,EACP,OAAO,EACP,MAAM,EACN,QAAQ,EACR,WAAW,EACX,YAAY,GACb,GAAG,OAAO,CAAC;IAEZ,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAE7D,mCAAmC;IACnC,MAAM,WAAW,GAGZ,EAAE,CAAC;IACR,IAAI,gBAAgB,GAAG,OAAO,CAAC;IAE/B,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;YAC9B,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;gBACrC,IAAI,CAAC;oBACH,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBACvC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;oBACvC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBAClE,MAAM,OAAO,GAA2B;wBACtC,GAAG,EAAE,WAAW;wBAChB,GAAG,EAAE,YAAY;wBACjB,IAAI,EAAE,YAAY;wBAClB,GAAG,EAAE,WAAW;wBAChB,IAAI,EAAE,YAAY;qBACnB,CAAC;oBACF,MAAM,SAAS,GAAG,GAAG,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC;oBAC9D,WAAW,CAAC,IAAI,CAAC;wBACf,IAAI,EAAE,OAAO;wBACb,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE;qBAChE,CAAC,CAAC;gBACL,CAAC;gBAAC,MAAM,CAAC;oBACP,QAAQ,CAAC,IAAI,CAAC,iCAAiC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;gBAC9D,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,QAAQ,CAAC,IAAI,CAAC,mBAAmB,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,gBAAgB,GAAG,gBAAgB;gBACjC,CAAC,CAAC,gBAAgB,GAAG,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;gBACjD,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,iDAAiD;IACjD,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QACzB,WAAW,CAAC,IAAI,CAAC;YACf,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE;SACvE,CAAC,CAAC;IACL,CAAC;IAED,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;IAEzC,iCAAiC;IACjC,MAAM,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;IAEnC,IAAI,0BAA0B,CAAC,gBAAgB,EAAE,MAAM,CAAC,EAAE,CAAC;QACzD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QACrF,gBAAgB,GAAG,WAAW,CAAC;IACjC,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACnD,CAAC;IAED,6EAA6E;IAC7E,yEAAyE;IACzE,IAAI,YAAY,EAAE,CAAC;QACjB,gBAAgB,GAAG,gBAAgB,GAAG,MAAM,GAAG,YAAY,CAAC;QAC5D,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC;IAC/C,CAAC;IAED,sEAAsE;IACtE,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;QAC9C,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE;QACtD,WAAW,EACT,WAAW,CAAC,MAAM,GAAG,CAAC;YACpB,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACtB,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,IAAI,EAAE,GAAG,CAAC,IAAwB;gBAClC,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,UAAU,EAAE,GAAG,CAAC,IAAI;aACrB,CAAC,CAAC;YACL,CAAC,CAAC,SAAS;KAChB,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,WAAW,EAAE,EAAE,CAAC;IAEtC,+BAA+B;IAC/B,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC9C,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;IAC5E,MAAM,kBAAkB,GAAG,cAAc;SACtC,MAAM,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC;SAC5C,GAAG,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC;QACpB,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,+EAA+E;QAC/E,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC;YACzC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAwB,EAAE;YACvD,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAC,CAAC;IAEN,gCAAgC;IAChC,yEAAyE;IACzE,4EAA4E;IAC5E,4EAA4E;IAC5E,MAAM,oBAAoB,GACxB,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;IACzF,MAAM,EAAE,GAAG,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAC;IAE9C,IAAI,SAAS,GAAG,UAAU,IAAI,EAAE,CAAC,UAAU,IAAI,IAAI,CAAC;IACpD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC;IAC1D,CAAC;IACD,sCAAsC;IACtC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,IAAI,SAAS,CAAC;QAC1C,IAAI,CAAC;YACH,MAAM,oBAAoB,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC9D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,iCAAiC,UAAU,GAAG,EAAE,GAAG,CAAC,CAAC;QACpE,CAAC;QACD,0DAA0D;QAC1D,MAAM,gBAAgB,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC;IAChE,CAAC;IACD,MAAM,YAAY,GAAG,MAAM,gBAAgB,EAAE,CAAC;IAC9C,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACxD,MAAM,YAAY,GAAG,YAAY,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,MAAM,sBAAsB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAE5E,yBAAyB;IACzB,6DAA6D;IAC7D,iFAAiF;IACjF,sEAAsE;IACtE,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,IAAI,QAAQ,CAAC;IACnD,MAAM,aAAa,GAAG,WAAW,KAAK,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC;IAE7D,OAAO,CAAC,GAAG,CACT,kBAAkB,UAAU,UAAU,WAAW,kBAAkB,aAAa,aAAa,CAAC,CAAC,QAAQ,EAAE,CAC1G,CAAC;IAEF,0DAA0D;IAC1D,+EAA+E;IAC/E,wEAAwE;IACxE,MAAM,mBAAmB,GAAG,MAAM,CAAC,CAAC,iCAAiC;IACrE,MAAM,aAAa,GAAG,aAAa,CAAC,CAAC,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACpF,MAAM,iBAAiB,GAAG,aAAa;QACrC,CAAC,CAAC,aAAa,GAAG,iBAAiB,CAAC,WAAW,CAAC,GAAG,mBAAmB;QACtE,CAAC,CAAC,aAAa,CAAC;IAElB,mBAAmB;IACnB,MAAM,iBAAiB,GAAG,MAAM,CAAC,QAAQ,CAAC,qBAAqB,EAAE,CAAC;IAClE,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC;IACtE,MAAM,eAAe,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CACxB,CAAC,EACD,cAAc,GAAG,eAAe,GAAG,aAAa,CAAC,WAAW,GAAG,qBAAqB,CACrF,CAAC;IAEF,sBAAsB;IACtB,IAAI,eAAe,GAA2B,IAAI,CAAC;IACnD,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAClC,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;QAC7C,MAAM,YAAY,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;QACjD,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAClD,eAAe,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE;YACxE,YAAY,EAAE,SAAS;YACvB,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE;YAC/C,YAAY;YACZ,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,WAAW,CAAC,MAAM;SAClC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,GAAG,CAAC,CAAC;IACnD,CAAC;IACD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc,CAAC;IAEhD,MAAM,gBAAgB,GAAG,eAAe,EAAE,OAAO,IAAI,EAAE,CAAC;IAExD,uBAAuB;IACvB,MAAM,KAAK,GAAkB;QAC3B,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,UAAU;QACV,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE;QACxC,YAAY,EAAE,KAAK,CAAC,KAAK;QACzB,UAAU,EAAE,KAAK,CAAC,WAAW;QAC7B,WAAW,EAAE,OAAO;QACpB,MAAM,EAAE;YACN,KAAK,EAAE,cAAc;YACrB,SAAS,EAAE,eAAe;YAC1B,aAAa,EAAE,aAAa,CAAC,WAAW;YACxC,aAAa,EAAE,qBAAqB;YACpC,YAAY,EAAE,SAAS;YACvB,OAAO,EAAE,eAAe,EAAE,UAAU,IAAI,CAAC;SAC1C;QACD,SAAS,EAAE,eAAe;YACxB,CAAC,CAAC;gBACE,YAAY,EAAE,eAAe,CAAC,YAAY,IAAI,CAAC;gBAC/C,YAAY,EAAE,eAAe,CAAC,YAAY,IAAI,CAAC;gBAC/C,UAAU,EAAE,eAAe,CAAC,UAAU,IAAI,CAAC;gBAC3C,YAAY,EAAE,mBAAmB,CAAC,eAAe,CAAC,KAAK,CAAC;gBACxD,SAAS,EAAE,eAAe,CAAC,KAAK,EAAE,SAAS,IAAI,SAAS;aACzD;YACH,CAAC,CAAC,IAAI;QACR,aAAa,EAAE;YACb,KAAK,EACH,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAoB,EAAE,EAAE,CAAC,CAAC;gBAClD,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,YAAY;gBAC9B,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC;gBACrB,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;gBACxB,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI;aACvB,CAAC,CAAC,IAAI,EAAE;YACX,WAAW,EAAE,aAAa,CAAC,WAAW;SACvC;QACD,kBAAkB,EAAE,cAAc,CAAC,MAAM;QACzC,kBAAkB,EAAE,CAAC;KACtB,CAAC;IAEF,sBAAsB;IACtB,MAAM,YAAY,GAAG,oBAAoB,CACvC,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,WAAW,EACjB,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,EAC7B,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,CAAC,gBAAgB,EAC9B,oBAAoB,EACpB,UAAU,CACX,CAAC;IAEF,4CAA4C;IAC5C,MAAM,kBAAkB,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,eAAe,CAAC,CAAC,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzE,MAAM,aAAa,GAAG,mBAAmB,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,CAAC;IACrF,MAAM,mBAAmB,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;IAC1D,MAAM,mBAAmB,GAAG,aAAa,CAAC,WAAW,CAAC;IACtD,MAAM,iBAAiB,GACrB,kBAAkB,GAAG,SAAS,GAAG,mBAAmB,GAAG,mBAAmB,CAAC;IAE7E,KAAK,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IAC9C,KAAK,CAAC,qBAAqB,GAAG;QAC5B,iBAAiB;QACjB,mBAAmB;QACnB,mBAAmB;QACnB,SAAS;QACT,WAAW,EAAE,kBAAkB;KAChC,CAAC;IAEF,oEAAoE;IACpE,0EAA0E;IAC1E,MAAM,oBAAoB,GAAG,YAAY,CAAC,aAAa,KAAK,KAAK,CAAC;IAClE,MAAM,gBAAgB,GAAG,oBAAoB,CAC3C,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,WAAW,EACjB,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,EAC7B,EAAE,EACF,EAAE,EACF,EAAE,EACF,oBAAoB,EACpB,UAAU,CACX,CAAC;IACF,0EAA0E;IAC1E,IAAI,iBAAiB,GAAiB,KAAK,CAAC;IAC5C,MAAM,qBAAqB,GAA2B;QACpD;YACE,IAAI,EAAE,qBAAqB;YAC3B,IAAI,EAAE,gBAAgB;YACtB,MAAM,EAAE,cAAc,CAAC,gBAAgB,CAAC;SACzC;QACD;YACE,IAAI,EAAE,gBAAgB;YACtB,IAAI,EAAE,aAAa,CAAC,gBAAgB,IAAI,EAAE;YAC1C,MAAM,EAAE,mBAAmB;SAC5B;QACD,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,EAAE;QACxE,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,mBAAmB,EAAE;QACjF,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,cAAc,CAAC,gBAAgB,CAAC,EAAE;KAC3F,CAAC;IAEF,qDAAqD;IACrD,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAEtF,uCAAuC;IACvC,IAAI,YAAY,GAAG,EAAE,CAAC;IACtB,MAAM,iBAAiB,GAAoB,EAAE,CAAC;IAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,IAAI,IAAI,GAAkB,IAAI,CAAC;IAC/B,IAAI,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC/B,IAAI,SAAS,GAAoB,KAAK,CAAC,CAAC,+CAA+C;IACvF,IAAI,cAAc,GAAG,KAAK,CAAC,CAAC,sDAAsD;IAElF,iEAAiE;IACjE,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACvC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa,CAAC;QAC7C,OAAO,CAAC,KAAK,CACX,iCAAiC,UAAU,QAAQ,SAAS,YAAY,OAAO,gBAAgB,SAAS,YAAY,YAAY,CAAC,MAAM,EAAE,CAC1I,CAAC;QACF,IAAI,SAAS,GAAG,MAAM,EAAE,CAAC;YACvB,OAAO,CAAC,KAAK,CACX,6BAA6B,UAAU,oBAAoB,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,sBAAsB,YAAY,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CACxI,CAAC;QACJ,CAAC;IACH,CAAC,EAAE,MAAM,CAAC,CAAC;IAEX,+DAA+D;IAE/D,IAAI,SAAS,GAAgC,IAAmC,CAAC;IACjF,gGAAgG;IAChG,MAAM,SAAS,GAAG,OAAO;QACvB,CAAC,CAAC,OAAO,CAAC,KAAK;YACb,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,WAAW,GAAG,KAAK,EAAE,IAAY,EAAiB,EAAE;QACxD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAAE,OAAO;QAEzB,+EAA+E;QAC/E,+EAA+E;QAC/E,iFAAiF;QACjF,4EAA4E;QAC5E,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACzD,cAAc,GAAG,IAAI,CAAC;YACtB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAC1C,IAAI,OAAO,GAAG,EAAE,CAAC;YACjB,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;oBACnC,OAAO,GAAG,GAAG,CAAC,WAAW;yBACtB,GAAG,CAAC,CAAC,CAAqC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;yBACvE,IAAI,CAAC,GAAG,CAAC,CAAC;gBACf,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,6EAA6E;YAC/E,CAAC;YACD,OAAO,CAAC,KAAK,CACX,iCAAiC,UAAU,YAAY,UAAU,cAAc,OAAO,EAAE,CACzF,CAAC;QACJ,CAAC;QAED,IAAI,SAAS,CAAC;QACd,IAAI,CAAC;YACH,SAAS,GAAG,MAAM,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACtD,CAAC;QAAC,MAAM,CAAC;YACP,SAAS,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,SAAkB,EAAE,CAAC;QACvE,CAAC;QAED,kBAAkB;QAClB,MAAM,IAAI,GAAG,yBAAyB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,IAAI,EAAE,CAAC;YACT,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC3B,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClB,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBAC9B,OAAO,CAAC,KAAK,CAAC,mCAAmC,UAAU,SAAS,IAAI,IAAI,CAAC,CAAC;gBAC9E,oDAAoD;gBACpD,SAAS,GAAG,qBAAqB,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;gBAC7D,mBAAmB,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC;YACrD,CAAC;YACD,IAAI,YAAY,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjD,YAAY,IAAI,MAAM,CAAC;gBACvB,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC;YACtB,CAAC;YACD,YAAY,IAAI,IAAI,CAAC,CAAC,2BAA2B;YACjD,SAAS,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,6BAA6B;QAClD,CAAC;QAED,gFAAgF;QAChF,kFAAkF;QAClF,gFAAgF;QAChF,4EAA4E;QAC5E,MAAM,QAAQ,GAAG,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC5B,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;IACH,CAAC,CAAC;IAEF,uFAAuF;IACvF,MAAM,eAAe,GAAG,KAAK,IAA6B,EAAE;QAC1D,yFAAyF;QACzF,IAAI,SAAS,EAAE,CAAC;YACd,sBAAsB,CAAC,SAAS,CAAC,CAAC;YAClC,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;QAED,IAAI,gBAAgB,GAAmB,IAAI,CAAC;QAE5C,IAAI,YAAY,EAAE,CAAC;YACjB,uEAAuE;YACvE,+DAA+D;YAC/D,MAAM,SAAS,GAAG,oBAAoB,IAAI,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;YAEpF,yEAAyE;YACzE,+CAA+C;YAC/C,MAAM,YAAY,GAAG,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;YAE5D,gBAAgB,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC7C,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,YAAY;gBACrB,QAAQ,EAAE;oBACR,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE;oBACxC,GAAG,EAAE,SAAS;oBACd,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC9C,GAAG,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACrD;aACF,CAAC,CAAC;YAEH,qEAAqE;YACrE,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,WAAW,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC;gBAC/E,IAAI,WAAW,EAAE,CAAC;oBAChB,wEAAwE;oBACxE,WAAW,CAAC,IAAI,GAAG,gBAAgB,CAAC;oBACpC,WAAW,CAAC,MAAM,GAAG,cAAc,CAAC,gBAAgB,CAAC,CAAC;gBACxD,CAAC;gBACD,MAAM,UAAU,GAAG,0BAA0B,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC;gBACzE,kBAAkB,CAAC,UAAU,EAAE,SAAS,EAAE;oBACxC,IAAI,EAAE;wBACJ,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;wBACrB,UAAU;wBACV,IAAI,EAAE,iBAAiB;wBACvB,KAAK,EAAE,WAAW;wBAClB,aAAa;wBACb,kBAAkB,EAAE,gBAAgB,EAAE,EAAE;wBACxC,MAAM,EAAE,IAAI;wBACZ,WAAW;wBACX,MAAM,EAAE,KAAK,CAAC,MAA2C;wBACzD,SAAS,EAAE,eAAe;4BACxB,CAAC,CAAC;gCACE,YAAY,EAAE,eAAe,CAAC,YAAY,IAAI,CAAC;gCAC/C,YAAY,EAAE,eAAe,CAAC,YAAY,IAAI,CAAC;gCAC/C,YAAY,EAAE,eAAe,CAAC,YAAY,IAAI,CAAC;gCAC/C,UAAU,EAAE,eAAe,CAAC,UAAU,IAAI,CAAC;gCAC3C,SAAS,EAAE,eAAe,CAAC,KAAK,EAAE,SAAS,IAAI,SAAS;gCACxD,KAAK,EAAE,eAAe,CAAC,KAAK;6BAC7B;4BACH,CAAC,CAAC,IAAI;wBACR,kBAAkB;qBACnB;oBACD,QAAQ,EAAE,qBAAqB;iBAChC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBACb,OAAO,CAAC,IAAI,CAAC,oDAAoD,EAAE,GAAG,CAAC,CAAC;gBAC1E,CAAC,CAAC,CAAC;YACL,CAAC;YAED,gCAAgC;YAChC,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBACnD,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;gBACjE,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;oBACnE,MAAM,CAAC,OAAO,CAAC,yBAAyB,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBAC7D,CAAC;YACH,CAAC;YAAC,OAAO,UAAU,EAAE,CAAC;gBACpB,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE,UAAU,CAAC,CAAC;YAC5E,CAAC;YAED,uBAAuB;YACvB,IAAI,CAAC;gBACH,MAAM,UAAU,GAAG,cAAc,CAAC,YAAY,CAAC,GAAG,eAAe,CAAC;gBAClE,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;oBACzB,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;oBACpC,UAAU;oBACV,cAAc,EAAE,mBAAmB,CAAC,eAAe,EAAE,KAAK,CAAC;iBAC5D,CAAC,CAAC;gBACH,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC/B,CAAC;YAAC,OAAO,WAAW,EAAE,CAAC;gBACrB,OAAO,CAAC,KAAK,CAAC,sDAAsD,EAAE,WAAW,CAAC,CAAC;YACrF,CAAC;QACH,CAAC;QAED,OAAO,gBAAgB,CAAC;IAC1B,CAAC,CAAC;IAEF,iEAAiE;IACjE,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAgB,IAAI,mBAAmB,CAAC,QAAS,EAAE,WAAW,CAAC,CAAC;QAE9E,yDAAyD;QACzD,MAAM,YAAY,GAAkB,EAAE,CAAC;QAEvC,kCAAkC;QAClC,MAAM,YAAY,GAAG,oBAAoB,IAAI,sBAAsB,CAAC;QACpE,MAAM,aAAa,GAAG,WAAW,WAAW,4FAA4F,WAAW,KAAK,CAAC;QAEzJ,MAAM,kBAAkB,GACtB,aAAa;YACb,YAAY;iBACT,OAAO,CAAC,kBAAkB,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;iBAChD,OAAO,CAAC,iBAAiB,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;iBACrD,OAAO,CAAC,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;QAE7D,YAAY,CAAC,IAAI,CAAC;YAChB,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,kBAAkB;YACxB,aAAa,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;SACrC,CAAC,CAAC;QAEH,qEAAqE;QACrE,iBAAiB,GAAG,IAAI,CAAC;QACzB,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,qBAAqB,CAAC,CAAC;QAChG,IAAI,qBAAqB,EAAE,CAAC;YAC1B,qBAAqB,CAAC,IAAI,GAAG,kBAAkB,CAAC;YAChD,qBAAqB,CAAC,MAAM,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;QACpE,CAAC;QAED,uBAAuB;QACvB,IAAI,aAAa,CAAC,gBAAgB,EAAE,CAAC;YACnC,YAAY,CAAC,IAAI,CAAC;gBAChB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,aAAa,CAAC,gBAAgB;gBACpC,aAAa,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;aACrC,CAAC,CAAC;QACL,CAAC;QAED,4EAA4E;QAC5E,IAAI,gBAAgB,EAAE,CAAC;YACrB,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,6BAA6B,gBAAgB,EAAE,EAAE,CAAC,CAAC;QAC7F,CAAC;QAED,2EAA2E;QAC3E,MAAM,SAAS,GAAG,mBAAmB,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,CAAC;QACjF,IAAI,SAAS,EAAE,CAAC;YACd,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,+BAA+B,SAAS,EAAE,EAAE,CAAC,CAAC;QACxF,CAAC;QAED,wDAAwD;QACxD,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC;QAElC,mEAAmE;QACnE,MAAM,cAAc,GAGf,EAAE,CAAC;QAER,CAAC;YACC,6DAA6D;YAC7D,MAAM,OAAO,GAAgB;gBAC3B,YAAY,EAAE,MAAM,CAAC,OAAO;gBAC5B,YAAY,EAAE,MAAM,CAAC,OAAO;gBAC5B,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC;gBAClF,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE;aAChD,CAAC;YAEF,oFAAoF;YACpF,KAAK,MAAM,OAAO,IAAI,qBAAqB,EAAE,EAAE,CAAC;gBAC9C,MAAM,MAAM,GAAG,yBAAyB,OAAO,CAAC,IAAI,EAAE,CAAC;gBACvD,cAAc,CAAC,IAAI,CAAC;oBAClB,UAAU,EAAE;wBACV,IAAI,EAAE,MAAM;wBACZ,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI;wBAChD,YAAY,EAAE,OAAO,CAAC,WAAsC;qBAC7D;oBACD,OAAO,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;wBACrB,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;wBAClE,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAiC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACtF,CAAC;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,iFAAiF;QACjF,IAAI,mBAAmB,EAAE,CAAC;YACxB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,mBAAmB,CAAC;YAE7D,MAAM,cAAc,GAAG,KAAK,EAC1B,MAAc,EACd,QAAgB,EAChB,IAAc,EACI,EAAE;gBACpB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;gBAClC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBACtC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBACrC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;oBACxD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CACtB;wBACE,QAAQ,EAAE,GAAG,CAAC,QAAQ;wBACtB,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,IAAI,EAAE,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM;wBAC/B,MAAM;wBACN,OAAO,EAAE;4BACP,cAAc,EAAE,kBAAkB;4BAClC,WAAW,EAAE,YAAY;4BACzB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;yBAC7E;qBACF,EACD,GAAG,CAAC,EAAE;wBACJ,IAAI,IAAI,GAAG,EAAE,CAAC;wBACd,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;4BAC/B,IAAI,IAAI,KAAK,CAAC;wBAChB,CAAC,CAAC,CAAC;wBACH,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;4BACjB,IAAI,CAAC;gCACH,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;4BAC5B,CAAC;4BAAC,MAAM,CAAC;gCACP,OAAO,CAAC,EAAE,KAAK,EAAE,QAAQ,GAAG,CAAC,UAAU,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC;4BACxD,CAAC;wBACH,CAAC,CAAC,CAAC;oBACL,CAAC,CACF,CAAC;oBACF,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC7C,IAAI,OAAO;wBAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBAChC,GAAG,CAAC,GAAG,EAAE,CAAC;gBACZ,CAAC,CAAC,CAAC;YACL,CAAC,CAAC;YAEF,cAAc,CAAC,IAAI,CAAC;gBAClB,UAAU,EAAE;oBACV,IAAI,EAAE,kCAAkC;oBACxC,WAAW,EAAE,kDAAkD;oBAC/D,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;iBAC/D;gBACD,OAAO,EAAE,KAAK,IAAI,EAAE;oBAClB,IAAI,CAAC;wBACH,MAAM,MAAM,GAAG,CAAC,MAAM,cAAc,CAAC,KAAK,EAAE,aAAa,CAAC,CAA4B,CAAC;wBACvF,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;oBAC3E,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,OAAO,UAAW,GAAa,CAAC,OAAO,EAAE,CAAC;oBAC5C,CAAC;gBACH,CAAC;aACF,CAAC,CAAC;YAEH,cAAc,CAAC,IAAI,CAAC;gBAClB,UAAU,EAAE;oBACV,IAAI,EAAE,oCAAoC;oBAC1C,WAAW,EAAE,iDAAiD;oBAC9D,YAAY,EAAE;wBACZ,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,MAAM,EAAE;gCACN,WAAW,EAAE,sCAAsC;gCACnD,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;6BAC1E;4BACD,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iBAAiB,EAAE;4BAC3D,UAAU,EAAE;gCACV,WAAW,EAAE,2DAA2D;gCACxE,KAAK,EAAE;oCACL,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;oCACzC;wCACE,IAAI,EAAE,QAAQ;wCACd,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE;wCACpE,QAAQ,EAAE,CAAC,QAAQ,CAAC;qCACrB;iCACF;6BACF;yBACF;wBACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;qBAChC;iBACF;gBACD,OAAO,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;oBACrB,IAAI,CAAC;wBACH,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAgB,CAAC,CAAC;wBACtF,MAAM,IAAI,GAA4B;4BACpC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,KAAK,UAAU,CAAC;4BACxD,OAAO,EAAE,KAAK,CAAC,OAAO;4BACtB,MAAM,EAAE,UAAU;4BAClB,WAAW,EAAE,QAAQ;yBACtB,CAAC;wBACF,IAAI,KAAK,CAAC,UAAU;4BAAE,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;wBACzD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,cAAc,CAAC,MAAM,EAAE,oBAAoB,EAAE,IAAI,CAAC,CAAC,CAAC;oBAClF,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,OAAO,UAAW,GAAa,CAAC,OAAO,EAAE,CAAC;oBAC5C,CAAC;gBACH,CAAC;aACF,CAAC,CAAC;YAEH,cAAc,CAAC,IAAI,CAAC;gBAClB,UAAU,EAAE;oBACV,IAAI,EAAE,kCAAkC;oBACxC,WAAW,EAAE,sDAAsD;oBACnE,YAAY,EAAE;wBACZ,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BAC3B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BACzB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE;yBAC9D;wBACD,QAAQ,EAAE,CAAC,SAAS,CAAC;qBACtB;iBACF;gBACD,OAAO,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;oBACrB,IAAI,CAAC;wBACH,OAAO,IAAI,CAAC,SAAS,CACnB,MAAM,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE;4BAC1C,KAAK,EAAG,KAAK,CAAC,KAAgB,IAAI,UAAU;4BAC5C,IAAI,EAAE,KAAK,CAAC,OAAO;4BACnB,UAAU;4BACV,QAAQ,EAAG,KAAK,CAAC,QAAmB,IAAI,QAAQ;yBACjD,CAAC,CACH,CAAC;oBACJ,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,OAAO,UAAW,GAAa,CAAC,OAAO,EAAE,CAAC;oBAC5C,CAAC;gBACH,CAAC;aACF,CAAC,CAAC;YAEH,cAAc,CAAC,IAAI,CAAC;gBAClB,UAAU,EAAE;oBACV,IAAI,EAAE,mCAAmC;oBACzC,WAAW,EAAE,0EAA0E;oBACvF,YAAY,EAAE;wBACZ,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2BAA2B,EAAE;4BACzE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2BAA2B,EAAE;yBACvE;wBACD,QAAQ,EAAE,CAAC,aAAa,CAAC;qBAC1B;iBACF;gBACD,OAAO,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;oBACrB,IAAI,CAAC;wBACH,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,WAAqB,CAAC,CAAC;wBAC9D,MAAM,QAAQ,GACX,KAAK,CAAC,QAAmB,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAqB,CAAC,CAAC;wBAC3E,OAAO,IAAI,CAAC,SAAS,CACnB,MAAM,cAAc,CAAC,MAAM,EAAE,mBAAmB,EAAE;4BAChD,QAAQ;4BACR,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC;4BACjC,QAAQ,EAAE,QAAQ;yBACnB,CAAC,CACH,CAAC;oBACJ,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,OAAO,UAAW,GAAa,CAAC,OAAO,EAAE,CAAC;oBAC5C,CAAC;gBACH,CAAC;aACF,CAAC,CAAC;QACL,CAAC;QAED,uBAAuB;QACvB,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAChC,IAAI,OAAO,GAAkB,IAAI,CAAC;QAClC,IAAI,UAAU,GAAG,IAAI,CAAC;QAEtB,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC;gBACtC,QAAQ;gBACR,KAAK,EAAE,WAAW;gBAClB,MAAM,EAAE,YAAY;gBACpB,WAAW,EAAE,gBAAgB,IAAI,EAAE;gBACnC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;gBAChD,KAAK,EAAE,SAAS;gBAChB,QAAQ,EAAE,cAAc;gBACxB,QAAQ,EAAE,IAAI,EAAE,0DAA0D;gBAC1E,OAAO,EAAE,CAAC,GAAG,EAAE;oBACb,2FAA2F;oBAC3F,MAAM,MAAM,GAAG,OAAO;wBACpB,CAAC,CAAC,OAAO,CAAC,KAAK;4BACb,CAAC,CAAC,OAAO;4BACT,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;wBAC9C,CAAC,CAAC,SAAS,CAAC;oBACd,OAAO,CAAC,IAAY,EAAE,EAAE;wBACtB,IAAI,UAAU,EAAE,CAAC;4BACf,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC;4BACpC,UAAU,GAAG,KAAK,CAAC;4BACnB,oDAAoD;4BACpD,SAAS,GAAG,qBAAqB,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;4BAC7D,mBAAmB,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC;wBACrD,CAAC;wBACD,YAAY,IAAI,IAAI,CAAC,CAAC,2BAA2B;wBACjD,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,6BAA6B;oBAC/C,CAAC,CAAC;gBACJ,CAAC,CAAC,EAAE;gBACJ,SAAS,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;oBACzB,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,+CAA+C;oBAC3E,MAAM,OAAO,GAAkB,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;oBACvE,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAChC,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;gBACvB,CAAC;gBACD,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;oBACvC,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,mCAAmC;oBAC/D,MAAM,OAAO,GAAkB;wBAC7B,IAAI,EAAE,aAAa;wBACnB,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;wBAC7B,OAAO;qBACR,CAAC;oBACF,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAChC,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;gBACvB,CAAC;gBACD,MAAM;gBACN,GAAG,EAAE,SAAS;gBACd,UAAU;gBACV,WAAW;aACZ,CAAC,CAAC;YAEH,aAAa,CAAC,SAAS,CAAC,CAAC;YACzB,IAAI,GAAG,OAAO,CAAC;YAEf,OAAO,CAAC,GAAG,CACT,8BAA8B,WAAW,KAAK,UAAU,CAAC,KAAK,UAAU;gBACtE,GAAG,UAAU,CAAC,KAAK,CAAC,gBAAgB,SAAS,UAAU,CAAC,KAAK,CAAC,iBAAiB,MAAM,CACxF,CAAC;YACF,IAAI,UAAU,CAAC,KAAK,CAAC,iBAAiB,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC5E,OAAO,CAAC,IAAI,CACV,8DAA8D,UAAU,IAAI;oBAC1E,wBAAwB,aAAa,uBAAuB,iBAAiB,IAAI;oBACjF,yBAAyB,KAAK,CAAC,kBAAkB,EAAE,CACtD,CAAC;YACJ,CAAC;YAED,uEAAuE;YACvE,IAAI,UAAU,CAAC,MAAM,KAAK,aAAa,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;gBACjE,IAAI,SAAS,EAAE,QAAQ,EAAE,CAAC;oBACxB,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;oBAClC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC;gBAC5B,CAAC;gBACD,YAAY,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;gBACtC,OAAO;oBACL,QAAQ,EAAE,YAAY;oBACtB,IAAI,EAAE,OAAO;oBACb,WAAW;oBACX,gBAAgB,EAAE,IAAI;oBACtB,QAAQ,EAAE,iBAAiB;oBAC3B,KAAK;oBACL,UAAU,EAAE,UAAU,CAAC,UAAU;iBAClC,CAAC;YACJ,CAAC;YAED,MAAM,gBAAgB,GAAG,MAAM,eAAe,EAAE,CAAC;YACjD,OAAO;gBACL,QAAQ,EAAE,YAAY;gBACtB,IAAI;gBACJ,WAAW;gBACX,gBAAgB;gBAChB,QAAQ,EAAE,iBAAiB;gBAC3B,KAAK;aACN,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,aAAa,CAAC,SAAS,CAAC,CAAC;YACzB,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,eAAe,EAAE,CAAC;YAC1B,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAED,sDAAsD;IACtD,MAAM,aAAa,GAAG,iBAAiB,CACrC,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,EAC7B,UAAU,EACV,aAAa,EACb,eAAe,EACf,mBAAmB,CACpB,CAAC;IAEF,MAAM,IAAI,GAAG;QACX,SAAS;QACT,WAAW;QACX,iBAAiB;QACjB,aAAa;QACb,mBAAmB;QACnB,mBAAmB;QACnB,cAAc;QACd,aAAa;QACb,qBAAqB;QACrB,gBAAgB;QAChB,aAAa;QACb,UAAU;QACV,YAAY,CAAC,MAAM,IAAI,MAAM;QAC7B,SAAS;QACT,kBAAkB,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,YAAY,CAAC;KACnE,CAAC;IAEF,6BAA6B;IAC7B,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CACjC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,GAAG,KAAK,YAAY,CAAC,CACjG,CAAC;IAEF,2BAA2B;IAC3B,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;QACpB,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;IAED,MAAM,kBAAkB,GAAG,UAAU,IAAI,gBAAgB,EAAE,CAAC;IAC5D,yEAAyE;IACzE,0EAA0E;IAC1E,MAAM,aAAa,GACjB,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAE/E,qEAAqE;IACrE,+DAA+D;IAC/D,MAAM,oBAAoB,GACxB,8FAA8F,CAAC;IACjG,oFAAoF;IACpF,uGAAuG;IACvG,MAAM,uBAAuB,GAAG,gCAAgC,CAAC;IACjE,MAAM,kBAAkB,GAAG,CAAC,CAAC;IAC7B,MAAM,qBAAqB,GAAG,IAAI,CAAC;IAEnC,MAAM,aAAa,GAAG,CACpB,UAAmB,EACkD,EAAE;QACvE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,MAAM,GAAiB,KAAK,CAAC,kBAAkB,EAAE,IAAI,EAAE;gBAC3D,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;gBAC/B,GAAG,EAAE,QAAQ;gBACb,GAAG,EAAE,SAAS;gBACd,KAAK,EAAE,aAAa;gBACpB,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YAEH,SAAS,GAAG,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC;YAC9B,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAChC,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YAC3C,OAAO,CAAC,KAAK,CACX,6BAA6B,UAAU,QAAQ,MAAM,CAAC,GAAG,QAAQ,SAAS,WAAW,mBAAmB,CAAC,IAAI,EAAE,CAChH,CAAC;YAEF,kCAAkC;YAClC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC;YAElB,uCAAuC;YACvC,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,OAAO,GAAG,GAAG,EAAE;oBACnB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACzB,CAAC,CAAC;gBACF,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC1D,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YACzE,CAAC;YAED,+BAA+B;YAC/B,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjB,MAAM,aAAa,GAAmC,EAAE,CAAC;gBACzD,IAAI,SAAS,EAAE,CAAC;oBACd,aAAa,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;gBACrC,CAAC;gBACD,aAAa,CAAC,IAAI,CAAC;oBACjB,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,YAAY,GAAG,MAAM,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC;iBACvD,CAAC,CAAC;gBACH,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;oBAC7B,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE;iBAClD,CAAC,CAAC;gBACH,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;gBACnC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YACrB,CAAC;YAED,kBAAkB;YAClB,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,MAAM,YAAY,GAAoB,EAAE,CAAC;YAEzC,MAAM,CAAC,MAAO,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACzC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACjC,MAAM,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;gBAE3B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC;gBACvD,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,MAAO,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACzC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC7B,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC5B,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC;gBAClB,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,IAAI,SAAS,GAAG,KAAK,CAAC;YAEtB,MAAM,gBAAgB,GAAG,KAAK,IAAmB,EAAE;gBACjD,IAAI,SAAS;oBAAE,OAAO;gBACtB,SAAS,GAAG,IAAI,CAAC;gBAEjB,IAAI,CAAC;oBACH,MAAM,WAAW,GAAG,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBAC5D,MAAM,cAAc,GAAG,uBAAuB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBAClE,MAAM,QAAQ,GAAG,WAAW,IAAI,cAAc,CAAC;oBAC/C,oEAAoE;oBACpE,6DAA6D;oBAC7D,OAAO,CAAC,KAAK,CACX,oCAAoC,UAAU,eAAe,UAAU,GAAG;wBACxE,eAAe,WAAW,mBAAmB,cAAc,GAAG;wBAC9D,iBAAiB,YAAY,CAAC,MAAM,EAAE,CACzC,CAAC;oBACF,MAAM,aAAa,GAAG,UAAU,IAAI,QAAQ,CAAC;oBAC7C,IAAI,aAAa,EAAE,CAAC;wBAClB,oEAAoE;wBACpE,kDAAkD;wBAClD,IAAI,SAAS,EAAE,CAAC;4BACd,sBAAsB,CAAC,SAAS,CAAC,CAAC;4BAClC,SAAS,GAAG,IAAI,CAAC;wBACnB,CAAC;wBACD,OAAO,CAAC,KAAK,CACX,oCAAoC,UAAU,oCAAoC,CACnF,CAAC;wBACF,OAAO,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC;wBACvD,OAAO;oBACT,CAAC;oBAED,MAAM,gBAAgB,GAAG,MAAM,eAAe,EAAE,CAAC;oBACjD,OAAO,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;gBACpD,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,CAAC,GAAG,CAAC,CAAC;gBACd,CAAC;YACH,CAAC,CAAC;YAEF,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;gBAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBACxC,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC;gBACxC,MAAM,SAAS,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,MAAM,CAAC;gBAC9E,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC5C,OAAO,CAAC,KAAK,CACX,6BAA6B,UAAU,QAAQ,MAAM,CAAC,GAAG,SAAS,IAAI,WAAW,GAAG,IAAI,MAAM,aAAa,QAAQ,oBAAoB,WAAW,cAAc,SAAS,WAAW,mBAAmB,CAAC,IAAI,EAAE,CAC/M,CAAC;gBACF,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;oBACpB,OAAO,CAAC,KAAK,CAAC,mCAAmC,UAAU,QAAQ,UAAU,EAAE,CAAC,CAAC;gBACnF,CAAC;gBAED,qEAAqE;gBACrE,qEAAqE;gBACrE,kEAAkE;gBAClE,MAAM,UAAU,GAAG,CAAC,KAAK,IAAI,EAAE;oBAC7B,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;wBAClB,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC;oBACzD,CAAC;oBACD,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;oBAChC,MAAM,gBAAgB,EAAE,CAAC;oBACzB,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBACnC,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAClC,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACrC,CAAC,CAAC,EAAE,CAAC;gBACL,yBAAyB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YAChD,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE;gBAChC,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACnC,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAClC,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACnC,IAAI,SAAS,EAAE,CAAC;oBACd,sBAAsB,CAAC,SAAS,CAAC,CAAC;oBAClC,SAAS,GAAG,IAAI,CAAC;gBACnB,CAAC;gBACD,OAAO,CAAC,KAAK,CACX,6BAA6B,UAAU,QAAQ,MAAM,CAAC,GAAG,UAAU,GAAG,CAAC,OAAO,WAAW,mBAAmB,CAAC,IAAI,EAAE,CACpH,CAAC;gBACF,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBAC7C,CAAC,CAAC,gDAAgD;oBAClD,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;gBAChB,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAC;gBACpB,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC9B,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,IAAI,CAAC;QACH,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,OAAO,IAAI,EAAE,CAAC;YACZ,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;gBAChB,wEAAwE;gBACxE,wEAAwE;gBACxE,uEAAuE;gBACvE,wEAAwE;gBACxE,uEAAuE;gBACvE,4BAA4B;gBAC5B,YAAY,GAAG,EAAE,CAAC;gBAClB,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC;gBAC7B,IAAI,GAAG,IAAI,CAAC;gBAEZ,MAAM,QAAQ,GACZ,kEAAkE;oBAClE,WAAW,OAAO,GAAG,CAAC,IAAI,kBAAkB,GAAG,CAAC,QAAQ,CAAC;gBAC3D,SAAS,EAAE,CAAC,QAAQ,CAAC,CAAC;gBACtB,MAAM,YAAY,GAAkB,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;gBACjF,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACrC,SAAS,EAAE,CAAC,YAAY,CAAC,CAAC;gBAE1B,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC,CAAC;gBAC7D,IAAI,MAAM,EAAE,OAAO;oBAAE,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;YAClD,CAAC;YAED,MAAM,UAAU,GAAG,OAAO,GAAG,kBAAkB,CAAC;YAChD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,CAAC;YAC/C,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBACxB,OAAO;oBACL,QAAQ,EAAE,YAAY;oBACtB,IAAI;oBACJ,WAAW;oBACX,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;oBACzC,QAAQ,EAAE,iBAAiB;oBAC3B,KAAK;iBACN,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;YAAS,CAAC;QACT,aAAa,CAAC,SAAS,CAAC,CAAC;QACzB,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;AACH,CAAC"}
|
|
@@ -75,6 +75,16 @@ export declare function extractAuthoredContent(toolName: string, input: Record<s
|
|
|
75
75
|
filePath?: string;
|
|
76
76
|
summary: string;
|
|
77
77
|
} | null;
|
|
78
|
+
/**
|
|
79
|
+
* Strip the line-number prefixes the harness adds to built-in Read tool results
|
|
80
|
+
* (cat -n style: ` 123\t…` or ` 123→…`) before storing (task 115). Stored text
|
|
81
|
+
* then matches what read_file would store for the same file, so chunking,
|
|
82
|
+
* keyword scanning, and embeddings behave identically for both read paths.
|
|
83
|
+
* Conservative: only strips when ≥90% of non-empty lines carry the prefix AND
|
|
84
|
+
* the numbers are non-decreasing — a file that genuinely starts lines with
|
|
85
|
+
* numbers (CSV, logs) doesn't fit that shape and passes through untouched.
|
|
86
|
+
*/
|
|
87
|
+
export declare function stripReadLineNumbers(content: string): string;
|
|
78
88
|
/**
|
|
79
89
|
* StreamProcessor intercepts stream-json output and externalizes large content.
|
|
80
90
|
*
|