negotium 0.1.19 → 0.1.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/dist/agent-helpers.js +146 -23
  2. package/dist/agent-helpers.js.map +14 -12
  3. package/dist/cron.js +137 -52
  4. package/dist/cron.js.map +20 -19
  5. package/dist/hosted-agent.js +29 -17
  6. package/dist/hosted-agent.js.map +7 -7
  7. package/dist/main.js +145 -55
  8. package/dist/main.js.map +20 -19
  9. package/dist/mcp-factories.js +23 -22
  10. package/dist/mcp-factories.js.map +3 -3
  11. package/dist/prompts.js +98 -9
  12. package/dist/prompts.js.map +6 -5
  13. package/dist/runtime/scripts/browser-passkey-policy.mjs +36 -0
  14. package/dist/runtime/scripts/browser-vault-transform.mjs +33 -0
  15. package/dist/runtime/scripts/mcp-patchright-http.mjs +22 -4
  16. package/dist/runtime/src/agents/archiver.ts +0 -14
  17. package/dist/runtime/src/agents/claude-provider.ts +11 -7
  18. package/dist/runtime/src/agents/execution-host.ts +10 -1
  19. package/dist/runtime/src/agents/idle-archiver.ts +21 -0
  20. package/dist/runtime/src/agents/maestro-provider.ts +9 -14
  21. package/dist/runtime/src/agents/mcp-tools/self-config.ts +1 -1
  22. package/dist/runtime/src/agents/mcp-tools/spawn-subagent.ts +6 -1
  23. package/dist/runtime/src/agents/memory-archive-policy.ts +34 -0
  24. package/dist/runtime/src/agents/model-catalog.ts +84 -18
  25. package/dist/runtime/src/mcp/factories/vault.ts +36 -34
  26. package/dist/runtime/src/mcp/vault-server.ts +1 -0
  27. package/dist/runtime/src/platform/mcp-config.ts +4 -8
  28. package/dist/runtime/src/platform/playwright/manager.ts +5 -2
  29. package/dist/runtime/src/prompts/builders.ts +36 -7
  30. package/dist/runtime/src/runtime/turn-runner.ts +2 -0
  31. package/dist/runtime/src/storage/topic-archive.ts +5 -2
  32. package/dist/runtime/src/topics/lifecycle.ts +2 -1
  33. package/dist/runtime/src/topics/session.ts +2 -0
  34. package/dist/runtime/src/version.ts +1 -1
  35. package/dist/storage.js +23 -3
  36. package/dist/storage.js.map +5 -4
  37. package/dist/types/packages/core/src/agents/claude-provider.d.ts +1 -0
  38. package/dist/types/packages/core/src/agents/execution-host.d.ts +2 -0
  39. package/dist/types/packages/core/src/agents/idle-archiver.d.ts +2 -0
  40. package/dist/types/packages/core/src/agents/memory-archive-policy.d.ts +14 -0
  41. package/dist/types/packages/core/src/agents/model-catalog.d.ts +77 -0
  42. package/dist/types/packages/core/src/mcp/factories/vault.d.ts +1 -0
  43. package/dist/types/packages/core/src/prompts/builders.d.ts +5 -1
  44. package/dist/types/packages/core/src/storage/topic-archive.d.ts +1 -0
  45. package/dist/types/packages/core/src/version.d.ts +1 -1
  46. package/package.json +2 -2
@@ -1940,7 +1940,7 @@ function createVaultMcpServer(context, host, executors = {}) {
1940
1940
  ${lines.join(`
1941
1941
  `)}`);
1942
1942
  });
1943
- if (!context.httpOnly) {
1943
+ if (!context.listOnly && !context.httpOnly) {
1944
1944
  server.tool("vault_run", "Run a shell command containing {{KEY}} references inside Otium's credential broker. Expanded command input never reaches the model/provider, and stdout/stderr are redacted before return. Prefer vault_http_request for HTTP APIs.", {
1945
1945
  command: z4.string().min(1).max(64 * 1024),
1946
1946
  timeout_ms: z4.number().int().min(1000).max(600000).optional(),
@@ -1957,26 +1957,27 @@ ${lines.join(`
1957
1957
  return result.error && result.exitCode === null ? mcpError(result.error) : mcpOk(JSON.stringify(result, null, 2));
1958
1958
  });
1959
1959
  }
1960
- server.tool("vault_http_request", "Make an HTTPS request with {{KEY}} references resolved inside Otium. Put secrets in headers or body, never in the URL. The expanded request is not returned; the response is redacted before the model sees it.", {
1961
- method: z4.enum(["GET", "POST", "PUT", "PATCH", "DELETE"]).default("GET"),
1962
- url: z4.string().url().describe("Absolute HTTPS URL without Vault placeholders"),
1963
- headers: z4.record(z4.string(), z4.string()).optional(),
1964
- body: z4.string().optional(),
1965
- timeout_ms: z4.number().int().min(1000).max(120000).optional(),
1966
- max_response_bytes: z4.number().int().min(1024).max(1024 * 1024).optional()
1967
- }, async ({ method, url, headers, body, timeout_ms, max_response_bytes }) => {
1968
- if (!context.userId)
1969
- return mcpError("Vault unavailable: no user context");
1970
- const result = await http(context.userId, {
1971
- method,
1972
- url,
1973
- headers,
1974
- body,
1975
- timeoutMs: timeout_ms,
1976
- maxResponseBytes: max_response_bytes
1977
- }, host);
1978
- return result.error ? mcpError(result.error) : mcpOk(JSON.stringify(result, null, 2));
1979
- });
1960
+ if (!context.listOnly)
1961
+ server.tool("vault_http_request", "Make an HTTPS request with {{KEY}} references resolved inside Otium. Put secrets in headers or body, never in the URL. The expanded request is not returned; the response is redacted before the model sees it.", {
1962
+ method: z4.enum(["GET", "POST", "PUT", "PATCH", "DELETE"]).default("GET"),
1963
+ url: z4.string().url().describe("Absolute HTTPS URL without Vault placeholders"),
1964
+ headers: z4.record(z4.string(), z4.string()).optional(),
1965
+ body: z4.string().optional(),
1966
+ timeout_ms: z4.number().int().min(1000).max(120000).optional(),
1967
+ max_response_bytes: z4.number().int().min(1024).max(1024 * 1024).optional()
1968
+ }, async ({ method, url, headers, body, timeout_ms, max_response_bytes }) => {
1969
+ if (!context.userId)
1970
+ return mcpError("Vault unavailable: no user context");
1971
+ const result = await http(context.userId, {
1972
+ method,
1973
+ url,
1974
+ headers,
1975
+ body,
1976
+ timeoutMs: timeout_ms,
1977
+ maxResponseBytes: max_response_bytes
1978
+ }, host);
1979
+ return result.error ? mcpError(result.error) : mcpOk(JSON.stringify(result, null, 2));
1980
+ });
1980
1981
  return server;
1981
1982
  }
1982
1983
  export {
@@ -1995,4 +1996,4 @@ export {
1995
1996
  createSessionCommMcpServer
1996
1997
  };
1997
1998
 
1998
- //# debugId=D5C1866838070BD764756E2164756E21
1999
+ //# debugId=1116F4C8A853800064756E2164756E21
@@ -25,9 +25,9 @@
25
25
  "import { createHash } from \"node:crypto\";\nimport { mkdirSync } from \"node:fs\";\nimport { join } from \"node:path\";\nimport { appendJsonlEntry, readJsonlLines } from \"#platform/jsonl\";\nimport { logger } from \"#platform/logger\";\nimport { resolveStorageLogDir } from \"#storage/storage-host\";\n\nexport interface QueryRecord {\n timestamp: string; // ISO 8601 UTC\n session: string; // topic name\n inputTokens: number;\n outputTokens: number;\n cacheCreationInputTokens: number;\n cacheReadInputTokens: number;\n}\n\nexport interface Bucket {\n inputTokens: number;\n outputTokens: number;\n cacheCreationInputTokens: number;\n cacheReadInputTokens: number;\n queries: number;\n}\n\nfunction emptyBucket(): Bucket {\n return {\n inputTokens: 0,\n outputTokens: 0,\n cacheCreationInputTokens: 0,\n cacheReadInputTokens: 0,\n queries: 0,\n };\n}\n\nexport function tokenStatsFileId(userId: number | string): string {\n const rawUserId = String(userId);\n // Preserve existing filenames for ordinary IDs, but never let an external\n // identity introduce path separators or unbounded filename length.\n return /^[A-Za-z0-9][A-Za-z0-9_.@-]{0,255}$/.test(rawUserId) && !rawUserId.includes(\"..\")\n ? rawUserId\n : `sha256-${createHash(\"sha256\").update(rawUserId).digest(\"hex\")}`;\n}\n\nfunction queriesPath(userId: number | string): string {\n const fileId = tokenStatsFileId(userId);\n const logDir = resolveStorageLogDir();\n mkdirSync(logDir, { recursive: true });\n return join(logDir, `token-queries-${fileId}.jsonl`);\n}\n\nfunction loadRecords(userId: number | string): QueryRecord[] {\n try {\n return readJsonlLines(queriesPath(userId)).flatMap((line) => {\n try {\n return [JSON.parse(line) as QueryRecord];\n } catch {\n return [];\n }\n });\n } catch {\n return [];\n }\n}\n\nexport function calcCost(\n b: Pick<\n Bucket,\n \"inputTokens\" | \"outputTokens\" | \"cacheCreationInputTokens\" | \"cacheReadInputTokens\"\n >,\n): number {\n return (\n (b.inputTokens / 1_000_000) * 3.0 +\n (b.outputTokens / 1_000_000) * 15.0 +\n (b.cacheCreationInputTokens / 1_000_000) * 3.75 +\n (b.cacheReadInputTokens / 1_000_000) * 0.3\n );\n}\n\n/** 쿼리 완료 시 호출 — JSONL에 한 줄 추가 */\nexport function recordUsage(\n userId: number | string,\n session: string,\n usage: {\n inputTokens: number;\n outputTokens: number;\n cacheCreationInputTokens?: number;\n cacheReadInputTokens?: number;\n },\n) {\n const record: QueryRecord = {\n timestamp: new Date().toISOString(),\n session,\n inputTokens: usage.inputTokens,\n outputTokens: usage.outputTokens,\n cacheCreationInputTokens: usage.cacheCreationInputTokens ?? 0,\n cacheReadInputTokens: usage.cacheReadInputTokens ?? 0,\n };\n try {\n appendJsonlEntry(queriesPath(userId), record);\n } catch (e) {\n logger.warn({ err: e, userId }, \"token-stats: Failed to record\");\n }\n}\n\nexport function getStats(\n userId: number | string,\n from?: string,\n to?: string,\n): {\n total: Bucket;\n byHour: Record<string, Bucket>;\n bySession: Record<string, Bucket>;\n estimatedCostUsd: number;\n} {\n const records = loadRecords(userId);\n\n const fromTs = from ? new Date(from).getTime() : 0;\n const toTs = to ? new Date(to).getTime() : Infinity;\n\n if ((from && Number.isNaN(fromTs)) || (to && Number.isNaN(toTs))) {\n logger.warn({ from, to }, \"token-stats: Invalid date range, returning empty\");\n return { total: emptyBucket(), byHour: {}, bySession: {}, estimatedCostUsd: 0 };\n }\n\n const total = emptyBucket();\n const byHour: Record<string, Bucket> = {};\n const bySession: Record<string, Bucket> = {};\n\n for (const r of records) {\n const ts = new Date(r.timestamp).getTime();\n if (ts < fromTs || ts > toTs) continue;\n\n const hourKey = r.timestamp.slice(0, 13); // \"2026-03-28T14\"\n\n if (!byHour[hourKey]) byHour[hourKey] = emptyBucket();\n if (!bySession[r.session]) bySession[r.session] = emptyBucket();\n\n for (const bucket of [total, byHour[hourKey], bySession[r.session]]) {\n bucket.inputTokens += r.inputTokens;\n bucket.outputTokens += r.outputTokens;\n bucket.cacheCreationInputTokens += r.cacheCreationInputTokens;\n bucket.cacheReadInputTokens += r.cacheReadInputTokens;\n bucket.queries += 1;\n }\n }\n\n return { total, byHour, bySession, estimatedCostUsd: calcCost(total) };\n}\n",
26
26
  "import {\n appendFileSync,\n closeSync,\n fsyncSync,\n mkdirSync,\n openSync,\n readFileSync,\n renameSync,\n statSync,\n unlinkSync,\n writeFileSync,\n} from \"node:fs\";\nimport { dirname } from \"node:path\";\nimport { safeUnlink } from \"#platform/file-utils\";\n\nexport function readJsonlLines(filePath: string): string[] {\n return readFileSync(filePath, \"utf-8\").trim().split(\"\\n\").filter(Boolean);\n}\n\n/**\n * Parse a JSONL string (one JSON value per line) into an array of `T`.\n * Throws on malformed lines — use when a corrupt fixture/log should fail\n * loudly rather than silently drop entries (paired with `readJsonlLines`'\n * resilient counterpart for live data streams).\n */\nexport function parseJsonlText<T = unknown>(raw: string): T[] {\n return raw\n .trim()\n .split(\"\\n\")\n .filter(Boolean)\n .map((line) => JSON.parse(line) as T);\n}\n\n/**\n * Read and JSON-parse a file. Returns null if the file is missing or contains\n * invalid JSON. Use when a missing/corrupt file should fall through to a\n * default rather than throw.\n */\nexport function readJsonFile<T = unknown>(filePath: string): T | null {\n try {\n return JSON.parse(readFileSync(filePath, \"utf-8\")) as T;\n } catch {\n return null;\n }\n}\n\n/** Atomically replace a JSON file and fsync the new contents before rename. */\nexport function writeJsonFileAtomic(filePath: string, value: unknown): void {\n const dir = dirname(filePath);\n mkdirSync(dir, { recursive: true });\n const tmpPath = `${filePath}.tmp-${process.pid}-${Date.now()}-${Math.random()\n .toString(16)\n .slice(2)}`;\n let fd: number | null = null;\n try {\n fd = openSync(tmpPath, \"wx\", 0o600);\n writeFileSync(fd, JSON.stringify(value, null, 2));\n fsyncSync(fd);\n closeSync(fd);\n fd = null;\n renameSync(tmpPath, filePath);\n fsyncDirectoryBestEffort(dir);\n } catch (err) {\n if (fd !== null) {\n try {\n closeSync(fd);\n } catch {}\n }\n safeUnlink(tmpPath);\n throw err;\n }\n}\n\n// --- Cross-process append lock ---\n// POSIX `O_APPEND` is only atomic when the write payload fits in PIPE_BUF\n// (Linux 4096, macOS 512). MCP servers and the bot run as separate\n// processes that all `appendFileSync` to shared inbox/outbox files; a long\n// `tell_session` prompt or large `ask_session` reply is comfortably above\n// PIPE_BUF, and a concurrent append from another process can interleave at\n// the byte level — the result fails JSON parse and the entire entry is\n// silently dropped by `parseOutboxLine`.\n//\n// Mitigation: a sidecar `<filePath>.lock` created with `O_EXCL` serializes\n// every append at the OS level. Lock is held for the duration of one\n// `appendFileSync`, so the contention window is microseconds. Stale locks\n// (process crashed mid-write) are detected via mtime and forcibly removed\n// after `LOCK_STALE_MS`. As a last resort, after `LOCK_TIMEOUT_MS` of\n// retries, the lock is bypassed — the entry survives but may interleave;\n// preferable to dropping it entirely.\nconst LOCK_SUFFIX = \".lock\";\nconst LOCK_RETRY_MS = 5;\nconst LOCK_TIMEOUT_MS = 1500;\nconst LOCK_STALE_MS = 5000;\nconst LOCK_SLEEP = new Int32Array(new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT));\n\n/** Synchronous, non-spinning sleep supported by both Bun and Node MCP workers. */\nfunction sleepForAppendLock(ms: number): void {\n Atomics.wait(LOCK_SLEEP, 0, 0, ms);\n}\n\nfunction tryAcquireAppendLock(lockPath: string): boolean {\n try {\n closeSync(openSync(lockPath, \"wx\")); // O_CREAT | O_EXCL — atomic\n return true;\n } catch (e) {\n if ((e as NodeJS.ErrnoException).code !== \"EEXIST\") throw e;\n return false;\n }\n}\n\nfunction isStaleLock(lockPath: string): boolean {\n try {\n return Date.now() - statSync(lockPath).mtimeMs > LOCK_STALE_MS;\n } catch {\n return false;\n }\n}\n\n/**\n * Append a JSON-encoded entry + newline to a JSONL file. Ensures the parent\n * directory exists and serializes concurrent multi-process appends through a\n * sidecar lock so payloads larger than PIPE_BUF do not interleave.\n *\n * The drainer side (`outbox/file-ops.ts`) claims the file via atomic rename\n * and handles recovery of leftover `.processing` files from crashes.\n */\nexport function appendJsonlEntry(filePath: string, entry: unknown): void {\n appendJsonlLine(filePath, `${JSON.stringify(entry)}\\n`);\n}\n\n/**\n * Append an already-serialized JSONL line (must end with \"\\n\") under the\n * same cross-process append lock as `appendJsonlEntry`. Use when you\n * want to write back a raw line **exactly** — e.g. flusher tail-writeback\n * preserving lines that current parser can't decode, so a future parser\n * release still sees them.\n */\nexport function appendJsonlLine(filePath: string, line: string): void {\n mkdirSync(dirname(filePath), { recursive: true });\n const lockPath = `${filePath}${LOCK_SUFFIX}`;\n const payload = line.endsWith(\"\\n\") ? line : `${line}\\n`;\n\n let acquired = tryAcquireAppendLock(lockPath);\n // Pre-check: if the existing lock is already stale (writer crashed before\n // unlinking), reclaim it before sleeping. Saves the entire retry budget\n // for the common stale-leftover case.\n if (!acquired && isStaleLock(lockPath)) {\n safeUnlink(lockPath);\n acquired = tryAcquireAppendLock(lockPath);\n }\n if (!acquired) {\n const start = Date.now();\n while (!acquired && Date.now() - start < LOCK_TIMEOUT_MS) {\n // Codex launches built-in stdio MCPs under Node+tsx while the runtime\n // itself uses Bun. Atomics.wait gives both processes a blocking sleep\n // without a CPU-spinning fallback or a Bun-only global.\n sleepForAppendLock(LOCK_RETRY_MS);\n acquired = tryAcquireAppendLock(lockPath);\n // Recheck staleness inside the loop so a writer that crashes mid-wait\n // doesn't leave us spinning the whole timeout.\n if (!acquired && isStaleLock(lockPath)) {\n safeUnlink(lockPath);\n acquired = tryAcquireAppendLock(lockPath);\n }\n }\n }\n\n if (!acquired) {\n // Best-effort fallback: append unlocked. Worst case the line interleaves\n // with another writer and one of them is dropped at parse time — still\n // better than dropping the entry on the floor here.\n appendFileSync(filePath, payload);\n return;\n }\n\n try {\n appendFileSync(filePath, payload);\n } finally {\n safeUnlink(lockPath);\n }\n}\n\n/** Overwrite a JSONL file with the given entries. Trailing newline included. */\nexport function writeJsonlFile(filePath: string, entries: readonly unknown[]): void {\n const dir = dirname(filePath);\n mkdirSync(dir, { recursive: true });\n const tmpPath = `${filePath}.tmp-${process.pid}-${Date.now()}-${Math.random()\n .toString(16)\n .slice(2)}`;\n const payload = `${entries.map((e) => JSON.stringify(e)).join(\"\\n\")}\\n`;\n let fd: number | null = null;\n try {\n fd = openSync(tmpPath, \"w\");\n writeFileSync(fd, payload);\n fsyncSync(fd);\n closeSync(fd);\n fd = null;\n renameSync(tmpPath, filePath);\n fsyncDirectoryBestEffort(dir);\n } catch (err) {\n if (fd !== null) {\n try {\n closeSync(fd);\n } catch {}\n }\n try {\n unlinkSync(tmpPath);\n } catch {}\n throw err;\n }\n}\n\nfunction fsyncDirectoryBestEffort(dir: string): void {\n let fd: number | null = null;\n try {\n fd = openSync(dir, \"r\");\n fsyncSync(fd);\n } catch {\n // Directory fsync is not portable across every runtime/filesystem. The\n // file fsync + rename above is the important integrity boundary; this is\n // best-effort durability for the directory entry.\n } finally {\n if (fd !== null) {\n try {\n closeSync(fd);\n } catch {}\n }\n }\n}\n",
27
27
  "import { unlinkSync } from \"node:fs\";\nimport { logger } from \"#platform/logger\";\n\nexport interface SafeUnlinkHost {\n unlink(path: string): void;\n warn(context: { err: unknown; path: string }, message: string): void;\n}\n\nexport type SafeUnlink = (path: string, warnLabel?: string) => void;\n\n/** Create an isolated best-effort unlink helper using caller-owned I/O and logging. */\nexport function createSafeUnlink(host: SafeUnlinkHost): SafeUnlink {\n return (path, warnLabel) => {\n try {\n host.unlink(path);\n } catch (e) {\n if ((e as NodeJS.ErrnoException)?.code === \"ENOENT\") return;\n if (warnLabel) host.warn({ err: e, path }, warnLabel);\n }\n };\n}\n\nconst defaultSafeUnlink = createSafeUnlink({\n unlink: unlinkSync,\n warn: (context, message) => logger.warn(context, message),\n});\n\n/**\n * Best-effort unlink. ENOENT is always swallowed (the file is already gone).\n * Other errors are silent unless `warnLabel` is provided, in which case they\n * are logged at warn level with `{ err, path }` context.\n */\nexport function safeUnlink(path: string, warnLabel?: string): void {\n defaultSafeUnlink(path, warnLabel);\n}\n",
28
- "import { McpServer } from \"@modelcontextprotocol/sdk/server/mcp.js\";\nimport { z } from \"zod\";\nimport { executeVaultHttpRequest, type VaultHttpRequest } from \"#mcp/vault-http\";\nimport { executeVaultRun, type VaultRunRequest } from \"#mcp/vault-run\";\nimport { mcpError, mcpOk } from \"../mcp-helpers\";\nimport type { VaultCredentialHost } from \"./vault-host\";\n\nexport interface VaultMcpContext {\n userId?: string;\n httpOnly?: boolean;\n cwd?: string;\n}\n\nexport interface VaultMcpExecutors {\n run?(\n userId: string,\n request: VaultRunRequest,\n host: VaultCredentialHost,\n ): ReturnType<typeof executeVaultRun>;\n http?(\n userId: string,\n request: VaultHttpRequest,\n host: VaultCredentialHost,\n ): ReturnType<typeof executeVaultHttpRequest>;\n}\n\nexport function createVaultMcpServer(\n context: VaultMcpContext,\n host: VaultCredentialHost,\n executors: VaultMcpExecutors = {},\n): McpServer {\n const server = new McpServer({ name: \"vault\", version: \"1.0.0\" });\n const run = executors.run ?? executeVaultRun;\n const http = executors.http ?? executeVaultHttpRequest;\n\n server.tool(\n \"vault_list\",\n context.httpOnly\n ? \"List the user's Vault keys and descriptions without exposing values. Use vault_http_request for HTTPS APIs that need a credential.\"\n : \"List the user's Vault keys and descriptions without exposing values. Use vault_http_request for APIs and vault_run for shell/CLI work that needs a credential.\",\n {},\n () => {\n if (!context.userId) return mcpOk(\"(vault unavailable: no user context)\");\n const entries = host.list(context.userId);\n if (entries.length === 0) return mcpOk(\"Vault is empty. No keys stored yet.\");\n const lines = entries.map((entry) =>\n entry.description ? `• ${entry.key} — ${entry.description}` : `• ${entry.key}`,\n );\n return mcpOk(`Vault keys (${entries.length}):\\n${lines.join(\"\\n\")}`);\n },\n );\n\n if (!context.httpOnly) {\n server.tool(\n \"vault_run\",\n \"Run a shell command containing {{KEY}} references inside Otium's credential broker. Expanded command input never reaches the model/provider, and stdout/stderr are redacted before return. Prefer vault_http_request for HTTP APIs.\",\n {\n command: z\n .string()\n .min(1)\n .max(64 * 1024),\n timeout_ms: z.number().int().min(1_000).max(600_000).optional(),\n max_output_bytes: z\n .number()\n .int()\n .min(1_024)\n .max(2 * 1024 * 1024)\n .optional(),\n },\n async ({ command, timeout_ms, max_output_bytes }) => {\n if (!context.userId) return mcpError(\"Vault unavailable: no user context\");\n const result = await run(\n context.userId,\n {\n command,\n timeoutMs: timeout_ms,\n maxOutputBytes: max_output_bytes,\n cwd: context.cwd,\n },\n host,\n );\n return result.error && result.exitCode === null\n ? mcpError(result.error)\n : mcpOk(JSON.stringify(result, null, 2));\n },\n );\n }\n\n server.tool(\n \"vault_http_request\",\n \"Make an HTTPS request with {{KEY}} references resolved inside Otium. Put secrets in headers or body, never in the URL. The expanded request is not returned; the response is redacted before the model sees it.\",\n {\n method: z.enum([\"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\"]).default(\"GET\"),\n url: z.string().url().describe(\"Absolute HTTPS URL without Vault placeholders\"),\n headers: z.record(z.string(), z.string()).optional(),\n body: z.string().optional(),\n timeout_ms: z.number().int().min(1_000).max(120_000).optional(),\n max_response_bytes: z\n .number()\n .int()\n .min(1_024)\n .max(1024 * 1024)\n .optional(),\n },\n async ({ method, url, headers, body, timeout_ms, max_response_bytes }) => {\n if (!context.userId) return mcpError(\"Vault unavailable: no user context\");\n const result = await http(\n context.userId,\n {\n method,\n url,\n headers,\n body,\n timeoutMs: timeout_ms,\n maxResponseBytes: max_response_bytes,\n },\n host,\n );\n return result.error ? mcpError(result.error) : mcpOk(JSON.stringify(result, null, 2));\n },\n );\n\n return server;\n}\n\nexport type { VaultHttpRequest, VaultHttpResult } from \"#mcp/vault-http\";\nexport type { VaultRunRequest, VaultRunResult } from \"#mcp/vault-run\";\nexport type { VaultCredentialHost } from \"./vault-host\";\n"
28
+ "import { McpServer } from \"@modelcontextprotocol/sdk/server/mcp.js\";\nimport { z } from \"zod\";\nimport { executeVaultHttpRequest, type VaultHttpRequest } from \"#mcp/vault-http\";\nimport { executeVaultRun, type VaultRunRequest } from \"#mcp/vault-run\";\nimport { mcpError, mcpOk } from \"../mcp-helpers\";\nimport type { VaultCredentialHost } from \"./vault-host\";\n\nexport interface VaultMcpContext {\n userId?: string;\n listOnly?: boolean;\n httpOnly?: boolean;\n cwd?: string;\n}\n\nexport interface VaultMcpExecutors {\n run?(\n userId: string,\n request: VaultRunRequest,\n host: VaultCredentialHost,\n ): ReturnType<typeof executeVaultRun>;\n http?(\n userId: string,\n request: VaultHttpRequest,\n host: VaultCredentialHost,\n ): ReturnType<typeof executeVaultHttpRequest>;\n}\n\nexport function createVaultMcpServer(\n context: VaultMcpContext,\n host: VaultCredentialHost,\n executors: VaultMcpExecutors = {},\n): McpServer {\n const server = new McpServer({ name: \"vault\", version: \"1.0.0\" });\n const run = executors.run ?? executeVaultRun;\n const http = executors.http ?? executeVaultHttpRequest;\n\n server.tool(\n \"vault_list\",\n context.httpOnly\n ? \"List the user's Vault keys and descriptions without exposing values. Use vault_http_request for HTTPS APIs that need a credential.\"\n : \"List the user's Vault keys and descriptions without exposing values. Use vault_http_request for APIs and vault_run for shell/CLI work that needs a credential.\",\n {},\n () => {\n if (!context.userId) return mcpOk(\"(vault unavailable: no user context)\");\n const entries = host.list(context.userId);\n if (entries.length === 0) return mcpOk(\"Vault is empty. No keys stored yet.\");\n const lines = entries.map((entry) =>\n entry.description ? `• ${entry.key} — ${entry.description}` : `• ${entry.key}`,\n );\n return mcpOk(`Vault keys (${entries.length}):\\n${lines.join(\"\\n\")}`);\n },\n );\n\n if (!context.listOnly && !context.httpOnly) {\n server.tool(\n \"vault_run\",\n \"Run a shell command containing {{KEY}} references inside Otium's credential broker. Expanded command input never reaches the model/provider, and stdout/stderr are redacted before return. Prefer vault_http_request for HTTP APIs.\",\n {\n command: z\n .string()\n .min(1)\n .max(64 * 1024),\n timeout_ms: z.number().int().min(1_000).max(600_000).optional(),\n max_output_bytes: z\n .number()\n .int()\n .min(1_024)\n .max(2 * 1024 * 1024)\n .optional(),\n },\n async ({ command, timeout_ms, max_output_bytes }) => {\n if (!context.userId) return mcpError(\"Vault unavailable: no user context\");\n const result = await run(\n context.userId,\n {\n command,\n timeoutMs: timeout_ms,\n maxOutputBytes: max_output_bytes,\n cwd: context.cwd,\n },\n host,\n );\n return result.error && result.exitCode === null\n ? mcpError(result.error)\n : mcpOk(JSON.stringify(result, null, 2));\n },\n );\n }\n\n if (!context.listOnly)\n server.tool(\n \"vault_http_request\",\n \"Make an HTTPS request with {{KEY}} references resolved inside Otium. Put secrets in headers or body, never in the URL. The expanded request is not returned; the response is redacted before the model sees it.\",\n {\n method: z.enum([\"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\"]).default(\"GET\"),\n url: z.string().url().describe(\"Absolute HTTPS URL without Vault placeholders\"),\n headers: z.record(z.string(), z.string()).optional(),\n body: z.string().optional(),\n timeout_ms: z.number().int().min(1_000).max(120_000).optional(),\n max_response_bytes: z\n .number()\n .int()\n .min(1_024)\n .max(1024 * 1024)\n .optional(),\n },\n async ({ method, url, headers, body, timeout_ms, max_response_bytes }) => {\n if (!context.userId) return mcpError(\"Vault unavailable: no user context\");\n const result = await http(\n context.userId,\n {\n method,\n url,\n headers,\n body,\n timeoutMs: timeout_ms,\n maxResponseBytes: max_response_bytes,\n },\n host,\n );\n return result.error ? mcpError(result.error) : mcpOk(JSON.stringify(result, null, 2));\n },\n );\n\n return server;\n}\n\nexport type { VaultHttpRequest, VaultHttpResult } from \"#mcp/vault-http\";\nexport type { VaultRunRequest, VaultRunResult } from \"#mcp/vault-run\";\nexport type { VaultCredentialHost } from \"./vault-host\";\n"
29
29
  ],
30
- "mappings": "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",
31
- "debugId": "D5C1866838070BD764756E2164756E21",
30
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;IA+BM,OAIF;AAAA;AAAA,EAJE,QAAQ,OAAO,QAAQ,SAAS,QAAQ;AAAA,EAM9C,IAAI,OAAO;AAAA,KACR,EAAE,SAAS,IAAI,MAAa;AAAA,EAC/B,EAAO;AAAA,IAmBL,MAAM,sBAAsB,CAAC,QAAQ,QAAQ,EAAE,KAAK,GAAG;AAAA,IACvD,QAAQ,iBAAkB,MAAa;AAAA;AAAA,IAIvC,MAAM,aAAa;AAAA,MACjB;AAAA,MAEA,WAAW,CAAC,MAAc,UAAqB,CAAC,GAAG;AAAA,QAGjD,KAAK,MAAM,QAAQ,WACf,IAAI,aAAa,MAAM,EAAE,UAAU,KAAK,CAAC,IACzC,IAAI,aAAa,IAAI;AAAA;AAAA,MAG3B,KAAK,CAAC,KAAa;AAAA,QACjB,OAAO,KAAK,IAAI,QAAQ,GAAG;AAAA;AAAA,MAG7B,OAAO,CAAC,KAAa;AAAA,QACnB,OAAO,KAAK,IAAI,QAAQ,GAAG;AAAA;AAAA,MAG7B,IAAI,CAAC,KAAmB;AAAA,QACtB,KAAK,IAAI,KAAK,GAAG;AAAA;AAAA,MAGnB,GAAG,CAAC,QAAgB,QAAmB;AAAA,QACrC,OAAO,KAAK,IAAI,QAAQ,GAAG,EAAE,IAAI,GAAG,MAAM;AAAA;AAAA,MAG5C,WAAsC,CAAC,IAAgD;AAAA,QAMrF,MAAM,MACJ,CAAC,UACD,IAAI,SAAkB;AAAA,UACpB,KAAK,IAAI,KAAK,KAAK;AAAA,UACnB,IAAI;AAAA,YACF,MAAM,SAAS,GAAG,GAAG,IAAI;AAAA,YACzB,KAAK,IAAI,KAAK,QAAQ;AAAA,YACtB,OAAO;AAAA,YACP,OAAO,KAAK;AAAA,YACZ,KAAK,IAAI,KAAK,UAAU;AAAA,YACxB,MAAM;AAAA;AAAA;AAAA,QAGZ,MAAM,KAAK,IAAI,OAAO;AAAA,QAKtB,GAAG,WAAW,IAAI,gBAAgB;AAAA,QAClC,GAAG,YAAY,IAAI,iBAAiB;AAAA,QACpC,GAAG,YAAY,IAAI,iBAAiB;AAAA,QACpC,OAAO;AAAA;AAAA,MAGT,KAAK,GAAS;AAAA,QACZ,KAAK,IAAI,MAAM;AAAA;AAAA,IAEnB;AAAA,IAEA,WAAW;AAAA;AAAA;;;AC7Hb,sBAAS;AACT,oBAAS;AACT,oBAAS,kBAAS,kBAAM;AAqCxB,SAAS,OAAO,CAAC,MAAc,UAA0B;AAAA,EACvD,MAAM,SAAQ,QAAQ,IAAI,OAAO,KAAK;AAAA,EACtC,OAAO,SAAQ,UAAS,QAAQ;AAAA;AAGlC,SAAS,eAAe,GAAW;AAAA,EACjC,OAAO,QAAQ,sBAAsB,MAAK,SAAQ,GAAG,WAAW,CAAC;AAAA;AAGnE,SAAS,cAAc,GAAW;AAAA,EAChC,OAAO,QAAQ,qBAAqB,MAAK,gBAAgB,GAAG,MAAM,CAAC;AAAA;AAGrE,SAAS,aAAa,GAAW;AAAA,EAC/B,OAAO,QAAQ,oBAAoB,MAAK,gBAAgB,GAAG,MAAM,CAAC;AAAA;AAYpE,SAAS,2BAA2B,GAAW;AAAA,EAC7C,OAAO,QAAQ,oBAAoB,MAAK,sBAAsB,GAAG,aAAa,CAAC;AAAA;AAGjF,SAAS,kBAAkB,CAAC,UAAyC;AAAA,EACnE,SAAS,KAAK,2BAA2B;AAAA,EACzC,SAAS,KAAK,0BAA0B;AAAA,EACxC,SAAS,KAAK,4BAA4B;AAAA,EAC1C,SAAS,KAAK,kCAAkC;AAAA,EAChD,IAAI;AAAA,IACF,SAAS,KAAK,iCAAiC;AAAA,IAC/C,MAAM;AAAA;AAKV,SAAS,eAAe,GAA4B;AAAA,EAClD,MAAM,OAAO,4BAA4B;AAAA,EACzC,IAAI,oBAAoB,yBAAyB;AAAA,IAAM,OAAO;AAAA,EAC9D,IAAI;AAAA,IAAkB,iBAAiB,MAAM;AAAA,EAC7C,WAAU,SAAQ,IAAI,GAAG,EAAE,WAAW,KAAK,CAAC;AAAA,EAC5C,mBAAmB,IAAI,SAAS,MAAM,EAAE,QAAQ,KAAK,CAAC;AAAA,EACtD,uBAAuB;AAAA,EACvB,mBAAmB,gBAAgB;AAAA,EACnC,OAAO;AAAA;AAGF,SAAS,sBAAsB,GAA4B;AAAA,EAChE,OAAQ,eAAe,YAAY,gBAAgB;AAAA;AAG9C,SAAS,qBAAqB,GAAW;AAAA,EAC9C,OAAO,eAAe,WAAW,eAAe;AAAA;AAG3C,SAAS,oBAAoB,GAAW;AAAA,EAC7C,OAAO,eAAe,UAAU,cAAc;AAAA;AA4FzC,SAAS,oBAAoB,CAClC,WAAoC,uBAAuB,GACrD;AAAA,EACN,IAAI,sBAAsB,IAAI,QAAQ;AAAA,IAAG;AAAA,EACzC,IAAI,cAAc,mBAAmB,IAAI,QAAQ;AAAA,EACjD,KAAK,aAAa;AAAA,IAChB,cAAc,IAAI;AAAA,IAClB,mBAAmB,IAAI,UAAU,WAAW;AAAA,EAC9C;AAAA,EACA,sBAAsB,IAAI,QAAQ;AAAA,EAClC,IAAI;AAAA,IACF,WAAW,SAAS,oBAAoB;AAAA,MACtC,IAAI,YAAY,IAAI,MAAM,UAAU;AAAA,QAAG;AAAA,MAGvC,YAAY,IAAI,MAAM,UAAU;AAAA,MAChC,IAAI;AAAA,QACF,MAAM,WAAW,QAAQ;AAAA,QACzB,OAAO,OAAO;AAAA,QACd,YAAY,OAAO,MAAM,UAAU;AAAA,QACnC,MAAM;AAAA;AAAA,IAEV;AAAA,YACA;AAAA,IACA,sBAAsB,OAAO,QAAQ;AAAA;AAAA;AAAA,IAzMrC,gBAGA,mBAAgD,MAChD,uBAAsC,MAepC,oBACA,oBACA,uBAyLO;AAAA;AAAA,EA3Nb;AAAA,EAaI,iBAA8C,CAAC;AAAA,EAmB7C,qBAAoD,CAAC;AAAA,EACrD,qBAAqB,IAAI;AAAA,EACzB,wBAAwB,IAAI;AAAA,EAyLrB,0BAA0B,IAAI,MAAM,CAAC,GAA8B;AAAA,IAC9E,GAAG,CAAC,SAAS,UAAU;AAAA,MACrB,MAAM,WAAW,uBAAuB;AAAA,MACxC,qBAAqB,QAAQ;AAAA,MAC7B,MAAM,SAAQ,QAAQ,IAAI,UAAoB,UAAU,QAAQ;AAAA,MAChE,OAAO,OAAO,WAAU,aAAa,OAAM,KAAK,QAAQ,IAAI;AAAA;AAAA,IAE9D,GAAG,CAAC,SAAS,UAAU,QAAO;AAAA,MAC5B,MAAM,WAAW,uBAAuB;AAAA,MACxC,qBAAqB,QAAQ;AAAA,MAC7B,OAAO,QAAQ,IAAI,UAAoB,UAAU,QAAO,QAAQ;AAAA;AAAA,EAEpE,CAAC;AAAA;;;AC9MM,IAAM,mBAAyC,CAAC,WAAW,UAAU,OAAO;AAE5E,SAAS,WAAW,CAAC,OAAoC;AAAA,EAC9D,OAAO,OAAO,UAAU,YAAa,iBAAuC,SAAS,KAAK;AAAA;;;ACb5F,SAAS,KAAK,CAAC,MAAyB,MAAkC;AAAA,EACxE,MAAM,SAAS,KAAK;AAAA,EACpB,OAAO,KAAK,KAAK,CAAC,QAAQ,IAAI,WAAW,MAAM,CAAC,GAAG,MAAM,OAAO,MAAM;AAAA;AAIjE,SAAS,uBAAuB,CACrC,MACA,UACoB;AAAA,EACpB,MAAM,aAAa,MAAM,MAAM,OAAO;AAAA,EACtC,IAAI,eAAe,cAAc,YAAY,UAAU,GAAG;AAAA,IACxD,MAAM,IAAI,MAAM,wBAAwB,YAAY;AAAA,EACtD;AAAA,EACA,MAAM,aAAa,MAAM,MAAM,OAAO;AAAA,EACtC,MAAM,QAAQ,eAAe,YAAY,IAAI,OAAO,UAAU;AAAA,EAC9D,KAAK,OAAO,UAAU,KAAK,KAAK,QAAQ,GAAG;AAAA,IACzC,MAAM,IAAI,MAAM,wBAAwB,YAAY;AAAA,EACtD;AAAA,EACA,OAAO;AAAA,IACL,QAAQ,MAAM,MAAM,SAAS,KAAK,SAAS;AAAA,IAC3C,cAAc,MAAM,MAAM,OAAO,KAAK;AAAA,IACtC,gBAAgB,MAAM,MAAM,UAAU,KAAK;AAAA,IAC3C,iBAAiB,MAAM,MAAM,oBAAoB,KAAK;AAAA,IACtD;AAAA,IACA,WAAW,MAAM,MAAM,YAAY,MAAM;AAAA,IACzC,OAAO,cAAc,SAAS;AAAA,EAChC;AAAA;;AC3CF,IAAM,wBAAwB,IAAI,IAAI;AAAA,EACpC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAED,IAAM,4BAA4B,IAAI,IAAI;AAAA,EACxC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAqBD,SAAS,gBAAgB,CACvB,QACA,QACA,MACwD;AAAA,EACxD,MAAM,OAAO,IAAI;AAAA,EACjB,MAAM,cAAsC,CAAC;AAAA,EAC7C,YAAY,KAAK,WAAU,OAAO,QAAQ,MAAM,GAAG;AAAA,IACjD,IAAI,0BAA0B,IAAI,IAAI,YAAY,CAAC,GAAG;AAAA,MACpD,MAAM,IAAI,MAAM,WAAW,qBAAqB;AAAA,IAClD;AAAA,IACA,MAAM,SAAS,KAAK,WAAW,QAAQ,MAAK;AAAA,IAC5C,WAAW,WAAW,OAAO;AAAA,MAAU,KAAK,IAAI,OAAO;AAAA,IACvD,YAAY,OAAO,OAAO;AAAA,EAC5B;AAAA,EACA,OAAO,EAAE,QAAQ,aAAa,UAAU,CAAC,GAAG,IAAI,EAAE;AAAA;AAGpD,SAAS,mBAAmB,CAC1B,QACA,SACA,MACwB;AAAA,EACxB,MAAM,SAAiC,CAAC;AAAA,EACxC,YAAY,KAAK,WAAU,QAAQ,QAAQ,GAAG;AAAA,IAC5C,KAAK,sBAAsB,IAAI,IAAI,YAAY,CAAC;AAAA,MAAG;AAAA,IACnD,OAAO,OAAO,KAAK,OAAO,QAAQ,MAAK;AAAA,EACzC;AAAA,EACA,OAAO;AAAA;AAGT,eAAe,eAAe,CAC5B,UACA,UACoD;AAAA,EACpD,KAAK,SAAS;AAAA,IAAM,OAAO,EAAE,OAAO,IAAI,YAAc,WAAW,MAAM;AAAA,EACvE,MAAM,SAAS,SAAS,KAAK,UAAU;AAAA,EACvC,MAAM,SAAuB,CAAC;AAAA,EAC9B,IAAI,YAAY;AAAA,EAChB,IAAI,YAAY;AAAA,EAChB,IAAI;AAAA,IACF,OAAO,MAAM;AAAA,MACX,MAAM,OAAO,MAAM,OAAO,KAAK;AAAA,MAC/B,IAAI,KAAK;AAAA,QAAM;AAAA,MACf,MAAM,YAAY,WAAW;AAAA,MAC7B,IAAI,aAAa,GAAG;AAAA,QAClB,YAAY;AAAA,QACZ,MAAM,OAAO,OAAO;AAAA,QACpB;AAAA,MACF;AAAA,MACA,MAAM,UAAU,KAAK,MAAM,SAAS,GAAG,SAAS;AAAA,MAChD,OAAO,KAAK,OAAO;AAAA,MACnB,aAAa,QAAQ;AAAA,MACrB,IAAI,QAAQ,aAAa,KAAK,MAAM,YAAY;AAAA,QAC9C,YAAY;AAAA,QACZ,MAAM,OAAO,OAAO;AAAA,QACpB;AAAA,MACF;AAAA,IACF;AAAA,YACA;AAAA,IACA,OAAO,YAAY;AAAA;AAAA,EAGrB,MAAM,QAAQ,IAAI,WAAW,SAAS;AAAA,EACtC,IAAI,SAAS;AAAA,EACb,WAAW,SAAS,QAAQ;AAAA,IAC1B,MAAM,IAAI,OAAO,MAAM;AAAA,IACvB,UAAU,MAAM;AAAA,EAClB;AAAA,EACA,OAAO,EAAE,OAAO,UAAU;AAAA;AAO5B,eAAsB,uBAAuB,CAC3C,QACA,SACA,MACA,YAA0B,OACA;AAAA,EAC1B,IAAI;AAAA,EACJ,IAAI;AAAA,IACF,YAAY,IAAI,IAAI,QAAQ,GAAG;AAAA,IAC/B,MAAM;AAAA,IACN,OAAO,EAAE,IAAI,OAAO,OAAO,oCAAoC;AAAA;AAAA,EAEjE,IAAI,UAAU,aAAa,UAAU;AAAA,IACnC,OAAO;AAAA,MACL,IAAI;AAAA,MACJ,OAAO;AAAA,IACT;AAAA,EACF;AAAA,EACA,IAAI,UAAU,YAAY,UAAU,YAAY,gBAAgB,KAAK,QAAQ,GAAG,GAAG;AAAA,IACjF,OAAO;AAAA,MACL,IAAI;AAAA,MACJ,OAAO;AAAA,IACT;AAAA,EACF;AAAA,EAEA,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,IACF,MAAM,cAAc,iBAAiB,QAAQ,QAAQ,WAAW,CAAC,GAAG,IAAI;AAAA,IACxE,UAAU,YAAY;AAAA,IACtB,aAAa,YAAY;AAAA,IACzB,OAAO,OAAO;AAAA,IACd,OAAO;AAAA,MACL,IAAI;AAAA,MACJ,OAAO,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AAAA,IAC9D;AAAA;AAAA,EAGF,MAAM,aACJ,QAAQ,SAAS,YACb,EAAE,MAAM,WAAW,UAAU,CAAC,EAAc,IAC5C,KAAK,WAAW,QAAQ,QAAQ,IAAI;AAAA,EAC1C,MAAM,WAAW,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,YAAY,GAAG,WAAW,QAAQ,CAAC,CAAC,EAAE,KAAK;AAAA,EAC5E,IAAI,SAAS,WAAW,GAAG;AAAA,IACzB,OAAO;AAAA,MACL,IAAI;AAAA,MACJ,OAAO;AAAA,IACT;AAAA,EACF;AAAA,EACA,IAAI,QAAQ,WAAW,SAAS,QAAQ,SAAS,WAAW;AAAA,IAC1D,OAAO;AAAA,MACL,IAAI;AAAA,MACJ,OAAO;AAAA,IACT;AAAA,EACF;AAAA,EAEA,MAAM,aAAa,IAAI;AAAA,EACvB,MAAM,YAAY,KAAK,IAAI,KAAK,IAAI,QAAQ,aAAa,OAAQ,IAAK,GAAG,MAAO;AAAA,EAChF,MAAM,UAAU,WAAW,MAAM,WAAW,MAAM,GAAG,SAAS;AAAA,EAC9D,MAAM,YAAY,KAAK,IAAI;AAAA,EAC3B,IAAI;AAAA,IACF,MAAM,WAAW,MAAM,UAAU,WAAW;AAAA,MAC1C,QAAQ,QAAQ;AAAA,MAChB;AAAA,MACA,MAAM,QAAQ,WAAW,QAAQ,YAAY,WAAW;AAAA,MACxD,UAAU;AAAA,MACV,QAAQ,WAAW;AAAA,IACrB,CAAC;AAAA,IACD,MAAM,WAAW,KAAK,IAAI,KAAK,IAAI,QAAQ,oBAAoB,MAAM,MAAM,IAAK,GAAG,OAAO,IAAI;AAAA,IAC9F,QAAQ,OAAO,cAAc,MAAM,gBAAgB,UAAU,QAAQ;AAAA,IACrE,MAAM,cAAc,SAAS,QAAQ,IAAI,cAAc,GAAG,YAAY,KAAK;AAAA,IAC3E,MAAM,UACJ,YAAY,WAAW,OAAO,KAC9B,YAAY,SAAS,MAAM,KAC3B,YAAY,SAAS,KAAK,KAC1B,YAAY,SAAS,YAAY,KACjC,gBAAgB;AAAA,IAClB,MAAM,OAAO,UACT,KAAK,OAAO,QAAQ,IAAI,YAAY,EAAE,OAAO,KAAK,CAAC,IACnD,6BAA6B,MAAM,qBAAqB,eAAe;AAAA,IAE3E,KAAK,MACH,QACA;AAAA,MACE;AAAA,MACA,WAAW;AAAA,MACX,MAAM,UAAU;AAAA,MAChB,QAAQ,QAAQ;AAAA,MAChB,QAAQ,SAAS;AAAA,MACjB,YAAY,KAAK,IAAI,IAAI;AAAA,IAC3B,GACA,uBACF;AAAA,IAEA,OAAO;AAAA,MACL,IAAI,SAAS;AAAA,MACb,QAAQ,SAAS;AAAA,MACjB,YAAY,SAAS;AAAA,MACrB,SAAS,oBAAoB,QAAQ,SAAS,SAAS,IAAI;AAAA,MAC3D;AAAA,MACA;AAAA,IACF;AAAA,IACA,OAAO,OAAO;AAAA,IACd,MAAM,MAAM,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AAAA,IACjE,KAAK,MACH,QACA;AAAA,MACE;AAAA,MACA,WAAW;AAAA,MACX,MAAM,UAAU;AAAA,MAChB,QAAQ,QAAQ;AAAA,MAChB,YAAY,KAAK,IAAI,IAAI;AAAA,IAC3B,GACA,iCACF;AAAA,IACA,OAAO,EAAE,IAAI,OAAO,OAAO,KAAK,OAAO,QAAQ,GAAG,EAAE;AAAA,YACpD;AAAA,IACA,aAAa,OAAO;AAAA;AAAA;;ACxOxB;AAqBA,SAAS,aAAa,CACpB,QACA,OACA,OACA,UACM;AAAA,EACN,IAAI,MAAM,SAAS,UAAU;AAAA,IAC3B,MAAM,YAAY;AAAA,IAClB;AAAA,EACF;AAAA,EACA,MAAM,YAAY,WAAW,MAAM;AAAA,EACnC,MAAM,UAAU,MAAM,SAAS,GAAG,SAAS;AAAA,EAC3C,OAAO,KAAK,OAAO;AAAA,EACnB,MAAM,SAAS,QAAQ;AAAA,EACvB,IAAI,QAAQ,aAAa,MAAM;AAAA,IAAY,MAAM,YAAY;AAAA;AAI/D,eAAsB,eAAe,CACnC,QACA,SACA,MACyB;AAAA,EACzB,MAAM,eAAe,KAAK,WAAW,QAAQ,QAAQ,OAAO;AAAA,EAC5D,IAAI,aAAa,SAAS,WAAW,GAAG;AAAA,IACtC,OAAO;AAAA,MACL,IAAI;AAAA,MACJ,UAAU;AAAA,MACV,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,WAAW;AAAA,MACX,UAAU,CAAC;AAAA,MACX,OAAO;AAAA,IACT;AAAA,EACF;AAAA,EAEA,MAAM,YAAY,KAAK,IAAI,KAAK,IAAI,QAAQ,aAAa,QAAS,IAAK,GAAG,MAAO;AAAA,EACjF,MAAM,iBAAiB,KAAK,IAC1B,KAAK,IAAI,QAAQ,kBAAkB,MAAM,MAAM,IAAK,GACpD,IAAI,OAAO,IACb;AAAA,EACA,MAAM,eAAyB,CAAC;AAAA,EAChC,MAAM,eAAyB,CAAC;AAAA,EAChC,MAAM,cAAc,EAAE,OAAO,GAAG,WAAW,MAAM;AAAA,EACjD,MAAM,cAAc,EAAE,OAAO,GAAG,WAAW,MAAM;AAAA,EACjD,MAAM,YAAY,KAAK,IAAI;AAAA,EAE3B,OAAO,MAAM,IAAI,QAAwB,CAAC,YAAY;AAAA,IAGpD,MAAM,QAAQ,MAAM,QAAQ,IAAI,SAAS,WAAW,CAAC,IAAI,GAAG;AAAA,MAC1D,KAAK,QAAQ;AAAA,MACb,UAAU;AAAA,MACV,KAAK,QAAQ;AAAA,MACb,OAAO,CAAC,QAAQ,QAAQ,MAAM;AAAA,IAChC,CAAC;AAAA,IACD,IAAI,UAAU;AAAA,IACd,IAAI,WAAW;AAAA,IACf,MAAM,aAAa,CAAC,WAA2B;AAAA,MAC7C,KAAK,MAAM;AAAA,QAAK;AAAA,MAChB,IAAI;AAAA,QACF,QAAQ,MAAM,MAAM,KAAK,MAAM;AAAA,QAC/B,MAAM;AAAA,QACN,IAAI;AAAA,UACF,MAAM,KAAK,MAAM;AAAA,UACjB,MAAM;AAAA;AAAA;AAAA,IAMZ,MAAM,SAAS,CAAC,WAA6C;AAAA,MAC3D,IAAI;AAAA,QAAS;AAAA,MACb,UAAU;AAAA,MACV,aAAa,OAAO;AAAA,MACpB,KAAK,MACH,QACA;AAAA,QACE;AAAA,QACA,WAAW,aAAa;AAAA,QACxB,UAAU,OAAO;AAAA,QACjB,QAAQ,OAAO;AAAA,QACf,YAAY,KAAK,IAAI,IAAI;AAAA,QACzB;AAAA,MACF,GACA,+BACF;AAAA,MACA,QAAQ,KAAK,QAAQ,UAAU,aAAa,SAAS,CAAC;AAAA;AAAA,IAGxD,MAAM,OAAO,GAAG,QAAQ,CAAC,UACvB,cAAc,cAAc,OAAO,aAAa,cAAc,CAChE;AAAA,IACA,MAAM,OAAO,GAAG,QAAQ,CAAC,UACvB,cAAc,cAAc,OAAO,aAAa,cAAc,CAChE;AAAA,IACA,MAAM,KAAK,SAAS,CAAC,UAAU;AAAA,MAC7B,OAAO;AAAA,QACL,IAAI;AAAA,QACJ,UAAU;AAAA,QACV,QAAQ;AAAA,QACR,QAAQ;AAAA,QACR,QAAQ;AAAA,QACR,WAAW;AAAA,QACX,OAAO,KAAK,OAAO,QAAQ,MAAM,OAAO;AAAA,MAC1C,CAAC;AAAA,KACF;AAAA,IACD,MAAM,KAAK,SAAS,CAAC,UAAU,WAAW;AAAA,MAGxC,WAAW,SAAS;AAAA,MACpB,MAAM,SAAS,KAAK,OAAO,QAAQ,OAAO,OAAO,YAAY,EAAE,SAAS,MAAM,CAAC;AAAA,MAC/E,MAAM,SAAS,KAAK,OAAO,QAAQ,OAAO,OAAO,YAAY,EAAE,SAAS,MAAM,CAAC;AAAA,MAC/E,OAAO;AAAA,QACL,KAAK,YAAY,aAAa;AAAA,QAC9B;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,WAAW,YAAY,aAAa,YAAY;AAAA,WAC5C,WAAW,EAAE,OAAO,2BAA2B,cAAc,IAAI,CAAC;AAAA,MACxE,CAAC;AAAA,KACF;AAAA,IAED,MAAM,UAAU,WAAW,MAAM;AAAA,MAC/B,WAAW;AAAA,MACX,WAAW,SAAS;AAAA,OACnB,SAAS;AAAA,IAEZ,MAAM,MAAM,IAAI,aAAa,IAAI;AAAA,GAClC;AAAA;;ACtJH;AACA,sBAAS,yCAAwB,gCAAc;AAC/C,8BAAmB,kBAAS,kBAAM;AAElC;AACA;AACA;AAAA;AAAA;AAAA;;;ACRA;AACA;AACA;AACA;AACA;;;ACAO,SAAS,WAAW,CAAC,KAAyB,KAAiC;AAAA,EACpF,MAAM,SAAQ,IAAI,MAAM,KAAK;AAAA,EAC7B,OAAO,UAAS;AAAA;AAGX,SAAS,gBAAgB,CAAC,QAA2B,UAA0B;AAAA,EACpF,KAAK;AAAA,IAAO,OAAO;AAAA,EACnB,MAAM,OAAO,OAAO,SAAS,QAAO,EAAE;AAAA,EACtC,OAAO,OAAO,UAAU,IAAI,KAAK,OAAO,KAAK,QAAQ,QAAS,OAAO;AAAA;;;ACZvE;AAmBO,SAAS,iBAAiB,CAAC,UAA8B,CAAC,GAAG;AAAA,EAClE,MAAM,cAAc,QAAQ,eAAe;AAAA,EAC3C,OAAO,KACL;AAAA,IACE,OAAO,QAAQ,SAAS,QAAQ,IAAI,aAAa;AAAA,IACjD,WAAW,cACP;AAAA,MACE,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,UAAU;AAAA,QACV,eAAe;AAAA,QACf,aAAa;AAAA,MACf;AAAA,IACF,IACA;AAAA,EACN,GACA,KAAK,YAAY,CAAC,CACpB;AAAA;AAKK,IAAM,SAAS,kBAAkB;;;AFhCjC,SAAS,OAAO,CAAC,QAAoC;AAAA,EAC1D,OAAO,YAAY,QAAQ,KAAK,MAAM;AAAA;AAGxC,SAAS,eAAe,CAAC,QAAgB,UAAqB,cAAkC;AAAA,EAC9F,MAAM,SAAQ,QAAQ,MAAM,MAAM,eAAe,QAAQ,YAAY,IAAI;AAAA,EACzE,OAAO,YAAY,MAAK,IAAI,SAAQ;AAAA;AAGtC,IAAM,OAAO,QAAQ;AAIrB,SAAS,kBAAkB,GAAW;AAAA,EACpC,MAAM,YAAY,QAAQ,cAAc,YAAY,GAAG,CAAC;AAAA,EACxD,MAAM,kBAAkB,QAAQ,WAAW,SAAS;AAAA,EACpD,IAAI,WAAW,QAAQ,iBAAiB,KAAK,CAAC;AAAA,IAAG,OAAO;AAAA,EACxD,OAAO,QAAQ,WAAW,OAAO;AAAA;AAG5B,IAAM,eAAe,mBAAmB;AAG/C,SAAS,oBAAoB,CAAC,MAAsB;AAAA,EAClD,IAAI,MAAM;AAAA,EACV,OAAO,MAAM;AAAA,IACX,MAAM,YAAY,QAAQ,KAAK,gBAAgB,QAAQ,IAAI;AAAA,IAC3D,IAAI,WAAW,SAAS;AAAA,MAAG,OAAO;AAAA,IAClC,MAAM,SAAS,QAAQ,GAAG;AAAA,IAC1B,IAAI,WAAW;AAAA,MAAK,OAAO;AAAA,IAC3B,MAAM;AAAA,EACR;AAAA;AAKF,IAAM,gBAAgB,QAAQ,oBAAoB;AAC3C,IAAM,YAAY,gBAAgB,QAAQ,aAAa,IAAI,QAAQ,MAAM,WAAW;AAE3F,SAAS,oBAAoB,CAAC,QAAgB,WAA2B;AAAA,EACvE,MAAM,WAAW,QAAQ,MAAM;AAAA,EAC/B,IAAI;AAAA,IAAU,OAAO,QAAQ,QAAQ;AAAA,EACrC,OAAO,QAAQ,WAAW,SAAS;AAAA;AAGrC,SAAS,YAAY,CAAC,UAA8B,UAA0B;AAAA,EAC5E,OAAO,iBAAiB,UAAU,QAAQ;AAAA;AAGrC,IAAM,gBAAgB,qBAAqB,0BAA0B,WAAW;AAChF,IAAM,sBAAsB,QAAQ,eAAe,QAAQ;AAC3D,IAAM,kBAAkB,QAAQ,eAAe,MAAM;AACrD,IAAM,eAAe,QAAQ,eAAe,UAAU;AACtD,IAAM,uBAAuB,QAAQ,eAAe,kBAAkB;AACtE,IAAM,mBAAmB,QAAQ,eAAe,IAAI;AACpD,IAAM,wBAAwB,QAAQ,eAAe,UAAU;AAC/D,IAAM,oBAAoB,QAAQ,MAAM,mBAAmB;AAG3D,SAAS,oBAAoB,CAAC,UAA2B;AAAA,EAC9D,MAAM,WAAW,UAAU,KAAK;AAAA,EAChC,IAAI,UAAU;AAAA,IACZ,KAAK,mDAAmD,KAAK,QAAQ,GAAG;AAAA,MACtE,MAAM,IAAI,MACR,kFACF;AAAA,IACF;AAAA,IACA,OAAO;AAAA,EACT;AAAA,EACA,OAAO;AAAA;AAGF,IAAM,qBAAqB,QAAQ,cAAc,iCAAiC;AAClF,IAAM,qBAAqB,qBAAqB,QAAQ,0BAA0B,CAAC;AAwDnF,IAAM,UAAU,qBAAqB,KAAK;AAC1C,IAAM,gBAAgB,QAAQ,cAAc,eAAe;AAE3D,IAAM,sBAAsB,QAAQ,cAAc,gCAAgC;AAElF,IAAM,cAAc,QAAQ,cAAc,wBAAwB;AAClE,IAAM,6BAA6B,QACxC,cACA,mCACF;AAEO,IAAM,cAAc,QAAQ,cAAc,wBAAwB;AAElE,IAAM,qBAAqB,QAAQ,cAAc,+BAA+B;AAEhF,IAAM,uBAAuB,QAAQ,cAAc,iCAAiC;AAEpF,IAAM,sBAAsB,QAAQ,cAAc,gCAAgC;AAElF,IAAM,yBAAyB,QAAQ,cAAc,mCAAmC;AAExF,IAAM,eAAe,QAAQ,cAAc,yBAAyB;AAEpE,IAAM,oBAAoB,aAAa,QAAQ,IAAI,mBAAmB,IAAI;AAC1E,IAAM,mBAAmB,aAAa,QAAQ,IAAI,kBAAkB,IAAI;AAe/E,SAAS,uBAAuB,CAC9B,QACA,UACA,UAAyC,CAAC,GAClC;AAAA,EACR,MAAM,WAAW,QAAQ,MAAM;AAAA,EAC/B,MAAM,aAAa,QAAQ,WAAW,QAAQ;AAAA,EAC9C,UAAU,QAAQ,UAAU,GAAG,EAAE,WAAW,KAAK,CAAC;AAAA,EAClD,IAAI,UAAU;AAAA,IACZ,IAAI,QAAQ,iBAAiB;AAAA,MAC3B,cAAc,YAAY,GAAG;AAAA,GAAc,EAAE,MAAM,IAAM,CAAC;AAAA,MAC1D,UAAU,YAAY,GAAK;AAAA,IAC7B;AAAA,IACA,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,WAAW,UAAU,GAAG;AAAA,IAC1B,MAAM,SAAS,aAAa,YAAY,OAAO,EAAE,KAAK;AAAA,IACtD,IAAI,QAAQ;AAAA,MACV,UAAU,YAAY,GAAK;AAAA,MAC3B,OAAO;AAAA,IACT;AAAA,EACF;AAAA,EAEA,MAAM,SAAS,YAAY,EAAE,EAAE,SAAS,WAAW;AAAA,EACnD,IAAI;AAAA,IACF,cAAc,YAAY,GAAG;AAAA,GAAY,EAAE,MAAM,KAAO,MAAM,KAAK,CAAC;AAAA,IACpE,OAAO;AAAA,IACP,OAAO,OAAO;AAAA,IACd,IAAK,MAAgC,SAAS;AAAA,MAAU,MAAM;AAAA,IAC9D,MAAM,SAAS,aAAa,YAAY,OAAO,EAAE,KAAK;AAAA,IACtD,KAAK;AAAA,MAAQ,MAAM,IAAI,MAAM,oCAAoC,YAAY;AAAA,IAC7E,UAAU,YAAY,GAAK;AAAA,IAC3B,OAAO;AAAA;AAAA;AAIJ,IAAM,qBAAqB,wBAChC,sBACA,oBACF;AAEO,IAAM,qBAAqB,wBAChC,0BACA,oBACF;AACO,IAAM,mBAAmB,wBAC9B,6BACA,oBACA,EAAE,iBAAiB,KAAK,CAC1B;AAGA,OAAO,QAAQ,IAAI;AAGZ,IAAM,gBAAgB,SAAS,QAAQ,IAAI,iBAAiB,QAAQ,EAAE;AACtE,IAAM,WAAW,QAAQ,IAAI,YAAY;AAGzC,IAAM,WAAW,qBAAqB,qBAAqB,MAAM;AACjE,IAAM,UAAU,qBAAqB,oBAAoB,MAAM;AAE/D,IAAM,cAAc,QAAQ,IAAI,mBACnC,QAAQ,QAAQ,IAAI,gBAAgB,IACpC,QAAQ,UAAU,aAAa;AAC5B,IAAM,aAAa,QAAQ,UAAU,kBAAkB;AACvD,IAAM,gBAAgB,QAAQ,UAAU,OAAO;AAG/C,IAAM,UAAU,qBAAqB,oBAAoB,KAAK;AAC9D,IAAM,eAAe,QAAQ,SAAS,UAAU;AAChD,IAAM,aAAa,QAAQ,SAAS,aAAa;AACjD,IAAM,cAAc,QAAQ,SAAS,cAAc;AACnD,IAAM,oBAAoB,QAAQ,SAAS,eAAe;AAC1D,IAAM,mBAAmB,QAAQ,SAAS,cAAc;AACxD,IAAM,uBAAuB,aAAa,QAAQ,IAAI,sBAAsB,IAAI;AAChF,IAAM,sBAAsB,aAAa,QAAQ,IAAI,qBAAqB,IAAI;AAC9E,IAAM,uBAAuB,QAAQ,SAAS,kBAAkB;AACvE,UAAU,WAAW,EAAE,WAAW,KAAK,CAAC;AACxC,UAAU,UAAU,EAAE,WAAW,KAAK,CAAC;AACvC,UAAU,SAAS,EAAE,WAAW,KAAK,CAAC;AACtC,UAAU,cAAc,EAAE,WAAW,KAAK,CAAC;AAC3C,UAAU,YAAY,EAAE,WAAW,KAAK,CAAC;AACzC,UAAU,aAAa,EAAE,WAAW,KAAK,CAAC;AAC1C,UAAU,mBAAmB,EAAE,WAAW,KAAK,CAAC;AAChD,UAAU,kBAAkB,EAAE,WAAW,KAAK,CAAC;AAC/C,UAAU,sBAAsB,EAAE,WAAW,KAAK,CAAC;AACnD,UAAU,eAAe,EAAE,WAAW,KAAK,CAAC;AAC5C,UAAU,qBAAqB,EAAE,WAAW,KAAK,CAAC;AAClD,UAAU,iBAAiB,EAAE,WAAW,KAAK,CAAC;AAC9C,UAAU,cAAc,EAAE,WAAW,KAAK,CAAC;AAC3C,UAAU,sBAAsB,EAAE,WAAW,KAAK,CAAC;AACnD,UAAU,kBAAkB,EAAE,WAAW,KAAK,CAAC;AAC/C,UAAU,uBAAuB,EAAE,WAAW,KAAK,CAAC;AAG7C,IAAM,wBAAwB,KAAK,KAAK;AAExC,IAAM,qBAAqB,QAAQ,cAAc,oBAAoB;AACrE,IAAM,gBAAgB,QAAQ,cAAc,eAAe;AA8B3D,IAAM,iBAA4B,gBACvC,kBACA,WACA,eACF;AACO,IAAM,gBAA2B,gBAAgB,iBAAiB,cAAc;AAChF,IAAM,gBAA2B,gBAAgB,iBAAiB,cAAc;AAEhF,IAAM,iBAAiB,QAAQ,gBAAgB,KAAK,QAAQ,eAAe;AAElF,SAAS,eAAe,CAAC,QAAgB,YAA2C;AAAA,EAClF,OAAO,QAAQ,MAAM,MAAM,eAAe,iBAAiB,iBAAiB;AAAA;AAGvE,IAAM,gBAAgB,gBAAgB,iBAAiB,aAAa;AACpE,IAAM,gBAAgB,gBAAgB,iBAAiB,aAAa;AAapE,IAAM,aAAa,QAAQ,YAAY;AACvC,IAAM,cAAc,QAAQ,aAAa;AACzC,IAAM,aAAa,QAAQ,YAAY,KAAK;AAC5C,IAAM,yBACX,QAAQ,wBAAwB,KAAK,QAAQ,cAAc,mCAAmC;AACzF,IAAM,gBAAgB,QAAQ,oBAAoB,KAAK;AACvD,IAAM,gBAAgB,QAAQ,eAAe,KAAK;AAClD,IAAM,gBAAgB,QAAQ,eAAe,KAAK;AAKzD,IAAM,mBAAmB,OAAO,SAAS,QAAQ,IAAI,kBAAkB,IAAI,EAAE;AACtE,IAAM,iBACX,OAAO,UAAU,gBAAgB,KAAK,mBAAmB,IAAI,mBAAmB;;;AG3V3E,SAAS,eAAe,CAAC,QAAuB;AAAA,EACrD,OAAO,OAAM,WAAW,iCAAsB,GAAG,EAAE,MAAM,GAAG,GAAG,KAAK;AAAA;AAG/D,SAAS,sBAAsB,CAAC,SAAsC;AAAA,EAC3E,OAAO,SAAS,WAAW,IAAI,KAAK;AAAA;AAG/B,SAAS,sBAAsB,CAAC,UAAkB,SAA0B;AAAA,EACjF,OAAO,YAAY,uBAAuB,OAAO,IAC7C,gBAAgB,OAAO,IACvB,gBAAgB,QAAQ;AAAA;AAGvB,SAAS,mBAAmB,CAAC,UAAkB,SAA0B;AAAA,EAC9E,OAAO,YAAY,uBAAuB,OAAO,IAAI,UAAU;AAAA;AAG1D,SAAS,mBAAmB,CAAC,MAAc,UAAkB,SAA0B;AAAA,EAC5F,OAAO,GAAG,QAAQ,uBAAuB,UAAU,OAAO;AAAA;;;AJsC5D,IAAM,cAAc,IAAI;AAExB,SAAS,OAAO,GAAgB;AAAA,EAC9B,MAAM,UAAU,YAAY,SAAS;AAAA,EACrC,KAAK;AAAA,IAAS,MAAM,IAAI,MAAM,mDAAmD;AAAA,EACjF,OAAO;AAAA;AAqBT,SAAS,SAAS,CAAC,KAAmB;AAAA,EACpC,WAAU,KAAK,EAAE,WAAW,KAAK,CAAC;AAAA;AAGpC,SAAS,OAAqC,CAC5C,KACA,MACA,UACG;AAAA,EACH,KAAK,OAAO,OAAO,QAAQ;AAAA,IAAU,OAAO;AAAA,EAC5C,WAAW,OAAO,MAAM;AAAA,IACtB,MAAM,SAAQ,IAAI;AAAA,IAClB,IAAI,WAAU,aAAa,WAAU;AAAA,MAAM,OAAO;AAAA,EACpD;AAAA,EACA,OAAO;AAAA;AAGT,SAAS,aAAa,CAAC,YAA4B;AAAA,EACjD,OAAO;AAAA;AAGT,SAAS,OAAO,CAAC,OAAuB;AAAA,EACtC,OAAO,gBAAgB,KAAK;AAAA;AAK9B,SAAS,SAAS,CAAC,MAA+C;AAAA,EAChE,MAAM,WAAW,QAAQ,MAAM,CAAC,YAAY,SAAS,KAAK,MAAM,GAAG,EAAE;AAAA,EACrE,MAAM,QAAQ,SAAS,YAAY;AAAA,EAEnC,MAAM,UAAoB,CAAC;AAAA,EAC3B,MAAM,SAA0D,CAAC;AAAA,EAEjE,SAAS,IAAI,CAAC,KAAa,OAAqB;AAAA,IAC9C,UAAU,GAAG;AAAA,IACb,IAAI;AAAA,MACF,WAAW,SAAS,YAAY,KAAK,EAAE,eAAe,KAAK,CAAC,GAAG;AAAA,QAC7D,IAAI,MAAM,YAAY,GAAG;AAAA,UACvB,MAAM,MAAM,MAAK,KAAK,MAAM,IAAI;AAAA,UAEhC,IAAI,UAAU,cAAc,UAAU,UAAU;AAAA,YAC9C,IAAI;AAAA,cACF,WAAW,KAAK,YAAY,KAAK,EAAE,eAAe,KAAK,CAAC,GAAG;AAAA,gBACzD,KAAK,EAAE,OAAO,MAAM,EAAE,KAAK,SAAS,KAAK;AAAA,kBAAG;AAAA,gBAC5C,MAAM,KAAK,MAAK,KAAK,EAAE,IAAI;AAAA,gBAC3B,IAAI;AAAA,kBACF,MAAM,OAAO,cAAa,IAAI,OAAO;AAAA,kBACrC,OAAO,KAAK;AAAA,oBACV,OAAO,WAAW,IAAI;AAAA,oBACtB,MAAM,GAAG,SAAS,MAAM,QAAQ,EAAE;AAAA,oBAClC;AAAA,kBACF,CAAC;AAAA,kBACD,MAAM;AAAA,cAGV;AAAA,cACA,MAAM;AAAA,UAGV;AAAA,QACF,EAAO,SAAI,MAAM,OAAO,KAAK,MAAM,KAAK,SAAS,KAAK,GAAG;AAAA,UACvD,MAAM,KAAK,MAAK,KAAK,MAAM,IAAI;AAAA,UAC/B,IAAI;AAAA,YACF,MAAM,OAAO,cAAa,IAAI,OAAO;AAAA,YACrC,OAAO,KAAK,EAAE,OAAO,WAAW,IAAI,GAAG,MAAM,GAAG,SAAS,MAAM,QAAQ,KAAK,CAAC;AAAA,YAC7E,MAAM;AAAA,QAGV;AAAA,MACF;AAAA,MACA,MAAM;AAAA;AAAA,EAKV,SAAS,UAAU,CAAC,MAAsB;AAAA,IACxC,MAAM,QAAQ,KAAK,YAAY;AAAA,IAC/B,IAAI,QAAQ;AAAA,IACZ,MAAM,QAAQ,MAAM,MAAM,KAAK,EAAE,OAAO,OAAO;AAAA,IAC/C,WAAW,KAAK,OAAO;AAAA,MACrB,IAAI,MAAM,SAAS,CAAC,GAAG;AAAA,QACrB,SAAS,EAAE,UAAU,IAAI,IAAI;AAAA,QAE7B,MAAM,YAAY,MAAM,MAAM;AAAA,CAAI,EAAE;AAAA,QACpC,IAAI,UAAU,WAAW,GAAG,KAAK,UAAU,SAAS,CAAC;AAAA,UAAG,SAAS;AAAA,MACnE;AAAA,IACF;AAAA,IACA,OAAO;AAAA;AAAA,EAGT,KAAK,QAAQ,EAAE,aAAa,UAAU;AAAA,EAItC,IAAI,QAAQ,EAAE,YAAY;AAAA,IAAO,KAAK,QAAQ,EAAE,WAAW,QAAQ;AAAA,EACnE,KAAK,QAAQ,EAAE,WAAW,OAAO;AAAA,EACjC,KAAK,QAAQ,EAAE,cAAc,WAAW;AAAA,EAExC,OAAO,KAAK,CAAC,GAAG,MAAM,EAAE,QAAQ,EAAE,KAAK;AAAA,EACvC,MAAM,MAAM,OAAO,MAAM,GAAG,CAAC;AAAA,EAE7B,IAAI,IAAI,WAAW,GAAG;AAAA,IACpB,QAAQ,KAAK,kCAAkC;AAAA,EACjD,EAAO;AAAA,IACL,QAAQ,KAAK,SAAS,IAAI;AAAA,CAA8B;AAAA,IACxD,aAAa,MAAM,UAAU,KAAK;AAAA,MAEhC,MAAM,YAAY,KAAK,MAAM;AAAA,CAAI,EAAE,KAAK,CAAC,MAAM,EAAE,WAAW,GAAG,CAAC;AAAA,MAChE,MAAM,QAAQ,YAAY,UAAU,QAAQ,UAAU,EAAE,IAAI,SAAS,MAAM,KAAK;AAAA,MAEhF,MAAM,OAAO,KACV,QAAQ,sBAAsB,EAAE,EAChC,QAAQ,UAAU,EAAE,EACpB,KAAK,EACL,MAAM,GAAG,GAAG;AAAA,MACf,QAAQ,KACN,MAAM;AAAA,QAAgB;AAAA;AAAA,EAAW,OAAO,KAAK,SAAS,MAAM;AAAA,kBAAqB;AAAA,CACnF;AAAA,IACF;AAAA;AAAA,EAGF,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,QAAQ,KAAK;AAAA,CAAI,EAAE,CAAC,EAAE;AAAA;AAGjE,SAAS,cAAc,CAAC,MAA+C;AAAA,EACrE,MAAM,WAAW,QACf,MACA,CAAC,SAAS,aAAa,SAAS,GAChC,QAAQ,EAAE,OACZ;AAAA,EACA,KAAK,UAAU;AAAA,IACb,OAAO;AAAA,MACL,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,wDAAwD,CAAC;AAAA,IAC3F;AAAA,EACF;AAAA,EAEA,MAAM,gBAAgB,QAAQ,EAAE,KAAK;AAAA,EACrC,IAAI,QAAQ,EAAE,WAAW,eAAe;AAAA,IACtC,IAAI;AAAA,MACF,MAAM,QAAQ,cAAc,QAAQ;AAAA,MACpC,KAAK,OAAO;AAAA,QACV,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,6BAA6B,WAAW,CAAC,EAAE;AAAA,MACtF;AAAA,MACA,MAAM,QAAQ;AAAA,QACZ,kBAAkB,cAAc,QAAQ;AAAA,QACxC;AAAA,QACA,MAAM,WAAW;AAAA,MACnB;AAAA,MACA,IAAI,MAAM,iBAAiB;AAAA,QACzB,MAAM,KAAK,IAAI,qBAAqB,IAAI,MAAM,eAAe;AAAA,MAC/D;AAAA,MACA,IAAI,MAAM,aAAa;AAAA,QACrB,MAAM,KAAK,IAAI,iBAAiB,MAAM,aAAa;AAAA,MACrD;AAAA,MACA,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,MAAM,KAAK;AAAA,CAAI,EAAE,CAAC,EAAE;AAAA,MAC7D,MAAM;AAAA,MACN,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,mCAAmC,WAAW,CAAC,EAAE;AAAA;AAAA,EAE9F;AAAA,EAEA,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,6BAA6B,WAAW,CAAC,EAAE;AAAA;AAGtF,SAAS,oBAAoB,CAAC,MAA+C;AAAA,EAC3E,MAAM,WAAW,QACf,MACA,CAAC,SAAS,aAAa,SAAS,GAChC,QAAQ,EAAE,OACZ;AAAA,EACA,MAAM,QAAQ,QAAQ,MAAM,CAAC,SAAS,SAAS,GAAG,GAAG,CAAC;AAAA,EACtD,MAAM,WAAW,KAAK,IAAI,KAAK,IAAI,GAAG,OAAO,KAAK,KAAK,CAAC,GAAG,EAAE;AAAA,EAE7D,KAAK,UAAU;AAAA,IACb,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,sBAAsB,CAAC,EAAE;AAAA,EACpE;AAAA,EAEA,MAAM,OAAO,QAAQ,cAAc,QAAQ,CAAC;AAAA,EAG5C,MAAM,aAAa,SAAQ,QAAQ,EAAE,YAAY,IAAI;AAAA,EACrD,UAAU,UAAU;AAAA,EAEpB,IAAI;AAAA,IAEF,IAAI,QAAQ,YAAY,UAAU,EAC/B,OAAO,CAAC,MAAM,EAAE,SAAS,QAAQ,CAAC,EAClC,KAAK,EACL,QAAQ;AAAA,IACX,IAAI,MAAM,WAAW,GAAG;AAAA,MAEtB,UAAU,QAAQ,EAAE,UAAU;AAAA,MAC9B,QAAQ,YAAY,QAAQ,EAAE,UAAU,EACrC,OAAO,CAAC,MAAM,EAAE,WAAW,IAAI,KAAK,EAAE,SAAS,QAAQ,CAAC,EACxD,KAAK,EACL,QAAQ;AAAA,IACb;AAAA,IACA,IAAI,MAAM,WAAW,GAAG;AAAA,MACtB,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,+BAA+B,WAAW,CAAC,EAAE;AAAA,IACxF;AAAA,IAGA,MAAM,aAAa,MAAM,GAAG,SAAS,GAAG,IACpC,MAAM,KACN,SACE,YAAY,UAAU,EAAE,SAAS,MAAM,EAAE,IAAI,aAAa,QAAQ,EAAE,YACpE,MAAM,EACR;AAAA,IAEJ,IAAI;AAAA,MACF,MAAM,MAAM,cAAa,YAAY,OAAO;AAAA,MAC5C,MAAM,QAAQ,IAAI,KAAK,EAAE,MAAM;AAAA,CAAI,EAAE,OAAO,OAAO;AAAA,MAGnD,MAAM,SAAkB,CAAC;AAAA,MACzB,IAAI,cAAc;AAAA,MAClB,IAAI,mBAAmB;AAAA,MAEvB,MAAM,WAAW,CAAC,GAAW,QAC3B,EAAE,SAAS,MAAM,GAAG,EAAE,MAAM,GAAG,GAAG;AAAA,kBAAsB;AAAA,MAE1D,MAAM,QAAQ,MAAM;AAAA,QAClB,IAAI,eAAe,kBAAkB;AAAA,UACnC,OAAM,KACJ,aAAa,SAAS,eAAe,eAAe,GAAG;AAAA;AAAA,iBAAuB,SAAS,oBAAoB,iBAAiB,IAAI,GAClI;AAAA,UACA,cAAc;AAAA,UACd,mBAAmB;AAAA,QACrB;AAAA;AAAA,MAGF,WAAW,QAAQ,OAAO;AAAA,QACxB,IAAI;AAAA,UAGF,MAAM,SAAS,KAAK,MAAM,IAAI;AAAA,UAC9B,IAAI,OAAO,SAAS,aAAa,OAAO,SAAS,QAAQ;AAAA,YACvD,MAAM;AAAA,YACN,cAAc,OAAO,QAAQ;AAAA,UAC/B,EAAO,SAAI,OAAO,SAAS,aAAa,OAAO,SAAS,aAAa;AAAA,YACnE,oBAAoB,OAAO,QAAQ;AAAA,UACrC;AAAA,UACA,MAAM;AAAA,MAGV;AAAA,MACA,MAAM;AAAA,MAEN,IAAI,OAAM,WAAW,GAAG;AAAA,QACtB,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,2CAA2C,CAAC,EAAE;AAAA,MACzF;AAAA,MAEA,MAAM,SAAS,OAAM,OAAO,QAAQ;AAAA,MACpC,OAAO;AAAA,QACL,SAAS;AAAA,UACP;AAAA,YACE,MAAM;AAAA,YACN,MAAM,WAAW,OAAO,sBAAsB,cAAc,MAAM;AAAA;AAAA,EAAU,OAAO,KAAK;AAAA;AAAA;AAAA;AAAA,CAAa;AAAA,UACvG;AAAA,QACF;AAAA,MACF;AAAA,MACA,MAAM;AAAA,MACN,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,+BAA+B,WAAW,CAAC,EAAE;AAAA;AAAA,IAExF,MAAM;AAAA,IACN,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,yBAAyB,WAAW,CAAC,EAAE;AAAA;AAAA;AAIpF,SAAS,UAAU,CAAC,MAA+C;AAAA,EACjE,MAAM,WAAW,QAAQ,MAAM,CAAC,YAAY,SAAS,GAAG,GAAG,EAAE;AAAA,EAC7D,MAAM,QAAQ,SAAS,YAAY;AAAA,EAEnC,UAAU,QAAQ,EAAE,SAAS;AAAA,EAE7B,MAAM,UAA0D,CAAC;AAAA,EAEjE,IAAI;AAAA,IACF,WAAW,SAAS,YAAY,QAAQ,EAAE,WAAW,EAAE,eAAe,KAAK,CAAC,GAAG;AAAA,MAC7E,KAAK,MAAM,YAAY;AAAA,QAAG;AAAA,MAC1B,MAAM,YAAY,SAAQ,QAAQ,EAAE,WAAW,MAAM,MAAM,UAAU;AAAA,MACrE,IAAI;AAAA,QACF,MAAM,OAAO,cAAa,WAAW,OAAO;AAAA,QAC5C,MAAM,QAAQ,KAAK,YAAY;AAAA,QAC/B,IAAI,QAAQ;AAAA,QACZ,WAAW,KAAK,MAAM,MAAM,KAAK,EAAE,OAAO,OAAO,GAAG;AAAA,UAClD,IAAI,MAAM,SAAS,CAAC;AAAA,YAAG,SAAS,EAAE,UAAU,IAAI,IAAI;AAAA,QACtD;AAAA,QACA,IAAI,QAAQ,GAAG;AAAA,UAEb,MAAM,UAAU,KAAK,MAAM,uBAAuB;AAAA,UAClD,IAAI,OAAO,MAAM;AAAA,UACjB,IAAI,OAAO;AAAA,UACX,IAAI,SAAS;AAAA,YACX,MAAM,KAAK,QAAQ;AAAA,YACnB,MAAM,SAAS,GAAG,MAAM,iBAAiB;AAAA,YACzC,MAAM,SAAS,GAAG,MAAM,wBAAwB;AAAA,YAChD,IAAI;AAAA,cAAQ,OAAO,OAAO,GAAG,KAAK;AAAA,YAClC,IAAI;AAAA,cAAQ,OAAO,OAAO,GAAG,KAAK;AAAA,UACpC;AAAA,UACA,QAAQ,KAAK,EAAE,MAAM,MAAM,UAAU,MAAM,iBAAiB,KAAK,CAAC;AAAA,QACpE;AAAA,QACA,MAAM;AAAA,IAGV;AAAA,IACA,MAAM;AAAA,EAIR,IAAI,QAAQ,WAAW,GAAG;AAAA,IACxB,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,4BAA4B,CAAC,EAAE;AAAA,EAC1E;AAAA,EAEA,MAAM,QAAQ,QAAQ,IAAI,CAAC,MAAM,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,WAAK,EAAE,SAAS,IAAI;AAAA,EAC5F,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,MAAM,KAAK;AAAA,CAAI,EAAE,CAAC,EAAE;AAAA;AAG/D,SAAS,SAAS,CAAC,MAA+C;AAAA,EAChE,MAAM,OAAO,QAAQ,MAAM,CAAC,QAAQ,YAAY,GAAG,EAAE;AAAA,EACrD,MAAM,UAAkB,QAAQ,MAAM,CAAC,WAAW,QAAQ,MAAM,GAAG,EAAE;AAAA,EAErE,KAAK;AAAA,IAAM,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,sBAAsB,CAAC,EAAE;AAAA,EAC7E,KAAK;AAAA,IAAS,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,yBAAyB,CAAC,EAAE;AAAA,EAEnF,SAAS,cAAc,CAAC,IAAsB;AAAA,IAG5C,MAAM,IAAI,GAAG,MAAM,8CAA8C;AAAA,IACjE,KAAK;AAAA,MAAG,OAAO,CAAC;AAAA,IAChB,OAAO,EAAE,GAAG,MAAM;AAAA,CAAI,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,CAAC;AAAA;AAAA,EAGhE,SAAS,YAAY,CAAC,QAAgB,OAAyB;AAAA,IAC7D,MAAM,WAAW,IAAI,IAAI,eAAe,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAAA,IAC3E,MAAM,QAAQ,MAAM,OAAO,CAAC,OAAO,SAAS,IAAI,EAAE,YAAY,CAAC,CAAC;AAAA,IAChE,IAAI,MAAM,WAAW;AAAA,MAAG,OAAO;AAAA,IAC/B,MAAM,eAAe,OAAO,MAAM,8CAA8C;AAAA,IAChF,IAAI,cAAc;AAAA,MAChB,MAAM,QAAQ,aAAa;AAAA,MAC3B,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,EAAM,MAAM,KAAK;AAAA,CAAI;AAAA,MACrD,OAAO,OAAO,QAAQ,OAAO,MAAM;AAAA,IACrC;AAAA,IACA,OAAO,GAAG,OAAO,QAAQ;AAAA;AAAA;AAAA,EAAoB,MAAM,KAAK;AAAA,CAAI;AAAA;AAAA;AAAA,EAG9D,MAAM,WAAW,SAAQ,QAAQ,EAAE,WAAW,IAAI;AAAA,EAClD,UAAU,QAAQ;AAAA,EAClB,MAAM,YAAY,SAAQ,UAAU,UAAU;AAAA,EAE9C,IAAI,eAAe;AAAA,EACnB,IAAI;AAAA,IACF,MAAM,WAAW,cAAa,WAAW,OAAO;AAAA,IAChD,eAAe,aAAa,SAAS,eAAe,QAAQ,CAAC;AAAA,IAC7D,MAAM;AAAA,EAIR,eAAc,WAAW,cAAc,OAAO;AAAA,EAE9C,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,UAAU,yBAAyB,gBAAgB,CAAC,EAAE;AAAA;AAGjG,SAAS,aAAa,CAAC,MAA+C;AAAA,EACpE,MAAM,WAAW,QAAQ,MAAM,CAAC,SAAS,WAAW,GAAG,EAAE;AAAA,EACzD,MAAM,UAAkB,QAAQ,MAAM,CAAC,WAAW,QAAQ,MAAM,GAAG,EAAE;AAAA,EAErE,KAAK;AAAA,IAAU,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,iBAAiB,CAAC,EAAE;AAAA,EAC5E,KAAK;AAAA,IAAS,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,mBAAmB,CAAC,EAAE;AAAA,EAE7E,MAAM,MAAM,IAAI;AAAA,EAChB,MAAM,UAAU,IAAI,YAAY,EAAE,MAAM,GAAG,EAAE;AAAA,EAC7C,MAAM,cAAc,oBAAoB,SAAS,UAAU,QAAQ,EAAE,OAAO;AAAA,EAC5E,MAAM,aAAa,oBAAoB,UAAU,QAAQ,EAAE,OAAO;AAAA,EAClE,MAAM,OAAO,QAAQ,UAAU;AAAA,EAG/B,UAAU,QAAQ,EAAE,YAAY;AAAA,EAChC,MAAM,cAAc,SAAQ,QAAQ,EAAE,cAAc,WAAW;AAAA,EAC/D,eAAc,aAAa,SAAS,OAAO;AAAA,EAG3C,MAAM,gBAAgB,QAAQ,EAAE,KAAK;AAAA,EACrC,IAAI,QAAQ,EAAE,WAAW,eAAe;AAAA,IACtC,IAAI;AAAA,MAEF,MAAM,YAAY,QAAQ,QAAQ;AAAA;AAAA,CAAM;AAAA,MACxC,MAAM,iBACJ,YAAY,IACP,QAAQ,MAAM,SAAS,EAAE,KAAK,EAAE,MAAM;AAAA;AAAA,CAAM,EAAE,IAAI,MAAM,GAAG,GAAG,KAAK,KACpE,QAAQ,MAAM,GAAG,GAAG;AAAA,MAC1B,cAAc,YAAY;AAAA,QACxB,iBAAiB;AAAA,QACjB,aAAa;AAAA,QACb,SAAS;AAAA,MACX,CAAC;AAAA,MACD,MAAM;AAAA,EAGV;AAAA,EAGA,UAAU,QAAQ,EAAE,SAAS;AAAA,EAC7B,MAAM,YAAY,SAAQ,QAAQ,EAAE,WAAW,GAAG,SAAS;AAAA,EAC3D,IAAI;AAAA,IACF,eAAc,WAAW,SAAS,OAAO;AAAA,IACzC,MAAM;AAAA,EAIR,OAAO;AAAA,IACL,SAAS;AAAA,MACP;AAAA,QACE,MAAM;AAAA,QACN,MACE,4BAA4B,iBAC3B,QAAQ,EAAE,UAAU;AAAA,8BAAiC;AAAA,MAC1D;AAAA,IACF;AAAA,EACF;AAAA;AAGF,SAAS,WAAW,CAAC,MAA+C;AAAA,EAClE,MAAM,OAAO,QAAQ,MAAM,CAAC,QAAQ,IAAI,GAAG,EAAE;AAAA,EAC7C,MAAM,OAAO,QAAQ,MAAM,CAAC,eAAe,QAAQ,MAAM,GAAG,EAAE;AAAA,EAC9D,MAAM,OAAe,QAAQ,MAAM,CAAC,QAAQ,MAAM,GAAG,SAAS;AAAA,EAC9D,MAAM,UAAU,QAA4B,MAAM,CAAC,WAAW,UAAU,GAAG,SAAS;AAAA,EACpF,MAAM,OAAO,QAA4B,MAAM,CAAC,QAAQ,SAAS,GAAG,SAAS;AAAA,EAE7E,KAAK;AAAA,IAAM,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,gBAAgB,CAAC,EAAE;AAAA,EAEvE,MAAM,QAAQ,IAAI,KAAK,EAAE,YAAY,EAAE,MAAM,GAAG,EAAE;AAAA,EAClD,MAAM,UAAU,QAAQ;AAAA,EAExB,MAAM,aAAa,MAAM;AAAA,IACvB,IAAI,SAAS;AAAA,MAAS,OAAO,SAAQ,QAAQ,EAAE,SAAS,gBAAgB;AAAA,IACxE,IAAI,SAAS;AAAA,MAAS,OAAO,SAAQ,QAAQ,EAAE,SAAS,gBAAgB;AAAA,IACxE,OAAO,SAAQ,QAAQ,EAAE,SAAS,kBAAkB;AAAA,KACnD;AAAA,EAEH,UAAU,SAAQ,SAAS,CAAC;AAAA,EAE5B,IAAI;AAAA,EACJ,IAAI;AAAA,IACF,QAAQ,cAAa,WAAW,OAAO;AAAA,IACvC,MAAM;AAAA,IACN,QAAQ;AAAA;AAAA,EAGV,MAAM,QAAQ,MAAM,MAAM;AAAA,CAAI;AAAA,EAC9B,MAAM,QAAQ,MAAM;AAAA,IAClB,QAAQ;AAAA,WACD;AAAA,QACH,OAAO,iBAAiB,UAAU,SAAS;AAAA,WACxC;AAAA,QACH,OAAO,aAAa,UAAU,SAAS;AAAA,WACpC;AAAA,QACH,OAAO,cAAc,UAAU,SAAS;AAAA;AAAA,QAExC,OAAO,gBAAgB,UAAU,SAAS;AAAA;AAAA,KAE7C;AAAA,EAGH,MAAM,cAAc,KAAK;AAAA,EACzB,IAAI,WAAW;AAAA,EACf,SAAS,IAAI,EAAG,IAAI,MAAM,QAAQ,KAAK;AAAA,IACrC,IAAI,MAAM,GAAG,SAAS,WAAW,GAAG;AAAA,MAClC,MAAM,KAAK;AAAA,MACX,WAAW;AAAA,MACX;AAAA,IACF;AAAA,EACF;AAAA,EAEA,KAAK,UAAU;AAAA,IAEb,IAAI,SAAS;AAAA,MACX,IAAI,aAAa;AAAA,MACjB,SAAS,IAAI,EAAG,IAAI,MAAM,QAAQ,KAAK;AAAA,QACrC,IAAI,MAAM,GAAG,WAAW,KAAK,KAAK,MAAM,GAAG,SAAS,OAAO,GAAG;AAAA,UAC5D,aAAa;AAAA,UACb;AAAA,QACF;AAAA,MACF;AAAA,MACA,IAAI,cAAc,GAAG;AAAA,QAEnB,IAAI,WAAW,aAAa;AAAA,QAC5B,OACE,WAAW,MAAM,UACjB,MAAM,UAAU,KAAK,MAAM,OAC1B,MAAM,UAAU,WAAW,KAAK,GACjC;AAAA,UACA;AAAA,QACF;AAAA,QACA,MAAM,OAAO,UAAU,GAAG,IAAI;AAAA,MAChC,EAAO;AAAA,QACL,MAAM,KAAK;AAAA,KAAQ,WAAW,IAAI;AAAA;AAAA,IAEtC,EAAO;AAAA,MACL,MAAM,KAAK,IAAI;AAAA;AAAA,EAEnB;AAAA,EAEA,eAAc,WAAW,MAAM,KAAK;AAAA,CAAI,GAAG,OAAO;AAAA,EAElD,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,kBAAkB,OAAO,CAAC,EAAE;AAAA;AAKvE,IAAM,aAAqB;AAAA,EACzB;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,IACb,aAAa;AAAA,MACX,MAAM;AAAA,MACN,YAAY;AAAA,QACV,UAAU,EAAE,MAAM,UAAU,aAAa,sCAAsC;AAAA,QAC/E,OAAO,EAAE,MAAM,UAAU,aAAa,2CAA2C;AAAA,MACnF;AAAA,MACA,UAAU,CAAC,UAAU;AAAA,IACvB;AAAA,EACF;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,IACb,aAAa;AAAA,MACX,MAAM;AAAA,MACN,YAAY;AAAA,QACV,OAAO,EAAE,MAAM,UAAU,aAAa,iDAAiD;AAAA,MACzF;AAAA,MACA,UAAU,CAAC,OAAO;AAAA,IACpB;AAAA,EACF;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,IACb,aAAa;AAAA,MACX,MAAM;AAAA,MACN,YAAY;AAAA,QACV,OAAO,EAAE,MAAM,UAAU,aAAa,qCAAqC;AAAA,QAC3E,OAAO;AAAA,UACL,MAAM;AAAA,UACN,aAAa;AAAA,UACb,SAAS;AAAA,UACT,SAAS;AAAA,QACX;AAAA,MACF;AAAA,MACA,UAAU,CAAC,OAAO;AAAA,IACpB;AAAA,EACF;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,IACb,aAAa;AAAA,MACX,MAAM;AAAA,MACN,YAAY;AAAA,QACV,OAAO,EAAE,MAAM,UAAU,aAAa,4BAA4B;AAAA,QAClE,SAAS,EAAE,MAAM,UAAU,aAAa,8BAA8B;AAAA,MACxE;AAAA,MACA,UAAU,CAAC,SAAS,SAAS;AAAA,IAC/B;AAAA,EACF;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,IACb,aAAa;AAAA,MACX,MAAM;AAAA,MACN,YAAY;AAAA,QACV,MAAM,EAAE,MAAM,UAAU,aAAa,qCAAqC;AAAA,QAC1E,aAAa,EAAE,MAAM,UAAU,aAAa,4CAA4C;AAAA,QACxF,MAAM;AAAA,UACJ,MAAM;AAAA,UACN,MAAM,CAAC,WAAW,WAAW,SAAS,OAAO;AAAA,UAC7C,aAAa;AAAA,QACf;AAAA,QACA,SAAS,EAAE,MAAM,UAAU,aAAa,uCAAuC;AAAA,QAC/E,MAAM,EAAE,MAAM,UAAU,aAAa,kDAAkD;AAAA,MACzF;AAAA,MACA,UAAU,CAAC,QAAQ,eAAe,MAAM;AAAA,IAC1C;AAAA,EACF;AACF;AAEA,IAAM,cAAsB;AAAA,EAC1B;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,IACb,aAAa;AAAA,MACX,MAAM;AAAA,MACN,YAAY;AAAA,QACV,UAAU;AAAA,UACR,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,MACF;AAAA,MACA,UAAU,CAAC,UAAU;AAAA,IACvB;AAAA,EACF;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,IACb,aAAa;AAAA,MACX,MAAM;AAAA,MACN,YAAY;AAAA,QACV,MAAM,EAAE,MAAM,UAAU,aAAa,kCAAkC;AAAA,QACvE,SAAS;AAAA,UACP,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,MACF;AAAA,MACA,UAAU,CAAC,QAAQ,SAAS;AAAA,IAC9B;AAAA,EACF;AACF;AAIO,SAAS,mBAAmB,CAAC,SAAyB,MAA2B;AAAA,EACtF,MAAM,UAAU,QAAQ,WAAW;AAAA,EACnC,MAAM,UAAU,SAAQ,KAAK,QAAQ;AAAA,EACrC,MAAM,UAAuB;AAAA,IAC3B,QAAQ,QAAQ;AAAA,IAChB,SAAS,QAAQ;AAAA,IACjB;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW,SAAQ,SAAS,QAAQ;AAAA,IACpC,WAAW,SAAQ,SAAS,OAAO;AAAA,IACnC,cAAc,SAAQ,SAAS,WAAW;AAAA,IAC1C,aAAa,SAAQ,SAAS,UAAU;AAAA,IACxC,YAAY,SAAQ,SAAS,SAAS;AAAA,EACxC;AAAA,EACA,MAAM,QACJ,YAAY,SACR,aACA,YAAY,WACV,cACA,CAAC,GAAG,YAAY,GAAG,WAAW;AAAA,EACtC,WAAW,aAAa;AAAA,IACtB,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,QAAQ;AAAA,EACV,GAAG;AAAA,IACD,UAAU,SAAS;AAAA,EACrB;AAAA,EAEA,MAAM,SAAS,IAAI,OACjB,EAAE,MAAM,eAAe,SAAS,QAAQ,GACxC,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,EAAE,CAChC;AAAA,EACA,OAAO,kBACL,wBACA,aAAuC;AAAA,IACrC;AAAA,EACF,EACF;AAAA,EACA,OAAO,kBAAkB,uBAAuB,OAAO,YAAqC;AAAA,IAC1F,OAAO,YAAY,IAAI,SAAS,MAAM;AAAA,MACpC,QAAQ,MAAM,WAAW,SAAS,QAAQ;AAAA,MAC1C,MAAM,WAA2E;AAAA,QAC/E,YAAY;AAAA,QACZ,kBAAkB;AAAA,QAClB,wBAAwB;AAAA,QACxB,aAAa;AAAA,QACb,YAAY;AAAA,QACZ,iBAAiB;AAAA,QACjB,cAAc;AAAA,MAChB;AAAA,MACA,MAAM,UAAU,MAAM,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,SAAS,QAAQ;AAAA,MAC5E,OAAO,UACH,QAAS,QAAQ,CAAC,CAA6B,IAC/C,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,iBAAiB,OAAO,CAAC,EAAE;AAAA,KAClE;AAAA,GACF;AAAA,EACD,OAAO;AAAA;AAoBT,IAAI,OAAkB,CAKtB;;AKnxBA;AACA;AAyCO,SAAS,0BAA0B,CACxC,SACA,MACA,UAAiC,CAAC,GACvB;AAAA,EACX,MAAM,SAAS,IAAI,UAAU,EAAE,MAAM,gBAAgB,SAAS,QAAQ,CAAC;AAAA,EACvE,MAAM,WAAW,QAAQ,oBAAoB,KAAK,IAAI,KAAK;AAAA,EAC3D,MAAM,WAAW,QAAQ,oBAAoB,KAAK,IAAI,KAAK;AAAA,EAE3D,OAAO,KACL,iBACA,qFACA,CAAC,GACD,YAAY,KAAK,aAAa,OAAO,CACvC;AAAA,EACA,OAAO,KACL,iBACA,mEAAmE,uBAAuB,aAC1F;AAAA,IACE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,SAAS;AAAA,EACnD,GACA,SAAS,cAAc,KAAK,aAAa,SAAS,OAAO,CAC3D;AAAA,EACA,OAAO,KAAK,kBAAkB,4CAA4C,CAAC,GAAG,YAC5E,KAAK,aAAa,OAAO,CAC3B;AAAA,EACA,IAAI,KAAK,mBAAmB;AAAA,IAC1B,OAAO,KACL,uBACA,6EACA,CAAC,GACD,YAAY,KAAK,kBAAmB,OAAO,CAC7C;AAAA,EACF;AAAA,EACA,IAAI,KAAK,mBAAmB;AAAA,IAC1B,OAAO,KACL,uBACA,gFACA,EAAE,SAAS,EAAE,OAAO,EAAE,GACtB,SAAS,cAAc,KAAK,kBAAmB,SAAS,OAAO,CACjE;AAAA,EACF;AAAA,EACA,OAAO,KACL,gBACA,2EACA,CAAC,GACD,YAAY,KAAK,YAAY,OAAO,CACtC;AAAA,EACA,OAAO,KACL,mBACA,+DACA,EAAE,aAAa,EAAE,OAAO,EAAE,GAC1B,SAAS,kBAAkB,KAAK,eAAe,SAAS,WAAW,CACrE;AAAA,EAEA,KAAK,QAAQ,WAAW;AAAA,IACtB,OAAO,KACL,eACA,2EACA,EAAE,IAAI,EAAE,OAAO,GAAG,SAAS,EAAE,OAAO,EAAE,GACtC,OAAO,UAAU,KAAK,WAAW,SAAS,KAAK,CACjD;AAAA,IACA,OAAO,KACL,iBACA,8CACA,EAAE,IAAI,EAAE,OAAO,EAAE,GACjB,SAAS,SAAS,KAAK,aAAa,SAAS,EAAE,CACjD;AAAA,IACA,OAAO,KACL,gBACA,8DACA,EAAE,IAAI,EAAE,OAAO,GAAG,SAAS,EAAE,OAAO,EAAE,GACtC,OAAO,UAAU,KAAK,YAAY,SAAS,KAAK,CAClD;AAAA,EACF;AAAA,EAEA,OAAO;AAAA;;AC5GF,SAAS,eAAe,CAAC,QAA8C;AAAA,EAC5E,OAAO,IAAI,iCAAiC;AAAA,EAC5C,MAAM,cAAc,OAAO,QAAQ;AAAA,EACnC,MAAM,eAAe,OAAO,QAAQ;AAAA,EACpC,IAAI,SAAS;AAAA,EACb,OAAO,QAAQ,MAAM,IAAI,SAAoB,OAAO,QAAQ,MAAM,GAAG,IAAI;AAAA,EACzE,OAAO,QAAQ,OAAO,IAAI,SAAoB,OAAO,QAAQ,MAAM,GAAG,IAAI;AAAA,EAC1E,OAAO,MAAM;AAAA,IACX,KAAK;AAAA,MAAQ;AAAA,IACb,SAAS;AAAA,IACT,OAAO,QAAQ,MAAM;AAAA,IACrB,OAAO,QAAQ,OAAO;AAAA;AAAA;;ACrB1B;AACA;AACA;AACA,sBAAS;;;ACEF,SAAS,MAAM,CAAC,GAAY,UAA2B;AAAA,EAC5D,IAAI,aAAa;AAAA,IAAO,OAAO,EAAE;AAAA,EACjC,OAAO,YAAY,OAAO,CAAC;AAAA;;;ACJ7B,iCAAS;AAMF,SAAS,KAAK,CAAC,MAA2B;AAAA,EAC/C,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,KAAK,CAAC,EAAE;AAAA;AAGtC,SAAS,QAAQ,CAAC,MAAgC;AAAA,EACvD,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,KAAK,CAAC,GAAG,SAAS,KAAK;AAAA;;;AFP5D,IAAM,gBAAgB,UAAU,QAAQ;AAkBxC,SAAS,QAAQ,CAAC,OAAuB;AAAA,EACvC,MAAM,KAAK,QAAQ,QAAQ;AAAA,EAC3B,OAAO,MAAM,IAAI,GAAG,GAAG,QAAQ,CAAC,QAAQ,IAAI,QAAQ,QAAQ,GAAG,QAAQ,CAAC;AAAA;AAG1E,eAAe,KAAK,CAAC,SAAiB,MAAiC;AAAA,EACrE,QAAQ,WAAW,MAAM,cAAc,SAAS,MAAM,EAAE,SAAS,KAAM,CAAC;AAAA,EACxE,OAAO,OAAO,KAAK;AAAA;AAGrB,eAAe,iBAAiB,GAAoB;AAAA,EAClD,IAAI;AAAA,IACF,MAAM,QAAQ,MAAM,MAAM,UAAU,CAAC,MAAM,qCAAqC,CAAC;AAAA,IACjF,OAAO,UAAU,MAAM,aAAa,UAAU,MAAM,YAAY;AAAA,IAChE,MAAM;AAAA,IACN,OAAO;AAAA;AAAA;AAIX,eAAe,YAAY,GAAoB;AAAA,EAC7C,IAAI;AAAA,IACF,MAAM,SAAS,MAAM,MAAM,UAAU,CAAC,cAAc,CAAC;AAAA,IACrD,MAAM,QAAQ,OAAO,MACnB,2EACF;AAAA,IACA,OAAO,QAAQ,QAAQ,MAAM,cAAc,MAAM,qBAAU,MAAM,OAAO;AAAA,IACxE,OAAO,OAAO;AAAA,IACd,OAAO,OAAO,KAAK;AAAA;AAAA;AAIvB,eAAe,UAAU,GAAoB;AAAA,EAC3C,IAAI;AAAA,IACF,MAAM,SAAS,MAAM,MAAM,SAAS,CAAC,MAAM,OAAO,CAAC;AAAA,IACnD,MAAM,WAAW,OAAO,MAAM,iCAAiC,IAAI;AAAA,IACnE,MAAM,eAAe,OAAO,MAAM,gCAAgC,IAAI;AAAA,IACtE,MAAM,eAAe,OAAO,MAAM,kCAAkC,IAAI;AAAA,IACxE,MAAM,QAAkB,CAAC;AAAA,IACzB,IAAI,iBAAiB;AAAA,MAAW,MAAM,KAAK,SAAS,cAAc;AAAA,IAClE,IAAI,aAAa;AAAA,MAAW,MAAM,KAAK,uBAAuB,WAAW;AAAA,IACzE,IAAI,iBAAiB;AAAA,MAAW,MAAM,KAAK,kBAAkB,cAAc;AAAA,IAC3E,OAAO,MAAM,SAAS,IAAI,MAAM,KAAK,IAAI,IAAI;AAAA,IAC7C,OAAO,OAAO;AAAA,IACd,OAAO,OAAO,KAAK;AAAA;AAAA;AAIvB,eAAe,eAAe,GAAoB;AAAA,EAChD,IAAI;AAAA,IACF,MAAM,SAAS,MAAM,MAAM,MAAM,CAAC,MAAM,MAAM,MAAM,CAAC;AAAA,IACrD,OAAO,OAAO,MAAM;AAAA,CAAI,EAAE,OAAO,OAAO,EAAE;AAAA,IAC1C,MAAM;AAAA,IACN,OAAO;AAAA;AAAA;AAIX,eAAe,OAAO,GAAoB;AAAA,EACxC,IAAI;AAAA,IACF,MAAM,SAAS,MAAM,MAAM,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC;AAAA,IAClD,MAAM,QAAQ,OAAO,MAAM;AAAA,CAAI,EAAE,IAAI,MAAM,KAAK;AAAA,IAChD,KAAK,SAAS,MAAM,SAAS;AAAA,MAAG,OAAO;AAAA,IACvC,MAAM,QAAQ,OAAO,MAAM,EAAE,IAAI;AAAA,IACjC,MAAM,OAAO,OAAO,MAAM,EAAE,IAAI;AAAA,IAChC,MAAM,YAAY,OAAO,MAAM,EAAE,IAAI;AAAA,IACrC,OAAO,GAAG,SAAS,IAAI,OAAO,SAAS,KAAK,OAAQ,OAAO,QAAS,KAAK,QAAQ,CAAC,sBAAW,SAAS,SAAS;AAAA,IAC/G,OAAO,OAAO;AAAA,IACd,OAAO,OAAO,KAAK;AAAA;AAAA;AAIhB,IAAM,6BAAkD;AAAA,OACvD,iBAAgB,GAAG;AAAA,IACvB,OAAO,gBAAgB,MAAM,SAAS,MAAM,gBAAgB,MAAM,QAAQ,IAAI;AAAA,MAC5E,kBAAkB;AAAA,MAClB,aAAa;AAAA,MACb,WAAW;AAAA,MACX,QAAQ;AAAA,MACR,gBAAgB;AAAA,IAClB,CAAC;AAAA,IACD,MAAM,OAAO,QAAQ;AAAA,IACrB,OAAO;AAAA,MACL,SAAS,CAAC,KAAK,MAAM,GAAG,KAAK,MAAM,GAAG,KAAK,MAAM,CAAC;AAAA,MAClD,UAAU,KAAK,EAAE;AAAA,MACjB,aAAa,SAAS;AAAA,MACtB,YAAY,QAAQ;AAAA,MACpB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA;AAEJ;AAEO,SAAS,2BAA2B,CACzC,OAA4B,4BACjB;AAAA,EACX,MAAM,SAAS,IAAI,WAAU,EAAE,MAAM,iBAAiB,SAAS,QAAQ,CAAC;AAAA,EACxE,OAAO,KACL,qBACA;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,EAAE,KAAK;AAAA,CAAI,GACX,CAAC,GACD,YAAY;AAAA,IACV,MAAM,WAAW,MAAM,KAAK,iBAAiB;AAAA,IAC7C,MAAM,OAAO,SAAS,cAAc,SAAS;AAAA,IAC7C,MAAM,iBAAkB,OAAO,SAAS,cAAe,KAAK,QAAQ,CAAC;AAAA,IACrE,OAAO,OAAO,OAAO,UAAU,SAAS;AAAA,IACxC,OAAO,MACL;AAAA,MACE;AAAA,MACA;AAAA,MACA,0BAAe,MAAM,QAAQ,CAAC,OAAO,MAAM,QAAQ,CAAC,OAAO,OAAO,QAAQ,CAAC,kCAAmB,SAAS;AAAA,MACvG,8BAAc,SAAS,IAAI,OAAO,SAAS,SAAS,WAAW,MAAM,kCAAwB,SAAS,SAAS,UAAU;AAAA,MACzH,sCAAY,SAAS;AAAA,MACrB,0BAAe,SAAS;AAAA,MACxB,8BAAc,SAAS;AAAA,MACvB,8BAAc,SAAS;AAAA,MACvB,sCAAY,SAAS,eAAe,IAAI,GAAG,SAAS,uBAAkB;AAAA,IACxE,EAAE,KAAK;AAAA,CAAI,CACb;AAAA,GAEJ;AAAA,EACA,OAAO;AAAA;;AG3JT,sBAAS;AACT,cAAS;;;ACDT,uBAAS,0BAAY,4BAAW,sDAAoC;AACpE,oBAAS,kBAAS;;;ACgBX,SAAS,gBAAgB,CAAC,MAAsB;AAAA,EACrD,MAAM,OAAO,KAAK,QAAQ,oBAAoB,GAAG,KAAK;AAAA,EACtD,IAAI,SAAS,OAAO,SAAS;AAAA,IAAM,OAAO;AAAA,EAC1C,OAAO;AAAA;;;ADhBT;AAaO,IAAM,qBAAqB,CAAC,WAAW,eAAe,WAAW;AAOxE,SAAS,mBAAmB,CAAC,QAAiC;AAAA,EAC5D,MAAM,MAAM,OAAO,MAAM;AAAA,EACzB,KAAK,OAAO,aAAa,KAAK,GAAG,GAAG;AAAA,IAClC,MAAM,IAAI,MAAM,iDAAiD,KAAK;AAAA,EACxE;AAAA,EACA,OAAO;AAAA;AAGT,SAAS,gBAAgB,CAAC,UAA0B;AAAA,EAClD,MAAM,OAAO,iBAAiB,QAAQ;AAAA,EACtC,KAAK,QAAQ,SAAS,OAAO,SAAS,MAAM;AAAA,IAC1C,MAAM,IAAI,MAAM,qCAAqC,UAAU;AAAA,EACjE;AAAA,EACA,OAAO;AAAA;AAGF,SAAS,YAAY,CAAC,MAAqD;AAAA,EAChF,OAAO,KAAK,SAAS,KAAK,KAAK,KAAK,WAAW;AAAA;AAG1C,SAAS,eAAe,CAAC,QAAyB,UAA0B;AAAA,EACjF,OAAO,MACL,sBAAsB,GACtB,SACA,oBAAoB,MAAM,GAC1B,GAAG,iBAAiB,QAAQ,QAC9B;AAAA;AAGK,SAAS,SAAS,CAAC,QAAyB,UAAgC;AAAA,EACjF,MAAM,OAAO,gBAAgB,QAAQ,QAAQ;AAAA,EAC7C,KAAK,YAAW,IAAI;AAAA,IAAG,OAAO,CAAC;AAAA,EAC/B,IAAI;AAAA,IACF,MAAM,SAAS,KAAK,MAAM,cAAa,MAAM,OAAO,CAAC;AAAA,IACrD,OAAO,MAAM,QAAQ,QAAQ,KAAK,IAAI,OAAO,QAAQ,CAAC;AAAA,IACtD,OAAO,GAAG;AAAA,IACV,OAAO,KAAK,EAAE,KAAK,GAAG,KAAK,GAAG,kCAAkC;AAAA,IAChE,OAAO,CAAC;AAAA;AAAA;AAIL,SAAS,UAAU,CAAC,QAAyB,UAAkB,OAA2B;AAAA,EAC/F,MAAM,OAAO,gBAAgB,QAAQ,QAAQ;AAAA,EAC7C,WAAU,SAAQ,IAAI,GAAG,EAAE,WAAW,KAAK,CAAC;AAAA,EAC5C,MAAM,UAAyB,EAAE,SAAS,GAAG,MAAM;AAAA,EACnD,MAAM,MAAM,GAAG,QAAQ,QAAQ;AAAA,EAC/B,eAAc,KAAK,KAAK,UAAU,SAAS,MAAM,CAAC,GAAG,OAAO;AAAA,EAC5D,WAAW,KAAK,IAAI;AAAA;AA2BtB,SAAS,UAAU,CAAC,OAA6B;AAAA,EAC/C,IAAI,MAAM;AAAA,EACV,WAAW,QAAQ,OAAO;AAAA,IACxB,MAAM,IAAI,OAAO,KAAK,EAAE;AAAA,IACxB,IAAI,OAAO,UAAU,CAAC,KAAK,IAAI;AAAA,MAAK,MAAM;AAAA,EAC5C;AAAA,EACA,OAAO,MAAM;AAAA;AAGR,SAAS,WAAW,CACzB,OACA,QACgD;AAAA,EAChD,MAAM,MAAM,CAAC,GAAG,KAAK;AAAA,EACrB,MAAM,UAAwB,CAAC;AAAA,EAC/B,IAAI,KAAK,WAAW,GAAG;AAAA,EACvB,WAAW,SAAS,QAAQ;AAAA,IAC1B,MAAM,OAAmB;AAAA,MACvB,IAAI,OAAO,IAAI;AAAA,MACf,SAAS,MAAM;AAAA,MACf,QAAQ;AAAA,SACJ,MAAM,aAAa,MAAM,UAAU,SAAS,IAAI,EAAE,WAAW,MAAM,UAAU,IAAI,CAAC;AAAA,SAClF,MAAM,aAAa,EAAE,YAAY,MAAM,WAAW,IAAI,CAAC;AAAA,SACvD,MAAM,QAAQ,EAAE,OAAO,MAAM,MAAM,IAAI,CAAC;AAAA,IAC9C;AAAA,IACA,IAAI,KAAK,IAAI;AAAA,IACb,QAAQ,KAAK,IAAI;AAAA,EACnB;AAAA,EACA,OAAO,EAAE,OAAO,KAAK,QAAQ;AAAA;AAGxB,SAAS,WAAW,CACzB,OACA,SAC4C;AAAA,EAC5C,MAAM,MAAM,MAAM,IAAI,CAAC,UAAU,KAAK,KAAK,EAAE;AAAA,EAC7C,MAAM,OAAO,IAAI,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC;AAAA,EACvD,MAAM,UAAoB,CAAC;AAAA,EAC3B,WAAW,UAAU,SAAS;AAAA,IAC5B,MAAM,OAAO,KAAK,IAAI,OAAO,EAAE;AAAA,IAC/B,KAAK,MAAM;AAAA,MACT,QAAQ,KAAK,OAAO,EAAE;AAAA,MACtB;AAAA,IACF;AAAA,IACA,IAAI,OAAO,WAAW;AAAA,MAAW,KAAK,SAAS,OAAO;AAAA,IACtD,IAAI,OAAO,YAAY;AAAA,MAAW,KAAK,UAAU,OAAO;AAAA,IACxD,IAAI,OAAO,eAAe,WAAW;AAAA,MACnC,IAAI,OAAO;AAAA,QAAY,KAAK,aAAa,OAAO;AAAA,MAC3C;AAAA,eAAO,KAAK;AAAA,IACnB;AAAA,IACA,IAAI,OAAO,UAAU,WAAW;AAAA,MAC9B,IAAI,OAAO;AAAA,QAAO,KAAK,QAAQ,OAAO;AAAA,MACjC;AAAA,eAAO,KAAK;AAAA,IACnB;AAAA,IACA,IAAI,OAAO,cAAc,WAAW;AAAA,MAClC,IAAI,OAAO,UAAU,SAAS;AAAA,QAAG,KAAK,YAAY,OAAO;AAAA,MACpD;AAAA,eAAO,KAAK;AAAA,IACnB;AAAA,EACF;AAAA,EACA,OAAO,EAAE,OAAO,KAAK,QAAQ;AAAA;AAGxB,SAAS,WAAW,CACzB,OACA,MAC0C;AAAA,EAC1C,IAAI,KAAK;AAAA,IAAK,OAAO,EAAE,OAAO,CAAC,GAAG,SAAS,MAAM,OAAO;AAAA,EACxD,MAAM,MAAM,IAAI,IAAI,KAAK,OAAO,CAAC,CAAC;AAAA,EAClC,MAAM,OAAO,MAAM,OAAO,CAAC,UAAU,IAAI,IAAI,KAAK,EAAE,CAAC;AAAA,EACrD,OAAO,EAAE,OAAO,MAAM,SAAS,MAAM,SAAS,KAAK,OAAO;AAAA;AAGrD,SAAS,cAAc,CAAC,OAA6B;AAAA,EAC1D,IAAI,MAAM,WAAW;AAAA,IAAG,OAAO;AAAA,EAC/B,MAAM,OAAO,EAAE,SAAS,OAAO,aAAa,QAAQ,WAAW,MAAM;AAAA,EACrE,MAAM,QAAQ,MAAM,IAAI,CAAC,SAAS;AAAA,IAChC,MAAM,OACJ,KAAK,aAAa,KAAK,UAAU,SAAS,IACtC,iBAAiB,KAAK,UAAU,KAAK,KAAK,OAC1C;AAAA,IACN,MAAM,QAAQ,KAAK,QAAQ,KAAK,KAAK,UAAU;AAAA,IAC/C,OAAO,GAAG,KAAK,KAAK,YAAY,KAAK,MAAM,KAAK,UAAU,OAAO;AAAA,GAClE;AAAA,EACD,MAAM,OAAO,MAAM,OAAO,CAAC,SAAS,KAAK,WAAW,WAAW,EAAE;AAAA,EACjE,OAAO,CAAC,UAAU,QAAQ,MAAM,wBAAa,GAAG,KAAK,EAAE,KAAK;AAAA,CAAI;AAAA;;;AD3J3D,IAAM,qBAAkC;AAAA,EAC7C;AAAA,EACA;AACF;AAEO,SAAS,mBAAmB,CACjC,SACA,OAAoB,oBACT;AAAA,EACX,MAAM,WAAW,QAAQ,QACrB,aAAa,EAAE,SAAS,QAAQ,SAAS,SAAS,QAAQ,MAAM,CAAC,IACjE;AAAA,EACJ,MAAM,SAAS,IAAI,WAAU,EAAE,MAAM,QAAQ,SAAS,QAAQ,CAAC;AAAA,EAC/D,MAAM,iBAAiB,MAA0C;AAAA,IAC/D,KAAK,QAAQ,WAAW,UAAU;AAAA,MAChC,OAAO,SAAS,sCAAsC;AAAA,IACxD;AAAA,IACA,OAAO;AAAA;AAAA,EAET,MAAM,aAAa,GAAE,KAAK,kBAAkB;AAAA,EAE5C,OAAO,KACL,eACA,sHACA;AAAA,IACE,OAAO,GACJ,MACC,GAAE,OAAO;AAAA,MACP,SAAS,GAAE,OAAO,EAAE,IAAI,CAAC,EAAE,SAAS,mCAAmC;AAAA,MACvE,aAAa,GACV,OAAO,EACP,SAAS,EACT,SAAS,6CAA6C;AAAA,MACzD,YAAY,GAAE,MAAM,GAAE,OAAO,CAAC,EAAE,SAAS,EAAE,SAAS,6BAA6B;AAAA,MACjF,OAAO,GAAE,OAAO,EAAE,SAAS,EAAE,SAAS,wCAAwC;AAAA,IAChF,CAAC,CACH,EACC,IAAI,CAAC;AAAA,EACV,GACA,SAAS,OAAO,aAAa;AAAA,IAC3B,MAAM,QAAQ,eAAe;AAAA,IAC7B,IAAI;AAAA,MAAO,OAAO;AAAA,IAClB,IAAI;AAAA,MACF,MAAM,UAAU,KAAK,UAAU,QAAQ,QAAQ,QAAQ;AAAA,MACvD,QAAQ,OAAO,YAAY,YACzB,SACA,OAAO,IAAI,CAAC,UAAU;AAAA,QACpB,SAAS,KAAK;AAAA,QACd,YAAY,KAAK;AAAA,QACjB,WAAW,KAAK;AAAA,QAChB,OAAO,KAAK;AAAA,MACd,EAAE,CACJ;AAAA,MACA,KAAK,WAAW,QAAQ,QAAQ,UAAU,KAAK;AAAA,MAC/C,MAAM,MAAM,QAAQ,IAAI,CAAC,SAAS,IAAI,KAAK,IAAI,EAAE,KAAK,IAAI;AAAA,MAC1D,OAAO,MAAM,GAAG,QAAQ,2BAA2B;AAAA;AAAA,EAAW,eAAe,KAAK,GAAG;AAAA,MACrF,OAAO,OAAO;AAAA,MACd,OAAO,SAAS,uBAAuB,OAAO,KAAK,GAAG;AAAA;AAAA,GAG5D;AAAA,EAEA,OAAO,KACL,eACA,gHACA;AAAA,IACE,SAAS,GACN,MACC,GAAE,OAAO;AAAA,MACP,IAAI,GAAE,OAAO,EAAE,SAAS,gBAAgB;AAAA,MACxC,QAAQ,WAAW,SAAS,EAAE,SAAS,YAAY;AAAA,MACnD,SAAS,GAAE,OAAO,EAAE,IAAI,CAAC,EAAE,SAAS,EAAE,SAAS,8BAA8B;AAAA,MAC7E,aAAa,GACV,OAAO,EACP,SAAS,EACT,SAAS,uDAAuD;AAAA,MACnE,YAAY,GAAE,MAAM,GAAE,OAAO,CAAC,EAAE,SAAS,EAAE,SAAS,6BAA6B;AAAA,MACjF,OAAO,GAAE,OAAO,EAAE,SAAS,EAAE,SAAS,2CAA2C;AAAA,IACnF,CAAC,CACH,EACC,IAAI,CAAC;AAAA,EACV,GACA,SAAS,cAAc;AAAA,IACrB,MAAM,QAAQ,eAAe;AAAA,IAC7B,IAAI;AAAA,MAAO,OAAO;AAAA,IAClB,IAAI;AAAA,MACF,MAAM,UAAU,KAAK,UAAU,QAAQ,QAAQ,QAAQ;AAAA,MACvD,QAAQ,OAAO,YAAY,YACzB,SACA,QAAQ,IAAI,CAAC,YAAY;AAAA,QACvB,IAAI,OAAO;AAAA,QACX,QAAQ,OAAO;AAAA,QACf,SAAS,OAAO;AAAA,QAChB,YAAY,OAAO;AAAA,QACnB,WAAW,OAAO;AAAA,QAClB,OAAO,OAAO;AAAA,MAChB,EAAE,CACJ;AAAA,MACA,KAAK,WAAW,QAAQ,QAAQ,UAAU,KAAK;AAAA,MAC/C,MAAM,UAAU,QAAQ,SAAS,IAAI;AAAA,uBAA0B,QAAQ,KAAK,IAAI,MAAM;AAAA,MACtF,OAAO,MAAM,GAAG,eAAe,KAAK,IAAI,SAAS;AAAA,MACjD,OAAO,OAAO;AAAA,MACd,OAAO,SAAS,uBAAuB,OAAO,KAAK,GAAG;AAAA;AAAA,GAG5D;AAAA,EAEA,OAAO,KAAK,aAAa,6CAA6C,CAAC,GAAG,YAAY;AAAA,IACpF,MAAM,QAAQ,eAAe;AAAA,IAC7B,IAAI;AAAA,MAAO,OAAO;AAAA,IAClB,IAAI;AAAA,MACF,OAAO,MAAM,eAAe,KAAK,UAAU,QAAQ,QAAQ,QAAQ,CAAC,CAAC;AAAA,MACrE,OAAO,OAAO;AAAA,MACd,OAAO,SAAS,qBAAqB,OAAO,KAAK,GAAG;AAAA;AAAA,GAEvD;AAAA,EAED,OAAO,KACL,YACA,mEACA,EAAE,IAAI,GAAE,OAAO,EAAE,SAAS,SAAS,EAAE,GACrC,SAAS,SAAS;AAAA,IAChB,MAAM,QAAQ,eAAe;AAAA,IAC7B,IAAI;AAAA,MAAO,OAAO;AAAA,IAClB,IAAI;AAAA,MACF,MAAM,OAAO,KAAK,UAAU,QAAQ,QAAQ,QAAQ,EAAE,KAAK,CAAC,UAAU,MAAM,OAAO,EAAE;AAAA,MACrF,KAAK;AAAA,QAAM,OAAO,SAAS,SAAS,eAAe;AAAA,MACnD,OAAO,MAAM,KAAK,UAAU,MAAM,MAAM,CAAC,CAAC;AAAA,MAC1C,OAAO,OAAO;AAAA,MACd,OAAO,SAAS,oBAAoB,OAAO,KAAK,GAAG;AAAA;AAAA,GAGzD;AAAA,EAEA,OAAO,KACL,eACA,sGACA;AAAA,IACE,KAAK,GAAE,MAAM,GAAE,OAAO,CAAC,EAAE,SAAS,EAAE,SAAS,oBAAoB;AAAA,IACjE,KAAK,GAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,uBAAuB;AAAA,EAC9D,GACA,SAAS,KAAK,UAAU;AAAA,IACtB,MAAM,QAAQ,eAAe;AAAA,IAC7B,IAAI;AAAA,MAAO,OAAO;AAAA,IAClB,KAAK,SAAS,OAAO,IAAI,WAAW;AAAA,MAAI,OAAO,SAAS,0BAA0B;AAAA,IAClF,IAAI;AAAA,MACF,MAAM,UAAU,KAAK,UAAU,QAAQ,QAAQ,QAAQ;AAAA,MACvD,QAAQ,OAAO,YAAY,YAAY,SAAS,EAAE,KAAK,IAAI,CAAC;AAAA,MAC5D,KAAK,WAAW,QAAQ,QAAQ,UAAU,KAAK;AAAA,MAC/C,OAAO,MAAM,GAAG;AAAA;AAAA,EAA8B,eAAe,KAAK,GAAG;AAAA,MACrE,OAAO,OAAO;AAAA,MACd,OAAO,SAAS,uBAAuB,OAAO,KAAK,GAAG;AAAA;AAAA,GAG5D;AAAA,EAEA,OAAO;AAAA;;AGvLT,sBAAS;AACT,cAAS;;;ACDT;AACA,sBAAS;AACT,iBAAS;;;ACFT;AAAA;AAAA;AAAA;AAAA,eAIE;AAAA;AAAA,kBAEA;AAAA,gBACA;AAAA,cACA;AAAA,gBACA;AAAA,mBACA;AAAA;;;ACVF;AAWO,SAAS,gBAAgB,CAAC,MAAkC;AAAA,EACjE,OAAO,CAAC,MAAM,cAAc;AAAA,IAC1B,IAAI;AAAA,MACF,KAAK,OAAO,IAAI;AAAA,MAChB,OAAO,GAAG;AAAA,MACV,IAAK,GAA6B,SAAS;AAAA,QAAU;AAAA,MACrD,IAAI;AAAA,QAAW,KAAK,KAAK,EAAE,KAAK,GAAG,KAAK,GAAG,SAAS;AAAA;AAAA;AAAA;AAK1D,IAAM,oBAAoB,iBAAiB;AAAA,EACzC,QAAQ;AAAA,EACR,MAAM,CAAC,SAAS,YAAY,OAAO,KAAK,SAAS,OAAO;AAC1D,CAAC;;;ADVM,SAAS,cAAc,CAAC,UAA4B;AAAA,EACzD,OAAO,cAAa,UAAU,OAAO,EAAE,KAAK,EAAE,MAAM;AAAA,CAAI,EAAE,OAAO,OAAO;AAAA;AA6E1E,IAAM,aAAa,IAAI,WAAW,IAAI,kBAAkB,WAAW,iBAAiB,CAAC;;;ADxFrF;AAmBA,SAAS,WAAW,GAAW;AAAA,EAC7B,OAAO;AAAA,IACL,aAAa;AAAA,IACb,cAAc;AAAA,IACd,0BAA0B;AAAA,IAC1B,sBAAsB;AAAA,IACtB,SAAS;AAAA,EACX;AAAA;AAGK,SAAS,gBAAgB,CAAC,QAAiC;AAAA,EAChE,MAAM,YAAY,OAAO,MAAM;AAAA,EAG/B,OAAO,sCAAsC,KAAK,SAAS,MAAM,UAAU,SAAS,IAAI,IACpF,YACA,UAAU,WAAW,QAAQ,EAAE,OAAO,SAAS,EAAE,OAAO,KAAK;AAAA;AAGnE,SAAS,WAAW,CAAC,QAAiC;AAAA,EACpD,MAAM,SAAS,iBAAiB,MAAM;AAAA,EACtC,MAAM,SAAS,qBAAqB;AAAA,EACpC,WAAU,QAAQ,EAAE,WAAW,KAAK,CAAC;AAAA,EACrC,OAAO,MAAK,QAAQ,iBAAiB,cAAc;AAAA;AAGrD,SAAS,WAAW,CAAC,QAAwC;AAAA,EAC3D,IAAI;AAAA,IACF,OAAO,eAAe,YAAY,MAAM,CAAC,EAAE,QAAQ,CAAC,SAAS;AAAA,MAC3D,IAAI;AAAA,QACF,OAAO,CAAC,KAAK,MAAM,IAAI,CAAgB;AAAA,QACvC,MAAM;AAAA,QACN,OAAO,CAAC;AAAA;AAAA,KAEX;AAAA,IACD,MAAM;AAAA,IACN,OAAO,CAAC;AAAA;AAAA;AAIL,SAAS,QAAQ,CACtB,GAIQ;AAAA,EACR,OACG,EAAE,cAAc,MAAa,IAC7B,EAAE,eAAe,MAAa,KAC9B,EAAE,2BAA2B,MAAa,OAC1C,EAAE,uBAAuB,MAAa;AAAA;AA8BpC,SAAS,QAAQ,CACtB,QACA,MACA,IAMA;AAAA,EACA,MAAM,UAAU,YAAY,MAAM;AAAA,EAElC,MAAM,SAAS,OAAO,IAAI,KAAK,IAAI,EAAE,QAAQ,IAAI;AAAA,EACjD,MAAM,OAAO,KAAK,IAAI,KAAK,EAAE,EAAE,QAAQ,IAAI;AAAA,EAE3C,IAAK,QAAQ,OAAO,MAAM,MAAM,KAAO,MAAM,OAAO,MAAM,IAAI,GAAI;AAAA,IAChE,OAAO,KAAK,EAAE,MAAM,GAAG,GAAG,kDAAkD;AAAA,IAC5E,OAAO,EAAE,OAAO,YAAY,GAAG,QAAQ,CAAC,GAAG,WAAW,CAAC,GAAG,kBAAkB,EAAE;AAAA,EAChF;AAAA,EAEA,MAAM,QAAQ,YAAY;AAAA,EAC1B,MAAM,SAAiC,CAAC;AAAA,EACxC,MAAM,YAAoC,CAAC;AAAA,EAE3C,WAAW,KAAK,SAAS;AAAA,IACvB,MAAM,KAAK,IAAI,KAAK,EAAE,SAAS,EAAE,QAAQ;AAAA,IACzC,IAAI,KAAK,UAAU,KAAK;AAAA,MAAM;AAAA,IAE9B,MAAM,UAAU,EAAE,UAAU,MAAM,GAAG,EAAE;AAAA,IAEvC,KAAK,OAAO;AAAA,MAAU,OAAO,WAAW,YAAY;AAAA,IACpD,KAAK,UAAU,EAAE;AAAA,MAAU,UAAU,EAAE,WAAW,YAAY;AAAA,IAE9D,WAAW,UAAU,CAAC,OAAO,OAAO,UAAU,UAAU,EAAE,QAAQ,GAAG;AAAA,MACnE,OAAO,eAAe,EAAE;AAAA,MACxB,OAAO,gBAAgB,EAAE;AAAA,MACzB,OAAO,4BAA4B,EAAE;AAAA,MACrC,OAAO,wBAAwB,EAAE;AAAA,MACjC,OAAO,WAAW;AAAA,IACpB;AAAA,EACF;AAAA,EAEA,OAAO,EAAE,OAAO,QAAQ,WAAW,kBAAkB,SAAS,KAAK,EAAE;AAAA;;;ADxHhE,IAAM,2BAA8C;AAAA,EACzD;AAAA,EACA;AACF;AAEO,SAAS,yBAAyB,CACvC,SACA,OAA0B,0BACf;AAAA,EACX,KAAK,QAAQ;AAAA,IAAQ,MAAM,IAAI,MAAM,iCAAiC;AAAA,EACtE,MAAM,SAAS,IAAI,WAAU,EAAE,MAAM,eAAe,SAAS,QAAQ,CAAC;AAAA,EACtE,OAAO,KACL,mBACA;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,EAAE,KAAK;AAAA,CAAI,GACX;AAAA,IACE,MAAM,GAAE,OAAO,EAAE,SAAS,EAAE,SAAS,oEAA0C;AAAA,IAC/E,IAAI,GAAE,OAAO,EAAE,SAAS,EAAE,SAAS,sEAAwB;AAAA,IAC3D,SAAS,GAAE,KAAK,CAAC,QAAQ,SAAS,CAAC,EAAE,SAAS,EAAE,SAAS,qDAAiB;AAAA,EAC5E,GACA,SAAS,MAAM,IAAI,UAAU,aAAa;AAAA,IACxC,QAAQ,OAAO,QAAQ,WAAW,qBAAqB,KAAK,SAC1D,QAAQ,QACR,MACA,EACF;AAAA,IACA,MAAM,QAAkB;AAAA,MACtB;AAAA,MACA,QAAQ,KAAK,iBAAM,QAAQ,oBAAU,MAAM,mBAAS;AAAA,MACpD;AAAA,MACA,8BAAS,MAAM,QAAQ,eAAe;AAAA,MACtC,8BAAS,MAAM,YAAY,eAAe;AAAA,MAC1C,8BAAS,MAAM,aAAa,eAAe;AAAA,MAC3C,8BAAS,MAAM,yBAAyB,eAAe;AAAA,MACvD,8BAAS,MAAM,qBAAqB,eAAe;AAAA,MACnD,+BAAU,iBAAiB,QAAQ,CAAC;AAAA,IACtC;AAAA,IACA,MAAM,oBAAoB,KAAK,oBAAoB,QAAQ,MAAM,KAAK,CAAC;AAAA,IACvE,IAAI,kBAAkB,SAAS;AAAA,MAAG,MAAM,KAAK,IAAI,GAAG,iBAAiB;AAAA,IAErE,IAAI,YAAY,WAAW;AAAA,MACzB,MAAM,SAAS,OAAO,QAAQ,SAAS,EACpC,IAAI,EAAE,MAAM,aAAa,EAAE,SAAS,QAAQ,MAAM,KAAK,SAAS,MAAM,EAAE,EAAE,EAC1E,KAAK,CAAC,MAAM,UAAU,MAAM,OAAO,KAAK,IAAI;AAAA,MAC/C,MAAM,KAAK,IAAI,uDAAc,OAAO,eAAU;AAAA,MAC9C,WAAW,WAAW,QAAQ;AAAA,QAC5B,MAAM,KACJ,KAAK,QAAQ,sBAAW,QAAQ,+BAAgB,QAAQ,YAAY,eAAe,oBAAU,QAAQ,aAAa,eAAe,OAAO,QAAQ,KAAK,QAAQ,CAAC,GAChK;AAAA,MACF;AAAA,IACF,EAAO;AAAA,MACL,MAAM,QAAQ,OAAO,KAAK,MAAM,EAAE,KAAK;AAAA,MACvC,IAAI,MAAM,SAAS,KAAK,MAAM,UAAU,IAAI;AAAA,QAC1C,MAAM,KAAK,IAAI,8CAAU;AAAA,QACzB,WAAW,QAAQ,OAAO;AAAA,UACxB,MAAM,SAAS,OAAO;AAAA,UACtB,IAAI,OAAO,YAAY;AAAA,YAAG;AAAA,UAC1B,MAAM,KACJ,KAAK,sBAAW,OAAO,+BAAgB,OAAO,YAAY,eAAe,oBAAU,OAAO,aAAa,eAAe,OAAO,KAAK,SAAS,MAAM,EAAE,QAAQ,CAAC,GAC9J;AAAA,QACF;AAAA,MACF,EAAO,SAAI,MAAM,SAAS,IAAI;AAAA,QAC5B,MAAM,SAGF,CAAC;AAAA,QACL,WAAW,QAAQ,OAAO;AAAA,UACxB,MAAM,OAAO,KAAK,MAAM,GAAG,EAAE;AAAA,UAC7B,OAAO,UAAU,EAAE,SAAS,GAAG,aAAa,GAAG,cAAc,GAAG,MAAM,EAAE;AAAA,UACxE,MAAM,SAAS,OAAO;AAAA,UACtB,OAAO,MAAM,WAAW,OAAO;AAAA,UAC/B,OAAO,MAAM,eAAe,OAAO;AAAA,UACnC,OAAO,MAAM,gBAAgB,OAAO;AAAA,UACpC,OAAO,MAAM,QAAQ,KAAK,SAAS,MAAM;AAAA,QAC3C;AAAA,QACA,MAAM,KAAK,IAAI,2CAAY,OAAO,KAAK,MAAM,EAAE,eAAU;AAAA,QACzD,YAAY,MAAM,WAAW,OAAO,QAAQ,MAAM,EAAE,KAAK,GAAG;AAAA,UAC1D,MAAM,KACJ,KAAK,sBAAW,OAAO,+BAAgB,OAAO,YAAY,eAAe,oBAAU,OAAO,aAAa,eAAe,OAAO,OAAO,KAAK,QAAQ,CAAC,GACpJ;AAAA,QACF;AAAA,MACF;AAAA;AAAA,IAGF,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,MAAM,KAAK;AAAA,CAAI,EAAE,CAAC,EAAE;AAAA,GAEjE;AAAA,EACA,OAAO;AAAA;;AIzHT,sBAAS;AACT,cAAS;AA0BF,SAAS,oBAAoB,CAClC,SACA,MACA,YAA+B,CAAC,GACrB;AAAA,EACX,MAAM,SAAS,IAAI,WAAU,EAAE,MAAM,SAAS,SAAS,QAAQ,CAAC;AAAA,EAChE,MAAM,MAAM,UAAU,OAAO;AAAA,EAC7B,MAAM,OAAO,UAAU,QAAQ;AAAA,EAE/B,OAAO,KACL,cACA,QAAQ,WACJ,uIACA,kKACJ,CAAC,GACD,MAAM;AAAA,IACJ,KAAK,QAAQ;AAAA,MAAQ,OAAO,MAAM,sCAAsC;AAAA,IACxE,MAAM,UAAU,KAAK,KAAK,QAAQ,MAAM;AAAA,IACxC,IAAI,QAAQ,WAAW;AAAA,MAAG,OAAO,MAAM,qCAAqC;AAAA,IAC5E,MAAM,QAAQ,QAAQ,IAAI,CAAC,UACzB,MAAM,cAAc,UAAI,MAAM,cAAS,MAAM,gBAAgB,UAAK,MAAM,KAC1E;AAAA,IACA,OAAO,MAAM,eAAe,QAAQ;AAAA,EAAa,MAAM,KAAK;AAAA,CAAI,GAAG;AAAA,GAEvE;AAAA,EAEA,KAAK,QAAQ,aAAa,QAAQ,UAAU;AAAA,IAC1C,OAAO,KACL,aACA,uOACA;AAAA,MACE,SAAS,GACN,OAAO,EACP,IAAI,CAAC,EACL,IAAI,KAAK,IAAI;AAAA,MAChB,YAAY,GAAE,OAAO,EAAE,IAAI,EAAE,IAAI,IAAK,EAAE,IAAI,MAAO,EAAE,SAAS;AAAA,MAC9D,kBAAkB,GACf,OAAO,EACP,IAAI,EACJ,IAAI,IAAK,EACT,IAAI,IAAI,OAAO,IAAI,EACnB,SAAS;AAAA,IACd,GACA,SAAS,SAAS,YAAY,uBAAuB;AAAA,MACnD,KAAK,QAAQ;AAAA,QAAQ,OAAO,SAAS,oCAAoC;AAAA,MACzE,MAAM,SAAS,MAAM,IACnB,QAAQ,QACR;AAAA,QACE;AAAA,QACA,WAAW;AAAA,QACX,gBAAgB;AAAA,QAChB,KAAK,QAAQ;AAAA,MACf,GACA,IACF;AAAA,MACA,OAAO,OAAO,SAAS,OAAO,aAAa,OACvC,SAAS,OAAO,KAAK,IACrB,MAAM,KAAK,UAAU,QAAQ,MAAM,CAAC,CAAC;AAAA,KAE7C;AAAA,EACF;AAAA,EAEA,KAAK,QAAQ;AAAA,IACX,OAAO,KACL,sBACA,mNACA;AAAA,MACE,QAAQ,GAAE,KAAK,CAAC,OAAO,QAAQ,OAAO,SAAS,QAAQ,CAAC,EAAE,QAAQ,KAAK;AAAA,MACvE,KAAK,GAAE,OAAO,EAAE,IAAI,EAAE,SAAS,+CAA+C;AAAA,MAC9E,SAAS,GAAE,OAAO,GAAE,OAAO,GAAG,GAAE,OAAO,CAAC,EAAE,SAAS;AAAA,MACnD,MAAM,GAAE,OAAO,EAAE,SAAS;AAAA,MAC1B,YAAY,GAAE,OAAO,EAAE,IAAI,EAAE,IAAI,IAAK,EAAE,IAAI,MAAO,EAAE,SAAS;AAAA,MAC9D,oBAAoB,GACjB,OAAO,EACP,IAAI,EACJ,IAAI,IAAK,EACT,IAAI,OAAO,IAAI,EACf,SAAS;AAAA,IACd,GACA,SAAS,QAAQ,KAAK,SAAS,MAAM,YAAY,yBAAyB;AAAA,MACxE,KAAK,QAAQ;AAAA,QAAQ,OAAO,SAAS,oCAAoC;AAAA,MACzE,MAAM,SAAS,MAAM,KACnB,QAAQ,QACR;AAAA,QACE;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,WAAW;AAAA,QACX,kBAAkB;AAAA,MACpB,GACA,IACF;AAAA,MACA,OAAO,OAAO,QAAQ,SAAS,OAAO,KAAK,IAAI,MAAM,KAAK,UAAU,QAAQ,MAAM,CAAC,CAAC;AAAA,KAExF;AAAA,EAEF,OAAO;AAAA;",
31
+ "debugId": "1116F4C8A853800064756E2164756E21",
32
32
  "names": []
33
33
  }
package/dist/prompts.js CHANGED
@@ -211,6 +211,89 @@ var PDFTOTEXT_BIN = envText("PDFTOTEXT_BIN") ?? "pdftotext";
211
211
  var _envMaxTellDepth = Number.parseInt(process.env.MAX_TELL_DEPTH ?? "", 10);
212
212
  var MAX_TELL_DEPTH = Number.isInteger(_envMaxTellDepth) && _envMaxTellDepth > 0 ? _envMaxTellDepth : 20;
213
213
 
214
+ // ../../packages/core/src/agents/model-catalog.ts
215
+ var MODEL_COST_ROUTING_SUMMARY = "Cost basis (2026-07-19): Codex Pro 20x and Claude Max 20x are each $200/month; DeepSeek Pro is pay-per-token. Relative marginal token cost: DeepSeek Pro << Codex < Claude.";
216
+ var CODEX_PRO_20X_COST = "ChatGPT Pro 20x subscription: $200/month";
217
+ var CODEX_COMMUNITY_WEEKLY = "Community plan-level observation: roughly 2\u20134B raw/cached tokens per week; fresh-input equivalent is much lower and unstable (low confidence)";
218
+ var CLAUDE_MAX_20X_COST = "Claude Max 20x subscription: $200/month";
219
+ var CLAUDE_COMMUNITY_SESSION = "Community observations vary from roughly 220\u2013250K locally displayed tokens per 5-hour session to billions of cache-heavy raw tokens per week; calibrated reports value a full weekly allowance around $680\u2013$1,900 at API rates. Recent heavy-model reports reach the weekly cap after about 4\u20135 full sessions (low confidence; not a token cap)";
220
+ var SELECTABLE_MODELS = [
221
+ {
222
+ model: "gpt-5.6-sol",
223
+ agent: "codex",
224
+ description: "Highest-capability Codex route for the hardest agentic coding work.",
225
+ intelligenceTier: "fable",
226
+ routingSummary: "hardest coding work; 5x Codex quota cost",
227
+ accessCost: CODEX_PRO_20X_COST,
228
+ marginalTokenCost: "Codex credits: $5/M uncached input, $0.50/M cached input, $30/M output",
229
+ estimatedUsage: `Official Pro 20x range: 300\u20131,800 local messages per 5 hours; quota weight 5x Luna. ${CODEX_COMMUNITY_WEEKLY}`
230
+ },
231
+ {
232
+ model: "gpt-5.6-terra",
233
+ agent: "codex",
234
+ description: "High-capability Codex route for complex coding and reasoning.",
235
+ intelligenceTier: "opus",
236
+ routingSummary: "complex coding and reasoning; 2.5x Codex quota cost",
237
+ accessCost: CODEX_PRO_20X_COST,
238
+ marginalTokenCost: "Codex credits: $2.50/M uncached input, $0.25/M cached input, $15/M output",
239
+ estimatedUsage: `Official Pro 20x range: 400\u20132,200 local messages per 5 hours; quota weight 2.5x Luna. ${CODEX_COMMUNITY_WEEKLY}`
240
+ },
241
+ {
242
+ model: "gpt-5.6-luna",
243
+ agent: "codex",
244
+ description: "Default Codex route with strong everyday coding intelligence.",
245
+ intelligenceTier: "sonnet",
246
+ routingSummary: "everyday coding default; lowest Codex quota cost (1x)",
247
+ accessCost: CODEX_PRO_20X_COST,
248
+ marginalTokenCost: "Codex credits: $1/M uncached input, $0.10/M cached input, $6/M output",
249
+ estimatedUsage: `Official Pro 20x range: 1,000\u20135,600 local messages per 5 hours; lowest Codex quota weight (1x). ${CODEX_COMMUNITY_WEEKLY}`
250
+ },
251
+ {
252
+ model: "fable",
253
+ agent: "claude",
254
+ description: "Highest-capability Claude route for the hardest and longest-running tasks.",
255
+ intelligenceTier: "fable",
256
+ routingSummary: "hardest long-running work; highest Claude cost; explicit request only",
257
+ accessCost: CLAUDE_MAX_20X_COST,
258
+ marginalTokenCost: "Claude API/extra usage: $10/M input, $12.50/M cache write, $1/M cache read, $50/M output",
259
+ estimatedUsage: `${CLAUDE_COMMUNITY_SESSION}; Fable drains weighted quota fastest, so use only on explicit user request. No stable per-model token cap is published.`
260
+ },
261
+ {
262
+ model: "opus",
263
+ agent: "claude",
264
+ description: "High-capability Claude route for complex reasoning and tool-heavy work.",
265
+ intelligenceTier: "opus",
266
+ routingSummary: "complex reasoning and tool-heavy work; about 2.5x Sonnet marginal cost",
267
+ accessCost: CLAUDE_MAX_20X_COST,
268
+ marginalTokenCost: "Claude API/extra usage: $5/M input, $6.25/M cache write, $0.50/M cache read, $25/M output",
269
+ estimatedUsage: `${CLAUDE_COMMUNITY_SESSION}; Opus uses the shared all-model weekly pool more quickly than Sonnet. No stable per-model token cap is published.`
270
+ },
271
+ {
272
+ model: "sonnet",
273
+ agent: "claude",
274
+ description: "Default Claude route for capable, efficient everyday work.",
275
+ intelligenceTier: "sonnet",
276
+ routingSummary: "capable everyday default; lowest Claude model cost",
277
+ accessCost: CLAUDE_MAX_20X_COST,
278
+ marginalTokenCost: "Claude API/extra usage introductory rate: $2/M input, $2.50/M cache write, $0.20/M cache read, $10/M output through 2026-08-31; then $3/M input and $15/M output",
279
+ estimatedUsage: `${CLAUDE_COMMUNITY_SESSION}; Sonnet also has a separate weekly allowance and normally provides the highest Claude throughput. No stable weekly token cap is published.`
280
+ },
281
+ {
282
+ model: "deepseek-pro",
283
+ agent: "maestro",
284
+ description: "API-priced Sonnet-level route for cost-efficient everyday work.",
285
+ intelligenceTier: "sonnet",
286
+ routingSummary: "cost-efficient everyday work; pay-per-token and cheapest route",
287
+ accessCost: "DeepSeek V4 Pro pay-as-you-go API; no monthly subscription required",
288
+ marginalTokenCost: "DeepSeek API: $0.435/M uncached input, $0.003625/M cached input, $0.87/M output",
289
+ estimatedUsage: "No subscription token cap; pay per token. Official account concurrency limit is 500 requests."
290
+ }
291
+ ];
292
+ function formatSelectableModel(candidate) {
293
+ const tier = `${candidate.intelligenceTier[0].toUpperCase()}${candidate.intelligenceTier.slice(1)}`;
294
+ return `${candidate.agent} / \`${candidate.model}\` [${tier}-level]: ${candidate.routingSummary}`;
295
+ }
296
+
214
297
  // ../../packages/core/src/prompts/builders.ts
215
298
  var PROMPTS_DIR = resolve2(PROJECT_ROOT, "src/prompts");
216
299
  var SESSIONS_DIR = resolve2(PROMPTS_DIR, "sessions");
@@ -318,7 +401,7 @@ function loadAgentPrompt(filename) {
318
401
  prompt: match[2].trim()
319
402
  };
320
403
  }
321
- function buildRuntimeToolSection(agentKind, canSpawnSubagents = false, visualTools = false, fileDeliveryTools = false) {
404
+ function buildRuntimeToolSection(agentKind, canSpawnSubagents = false, visualTools = false, fileDeliveryTools = false, currentModel, currentEffort) {
322
405
  const runtimeNamespace = "mcp__runtime";
323
406
  const taskNamespace = "mcp__task";
324
407
  const visualToolLine = agentKind === "codex" ? `To display charts, tables, or interactive HTML results to the user, call the \`show_html\` function in the \`${runtimeNamespace}\` namespace with { html: "<complete HTML string>", title?: "optional title" }.` : `To display charts, tables, or interactive HTML results to the user, call the MCP tool "${runtimeNamespace}__show_html" with { html: "<complete HTML string>", title?: "optional title" }.`;
@@ -376,20 +459,26 @@ function buildRuntimeToolSection(agentKind, canSpawnSubagents = false, visualToo
376
459
  "Do not use session communication to make another topic perform destructive changes without the user's clear intent.",
377
460
  ...spawnSubagentSection
378
461
  ];
462
+ const modelCatalog = SELECTABLE_MODELS.map((candidate) => `- ${formatSelectableModel(candidate)}`);
379
463
  const topicConfig = [
380
464
  "",
381
465
  "## Topic Configuration (model / agent / effort)",
466
+ `Current execution: agent=\`${agentKind}\`, model=\`${currentModel ?? "unknown (call get_model)"}\`, effort=\`${currentEffort ?? "provider default/off"}\`.`,
382
467
  "The user's configured agent/model/effort is intentional. Preserve it by default.",
383
468
  `When the user explicitly asks to change the model, agent backend, or reasoning effort for THIS topic, call "${runtimeNamespace}__set_model", "${runtimeNamespace}__set_agent", or "${runtimeNamespace}__set_effort". The change applies from your NEXT turn. After calling, briefly confirm and the system will continue with the new setting.`,
384
469
  "`set_effort` is available but discouraged; use it only when the user explicitly requests an effort change.",
385
- "`set_model` may be called autonomously only when the current model is clearly below the task's required capability, such as complex algorithm design, proof-level math, or broad multi-file refactoring. In that case, move up one step within the same agent and end the turn. Do not use vague task complexity as a trigger.",
470
+ "`set_model` may be called autonomously only when the current model is clearly below the task's required capability, such as complex algorithm design, proof-level math, or broad multi-file refactoring. Choose the best-fit model directly from the same-agent catalog; model selection is not a mandatory one-step ladder. End the turn after changing it. Do not use vague task complexity as a trigger.",
386
471
  "`set_agent` autonomous calls are forbidden. Only switch agent when the user explicitly asks to switch runtime, e.g. \u201Ccodex\uB85C \uAC00\u201D, \u201Cclaude\uB85C \uBC14\uAFD4\u201D.",
387
472
  "Never use `fable` unless the user explicitly requests it; it is expensive.",
388
473
  "",
389
- "Accepted values:",
390
- "- claude models: `sonnet` (default), `opus`, `fable`; efforts: `low`, `medium`, `high`, `xhigh`, `max`.",
391
- "- codex models: `gpt-5.6-luna` (default), `gpt-5.6-terra`, `gpt-5.6-sol`; efforts: `low`, `medium`, `high`, `xhigh`, `max`.",
392
- "- maestro models: `deepseek-pro` (default), `deepseek-flash`, `deepseek`; efforts: `low`, `medium`, `high`, `xhigh`, `max`.",
474
+ "Model catalog (capability/cost routing guidance):",
475
+ MODEL_COST_ROUTING_SUMMARY,
476
+ ...modelCatalog,
477
+ "",
478
+ "Accepted effort values:",
479
+ "- claude: `low`, `medium`, `high`, `xhigh`, `max`.",
480
+ "- codex: `low`, `medium`, `high`, `xhigh`, `max`.",
481
+ "- maestro: `low`, `medium`, `high`, `xhigh`, `max`.",
393
482
  "Agent guidance when the user explicitly asks to switch: `codex` for deepest reasoning and complex code/math; `claude` for tool-heavy MCP/file automation; `maestro` for inexpensive fast drafts and lighter experiments."
394
483
  ];
395
484
  if (agentKind !== "claude") {
@@ -412,7 +501,7 @@ function buildTopicSystemPrompt(opts) {
412
501
  TOPIC_TITLE: opts.topicTitle,
413
502
  WORKSPACE_CWD: opts.workspaceCwd,
414
503
  UPLOADS_DIR: uploadsDir
415
- }) + buildRuntimeToolSection(opts.agentKind, opts.canSpawnSubagents, opts.visualTools, opts.fileDeliveryTools);
504
+ }) + buildRuntimeToolSection(opts.agentKind, opts.canSpawnSubagents, opts.visualTools, opts.fileDeliveryTools, opts.currentModel, opts.currentEffort);
416
505
  if (opts.description?.trim()) {
417
506
  prompt += `
418
507
 
@@ -428,7 +517,7 @@ function buildChannelSystemPrompt(opts) {
428
517
  TOPIC_TITLE: opts.topicTitle,
429
518
  WORKSPACE_CWD: opts.workspaceCwd,
430
519
  UPLOADS_DIR: uploadsDir
431
- }) + buildRuntimeToolSection(opts.agentKind, false, opts.visualTools, opts.fileDeliveryTools);
520
+ }) + buildRuntimeToolSection(opts.agentKind, false, opts.visualTools, opts.fileDeliveryTools, opts.currentModel, opts.currentEffort);
432
521
  }
433
522
  function buildManagerSystemPrompt(opts) {
434
523
  return `${buildTopicSystemPrompt(opts)}
@@ -462,4 +551,4 @@ export {
462
551
  buildChannelSystemPrompt
463
552
  };
464
553
 
465
- //# debugId=6984852060F727C764756E2164756E21
554
+ //# debugId=643F7CD632A0239464756E2164756E21